日常生活小技巧 -- vim 中 ctags 的安装和使用
?ctags 主要是用來(lái)創(chuàng)建 Vim 可以使用的 tag 索引文件的。
一、下載安裝
Ubuntu下 執(zhí)行?sudo apt-get install ctags
二、建立索引文件
在你想要建立索引文件的文件夾目錄下執(zhí)行:
sudo ctags -R *
然后可以發(fā)現(xiàn)該目錄下多了一個(gè) tags ,它就是索引文件
三、設(shè)置索引文件位置
但是 vim 里現(xiàn)在還不知道 tags 文件的位置,你需要設(shè)置一下。
# vi /root/.vimrc?
//在文件最后添加 tags 位置
set tags=/home/tarena/project/tags
如果不設(shè)置索引文件位置,然后執(zhí)行 ctrl+] 則會(huì)出現(xiàn)錯(cuò)誤:
E433: 沒(méi)有 tag 文件
E426: 找不到 tag: XXXXX
四、使用方法
vi -t tagname ? ?跳轉(zhuǎn)到標(biāo)簽tagname定義的地方
:ta tagname ? ?跳轉(zhuǎn)到標(biāo)簽tagname定義的地方
:tags ? ?查看到達(dá)當(dāng)前位置所經(jīng)過(guò)的標(biāo)簽路徑
五、跳轉(zhuǎn)快捷鍵
ctrl+] ? ?跳轉(zhuǎn)至光標(biāo)所在對(duì)象定義之處
ctrl+t ? ?返回跳轉(zhuǎn)前位置
六、其他快捷鍵
ctrl+g ?或者 :f ? ?查看當(dāng)前文件名和所在行號(hào)
shift+8 ? ?查找光標(biāo)所在處的對(duì)象
然后按快鍵鍵 N 向后查找,按 shift+N 為向前查找
想了解更多,參看:C語(yǔ)言再學(xué)習(xí) -- 常用快捷鍵
七、輔助軟件 taglist
參看:vim插件taglist的安裝和使用
taglist 提供了源碼的結(jié)構(gòu)化瀏覽功能,可將源碼中定義的類(lèi)、函數(shù)、變量等以樹(shù)結(jié)構(gòu)顯示,層次關(guān)系可一目了然,而且于快速定位并查看。前提是必須要安裝 ctags。
(1)下載
下載:Click on the package to download.
(2)安裝
解壓到 ~/.vim 目錄下
# unzip?taglist_46.zip
?
進(jìn)入doc目錄 打開(kāi) vim 在命令模式下輸入 helptags .
可以看到 doc 文件夾下多了一個(gè) tags
這一步的作用是為了導(dǎo)入 taglist.txt 這個(gè)幫助文件,那么后面便可以使用 help taglist.txt 來(lái)詳細(xì)查看手冊(cè)。
比如現(xiàn)在再打開(kāi) vim,在命令模式下輸入 help taglist.txt,可以看到幫助手冊(cè)。
到此安裝完成。
(3)使用
使用 vim 打開(kāi)一個(gè)文件,然后在命令模式下輸入 Tlist,可以看到有如下這種界面了。
關(guān)閉界面同樣是在命令模式下輸入 Tlist
ctrl+ww ? ?切換左右窗口。
在左側(cè)界面選擇要跳轉(zhuǎn)的函數(shù),回車(chē)即可跳轉(zhuǎn)到右邊的函數(shù)對(duì)應(yīng)位置
(4)快捷鍵
taglist窗口中可使用的快捷鍵:
<CR> 跳到光標(biāo)下tag所定義的位置,用鼠標(biāo)雙擊此tag功能也一樣(但要在vimrc文件中打開(kāi)此項(xiàng)功能) o 在一個(gè)新打開(kāi)的窗口中顯示光標(biāo)下tag <Space> 顯示光標(biāo)下tag的原型定義 u 更新taglist窗口中的tag s 更改排序方式,在按名字排序和按出現(xiàn)順序排序間切換 x taglist窗口放大和縮小,方便查看較長(zhǎng)的tag + 打開(kāi)一個(gè)折疊,同zo - 將tag折疊起來(lái),同zc * 打開(kāi)所有的折疊,同zR = 將所有tag折疊起來(lái),同zM [[ 跳到前一個(gè)文件 ]] 跳到后一個(gè)文件 q 關(guān)閉taglist窗口 <F1> 顯示幫助 其他一些設(shè)置選項(xiàng)可在vimrc腳本中添加,如:
"設(shè)置ctags路徑 let Tlist_Ctags_Cmd = '/usr/bin/ctags'"啟動(dòng)vim后自動(dòng)打開(kāi)taglist窗口 let Tlist_Auto_Open = 1"不同時(shí)顯示多個(gè)文件的tag,僅顯示一個(gè) let Tlist_Show_One_File = 1"taglist為最后一個(gè)窗口時(shí),退出vim let Tlist_Exit_OnlyWindow = 1"taglist窗口顯示在右側(cè),缺省為左側(cè) let Tlist_Use_Right_Window =1"設(shè)置taglist窗口大小 "let Tlist_WinHeight = 100 let Tlist_WinWidth = 40"設(shè)置taglist打開(kāi)關(guān)閉的快捷鍵F8 noremap <F8> :TlistToggle<CR>"更新ctags標(biāo)簽文件快捷鍵設(shè)置 noremap <F6> :!ctags -R<CR>
總結(jié)
以上是生活随笔為你收集整理的日常生活小技巧 -- vim 中 ctags 的安装和使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: springcloud hystrix入
- 下一篇: 2022图书出版行业营销白皮书