使用VIM做主编辑器有一段时间了,快捷键和命令用的越来越熟练。本文将使用过程中遇到的问题、解决方案和一些好用的技巧汇总如下,并不定时更新。

###查找之后高亮显示的词怎么取消高亮?

说明:通常我们会用:/bla[Enter]查询文中出现的bla,并以高亮显示。可以通过nN查找下一个和上一个。查找完之后,高亮显示并不会消失,这样会影响阅读其他的代码或文字。

解决:使用:noh命令。

###插入模式下怎么进行光标移动?

说明:当然,可以使用方向键进行移动。但Vimer通常不会这么干。难道每次都要Esc回到普通模式再移动吗?

解决:根据前辈们的说法,Vimer要有一个意识,就是默认保持普通模式。除此之外,一切都是命令。比如插入文字的命令为iblabla,执行「命令」的命令为:bla。所以,要想移动光标,乖乖回到普通模式吧。

但是我们都知道Esc的键程太远,老这么按很费劲。于是大家就进行快捷键的映射。我找到的最好的解决方案是用jj替代Esc

.vimrc中加入这一样:

imap jj <Esc>

有人会说,那我要输入「jj」肿么办呢?这种情况是很少的,编程的实践证明几乎不会用到这个组合词。如果万一用到,那么输入一个j,稍等一秒再输入另外一个即可。

当然,你也可以映射到Caps Lock,悉听尊便。

###怎样在Windows右键菜单中加入「用Vim编辑」?

Windows下安装gvim会默认在右键菜单中添加这一项。我前两天清理无用的注册表,这一项不幸被360吃掉了。乖乖修改注册表吧~

  1. 按下Win + r,输入regedit打开注册表。

  2. 找到HKEY_CLASSES_ROOT\*\Shell

  3. 用鼠标右键添加项,名字叫「用Vim编辑」,再在这个文件夹上点击右键添加项,起名叫做「command」。

  4. 编辑项的值为"E:\\Program Files\\Vim\\vim74\\gvim.exe" -p "%1",具体路径根据自己电脑情况而定。

用类似的方式,还可以添加「用vim新标签编辑」。只需要修改相应的名字,并将项目的值写为"E:\\Program Files\\Vim\\vim74\\gvim.exe" -p --remote-tab-silent "%1"即可。

###tips

  1. 反向的操作常常用Shift。比如删除前一个字符用x,那么删除后一个字符用Shift + x,也就是X

  2. 数字的运用。数字是规定操作重复次数的,有时候非常有用。比如10dd是删除10行。

  3. .重复上一个操作。

  4. block级别的光标移动。比如移动到函数的开头用[[,结尾用]]

  5. 批量缩进。普通模式下v进入选择模式,通过移动光标选择几行,然后<>可以分别对这几行进行向左缩进和向右缩进。=可以自动缩进。非常好用。

  6. 自动补全。Ctrl + n

  7. buffer常用操作。

    :ls列出buffer里面的所有文件。

    :bn打开buffer里面编号为n的文件。

Comments

2013-08-24