vim + ctags + taglist配置和使用


 

vim +ctags + taglist ctags+cscope 安裝配置和使用

 

 

 內容:VIM下ctags和taglist的安裝配置方法;一鍵安裝 ctags和cscope的方法 ;vim語法高亮,自動縮進,python 自動縮進設置,下面將逐個介紹安裝和配置使用方法,僅供參考:



1, vim + ctags + taglist配置和使用

taglist依賴於ctags,所以要先裝ctags,否則taglist裝了也沒法用!

 

1、首先安裝ctags

首先是ctags的安裝,推薦使用exuberant ctags,我們可以從其官方網站上下載它的源碼包,進行解壓縮,編譯,安裝即可。
1)ubuntu安裝
sudo apt-get install exuberant-ctags

( 或者下載 手動安裝 download ctags-5.8.tag.gz (地址

    tar xzvf ctags-5.8.tag.gz

    cd ctags-5.8

    ./configure

    sudo make

    sudo make install

)

至此,ctags的安裝已經完成,可以使用ctags命令來檢測時候完成安裝。

 

檢測:

在自己的項目文件夾下執行 $ctags -R *  (不執行就起不到效果)   
注:“-R”表示遞歸創建,也就包括源代碼根目錄(當前目錄)下的所有子目錄。“*”表示所有文件。這條命令會在當前目錄下產生一個“tags”文件, 當用戶在當前目錄中運行vi時,會自動載入此tags文件。
然后就可以入手了。
常用的命令:
熟練的使用ctags僅需記住下面七條命令:(很簡單吧,呵呵)
       1. $ ctags –R *    ($ 為Linux系統Shell提示符)
       2.   $ vi –t tag       (請把tag替換為您欲查找的變量或函數名)
       3. :ts                (ts 助記字:tags list, “:”開頭的命令為VI中命令行模式命令)
       4. :tp                (tp 助記字:tags preview)---此命令不常用,可以不用記
       5. :tn                (tn 助記字:tags next) ---此命令不常用,可以不用記
       6. Ctrl + ]
       7. Ctrl + T

 -------------------------------------------------------------------------------------------------

2、安裝taglist 

下面我們來進行taglist的安裝,同ctags的安裝一樣這里我們也是去其官方網站下載解壓其源碼包。

 

具體步驟如下:

下載地址 

解壓文件
# unzip -d    taglist taglist_45.zip // 解壓到 taglist

   我們首先在家目錄下創建.vim文件(mkdir .vim)   以便於存放vim的插件。
然后把我們下載到的taglist源碼包進行解壓,把其中的doc和plugins目錄拷貝到.vim文件夾下。
進入到vim在命令模式下輸入helptaglist~/.vim/doc即完成了taglist的安裝。在vim中輸入Tlist,如果出現如下畫面則證明安裝成功。


也可以這樣 配置
$cd taglist/
$cp doc/taglist.txt /usr/share/vim/vim72/doc/
$cp plugin/taglist.vim /usr/share/vim/vim72/plugin/ 
基本上配置完成
啟動vim,用 “:helptags .”來配置好幫助文件
重啟vim,用“:TlistToggle”來打開和關閉taglist窗口。
可以用“:help taglist”來獲得更多幫助信 
若要默認打開taglist,_vimrc中加入

let Tlist_Auto_Open=1

set tags=tags;

set autochdir;

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

 
完成了taglist和ctags的安裝,但是這時ctags和taglist還沒有聯系起來。為此,我們需要修改~/.vim/plugin/taglist.vim文件,找到if !exitsts(loaded_taglist)這一行,並在其前面添加let Tlist_Ctags_Cmd="/usr/local/bin/ctags"
ps:在這里需要注意的是我們在設置直線需要察看我們ctags可執行可執行路徑到底是在哪里,我們可以進入到上述目錄,一直找到具體的可執行的文件ctags,並將其路徑賦給Tlist_Ctags_Cmd(例如我的路徑是/usr/local/bin/ctags/ctags)
vim+taglist+ctags閱讀代碼
為了使用vim+taglist+ctags來閱讀代碼,我們首先必須生成函數和變量的符號信息。這一步我們使用ctags完成。
例如我們使用我們剛才下載的ctags的源碼包為例。
//生成tag
執行 ctags -R *(-R遞歸作用)
//檢查是否生成了tags
ls -l tags
生成tag以后我么就可以進行察看了,具體步驟見如下截圖
 
 
vim輸入:TlistToggle來打開側面窗口 (或者直接:Tlist、TlistOpen也可以)
 
 
使用ctr 和兩次w在側窗口和主窗口之間進行切換
 
移動到土體的函數后,按enter鍵察看具體函數。(可以利用ctags的特性在鼠標指定處比如"apue.h",Nomal 輸入 gf,轉到頭文件"apue.h")
 
 有時我們想察看的函數在其他代碼文件中定義,這是我們只要將光標定位到想察看的函數上,然后按ctr+]鍵就可以進行察看了,按ctr+O可以跳回到源文件中。

 

具體 vim 高階應用見 http://easwy.com/blog/archives/advanced-vim-skills-catalog/

 


 

第一步要達到效果是不是很麻煩,下面介紹一種簡單的方法

