青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

ctags 的一些實用細節??!

   ctags在linux下的作用我就不再贅述了,這里是剛剛看到的一篇文章,是一些使用的ctags細節。
      轉自:  http://blog.chinaunix.net/uid-20874550-id-2412585.html (此貼也是轉載的   peakflys注)

ctags 在使用vim編程和瀏覽代碼是非常有用??梢杂肅TRL+]和CTRL+t 來回跳轉關鍵字(peakflys注:在有些環境下CTRL+] 快捷鍵不出現同名跳轉列表,而是直接跳轉到查找到的第一條記錄,此時可以使用g+]代替  ) 。
先生成自己工作目錄的tags。最簡單粗暴用法:

$cd yourwork $ctags -R *

這樣會生成一個tags文件。
不過,這種有個問題,成員變量沒有包含在里面。所以自動完成對象的成員時沒有提示。
解決辦法:

$ctags -R --fields=+iaS --extra=+q *

–fields=[+|-]flags
–fields指定tags的可用擴展域(extension fields),以包含到tags入口。
i:繼承信息Inheritance information
a:類成員的訪問控制信息 Access (or export) of class members
S: 常規簽名信息,如原型或參數表 Signature of routine(e.g. prototype or parameter list)
–extra=[+|-]flags
指定是否包含某種擴展信息到tags入口。
q:包含類成員信息(如c++,java,Eiffel)。
但就算是C 語言的結構,也需要這兩個參數設置才能獲取成員信息。

這樣就能自動完成結構和類的成員了。

但是,對于系統的函數,還是沒有跳轉。如socket定義,inetaddr_in這樣的結構沒有自動變量完成。
最簡單做法:

$ctags --fields=+iaS --extra=+q -R -f ~/.vim/systags /usr/include /usr/local/include

然后在.vimrc里設置

set tags+=~/.vim/systags

這樣雖然基本能跳轉到系統函數定義,一個問題是某些系統函數并沒有加入到systags里。
如/usr/incluce/socket.h的socket系列函數,memset等很多關鍵函數都沒有到tag里:

extern int listen (int __fd, int __n) __THROW;

這是因為 __THROW的宏定義讓ctags不再認為該系列函數是函數。
同理,如memcpy系列函數:
如/usr/include/string.h的

extern int strcmp (__const char *__s1, __const char *__s2)      __THROW __attribute_pure__ __nonnull ((1, 2));

還有attribute_pure ,nonull等屬性,都需要忽略。如果需要#if 0里面的定義,可以–if0=yes來忽略 #if 0這樣的定義。

$ctags -I __THROW -I __attribute_pure__ -I __nonnull -I __attribute__ --file-scope=yes --langmap=c:+.h --languages=c,c++ --links=yes --c-kinds=+p --c++-kinds=+p --fields=+iaS --extra=+q -R -f ~/.vim/systags /usr/include /usr/local/include

這樣.vim/systags里面是全的,但內容過多。一個函數定義的跳轉,會有幾十個候選。這時我們可以簡化一下,將-R去掉,自己指定目錄:

