本文原創於http://www.cnblogs.com/humaoxiao,非法轉載者請自重!
在我先前的博文⎣在Mac OS X中使用VIM開發STM32(1)⎤中,我們安裝完成了MACVIM,這一節我們安裝程式碼標籤索引工具ctags,它一個最常用的功能就是“轉到定義”了,查詢某個變數的出處,查詢它被引用的地方等等。當然它還可以與taglist等工具配合使用,獲得更強大的功能,在這一篇文章中我們只介紹ctags的安裝與使用。
二、下載安裝ctags
在MAC OS X中,目錄/usr/bin中有ctags這個程式,這時如果你在終端輸入
$ctags
將會打印出以下資訊:
$usage: ctags [-BFadtuwvx] [-f tagsfile] file ...
但是,系統自帶的ctags並不是我們想要的ctags,我們暫且忽略它,不過要記得有這麼回事。
2.1 下載ctags原始碼包
開啟http://ctags.sourceforge.net網站下載ctags原始碼包,已經很久很久沒有更新了,最新版本是ctags-5.8.tar.gz。
下載下來後,將其解壓到你的使用者資料夾下,我的使用者名稱是apple,所以我將它解壓到/Users/apple目錄下。
這時候應該有/Users/apple/ctags-5.8這個檔案夾了,為了方便起見,我們將資料夾ctags-5.8重新命名為ctags。
2.2 編譯ctags原始碼
cd到ctags資料夾中,執行命令
./configure
完成後再執行命令
make
順利的話,在ctags資料夾下就會出現ctags這個可執行檔案了。
2.3 新增使用者變數
如果不新增使用者變數的話,我們每次輸入ctags,呼叫的還是/usr/bin當中的ctags,這不是我們想要的。所以我們更改使用者變數,使ctags指向/Users/apple/ctags資料夾。
在終端執行命令
vim ~/.profile
在開啟的檔案中,新增這麼一行
export PATH=/Users/apple/ctags:$PATH
儲存退出後執行命令
source ~/.profile
使.profile生效,這時如果我們再次在終端中輸入ctags命令,就會打印出以下資訊
ctags: No files specified. Try "ctags --help".
這說明系統呼叫了正確的ctags程式,階段性勝利!
2.4 Demo
關於ctags的使用,我們可以通過在終端輸入
$ctags —help
進行檢視。
在這裡我們還是以我在在博文⎣Mac OS X中搭建STM32開發環境(3)⎤中Demo使用的原始碼為例子,讓大家感受一下ctags的使用方法。
我們還是將Demo原始碼解壓到自己的使用者資料夾之中,這裡我解壓到/Users/apple中,此時應該會有/Users/apple/stm32f4-discovery檔案夾了。我們cd進去,執行命令
ctags -R
給所有的原始碼檔案新增索引,這時候在stm32f4-discovery資料夾下就會出現一個名為tags的檔案,該檔案中儲存的就是所有原始碼中得element reference資訊。我們從當前目錄啟動MACVIM,檢視main.c檔案:
mvim src/main.c
這時打開了檔案main.c,如下圖
舉個例子,如果我們想檢視RCC的定義,只需要在vim中執行命令
:ta RCC
這時候,就會自動跳轉到RCC的定義,如圖中游標所在的行
這時,如果我們想跳回到main.c檔案中,只需使用快捷鍵Ctrl+t即可。
怎麼樣,還算簡單吧,複雜的功能也有很多,通過—help獲得更詳細的資訊吧,另外,能夠背過命令並且熟練使用也是很重要的。
下一節我將會給大家帶來taglist的使用,就是在vim的視窗左面分出一片視窗顯示檔案目錄,但是taglist的使用是需要ctags的,希望大家能首先安裝好ctags。
------------------------------------
大家可以+關注我的部落格,以便得到最新的文章。
------------------------------------
打字不易,轉載請註明出處(http://www.cnblogs.com/humaoxiao/p/3581424.html),謝謝。