2, 一鍵安裝 ctags和cscope的方法

用vim的插件搭建一個類似sourceinsight的vi,同時加了一些vim及腳本,最近看到很多人想要有sourceinsight功能的vim,由於整個配置還是有點麻煩,於是將配置的vim發上來,只需一條命令,就可安裝完ctagslist,cscope,fielexporeer等插件,達到sourceinsight的效果。

安裝過程:

大家下載附件,然后解壓
然后切到解壓后的文件夾,
執行sudo ./install即可
然后執行sudo apt-get  install vim

或者這樣安裝:
#Clone repository:
git clone https://github.com/ustcdane/vim_install.git
#install
cd vim_install
sudo ./install

可能會出現錯誤:
"Taglist: Exuberant ctags (http://ctags.sf.net) not found in PATH. 
Plugin is not loaded."

沒有關聯Ctags和Taglist

在~/.vimrc中加入 : let Tlist_Ctags_Cmd='/usr/bin/ctags'

其實我已經在 install 中加入了,如果還是出現錯誤,則找到你的可執行程序ctags 所在處手動的在~/.vimrc中加入let Tlist_Ctags_Cmd='你的ctags路徑'

使用指南:

當我們需要閱讀代碼時,必須先生成tags文件和cscope.out文件,這個可以通過已安裝程序中的腳本自動生成
比如你要閱讀source文件夾下的代碼就使用cs source
當source下有文件更新了,你可以使用 cs source -u來更新

常用命令:
進入vim后
wm打開ide界面,再次wm就關閉了
ctrl+w在各個窗口切換
ctrl+h切換到左邊的窗口
ctrl+j切換到下面的窗口
ctrl+l切換到右邊的窗口
ctrl+k切換到上面的窗口
ctrl+]函數跟蹤


快捷鍵 cs f s/g/....

s: 查找C語言符號,即查找函數名、宏、枚舉值等出現的地方
g: 查找函數、宏、枚舉等定義的位置,類似ctags所提供的功能
d: 查找本函數調用的函數
c: 查找調用本函數的函數
t: 查找指定的字符串
e: 查找egrep模式,相當於egrep功能,但查找速度快多了
f: 查找並打開文件,類似vim的find功能
i: 查找包含本文件的文
當然在底行模式下介鍵入 help 會彈出 vim的幫助。

使用cscope查找do_fork函數的定義:
在vim命令行下執行:

:cs f g do_fork

就可以查看do_fork的全局定義了。

cscope常用快捷鍵:

先按 ctrl+\ 然后 再按以下鍵:  

ctrl+]:在函數調用的地方跳轉到函數定義的地方
ctrl+t:返回上一個查找的地方


這個方法是從網上學到的,並作了部分修改



3, 設置vim語法高亮顯示和自動縮進

 

1、配置文件的位置在目錄 /etc/vim 下面,有個名為vimrc的文件,這是系統中公共的vim配置文件,對所有用戶都有效。而在每個用戶的主目錄下,都可以自己建立私有的配置文件,命名為:“.vimrc” , (如果你使用第二步中的 一鍵安裝 ctags和cscope的方法 建議 在自己的家目錄下的.vimrc 作相應修改) 。例如,/root目錄下,通常已經存在一個.vimrc文件。
 

 2、設置語法高亮顯示
1) 打開vimrc,添加以下語句來使得語法高亮顯示:
      syntax on

2) 如果此時語法還是沒有高亮顯示,那么在/etc目錄下的profile文件中添加以下語句:
     export TERM=xterm-color

      
  3、設置Windows風格的C/C++自動縮進(添加以下set語句到vimrc中)
              1)設置(軟)制表符寬度為4:
                            set tabstop=4
                            set softtabstop=4
              2)設置縮進的空格數為4
                          set shiftwidth=4
              3)設置自動縮進:即每行的縮進值與上一行相等;使用 noautoindent 取消設置:
                    set autoindent
              4)設置使用 C/C++ 語言的自動縮進方式:
                          set cindent
              5)設置C/C++語言的具體縮進方式(以我的windows風格為例):
                            set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s
              6)如果想在左側顯示文本的行號,可以用以下語句:
                          set nu
            7)最后,如果沒有下列語句,就加上吧:
                    if &term=="xterm"
                         set t_Co=8
                         set t_Sb=^[[4%dm
                         set t_Sf=^[[3%dm
                    endif



總結, 需要添加的內容:
A,語法高亮在/etc目錄下的profile文件中添加以下語句:
export TERM=xterm-color

B,其它 在 /etc/vim/vimrc的 添加:

[plain]  view plain copy 在CODE上查看代碼片 派生到我的代碼片
 
  1. syntax on  
  2. set nu  
  3. set tabstop=4  
  4. set softtabstop=4  
  5. set shiftwidth=4  
  6. set cindent  
  7. set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s  
  8.   
  9. if &term=="xterm"  
  10.      set t_Co=8  
  11.      set t_Sb=^[[4%dm  
  12.      set t_Sf=^[[3%dm  
  13. endif  
  14.   
  15. hi Comment ctermfg=6  



Other: vim python 的自動縮進設置方法。
縮進設置最常用的是:
:filetype indent on
它將開啟針對文件具體類型的縮進


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM