本文原創於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),謝謝。