当前位置:首页>编程日记>正文

边打“游戏”边学Vim!这款在线、交互的练习工具火了

金磊 发自 凹非寺
量子位 报道 | 公众号 QbitAI

天下苦Vim久矣。

虽然“高龄”、“难用”等标签加身,但没办法,依旧无法阻挡Vim被热捧的现实。

那有没有简单、快速上手练习的方法?

这个可以有,而且还是在线交互式的那种——Vim.so

并且Vim.so用起来像打游戏一般的体验,也让网友们一片“好评如潮”。

打游戏一样学习Vim

既然要学习Vim,那就免不了要了解它那“令人发指”的命令和快捷键。

例如,这样(有种让你背元素周期表的赶脚)……

图源:cnblog

但在Vim.so中学习命令,就没有那么枯燥了。

例如“上”、“下”、“左”、“右”以及“删除”命令,分别对应键盘中的“h”、“j”、“k”、“l”和“x”。

像打游戏通关一样,就能快速上手。

在这一关“游戏”中,通过键盘指令的操作,将光标移动到“%”的位置,并将它删除掉,就算完成一次任务。

有没有种玩“消消乐”的感觉?

这样的基本指令练习,需要完成20次,对于Vim入门新手而言,达到“KPI”之后,掌握得也就差不多了。

而且,它还会记下完成任务所用的平均时长,是可以和其它“玩家”battle一下了。

再复杂一点的“进阶任务”,如下所示。

类似这样的课程,Vim.so一共提供了10门,据作者本人介绍,目的就是让新人能够快速上手、让Vim性能最大化。

虽好用,但需付费

虽然这种交互式学习Vim的方式,对于新手来说是非常友好的。

但一个“致命”的缺点就是,付费

但别急!我们也准备了另外一套教程——“用聪明的方式学习Vim”。

目前在GitHub上的star数量已经达到了5400+

在这份教程中,作者将Vim命令的一般结构,分解成了一个简单语法规则

这也是本教程中最为重要的一个章节——一旦了解了 Vim 命令类似语法的结构,就能跟它“畅谈无阻”。

按照作者的说法,“只需要知道一个语法规则”,就可以说Vim的语言了:

verb + noun

如果拿英文短句做类比,就例如:

Eat (verb) a donut (noun)

Kick (verb) a ball (noun)

在此之后,就只需要使用基本的 Vim 动词和名词,来增加词汇量即可。

嗯,也是相当的easy了。

作者介绍

Vim.so项目的作者,叫做Kenneth Cassel

他是一名全栈开发人员,感兴趣的领域包括NLP和计算机视觉中的深度学习(语义分割、目标检测、多标签分类等)。

最后,两种学习Vim的教程和地址,都在下方链接奉上喽。

传送门

Vim.so地址:
https://www.vim.so/#exercise

“用聪明的方式学Vim”地址:
https://github.com/iggredible/Learn-Vim

—  —

本文系网易新闻•网易号特色内容激励计划签约账号【量子位】原创内容,未经账号授权,禁止随意转载。

加入AI社群,拓展你的AI行业人脉

量子位「AI社群」招募中!欢迎AI从业者、关注AI行业的小伙伴们扫码加入,与50000+名好友共同关注人工智能行业发展&技术进展

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见~


http://www.coolblog.cn/news/bf73a613455c7c99.html

相关文章:

  • asp多表查询并显示_SpringBoot系列(五):SpringBoot整合Mybatis实现多表关联查询
  • s7day2学习记录
  • 【求锤得锤的故事】Redis锁从面试连环炮聊到神仙打架。
  • 矿Spring入门Demo
  • 拼音怎么写_老师:不会写的字用圈代替,看到孩子试卷,网友:人才
  • Linux 实时流量监测(iptraf中文图解)
  • Win10 + Python + GPU版MXNet + VS2015 + RTools + R配置
  • 美颜
  • shell访问php文件夹,Shell获取某目录下所有文件夹的名称
  • 如何优雅的实现 Spring Boot 接口参数加密解密?
  • LeCun亲授的深度学习入门课:从飞行器的发明到卷积神经网络
  • Mac原生Terminal快速登录ssh
  • java受保护的数据与_Javascript类定义语法,私有成员、受保护成员、静态成员等介绍...
  • mysql commit 机制_1024MySQL事物提交机制
  • 支撑微博千亿调用的轻量级RPC框架:Motan
  • jquery 使用小技巧
  • 2019-9
  • 法拉利虚拟学院2010 服务器,法拉利虚拟学院2010
  • vscode pylint 错误_将实际未错误的py库添加到pylint白名单
  • 科学计算工具NumPy(3):ndarray的元素处理
  • 工程师在工作电脑存 64G 不雅文件,被公司开除后索赔 41 万,结果…
  • linux批量创建用户和密码
  • newinsets用法java_Java XYPlot.setInsets方法代碼示例
  • js常用阻止冒泡事件
  • 气泡图在开源监控工具中的应用效果
  • 各类型土地利用图例_划重点!国土空间总体规划——土地利用
  • php 启动服务器监听
  • dubbo简单示例
  • 【设计模式】 模式PK:策略模式VS状态模式
  • [iptables]Redhat 7.2下使用iptables实现NAT
  • Ubuntu13.10:[3]如何开启SSH SERVER服务
  • CSS小技巧——CSS滚动条美化
  • JS实现-页面数据无限加载
  • 阿里巴巴分布式服务框架 Dubbo
  • 最新DOS大全
  • Django View(视图系统)
  • 阿里大鱼.net core 发送短信
  • 程序员入错行怎么办?
  • 两张超级大表join优化
  • 第九天函数
  • Linux软件安装-----apache安装
  • HDU 5988 最小费用流
  • Sorenson Capital:值得投资的 5 种 AI 技术
  • 《看透springmvc源码分析与实践》读书笔记一
  • 正式开课!如何学习相机模型与标定?(单目+双目+鱼眼+深度相机)
  • Arm芯片的新革命在缓缓上演
  • nagios自写插件—check_file
  • python3 错误 Max retries exceeded with url 解决方法
  • 行为模式之Template Method模式
  • 通过Spark进行ALS离线和Stream实时推荐