您的位置:首页 > 其它

ubuntu中配置完美Vim

2014-06-23 06:45 218 查看
1、安装VIM

$sudo apt-get install vim-full

2、安装中文帮助文档(因为默认只安装了英文帮助文档)

http://vcd.gro.clinux.org

下载以后是一个zip归档文件,解压后执行

./vimcdoc.sh -i

这会安装帮助文档到~/.vim/

3、修改~/.vimrc配置文件

$vim ~/.vimrc

:read $VIMRUNTIME/vimrc_example.vim

在文件最后加入以下语句

set tabstop=4 "我是注释

set shiftwidth=4

set softtabstop=4

set nu "显示行号

colorscheme evening "颜色配置文件在/usr/shar/vim

添加到.vimrc///增加自启动功能
autocmd BufRead *  25vsp  ./


"/vim72/colors/目录下

4、安装目录浏览器插件NERD Tree

下载地址:http://linux.softpedia.com/get/Utilities/NERD-tree-36487.shtml

下载以后解压缩为NERD Tree目录

下面有两个目录doc和plugin

$cp doc/* ~/.vim/doc/

$cp plugin/* ~/.vim/plugin

5、检查效果

$vim ~/.vimrc

在VIM中输入:NERDTree

哈哈,出来了。

需要用到的插件:
taglist需要ctags支持
ctags.exe:http://ctags.sourceforge.net/
taglist显示tag列表
taglist:http://www.vim.org/scripts/script.php?script_id=273
显示buf列表:
bufexplorer:http://www.vim.org/scripts/script.php?script_id=42
Nerd_Tree文件浏览
Nerd_tree:http://www.vim.org/scripts/script.php?script_id=1658
界面管理插件:
winmanager:http://www.vim.org/scripts/script.php?script_id=95

一、ctags:
下载解压后是源码,感觉就那个exe文件有点用。直接放到一个目录里,D:\ctags58。
设置一下环境变量。path=D:\ctags58。这样可以直接运行目录下面的ctags.exe文件。或者直接把ctags.exe放入windows的目录里。
vimrc中的设置:

二、taglist设置:
下载解压到相应的vim文件夹中。
vimrc中设置:

启动自动打开这个选项暂时不设置。后面要让winmanager调用taglist。

三、bufexplorer:
下载解压,没啥说的。

四、winmanager:
下载解压,vimrc中的设置:

以上3个插件安装设置完毕后,基本的界面功能就可以实现了。按F8可以打开/关闭界面。同时显示taglist和fileexplorer。在fileexplorer窗口中按<c-n>可以切换到bufexplorer窗口。
上述设置好后,有3个问题:
1 我想让插件显示在右侧,但是winmanager里面没有此选项
2 进入vim时候不能自动打开winmanager,winmanager不像taglist支持该功能
3 退出时不会像只有taglist时候那样,退出当前文件就会退出vim了
经过多次修改代码终于实在了上述3个功能。

五、将插件显示在右侧
打开winmanager.vim,在function! <SID>StartWindowsManager()函数中修改:
将:wincmd H 修改为wincmd L:

六、进入vim自动打开winmanager
这个功能作为可选功能,我们可以在vimrc中设置:

就可以让winmanager自动打开。

在winmanager.vim中修改:

七、退出缓冲区时,自动退出vim

这个功能是参考了taglist的自动退出功能,在taglist.vim中修改的。
函数:function! s:Tlist_Window_Exit_Only_Window()中的winbunr(2)改为winbunr(3),即只剩2个窗口时关闭,考虑到2个窗口肯定是同时存在,所以这样还是可行的:

同时在vimrc中需要设置:

winmanager自带的fileexplorer这个插件实在是比较差。最重要的一点是fileexplorer不能自动更新,如果通过其他的途径修改了文件夹中的内容,fileexplorer是不会显示的。相对而言Nerd_Tree功能就比较强大了。下面要把Nerd_Tree加入winmanager。
四、Nerd_tree:
下载解压,打开NERD_tree.vim,按照winmanager的说明,在最后加入下面代码:

同时把在vimrc中:

原来的设置注释掉。加好后,发现每次打开winmanager都会出现一个空白的buffer。试验了好多次,但是Nerd_tree调用的函数就是会打开一个新窗口。因为如此,将bufExplorer和NERD_Tree放在一起会显示不正常。NERD_Tree放在下面的窗口也会出错,实在比较郁闷。。。。看了下NERD_Tree的代码,没看懂,只好再次改winmanager的代码了。

打开winmanager.vim,找到函数function! <SID>ToggleWindowsManager(),加入两行,修改后整个函数如下:

加个注释,以免以后忘掉了,如果不想用nerd_Tree了,这2句话还得删掉。

另外打开时的命令和关闭时的命令也得同时修改了,试验了很多次:
taglist.vim中,找到下面的代码:

将这段代码修改为:

winmanager中:刚才添加的自动执行命令要改为:

这样所有的功能就实现了。在taglist窗口使用ctrl+n可以转换到bufexplorer窗口。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: