原文链接:《Seven Habits of Effective Text Editing》
前言
本文摘自Vim主要作者Bram Moolennar的2000年11月在其个人网站发布的提高文本编辑效率的7个方法,个人认为从工具作者那里学习如何使用工具是最好的学习方式。本篇文章重点介绍了,达到高效使用编辑器的方法。
第一部分、编辑文本
1、快速在文本间移动
- 通过搜索的方式快速定位
- 使用
\pattern
的方式搜索 - 使用
*
直接对所在单词搜索 %
在匹配括号间移动,[{
返回之前的{
,gd
本地变量定义的位置。 注:应对搜索结果配置高亮
- 使用
- 同样的内容不要打2遍
- 使用宏来记录你的重复性的操作(之后的文章会介绍)
- 活用
.
来重复上一步的文本操作。
- 自动纠错
对于经常犯的拼写错误,我们使用以下几种方式来避免。
- 自动补全:使用自动补全而不是自己手动输入变量名
- 自动纠错:对于自己经常犯的拼写错误可以使用如下配置来让vim自动纠错。
1
2:abbr Lunix Linux :abbr pn penguin # 当然也可以实现快速输入
第二部分、多文本操作
- 使用grep,ack,ag来对工程中所有的文件进行搜索 注:我们使用了ctrlp,CtrlSF来进行辅助
- 在一个终端窗口中进行分割来方便编辑:如
:sp
,:vs
- 让VIM和其他工具整合在一起使用:如
:sh
能进入bash模式等。
第三部分、迭代优化自己的编辑器
这部分个人觉得是最重要的,很多都认为使用VIM是先背快捷键然后熟练使用VIM,但是实际上和键盘盲打相似,是在使用中慢慢的逐渐提高使用VIM技巧,这里大佬给出了如下3个步骤:
Step 1
While you are editing, keep an eye out for actions you repeat and/or spend quite a bit of time on. 观察自己在哪些步骤进行了很多的重复性输入工作。
Step 2
Find out if there is an editor command that will do this action quicker. Read the documentation, ask a friend, or look at how others do this. 查找文档,询问朋友看有没有能让这些操作变得更快的方案。(去VIM的Wiki或者看我的专栏(笑))或者自己写一个宏或者脚本来自动化这些输入。
Step3
Train using the command. Do this until your fingers type it without thinking. 不断的使用快捷命令,直到你的指头形成肌肉记忆。
大佬的建议
这里大佬说了一个很有意思的事情,就是希望让我们能养成一个习惯。 首先,我们不需要去记住一个编辑器的所有的命令,这是完全浪费时间的 ( a complete waste of time ),每个人只需要知道其中 20% 左右的命令就够用了。
其次,不要去优化只用一到两次的操作,把时间花在大量重复的操作上,写一个宏或者去互联网上查看别人的即决方案。
最后,也是最重要的,将自己的解决方案和查到的命令记录下来。很多指令,在一段时间内经常使用,我们会熟记于心,但是随着一些原因停止了使用,之后再想回忆起来就需要花更多的时间。简单的来说,就是不做无用功,让我们的每一次努力达到可叠加的效果。
最后的话
关于为什么使用VIM,大佬给出了如下的话:
Learning to drive a car takes effort. Is that a reason to keep driving your bicycle? No, you realize you need to invest time to learn a skill. Text editing isn’t different. You need to learn new commands and turn them into a habit.
好的编辑器是值得我们花时间学的,最后感谢大家订阅我的专栏。