Ctags 是 vim 下方便代碼閱讀的工具。儘管 ctags 也能夠支持其它編輯器,可是它正式支持的只有 vim。而且 vim 中已經默認安裝 ctags,它能夠幫助程序員很容易地瀏覽源代碼;ctags 最早是用來生成 C 代碼的 tags 文件,後來擴展成能夠生成各種語言的 tags,可是我主要仍是用來閱讀 C 源代碼。程序員
ctags更新地址:http://ctags.sourceforge.net/ 這個網站是 ctags 的官方網站,能夠下載到關於 ctags 的最新內容。vim
1) 用#define定義的宏
2) 枚舉類型變量的值
3) 函數的定義、原型和聲明
4) 名字空間(namespace)
5) 類型定義(typedef)
6) 變量(包括定義和聲明)
7) 類、結構體、枚舉類型、聯合
8) 類、結構體和聯合中成員變量或函數centos
若是是redhat或centos系統能夠直接使用yum在線安裝編輯器
[root@localhost ~]# yum install ctags
源碼位置生成tags文件函數
[root@localhost ~]# ctags -R *
1)直接在命令行上操做工具
[root@localhost ~]# vim -t main [root@localhost ~]# vim -t pos_create_task
結果:直接打開對應符號對應文件,並定位到該符號的定義位置。經常使用在知道符號,但不知道在哪一個文件模塊中的位置。網站
2)在vim的模式下使用": ta"命令spa
:ta main :ta pos_create_task
3)在光標指定位置下直接使用"ctrl + ]"
在光標指定的位置下直接使用 "crtl + ]" 就能夠定位到函數的定義位置;使用 "ctrl + t" 快捷鍵返回到上次跳轉以前的位置。.net
關於ctags的用法不少,如下是咱們列舉的部分:
-->"ctrl + t"退回到原來的地方
-->"[{"轉到上一個位於第一列的"{"
-->"}]"轉到下一個位於第一列的"{" /* 彷佛無論用 */
-->"{"轉到上一個空行
-->"}"轉到下一個空行
-->"gd"轉到當前光標所指的局部變量的定義
-->"*"轉到當前光標所指的單詞一次出現的地方
-->"#"轉到當前光標所指的單詞上一次出現的地方命令行
使用 vim 打開相關使用 tags 標記的源文件時,當前目錄要在 tags 所在目錄下執行 vim 命令。若是在其子目錄下邊執行 vim 打開相應文件,默認是使用不了 ctags 的跳轉功能的。解決的方式是,在 vim 的配置文件中 /etc/vimrc 或者 ~/.vimrc 中設置:set tags=/var/dz_resource/ineedle/soft/tags,這樣就能夠了。