1. 程式人生 > 實用技巧 >gVIM關於Taglist中ctags外掛的配置(報錯解決)

gVIM關於Taglist中ctags外掛的配置(報錯解決)

對於Taglist開啟檔案時,無法正常顯示相關結構,報錯:

Failed to generate tags for ....

原因為:不能建立tags,導致開啟檔案時無法分析,不能正常顯示檔案結構

解決方法:路徑中不能有空格或中文,如直接扔在D盤下,let Tlist_Ctags_Cmd = 'd:\ctags.exe' (此為修改_vimrc檔案中的配置)


修改完成後,再次重新開啟檔案,即可以正常分析顯示。

172324633.jpg


熟練的使用ctags僅需記住下面七條命令:(很簡單吧,呵呵)

1$ctags –R * ($Linux系統Shell提示符)

2.$ vi –t tag (請把tag替換為您欲查詢的變數或函式名)

3:ts(ts助記字:tagslist, “:”開頭的命令為VI中命令列模式命令)

4:tp(tp助記字:tagspreview)---此命令不常用,可以不用記

5:tn(tn助記字:tagsnext) ---此命令不常用,可以不用記

6Ctrl+ ]跳到游標所在函式或者結構體的定義處

7Ctrl+ T返回查詢或跳轉

下面我們逐條的解釋上面的命令:“$ctags –R*”:“-R”表示遞迴建立,也就包括原始碼根目錄(當前目錄)下的所有子目錄。“*”表示所有檔案。這條命令會在當前目錄下產生一個“tags”檔案,當用戶在當前目錄中執行vi時,會自動載入此tags檔案。Tags檔案中包括這些物件的列表:用#define

定義的巨集列舉型變數的值函式的定義、原型和宣告名字空間(namespace)型別定義(typedefs)變數(包括定義和宣告)類(class)、結構(struct)、列舉型別(enum)和聯合(union)類、結構和聯合中成員變數或函式VIM用這個“tags”檔案來定位上面這些做了標記的物件。剩下的命令就是定位這些物件的方法:“$vi –t tag” :在執行vim的時候加上“-t”引數,例如:[/usr/src]$vim -tmain這個命令將開啟定義“main”(變數或函式或其它)的檔案,並把游標定位到這一行。如果這個變數或函式有多處定義,在VI命令列模式“:ts”命令就能列出一個列表供使用者選擇。“:tp”
為上一個tag標記檔案,“:tn”為下一個tag標記檔案。

當然,若當前tags檔案中使用者所查詢的變數或函式名只有一個,“:tp,:tn”命令不可用。

(最方便的方法是把游標移到變數名或函式名上,然後按下“Ctrl+]”,這樣就能直接跳到這個變數或函式定義的原始檔中,並把游標定位到這一行。用“Ctrl+T”可以退回原來的地方。即使使用者使用了N次“Ctrl+]”查找了N個變數,按N次“Ctrl+t”也能回到最初開啟的檔案,它會按原路返回 。 ^_^

注意:執行vim的時候,必須在“tags”檔案所在的目錄下執行(若當前目錄下沒有tags檔案,則會報錯,不能正常顯示。故在開啟檔案時,需要先在當前目錄生成tags,完成後再將其刪除)。否則,執行vim的時候還要用“:settags=”命令設定“tags”檔案的路徑,這樣vim才能找到“tags”檔案。在完成編碼時,可以手工刪掉tags檔案(帚把不到,灰塵不會自己跑掉^_^)。

(_vimrc配置ctags:set tags=tags) tags為命令ctags -R * 生成的


轉載於:https://blog.51cto.com/heshw/1302294