安裝如下幾個插件
taglist 以分割窗口顯示代碼結構預覽 下載地址:http://www.vim.org/scripts/script.php?script_id=273
stl STL語法高亮 下載地址:http://www.vim.org/scripts/script.php?script_id=2224
autocomplpop 語法自動補全 下載地址: http://www.vim.org/scripts/script.php?script_id=1879
OmniCppComplete 在鍵入 .或 -> 後c/c++結構體,類的自動補全 下載地址:http://www.vim.org/scripts/script.php?script_id=1520
autocomplpop的安裝
下載插件後解壓,直接複製到~/.vim目錄下,重啓vim 這時,可能出現如下錯誤提示:
***** L9 library must be installed! *****
需要安裝L9庫,下載地址: http://www.vim.org/scripts/script.php?script_id=3252
完成後解壓到~/.vim/plugin目錄即可
完成安裝
OmniCppComplete的安裝
同上,解壓後複製到~/.vim目錄下
下載cpp_src 地址:http://www.vim.org/scripts/script.php?script_id=2358
使用ctags生成cpp_src 的tags 命令:ctags -R –c++-kinds=+px –fields=+iaS –extra=+q
命令完成後,在cpp_src中就生成了一個tags文件,我把他改名爲stl_tags,並把cpp_src放到./.vim目錄下.
打開~/.vimrc 添加:
" 設置OmniCppComplete
set completeopt=menu,longest,menuone
let OmniCpp_NamespaceSearch = 2
let OmniCpp_GlobalScopeSearch = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_ShowPrototypeInAbbr = 1
let OmniCpp_MayCompleteDot = 1
let OmniCpp_MayCompleteArrow = 1
let OmniCpp_MayCompleteScope = 1
let OmniCpp_DefaultNamespaces = ["std", "_GLIBCXX_STD"]
let OmniCpp_SelectFirstItem = 2
let OmniCpp_DisplayMode=1
au CursorMovedI,InsertLeave * if pumvisible() == 0|silent! pclose|endif
"設置tags
set tags=tags
set tags+=~/.vim/cpp_src/stl_tags
set nocp
filetype plugin on
taglist的安裝
安裝方法同上,解壓複製進./.vim目錄即可
在~/.vimrc中添加:
"默認打開Taglist
let Tlist_Auto_Open=1
""""""""""""""""""""""""""""""
" Tag list (ctags)
""""""""""""""""""""""""""""""""
let Tlist_Ctags_Cmd = '/usr/bin/ctags'
let Tlist_Show_One_File = 1 "不同時顯示多個文件的tag,只顯示當前文件的
let Tlist_Exit_OnlyWindow = 1 "如果taglist窗口是最後一個窗口,則退出vim
let Tlist_Use_Right_Window = 1 "在右側窗口中顯示taglist窗口
stl的安裝
下載stl.vim
$ mkdir -p ~/.vim/after/syntax/cpp
$ cp stl.vim ~/.vim/after/syntax/cpp/
完成
效果圖: