国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

ctags的使用

2019-11-14 10:19:23
字體:
供稿:網(wǎng)友

大多數(shù)的unix系統(tǒng)上都會預(yù)裝ctags,如果沒有可以使用在線安裝:sudo apt-get install ctags

生成tags文件

安裝成功后,要為源碼文件生成tags文件,才可享受ctags為閱讀代碼帶來的便利。$ ctags -R遞歸的為當(dāng)前目錄及子目錄下的所有代碼文件生成tags文件為某些源碼生成tags文件,使用如下命令$ ctags filename.c filename1.c file.h或$ ctags .c .h 使用tagstag是什么?一個位置。它記錄了關(guān)于一個標(biāo)識符在哪里被定義的信息,比如C或C++程序中的一個函數(shù)定義。這種tag聚集在一起被放入一個tags文件。這個文件可以讓Vim能夠從任何位置起跳達(dá)到tag所指示的位置-標(biāo)識符被定義的位置。在vim打開源碼時,指定tags文件,才可正常使用,通常手動指定,在vim命令行輸入:set tags=./tags(當(dāng)前路徑下的tags文件) 若要引用多個不同目錄的tags文件,可以用逗號隔開 或者設(shè)置 ~/.vimrc,加入一行,則不用手動設(shè)置tags路徑 : set tags=~/path/tags - 若要加入系統(tǒng)函數(shù)或全局變量的tag標(biāo)簽,則需執(zhí)行: ctags -I __THROW –file-scope=yes –langmap=c:+.h –languages=c,c++ –links=yes –c-kinds=+p –fields=+S -R -f ~/.vim/systags /usr/include /usr/local/include 并且在~/.vimrc中添加(亦可用上面描述的手動加入的方式): set tags+=~/.vim/systags 這樣,便可以享受系統(tǒng)庫函數(shù)名補全、原型預(yù)覽等功能了。 如果經(jīng)常在不同工程里查閱代碼,那么可以在~/.vimrc中添加: set tags=tags; set autochdir - CTRL+] 命令會取當(dāng)前光標(biāo)下的Word作為tag的名字并直接跳轉(zhuǎn)。這使得在大量C程序中進(jìn)行探索更容易一些。假設(shè)你正看函數(shù)”write block”,發(fā)現(xiàn)它調(diào)用了一個叫”write line”的函數(shù),這個函數(shù)是干什么的呢?你可以把光標(biāo)置于”write_line”上,按下CTRL+]即可。如果”write_line”函數(shù)又調(diào)用了 “write_char”.你當(dāng)然又要知道這個函數(shù)又是什么功能。同時,置光標(biāo)于”write_char”上按下CTRL+]。現(xiàn)在你位于函數(shù)”write_char”的定義處。 “:tags”命令會列出現(xiàn)在你就已經(jīng)到過哪些tag了: (ex command):tags 現(xiàn)在往回走。CTRL+T命令會跳到你前一次的tag處。在上例中它會帶你到調(diào)用了”write_char”的”write_line”函數(shù)的地方。CTRL+T可以帶一個命令記數(shù), 以此作為往回跳的次數(shù), 你已經(jīng)向前跳過了,現(xiàn)在正在往回跳,我們再往前跳一次。下面的命令可以直接跳轉(zhuǎn)到當(dāng)前tag序列的最后: (ex command) :tag 你也可以給它一個前輟, 讓它向前跳指定的步長. 比如”:3tag”。CTRL+T也可以帶一個前輟。這些命令可以讓你向下深入一個函數(shù)調(diào)用樹(使用CTRL+]), 也可以回溯跳轉(zhuǎn)(使用CTRL+T). 還可以隨時用”:tags”看你當(dāng)前的跳轉(zhuǎn)歷史記錄。

ctags中C語言的kind

c classes d macro definitions e enumerators (values inside an enumeration) f function definitions g enumeration names l local variables [off] m class, struct, and union members n namespaces p function PRototypes [off] s structure names t typedefs u union names v variable definitions x external variable declarations [off]


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 商南县| 当涂县| 平安县| 巧家县| 绵阳市| 博爱县| 思南县| 红原县| 小金县| 日照市| 三亚市| 乐业县| 武平县| 乌兰察布市| 河东区| 城固县| 汉寿县| 大连市| 鲁甸县| 卓资县| 南投市| 涟水县| 东兰县| 清涧县| 墨玉县| 南安市| 秭归县| 宾阳县| 区。| 育儿| 临颍县| 安岳县| 自贡市| 凯里市| 靖安县| 景东| 大埔县| 临江市| 泾阳县| 罗田县| 平谷区|