1)安裝cygwin+ctags+cscope 下載setup.exe,以管理員身份運(yùn)行; 搜索vim, ctags, cscope,選中,taglist沒(méi)有,后續(xù)自己?jiǎn)为?dú)下載; 安裝完成后,桌面上的cygwin terminal好像不能用; 找到C:\cygwin\Cygwin批處理文件,運(yùn)行就能打開(kāi)終端; 注:我后來(lái)又重裝了一次,這次桌面上的cygwin terminal快捷鍵是可用的,看來(lái)前幾次安裝就是出了問(wèn)題。 2)找到vi的配置文件: 運(yùn)行vi,:echo $VIM 可以查看VIM的安裝目錄,我的安裝目錄是/usr/share/vim,對(duì)應(yīng)window的C:\cygwin\usr\share\vim,其實(shí)我的安裝目錄下還有一級(jí)vim73目錄,的配置文件模板就是/usr/share/vim/vim73/vimrc_example.vim,打開(kāi)它,有段說(shuō)明,按照說(shuō)明將這個(gè)vimrc_example.vim復(fù)制成~/.vimrc文件,這個(gè)就是vi的配置文件了。 3)配置ctags cd到代碼目錄 ctags -R * 生成tags文件; 告訴vi tags索引文件的位置: 在~/.vimrc中加入一行: set tags=<tags file path> 例如: set tags=~/linux-0.11/tags 重啟vi之后,你現(xiàn)在可以使用Ctrl+]跳轉(zhuǎn)了,把光標(biāo)放到某個(gè)函數(shù)調(diào)用上,試試看。 4)安裝taglist 到官網(wǎng)下載taglsit,是一個(gè)壓縮包,解壓后會(huì)看到兩個(gè)文件夾:plugin和doc,把這兩個(gè)文件夾里的內(nèi)容復(fù)制到vi已有的對(duì)應(yīng)目錄:/usr/share/vim/vim73/plugin和/usr/share/vim/vim73/doc 重啟vi,taglist就自動(dòng)生效了,在vi中輸入命令:Tlist,你就會(huì)看到Taglist窗口出現(xiàn)了。 5)配置cscope 在vi中使用cs命令的時(shí)候,vi默認(rèn)尋找cscope可執(zhí)行程序,可是我們?cè)诎惭bcygwin的時(shí)候裝的是mlcscope,所以我們需要做個(gè)鏈接: cd /usr/bin ln -s mlcscope cscope cd到代碼目錄,搜索所有你感興趣的文件,例如: find -name "*.s" -o -name "*.c" > file_list.cs 生成cscope索引文件 cscope -Rbkq -i file_list.cs 告訴vi cscope索引文件的位置: 在~/.vimrc中加入一行: cs add <cscope.out path> <pre_path>,例如: cs add ~/linux-0.11/cscope.out ~/linux-0.11/ <pre_path>是cscope在使用索引文件查找源碼文件時(shí)候的基準(zhǔn)位置; 比如cscope.out里面記錄了一個(gè)init/main.c文件,cs在找這個(gè)文件的時(shí)候就知道從~/linux-0.11為基準(zhǔn)找int/main,也就是說(shuō)cs會(huì)找~/linux-0.11/init/main.c文件; 如果你在生成cscope.out索引文件的時(shí)候使用了-P參數(shù),則索引文件里就已經(jīng)記錄了每個(gè)源碼文件的絕對(duì)路徑,于是你在使用cs add加載數(shù)據(jù)庫(kù)的時(shí)候就不需要再制定<pre_path>了; 好了,現(xiàn)在可以在vi中使用cs搜索代碼了,試試:cs f g foo查找foo的定義; 6) 為了讓vi更好用,在.vimrc文件中加入這么幾行: " add by mayq " set tag database set tags=~/linux-0.11/tags " set cscope database cs add ~/linux-0.11/cscope.out ~/linux-0.11/ " show line number set nu " set current line hightlight, forground color=white, backgournd color=dark " red set cursorline hi CursorLine cterm=NONE ctermbg=darkred ctermfg=white hi CursorColumn cterm=NONE ctermbg=darkred ctermfg=white " taglist setting let Tlist_Use_LEFT_Window=1 let Tlist_File_Fold_Auto_Close=1 let Tlist_Show_One_File=1 let Tlist_GainFocus_On_ToggleOpen=1 let Tlist_Exit_OnlyWindow=1 let Tlist_Auto_Open=1 nmap tl :Tlist<cr> " end mayq |
|
來(lái)自: Rainboy913 > 《Gvim》