Ctags是一個用來爲源文件中的標識符(如變量、函數、類成員、宏定義等)創建索引文件的程序。這些tags文件能被編輯器或其它工具用來快速查找定位源代碼中的符號(tag/symbol),如變量名,函數名等。
Tags文件中包括這些對象的列表:
1、用#define定義的宏
2、枚舉型變量的值
3、函數的定義、原型和聲明
4、名字空間(namespace)
5、類型定義(typedefs)
6、變量(包括定義和聲明)
7、類(class)、結構(struct)、枚舉類型(enum)和聯合(union)
8、類、結構和聯合中成員變量或函數
使用說明:
1、安裝:sudoapt-get install ctags
2、移到相應目錄:cd/usr/include
3、生成索引文件:sudoctags -R
4、打開要查找的變量名或函數名:vi-t tag (請把tag替換爲您欲查找的變量或函數名)例如:vi –t size_t
5、使用ctrl+]跟進,使用ctrl+t後退
跳轉快捷鍵:
ctrl-] :跳轉至光標所在對象定義之處
ctrl-t :返回跳轉前位置
[n]ctrl-t :[n]爲數字,向回跳轉n次;等價於重複n次ctrl-t操作
命令解釋:
“$ctags –R *”:“-R”表示遞歸創建,也就包括源代碼根目錄(當前目錄)下的所有子目錄。“*”表示所有文件。這條命令會在當前目錄下產生一個“tags”文件,當用戶在當前目錄中運行vi時,會自動載入此tags文件。
定位這些對象的方法:
“$vi –t tag” :在運行vim的時候加上“-t”參數,例如:[/usr/src]$vim -t main
這個命令將打開定義“main”(變量或函數或其它)的文件,並把光標定位到這一行。
最方便的方法是把光標移到變量名或函數名上,然後按下“Ctrl+]”,這樣就能直接跳到這個變量或函數定義的源文件中,並把光標定位到這一行。用“Ctrl+t”可以退回原來的地方。即使用戶使用了N次“Ctrl+]”查找了N個變量,按N次“Ctrl+t”也能回到最初打開的文件,它會按原路返回。
設置索引文件的位置:
Vim在運行過程中需要知道tag的索引文件位置,如果不指定的話,Vim會在當前目錄下尋找名爲tags的文件作爲tag索引文件。
在.vimrc添加:settags=/home/lfy/XX/XX/tags這裏一定要用絕對路徑。