在 的Scripts中找到OmniCppComplete,SuperTab,a.vim,csupport脚本。
把安装好的vim目录下的vimrc_example.vim复制到用户目录下取明为.vimrc
再建一个.vim目录,把所有脚本解压,到这个目录里。
最后改变.vim\after\ftplugin\c.vim ,cpp.vim也一样,我把他再复制一个h.vim以便头文件中的处理也一样。c.vim内容如下
set tabstop=4
set softtabstop=4
set shiftwidth=4
set expandtab
map :!ctags -R --c++-kinds=+p --language-force=c++ --fields=+iaS --extra=+q .
set tags+=~/mytags/works/tags
set tags+=~/mytags/stl/tags
set tags+=~/mytags/std/tags
" OmniCppComplete initialization
call omni#cpp#complete#Init()
let OmniCpp_NamespaceSearch = 2
let OmniCpp_ShowPrototypeInAbbr = 1
let OmniCpp_MayCompleteScope = 1
let OmniCpp_SelectFirstItem = 1
let OmniCpp_LocalSearchDecl = 1
autocmd CursorMovedI * if pumvisible() == 0|pclose|endif
autocmd InsertLeave * if pumvisible() == 0|pclose|endif
set completeopt+=longest,menu,preview
set smartindent
set autoindent
set cindent
经过以上配置,还有最重要的事情就是ctags的使用了
set tags+=~/mytags/works/tags
set tags+=~/mytags/stl/tags
set tags+=~/mytags/std/tags
这几个需要的文件生成方法如下,在自己目录里建一个mytags,std是标准库的tags
ctags -R --c++-kinds=+p --language-force=c++ --fields=+iaS --extra=+q /usr/include
在std目录里使用上面命令来生成tags文件
当然,要查看/usr/include里面到底有没有文件,如果没有那就要安装开发库。
经过以上配置,vi具有了c/c++的语法高亮,自动完成等功能,可以用:cope命令打开错误窗口,可以在vi上执行make命令。比较方便的程序编码器就可以使用了。