Vim 入门
我觉得学习 Vim 要像学习一门语言一样,需要大量的实践和长期的积累才能用的顺手。
实用技巧
这一部分是我在阅读「Vim 实用技巧」的笔记。
作者如是说:
传统观点认为,Vim 的学习曲线很陡,但我相信绝大多数Vim用户对此不以为然。
这句话我不是很认同,现在还是觉得很陡峭,难道在更深入的了解之后就会有改变?
我发现学习 Vim 和其他东西一样,没有什么灵丹妙药。
用
*查找光标下的单词。>G命令会增加从当前行到文档末尾处的缩进层级。每次进入插入模式时,会形成一次修改,可以用
.来重复。那么如何将插入内容和移动一起作为一次修改呢?执行一系列修改
qx{changes}q,使用@x重复这个修改。如果在插入模式中使用
<Up>、<Down>、<Left>或<Right>这些光标键,将会产生一个新的撤销块。让每个「可撤销块」对应一次思考过程。如果认为已经走错了方向,就会切换到普通模式,然后按
u撤销。<Ca>和<Cx>命令分别对数字执行加和减操作,如果当前光标不在数字上,它会自动移动到第一个数字区域。注释命令以
gc{motion}触发,gcc则注释当前行。专业打字员会建议先删除整个单词,然后再重新输入一遍。在插入模式中,
<Ch>删除前一个字符(同退格键),<Cw>删除前一个单词,<Cu>删至行首。用
zz命令可以重绘屏幕,并把当前行显示在窗口正中,这样就能够阅读当前行之上及之下的半屏内容。r{char}和gr{char}命令允许覆盖一个字符,之后马上又回到普通模式。按
<Cg>可以在可视模式及选择模式间切换。gv重选上次的高亮选区。gu转小写,gU转大写,g~反转大小写,guaw一个词转小写,guu一行转小写,guap一段话转小写,其他同理。在可视模式使用
U命令来把所选中的字符转换为大写。注意区分
:!ls和:ls的不同之处。前者调用的是shell中的ls命令,而:ls调用的是Vim的内置命令,用来显示缓冲区列表的内容。可以执行Vim的
:shell命令来启动一个交互的shell会话,另外一种做法是可以用:read!{cmd}命令,把{cmd}命令的输出读入当前缓冲区中。<Co>进入「普通-插入模式」,即执行完一个命令立马进入插入模式。比如调整光标位置到中间<Co>zz。在插入模式中粘贴内容
<Cr>0。三种不同的可视模式:1.
v面向字符的。2.V面向行的。3.<Cv>面向列块的。在可视模式中,
o可以切换高亮选区的活动端。在可视模式中,
a i都不起作用,必须使用A I。出现顺序:
ed->ex->vi->Vim。在命令行里执行的命令又叫
Ex命令,按下:可以触发,按下<CR>可以执行。
Vim 配置
Vim 新手肯定觉得 Vim 极其难用,这里面原因很多。比如学习曲线问题,普通的编辑器一般是斜线或者斜曲线的,而 Vim 几乎是垂直的!
抛开学习曲线问题,如果给 Vim 一个很好的配置,也可以让 Vim 变得易用很多。这里是一些常见配置选项:
1 | " 设置行号 |
我最近找到了一个还不错的配置方法,几乎可以说是「一键配置」!
下面的具体代码基于 Ubuntu 16.04 系统,Mac OS 请参考这个。
1 | # 安装依赖 |
快去试试吧!




