如何提高程序员的键盘使用效率?

旧时模样 提交于 2019-11-30 04:27:43
说到程序员键盘的使用,那就不得不提到鼎鼎大名的VIM。

对于VIM,非程序员或者是刚学习编程语言的同学可能不太了解。我先对Vim做个简单的介绍。Vim是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。 vim的设计理念是命令的组合。用户学习了各种各样的文本间移动/跳转的命令和其他的普通模式的编辑命令,并且能够灵活组合使用的话,能够比那些没有模式的编辑器更加高效的进行文本编辑。同时VIM与很多快捷键设置和正则表达式类似,可以辅助记忆。并且vim针对程序员做了优化。

那么Vim具体有哪些好处呢?
  1. 使用关键词自动完成
    VIM 有一个非常漂亮的关键词自动完成系统。使用关键词自动完成功能,只需要输入开始几个字母(比如 iAmAL),然后按 (按住 Ctrl,再按 N)或者 。如果 VIM 没有给出你想要的词,继续按,直到你满意为止,VIM 会一直循环它找到的匹配的字符串。
    2. 聪明的进入插入模式
    VIM 提供了很多进入插入模式的命令。
    3. 有效的移动大段的文本
    使用可视选择(visual selections)和合适的选择模式。不像最初的 VI,VIM 允许你高亮(选择)一些文本,并且进行操作。
    4. 在可视选择模式下剪切和拷贝
    5. 粘贴 粘贴很简单,按 p。
    6. 使用多重剪贴板
    很多编辑器都只提供了一个剪贴板。VIM 有很多。剪贴板在 VIM 里面被称为寄存器(Registers)。你可以列出当前定义的所有寄存器名和它们的内容,命令为“:reg”。最好使用小写字母来作为寄存器的名称,因为大写的有些被 VIM 占用了。
    7. 避免重复
    在 VI 里面,输入 . (小数点符号),将会重复输入的上一个命令。
    8. 使用数字也是 VIM 强大的而且很节省时间的重要特性之一。在很多 VIM 的命令之前都可以使用一个数字。

### 这里再简要的介绍下常用的快捷键
1. 在编辑模式下按下键盘上的 Esc 按键,进入到命令行模式。在命令行模式下,有如下快捷键(注意一定是命令行模式):
2. 拷贝某一行的内容:yy (让鼠标的光标在某一行停留,连续按下键盘上的 y 两次,即可复制该行的内容)
3. 剪切某一行的内容:dd (让鼠标的光标在某一行停留,连续按下键盘上的 d 两次,即可剪切该行的内容,剪切后该行的内容消失,相当于删除)
4. 粘贴:p (当执行完yy或者dd后,将光标移动到你想粘贴的位置,按下p,即可粘贴内容)
5. 拷贝多行的内容: 按下v + 光标移动选中一些行,选好后松开v,然后按下y,即可拷贝选中的行的内容。
6. 剪切多行的内容:按下v + 光标移动选中一些行,选好后松开v,然后按下d,即可剪切选中的行的内容。剪切后,选中的内容消失,相当于删除。
7. 列模式:ctrl + v 后,移动光标可以选择列的内容
8. 删除:dd可以看成是删除单独行,v + 光标移动选中内容再按下d可以看成是删除多行内容。
9. 显示行号:进入命令行模式下,按下Shift + :,然后输入set nu
10. 去掉行号:进入命令行模式下,按下Shift + :,然后输入set nonu

能熟练使用Vim会大大提高写代码的能力!

那么我们怎么训练这些技能呢?

对于这个问题,我们的前辈们早就为我们铺好了路!Vim大冒险是一个通过娱乐的方式学习vim使用的页面游戏。
在这里插入图片描述
但是有些遗憾的是,这个游戏只有前3关是免费的,后面的关卡是要付费的。那么非人民币玩家怎么训练Vim呢?那就不得不提我看到过的训练Vim非常好的一篇文章https://coolshell.cn/articles/5426.html 陈浩的简明VIM练级攻略,阅读量高达98万,帮助包括我在内的一大批新手学习Vim。达到什么程度才算合格呢? 每天都学1到2个新的命令,在两到三周后,你就能熟系它,并且感受到它的强大之处!
附录
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!