vim ctags 的使用


ubantu 先安裝 sudo apt-get install ctags

 

『基本功能使用方法』
常用命令列表:
        1.  $ ctags –R *      ($ 為Linux系統Shell提示符)
        2.  $ vi –t tag         (請把tag替換為您欲查找的變量或函數名)
        3. :ts                                (ts 助記字:tags list, “:”開頭的命令為VI中命令行模式命令)
        4. :tp                                (tp 助記字:tags preview)
        5. :tn                                (tn 助記字:tags next)
        6. Ctrl + ]
        7. Ctrl + 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 -t main
這個命令將打開定義“main”(變量或函數或其它)的文件,並把光標定位到這一行。

如果這個變量或函數有多處定義,在VI命令行模式
“:ts”命令就能列出一個列表供用戶選擇。   
“:tp”為上一個tag標記文件,
“:tn”為下一個tag標記文件。當然,若當前tags文件中用戶所查找的變量或函數名只有一個,“:tp,:tn”命令不可用。

最方便的方法是把光標移到變量名或函數名上,然后按下“Ctrl+]”,這樣就能直接跳到這個變量或函數定義的源文件中,並把光標定位到這一行。用“Ctrl+t”可以退回原來的地方。即使用戶使用了N次“Ctrl+]”查找了N個變量,按N次“Ctrl+t”也能回到最初打開的文件,它會按原路返回 。
更多功能通過命令man ctags或在Vim命令行下運行help ctags查詢。

注意:運行vim的時候,必須在“tags”文件所在的目錄下運行。否則,運行vim的時候還要用“:settags=”命令設定“tags”文件的路徑,這樣vim才能找到“tags”文件。
在完成編碼時,可以手工刪掉tags文件。

『閱讀說明』
1)Vim存在多個配置文件vimrc,比如/etc/vimrc,此文件影響整個系統的Vim。還有~/.vimrc,此文件只影響本用戶的Vim。而且~/.vimrc文件中的配置會覆蓋/etc/vimrc中的配置。這里我們只修改~/.vimrc文件。
    2)Vim的插件(plugin)安裝在Vim的runtimepath目錄下,你可以在Vim命令行下運行"set rtp“命令查看。這里我們選擇安裝在~/.vim目錄,沒有就創建一個。
    3)當本文說”在Vim命令行下運行cmdxx命令“時,意思是指在Vim的命令行模式下運行cmdxx命令,即在Vim的正常模式下通過輸入冒號":"進入命令行模式,然后緊接着輸入命令cmdxx。在后文描述中都會省略冒號":"輸入。
    4)如果沒有說明“在Vim命令行下運行某命令”,則是在shell中執行該命令。
    5)如果命令中間被空白符間隔或有與正文容易混淆的字符,我會用雙引號將命令與正文區分。所以讀者在實際操作時,不要輸入命令最前面和最后面引號。
    6)本文關於組合快捷鍵的描述,形如a-b形式的快捷鍵表示同時按下a鍵和b鍵,而形如"a-b c"形式的快捷鍵,則表示先同時按下a鍵和b鍵,然后放開ab鍵,再按下c鍵。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM