用vim替代source insight(ctags+taglist+)

來源:互聯網
上載者:User
用vim替代source
insight(ctags+taglist+)


用vim替代source
insight(ctags+taglist+)

V
im
tags 的使用ctag 檔案的製作

不講究的話,可以在所解開的 source code 目錄下,下以下指令:

ctags -R *

這樣會有 source code 目錄下產生一個 tags
這個檔(可以使用 -f

選項來指定檔案名),裡頭就包含了整個 source code 的所有檔案的 tags 資訊,包括其下所有的子目錄下的檔案。ctags

已盡可能的做到聰明掃描檔案的能力,會忽略和程式碼無關的檔案。當然 ctags
還有許多精細的參數可以使用,請 man
ctags

請注意,ctags
預設會將輸出檔排序,因此不必自行另外去排序。有排序有一個好處,那就是 V
im
會去使用 binary search 的方式去搜尋,這樣會比較快。




一般的 tag 使用

如果就照上一節的方式產生 tag files,那麼只要在 source code 目錄下由 vim
去開啟檔案的話,會自動載入
tags
這個檔案,無需另行載入,否則要由 :set tags=your.tags
來指定 tags 檔。然後就是照一般使用
V
im
線上說明一樣,遊標移到識別字或函數名上,按 Ctrl+]
,要回到原處就按 Ctrl+T

請注意,V
im
啟動時,工作目錄(vim
啟動時的所在目錄)名為
tags
的檔案會自動載入,$VIMRUNTIME/doc
及 $HOME/.vim/doc
目錄下的
tags
檔也會自動載入。而且,凡是載入的 tags 檔裡頭所有標誌文字都可以使用補全鍵來補全,別忘了這個好用的功能。

在分類樹中自由使用tag


編輯vim的設定檔案(_vimrc或.vimrc),添加兩行

set tags=tags;

set
autochdir

注意第一個命令裡的分號是必不可少的。這個命令讓vim首先在目前的目錄裡尋找tags檔案,如果沒有找到tags檔案,或者沒有找到對應的目標,就到父目錄中尋找,一直向上遞迴。因為tags檔案中記錄的路徑總是相對於tags檔案所在的路徑,所以要使用第二個設定項來改變vim的目前的目錄。

使用這兩個技巧後,就可以在分類樹中自由的瀏覽來源程式了。


讓你的vim能夠查看函數列表(taglist)

圖形介面下的很多編輯軟體都可以列出當前編輯檔案中的函數列表,以便在編輯的時候能夠快速的跳轉。vim雖然沒有直接提供這種功能,但配合適當的工具和設定,可以完美的實現!

首先還是安裝,vim不用裝了,ubuntu中內建,用到的ctags需要自己安裝一下,不要用舊的那個ctags,新的叫Exuberant Ctags
,apt安裝即可:apt-get install
exuberant-ctags。

然後按照vim.org上的安裝說明
,下載taglist_45.zip,解壓到home目錄下的.vim子目錄中:

~/.vim$ unzip /home/fwolf/taglist_45.zip
Archive:
/home/fwolf/taglist_45.zip
inflating: plugin/taglist.vim
inflating:
doc/taglist.txt

進入$HOME/.vim/doc目錄,開啟VIM 運行“helptags
.”命令,注意後面的點不要拉了,這是為了產生ctags協助檔案的索引,然後才能正常使用協助。(原來vi協助中的ctrl+]進入連結、ctrl+T返回也是這麼來的)

現在,再啟動vim,tags功能就可以用了:

大概用法:
在使用vim的時候,使用:Tlist命令切換函數列表的開、關。
按住ctrl鍵然後按兩下w鍵在正常編輯地區和tags地區中切換。
在tags地區中,把游標移動到變數、函數名稱上,然後敲斷行符號,就會自動在正常編輯地區中定位到指定內容了,很方便的。

常用的幾項.vimrc設定:

“禁止自動改變當前Vim視窗的大小
let
Tlist_Inc_Winwidth=0
“把方法列表放在螢幕的右側
let
Tlist_Use_Right_Window=1
“讓當前不被編輯的檔案的方法列表自動摺疊起來, 這樣可以節約一些螢幕空間
let
Tlist_File_Fold_Auto_Close=1
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.