在Vim中使用gtags

2021-08-29 04:38:15 字數 2474 閱讀 5995

之前一直使用vim+ctags+cscope來弄c的**,最近看同事使用gtags,覺得在搜尋方面要高階很多,網上大多都是emacs+gtags的資料,而vim的則比較少,這裡搞通了之後,做個記錄。

wget 

tar xzvf global-6.6.2.tar.gz

cd global-6.6.2

./configure

make && make install

2.將生成的檔案拷貝到.vim對應的目錄

cp gtags-cscope.vim  gtags.vim ~/.vim/plugin/

(我沒有使用vbundle安裝外掛程式,因此直接拷貝到了plugin目錄)

3.在**的根目錄中執行

cd ~/postgresql-10.1

gtags

會生成幾個檔案:gpath  grtags  gtags

4.在.vimrc中新增gtags配置

setcscopetag " 使用 cscope 作為 tags 命令

setcscopeprg='gtags-cscope'" 使用 gtags-cscope 代替 cscope

"gtags.vim 設定項

letgtagscscope_auto_load = 1

letctagscscope_auto_map = 1

letgtagscscope_quiet = 1

(即使新增這些,我的cscope和ctags還是照樣可以使用)

5.開啟**,可以使用了,但是效果和emacs還是有點不一樣:

1)在根目錄中,可以查詢某個函式,然後開啟檔案

root@seg01 postgresql-10.1]# global -x pg_parse_query

pg_parse_query    596 src/backend/tcop/postgres.c pg_parse_query(constchar*query_string)

2)開啟檔案

[root@seg01 postgresql-10.1]# vim src/backend/tcop/postgres.c

3)使用gtags查詢:gtags pg_parse_query(這裡會自動補全,使用tab鍵)

6.其他幾個使用說明

01.gtags func:檢視定義處

02.gtags -r func:檢視引用處

03.gtags -s text:檢視未被資料庫定義的tags

04.copen:開啟quick fix顯示視窗

05.cclose:關閉quick fix顯示視窗

06.cn:下一項

07.cp:上一項

09.ccn:到列表中第n個符號處

10.gtags -g pattern:搜尋pattern指定的字串

11.gtags -gie -pattern:-e選項可以用於搜尋』-『字元,但是基礎搜尋,沒有元字元,-i選項忽略大小寫,類似於grep的選項

12.gtagscuorsor:取決於游標位置,要是在定義處,查詢其引用,要是在引用處,跳轉至其定義處,否則就是gtags -s命令

13.gtags -p text:查詢包含text的路徑名,gtags -p後接/dir/為列出叫做dir目錄下檔案,後接\.h$列出所有的include檔案

14.gtags -f file:列出file裡的符號,gtags -f %則列出當前檔案的符號

7.在之前ctags+cscope中,查詢定義和查詢使用都很方便,但是有時候是找不到目標的···

有一種情況最不好找了,乙個函式記得一部分名稱,沒法搜尋到,但是用gtags後就好搜尋了,會自動補全。

8.cscope中常用的幾個命令:

cs find s : 查詢符號,會顯示列表出來

cs find g :查詢定義

cs find c: 查詢呼叫本函式的函式

cs find c: 查詢本函式呼叫的函式

cs find t:查詢本字串

9.使用vimgrep也有侷限性,只能查詢具體的檔案,不能自動查詢所有的子目錄。

配好之後感覺還是很爽的,這樣查詢起來方便很多。

嚴以律己、寬以待人

在visual studio中使用vim編輯程式

hehe,是我2002年寫的。只支援vc6 1.首先安裝乙個vim 2.到你的vim安裝目錄下,假設是e tools gvim cd e tools gvim cd vim61 visvim regsvr32 visvim.dll win95 98可以跳過這步 3.要是你還沒有注你的ole gvim...

linunx 在vim中使用系統剪下版

1.首先檢測vim中能否使用clipboard 剪下板 使用這條命令來檢查 vim version grep clipboard 2.如果clipboard的前面是減號,則clipboard不可用 3.使用下面的命令重新安裝這個vim影象版 sudo apt get install vim gnom...

在centos中使用vim編輯器

在命令列輸入 crontab e會直接進入vim編輯模式編輯crontab檔案。隨後可以輸入 i 進入insert模式 然後移動游標在指定的位置新增文字,可以按 esc 鍵先進入normal mode,在normal mode下輸入 進入command line,在command line下輸入 x...