我用的是ubantu 64位的.
主要是兩個東西,第乙個是ctags,omnicppcomplete.
網頁上有安裝說明,我是按照他說的,放到了~/.vim這。
生成ctags:
主要是庫函式和當前工程:
1.庫函式:
進入到這個目錄下執行:
ctags -r --sort=1 --c++-kinds=+p --fields=+ias --extra=+q --language-force=c++ -f cpp cpp_src
這是生成tags的命令,具體的選項的含義可以去網上搜一下,執行完成了之後~/.vim/tags的目錄下不僅有那個標頭檔案,還多了乙個名字為cpp的檔案,這就是我們剛才生成的標準c++庫的tags.
我們自己工程的cpp生成tags的方法:
我們在用vim編輯的時候最好,寫一段就生成一段.我們可以在vim配置檔案中進行設定,編輯**的時候按下某一些鍵就可以在我們工程目錄下生成tags。
這是我的vim配置:
set tags+=~/.vim/tags/cpp
set tags+=$myproject/tags
map :!ctags -r --c++-kinds=+pl --fields=+ias --extra=+q .
前面兩句就是tags的路徑,$myproject是我工程的環境變數。最後一句的意思就是我寫**的時候,在命令的模式按下ctrl+f12就會在我工程的路徑下生成tags。
然後就是設定omnicppcomplete.可以照著omnicppcomplete給的幫助文件進行設定,我的設定是
filetype plugin on
syntax enable
let omnicpp_maycompletedot = 1 " autocomplete with .
let omnicpp_maycompletearrow = 1 " autocomplete with ->
let omnicpp_maycompletescope = 1 " autocomplete with ::
let omnicpp_selectfirstitem = 2
let omnicpp_namespacesearch = 2
let omnicpp_showprototypeinabbr = 1
let omnicpp_globalscopesearch=1
let omnicpp_displaymode=1
let omnicpp_defaultnamespaces=["std"]
我在我的myproject下新建了乙個測試的.cpp檔案。先測試了一下我自己的類能不能補全。
已經自動補全了。
再來測試一下標準庫,用vector做為我的例子,如圖:
s是乙個vector,我輸入p就自動進行提示了。
現在只是有補全,還沒有函式引數,可以使用code_complete檢視鏈結
事實上,vim自己提供了很多的補全函式,可以到vim的目錄下,裡面有乙個autoload(我電腦是/usr/share/vim/vim74)裡面你會發現有很多complete函式對應不同的檔案型別,
要想使用這些函式,可以在你的vimrc中加入(以python為例,其他類似):autocmd filetype python set omnifunc=pythoncomplete#complete,其中omnifunc這個可以使用help omnifunc檢視使用方式,這裡使用了filetype,前提是filetype plugin on 開啟了,後面的函式名字,大家可以開啟autoload下的*.vim檔案檢視函式的名字。
自動新增括號:
開啟vim的配置檔案,加入以下**
:inoremap ( ()i
:inoremap ) =closepair(')'):inoremap o
:inoremap } =closepair('}'):inoremap [ i
:inoremap ] =closepair(']'):inoremap " ""i
:inoremap ' ''i
function! closepair(char)
if getline('.')[col('.') - 1] == a:char
return "\"
else
return a:char
endif
endfunction
就可以了。
在vim中呼叫g++,gcc,gdb什麼的。
map :call compilerun()func! compilerun()
exec "w"
exec "! g++ -o %< %"
exec "! ./%
endfunc
map :call rungdb()func! rungdb()
exec "w"
exec "!g++ -g -o %< %"
exec "!gdb ./%
endfunc
在命令模式下按下f5呼叫compilerun(),第一句是儲存檔案,第二句就是呼叫g++ ,%就是當前檔案,比如叫test.cpp,%《就是test。我在我電腦上是通過了的,沒有弄c的編譯選項,加上應該很easy。 vim外掛程式自動補齊 vim自動補全
1 單詞補全 ctrl n 當輸入完第乙個字母後,再按ctrl n,vim會自動出現下拉列表,且預設選中第乙個單詞 繼續按ctrl n可以上下選擇,但如果緩衝區沒有可菜單詞,那麼下拉列表不會有任何選項 ctrl p 功能同上,只是預設選中的是列表最後乙個單詞 vim新建乙個檔案,輸入下面的內容,測試...
vim外掛程式自動補齊 Linux 下定製vim
在linux下開發經常都會在命令列上操作,但是適應了ide環境都會吐槽難用,所以我們要定製化自己的vim。vim vimrc set nu 設定顯示行號 set backspace 2 能使用backspace回刪 syntax on 語法檢測 set ruler 顯示最後一行的狀態 set bg ...
vim外掛程式自動補齊 Vim 自動補全等外掛程式配置操作
vim的所有配置都是寫在.vimrc這個檔案裡的,我們先建立該檔案。cd touch vimrc vim vimrc 建立完成後,寫入一些基礎配置,引號內是注釋 去掉vi的一致性 set nocompatible 顯示行號 set number 隱藏滾動條 set guioptions r set ...