biaoge's blog

以前端技术为主

Archive for the ‘vim’ tag

我的gVim插件和配置

with one comment

Vim(gVim)编辑器被誉为“编辑器之神”,经常需要处理文本的人用这款编辑器据说可以显著地提高工作效率,当然前提是你必须用得很熟练,我使用这款编辑器也有一个多月了,但还远远称不上熟练,现在用它处理文本的速度可能还达不到之前用Editplus的速度,不过我相信随着我对它的秉性越来越了解,最终总会有所收获的。

这款编辑器的特点是命令多,学习起来有一定的难度,而且要花不少时间来慢慢习惯它,一旦熟练之后就很少会用到鼠标,大部分的操作直接通过键盘完成,手不用在鼠标和键盘间换来换去。

windows的下的gVim在安装完毕之后默认是开启了mswin.vim插件的,这个插件使得vim模拟了大部分windows软件中常见的快捷键,如Ctrl+a、Ctrl+c、Ctrl+v、Ctrl+x、Ctrl+z、Ctrl+y等等,此外还模拟了鼠标拖拽文本,但恰恰是这些功能将Vim本身的一些重要功能覆盖了,例如在不开启mswin.vim的gVim中,Ctrl+a或Ctrl+x的作用是增大或减小一个数字,所以开启了mswin.vim的Vim就变得四不像了,正宗的Vim用户是不会开启这个插件的,许多Vim达人都建议关掉它,使用原汁原味的Vim,只有使用原汁原味的Vim才能真正体现它的威力。最初关闭mswin.vim的时候怎么用都不习惯,不过坚持一段时间就好多了。

gVim的可定制性极强,可以找到很多插件来扩展它的功能,下面是我现在所使用的vim插件(按字母顺序排列):

  • bufexplorer 快速查看当前打开的所有缓冲区,自从装了mini buffer explorer之后,这款插件就用得很少,不过一直没删掉,留着备用也无妨;
  • FindFile 快速查找文件,但几乎没用过;
  • GetLatestVimScripts 输入一条命令之后,gVim会检查你的插件是否有更新,并将更新下载到本地的一个目录;
  • matrix 纯粹是娱乐,模仿骇客帝国的屏幕保护,很酷;
  • mini buffer explorer 在顶部、底部或者侧面用一个小窗口显示所有打开的缓冲区的名称,还可以通过Ctrl+Tab键切换缓冲区,类似于tab但又不是tab;
  • NERD Commenter 添加代码注释的插件,支持多种语言;
  • NERD tree 在侧面开一个小窗口浏览文件目录;
  • SearchComplete 搜索的时候居然也要自动完成,懒惰到极点;
  • snippetsEmu 模仿苹果下的编辑器textMate自动完成功能的一款插件,对我来说是必备的,习惯了editplus自动完成功能的人绝对不能少不了这款插件,自动完成的配置文件可以自定义,不过比Editplus里面要麻烦一些;
  • SuperTab 用tab键代替omni-complete的Ctrl+x Ctrl+o;
  • surround 方便用括号、引号或者html标签等将一部分文本包起来;
  • template file loader 创建文件的时候载入一个模板文件,例如在Editplus里面创建html文件时自动载入一个html模板,习惯了Editplus就不能少了这个;
  • YankRing 管理寄存器的插件,很实用;
  • ZoomWin 用Ctrl+o使当前窗口满屏显示,关闭其他窗口,再按Ctrl+o返回。

还有一个很有用的小技巧是用SVN来管理gVim的插件和配置文件。如果你要在多台电脑上运行gVim,例如工作用的电脑和家用的电脑上,而且你经常要修改vimrc或者snippetsEmu的Snippets,那么保持两台电脑上的配置文件同步是一件相当恼人的事情,要么用U盘或者邮箱把配置文件运来运去,要么在一台机器上改过之后,在另一台上再改一次,多么的烦恼!这时一个绝好的解决方案是通过SVN来管理配置文件,Google code的Project Hosting为我们提供了免费的SVN服务器,在上面新建一个项目就可以用SVN管理你的项目了,例如我的配置文件放到了这里,我把vimfiles里面的所有文件都放在上面了。每次改动之后提交一遍,到另一台机器上更新下来就好了。.vimrc的内容和配置文件如何存放可以参考amix.dk,不过我觉得文件夹名直接用vimfiles比vim_local更好,用vimfiles就可以去掉set runtimepath那句。

Written by admin

February 13th, 2009 at 10:45 pm

Posted in Uncategorized

Tagged with , , ,