$ctags -I __THROW -I __attribute_pure__ -I __nonnull -I __attribute__ --file-scope=yes --langmap=c:+.h --languages=c,c++ --links=yes --c-kinds=+p --c++-kinds=+p --fields=+iaS --extra=+q  -f ~/.vim/systags /usr/include/* /usr/include/sys/* /usr/include/bits/*  /usr/include/netinet/* /usr/include/arpa/* /usr/include/mysql/*

還可以包含一些自己編程需要的路徑。注意后面加*號。
這樣生成的系統tags就少多了。不會有太多不相干的定義。


(peakflys補充:tags有一個小技巧,在vimrc文件中set tags=tags; (注意有分號),在vi中使用定位快捷鍵時會先在當前目錄中查找tags文件,找不到的話,就會到父目錄中找,依次類推,這樣 你在編輯一個大工程時,只需要在最上一層建立一個tags文件,之后可以任意切換到工程子目錄里去操作!)

posted on 2012-12-17 12:39 peakflys 閱讀(10309) 評論(0)  編輯 收藏 引用

<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

導航

統計

公告

人不淡定的時候,就愛表現出來,敲代碼如此,偶爾的靈感亦如此……

常用鏈接

留言簿(4)

隨筆分類

隨筆檔案

文章檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲高清视频一区二区| 亚洲美女中文字幕| 亚洲精品久久久久久久久久久| 国产农村妇女毛片精品久久麻豆 | 久久九九免费视频| 校园激情久久| 久久久亚洲高清| 欧美不卡在线| 国产精品jizz在线观看美国| 99国产精品99久久久久久粉嫩| 欧美激情偷拍| 在线亚洲欧美专区二区| 亚洲综合精品| 久久综合五月| 国产精品成人一区二区网站软件| 国产日韩欧美三区| 亚洲精品久久久久中文字幕欢迎你| 日韩一区二区电影网| 欧美一级专区| 欧美激情视频一区二区三区免费| 一本色道久久综合亚洲精品小说 | 亚洲欧美影音先锋| 久久欧美中文字幕| 亚洲日本一区二区三区| 99国产精品国产精品久久| 午夜精品久久久久久久蜜桃app | 日韩视频第一页| 欧美在线地址| 亚洲精品中文字幕在线观看| 亚洲男女自偷自拍图片另类| 蜜臀99久久精品久久久久久软件| 国产精品久线观看视频| 亚洲三级毛片| 麻豆精品视频在线观看| 中文在线不卡| 欧美精品九九| 亚洲国产裸拍裸体视频在线观看乱了中文 | 国产精品久久99| 亚洲国产第一页| 久久精品国产一区二区三区| 在线亚洲伦理| 欧美日韩在线三级| 亚洲精品在线视频观看| 美日韩精品视频| 99综合视频| 蜜臀av性久久久久蜜臀aⅴ四虎 | 欧美一级网站| 国产精品美女久久久免费| 亚洲精品免费看| 欧美激情1区2区3区| 久久岛国电影| 国产一区二区三区在线免费观看 | 欧美在线短视频| 9国产精品视频| 欧美激情综合五月色丁香| 国内精品久久久| 久久阴道视频| 久久国产精品免费一区| 一区二区三区在线视频播放| 毛片一区二区| 能在线观看的日韩av| 国内自拍一区| 久久久久久综合| 久久青草久久| 亚洲欧洲一区二区天堂久久| 欧美大秀在线观看| 男人的天堂亚洲| 99精品热视频只有精品10| 亚洲精品日韩激情在线电影| 欧美日韩另类综合| 亚洲欧美精品| 久久国产精品一区二区| 在线观看视频免费一区二区三区| 母乳一区在线观看| 欧美久久电影| 新狼窝色av性久久久久久| 亚洲欧美在线免费观看| 狠狠色狠狠色综合日日五| 免费不卡亚洲欧美| 亚洲日本中文字幕| 亚洲久久一区二区| 国产欧美精品在线| 欧美jizzhd精品欧美巨大免费| 欧美激情1区2区3区| 亚洲欧美电影院| 久久蜜桃香蕉精品一区二区三区| 日韩午夜免费| 香蕉久久a毛片| 亚洲免费观看高清完整版在线观看熊| 亚洲色图自拍| 亚洲人成在线播放| 亚洲影视中文字幕| 亚洲人人精品| 香港成人在线视频| 一区二区三区产品免费精品久久75| 亚洲综合色视频| 亚洲精品人人| 久久精品综合一区| 午夜国产精品视频免费体验区| 久久久久久亚洲精品中文字幕| 欧美三区美女| 国产有码一区二区| 亚洲作爱视频| 亚洲高清在线视频| 欧美一区二区三区四区在线观看地址| 亚洲国产一区二区三区a毛片| 一区二区电影免费在线观看| 亚洲第一精品在线| 欧美一级免费视频| 亚洲女同在线| 欧美另类综合| 欧美国产日韩精品| 激情小说另类小说亚洲欧美 | 亚洲欧美日韩一区二区三区在线观看| 玉米视频成人免费看| 亚洲欧美日韩国产一区二区| 99成人免费视频| 久久亚洲综合色| 久久激情婷婷| 国产精品午夜春色av| 亚洲精品美女在线观看播放| 亚洲国产99| 久久三级福利| 欧美.日韩.国产.一区.二区| 国产亚洲成av人在线观看导航| 一区二区三区日韩欧美| 夜夜嗨av一区二区三区网页| 免费在线亚洲| 亚洲国内在线| 亚洲精品一区二区在线| 女女同性女同一区二区三区91| 美女露胸一区二区三区| 黄页网站一区| 久久激五月天综合精品| 久久久久免费| 精品成人久久| 久久在线免费观看视频| 欧美 日韩 国产 一区| 亚洲电影毛片| 免费人成精品欧美精品| 亚洲激情自拍| 亚洲性视频网站| 国产精品亚洲精品| 欧美一区二区在线| 免费成人在线观看视频| 亚洲欧洲日本国产| 欧美另类女人| 亚洲一区二区三区中文字幕| 欧美影院视频| 精品福利av| 你懂的国产精品| 亚洲精品在线免费观看视频| 亚洲欧美高清| 好吊日精品视频| 欧美成人免费一级人片100| 亚洲精品国精品久久99热| 亚洲一区在线免费观看| 国产手机视频精品| 女人天堂亚洲aⅴ在线观看| 日韩视频精品在线观看| 亚洲天堂免费观看| 国产亚洲欧洲997久久综合| 狼狼综合久久久久综合网 | 国内精品久久久久影院优| 久久gogo国模啪啪人体图| 久久国产精品免费一区| 亚洲欧美色一区| 国产一区白浆| 欧美黄色网络| 午夜免费电影一区在线观看| 欧美激情第二页| 亚洲综合国产| 亚洲国产一区在线| 国产精品欧美久久| 免费av成人在线| 亚洲与欧洲av电影| 亚洲高清一二三区| 亚洲一品av免费观看| 久久青草久久| 一区二区高清视频在线观看| 国产一区二区三区久久悠悠色av | 欧美大片在线观看一区二区| 亚洲欧美日韩另类| 亚洲国产日韩欧美在线动漫| 国产精品私人影院| 欧美激情女人20p| 欧美伊人精品成人久久综合97| 亚洲欧洲三级| 欧美成人r级一区二区三区| 香蕉精品999视频一区二区| 亚洲人成高清| 伊人久久婷婷色综合98网| 国产精品另类一区| 欧美理论电影在线观看| 久久久www| 午夜视频在线观看一区二区三区| 日韩视频免费在线| 亚洲国产成人精品久久| 老司机一区二区| 久久久国产亚洲精品|