系統(tǒng)之家 - 系統(tǒng)光盤下載網(wǎng)站!

當(dāng)前位置:系統(tǒng)之家 > 系統(tǒng)教程 > CentOS 6.2配置vim開發(fā)環(huán)境

CentOS 6.2配置vim開發(fā)環(huán)境的步驟(5)

時間:2015-03-18 17:30:03 作者:qipeng 來源:系統(tǒng)之家 1. 掃描二維碼隨時看資訊 2. 請使用手機瀏覽器訪問: https://m.xitongzhijia.net/xtjc/20150318/41885.html 手機查看 評論

  經(jīng)過分析cscope.files,我們看到了很多文件,F(xiàn)在更新tags設(shè)置項

 。簊et tags=~/program_dev/trafficserver-3.2.4/tags

  至此,我們設(shè)置好了tags選項,接下來開始使用它:

  在當(dāng)前命令行輸入

  vim -t main

  這個命令將打開定義“main”(變量或函數(shù)或其它)的文件,并把光標(biāo)定位到這一行。

  在瀏覽源碼時,當(dāng)要查詢某個函數(shù)的定義時,將光標(biāo)放在該函數(shù)上,按《C-]》鍵,就會跳轉(zhuǎn)到該函數(shù)的定義處,按《C-t》鍵是返回。

  注意:運行vim的時候,必須在“tags”文件所在的目錄下運行。否則,運行vim的時候還要用“:settags=”命令設(shè)定“tags”文件的路徑,這樣vim才能找到“tags”文件。

  在完成編碼時,可以手工刪掉tags文件(帚把不到,灰塵不會自己跑掉^_^)。

  現(xiàn)在打開編號為43的文件中的main函數(shù)

  按F9打開winmanager,這時按照設(shè)置,將會出現(xiàn)3部分窗口布局。如果打開了多個文件(多緩沖區(qū)),將在最上角出現(xiàn)第四個窗口,MiniBufExplorer窗口,F(xiàn)在按住Ctrl,再連續(xù)按W,將在各個窗口之間按照逆時針順序來回切換。當(dāng)然,按照趙攀的文檔,使用F2也一樣起到該作用。再按一次F9將關(guān)閉winmanager窗口布局。

  當(dāng)選中某個窗口時,都可以使用vim通常的移動鼠標(biāo)的方式來選擇不同的標(biāo)簽等,比如gg,G等快捷鍵。

  將光標(biāo)定位到main函數(shù)所在的文件中,將光標(biāo)定位到某個函數(shù)上,按住Ctrl+]鍵,將會跳轉(zhuǎn)到該函數(shù)的定義位置。

  4.3快速瀏覽和操作Buffer

  用vim打開多個文件時,vim最上方會出現(xiàn)一個MiniBufExplorer窗口,其中列出了當(dāng)前所有已經(jīng)打開的buffer,當(dāng)你把光標(biāo)置于這個窗口時(當(dāng)你處于winmanager窗口布局中時,使用Ctrl+W來輪流切換), 有下面幾個快捷鍵可以用:

  《Tab》 向前循環(huán)切換到每個buffer名上

  《S-Tab》 向后循環(huán)切換到每個buffer名上

  《Enter》 在打開光標(biāo)所在的buffer

  d 刪除光標(biāo)所在的buffer

  當(dāng)你只編輯一個buffer的時候MiniBufExplorer派不上用場, 當(dāng)你打開第二個buffer的時候, MiniBufExplorer窗口就自動彈出來了,

  4.4bufexplorer插件用法

  打開vim,輸入\be在當(dāng)前窗口瀏覽緩存,\bs水平打開一個窗口瀏覽緩存,\bv垂直打開一個窗口瀏覽緩存。

  但是在Filelist和taglist的窗口內(nèi),你可以移動上下移動光標(biāo),使用ghjk這四個鍵

  附注:

 。篶w change-word 改變到下一個詞的尾部,不含詞后面的空格

  4.5Taglist窗口的快捷鍵操作

  在taglist窗口中,可以使用下面的快捷鍵:

  《CR》 跳到光標(biāo)下tag所定義的位置,用鼠標(biāo)雙擊此tag功能也一樣

  o 在一個新打開的窗口中顯示光標(biāo)下tag

  《Space》 顯示光標(biāo)下tag的原型定義

  u 更新taglist窗口中的tag

  s 更改排序方式,在按名字排序和按出現(xiàn)順序排序間切換

  x taglist窗口放大和縮小,方便查看較長的tag

  + 打開一個折疊,同zo

  - 將tag折疊起來,同zc

  * 打開所有的折疊,同zR

  = 將所有tag折疊起來,同zM

 。郏 跳到前一個文件

 。荩 跳到后一個文件

  q 關(guān)閉taglist窗口

  《F1》 顯示幫助

  可以用”:TlistOpen“打開taglist窗口,用”:TlistClose“關(guān)閉taglist窗口;蛘呤褂”:TlistToggle“在打開和關(guān)閉間切換。在我的vimrc中定義了下面的映射,使用《F9》鍵就可以打開/關(guān)閉taglist窗口:

  map 《silent》 《F8》 :TlistToggle《cr》

  按照“typedef”, “variable”, “function”等進行了分類。 將光標(biāo)移到VimMain上, 如圖中左邊紅色的方框, 按下回車后, 源程序會自動跳轉(zhuǎn)到VimMain的定義處, 如圖中右邊的紅色方框。 這就是TagList最基本也是最常用的操作。在瀏覽TagList窗口時, 如果還不想讓源碼跳轉(zhuǎn), 但是想看看tag在源碼中完整的表達, 可以將光標(biāo)移到你想要看的tag上, 如圖中上邊黃色的方框, 然后按下空格鍵, 在下面的命令欄中, 如圖下邊黃色的方框, 會顯示該tag在源碼中完整的寫法, 而不會跳轉(zhuǎn)到源碼處。

  4.6cscope插件用法

  在vim中使用cscope非常簡單,首先調(diào)用”cscope add“命令添加一個cscope數(shù)據(jù)庫,然后就可以調(diào)用”cscope find“命令進行查找了。vim支持8種cscope的查詢功能,如下:

  s: 查找C語言符號,即查找函數(shù)名、宏、枚舉值等出現(xiàn)的地方

  g: 查找函數(shù)、宏、枚舉等定義的位置,類似ctags所提供的功能

  d: 查找本函數(shù)調(diào)用的函數(shù)

  c: 查找調(diào)用本函數(shù)的函數(shù)

  t: 查找指定的字符串

  e: 查找egrep模式,相當(dāng)于egrep功能,但查找速度快多了

  f: 查找并打開文件,類似vim的find功能

  i: 查找包含本文件的文件

  例如,我們想在vim 7.0的源代碼中查找調(diào)用do_cscope()函數(shù)的函數(shù),我們可以輸入:”:cs find c do_cscope“,回車后發(fā)現(xiàn)沒有找到匹配的功能,可能并沒有函數(shù)調(diào)用do_cscope()。我們再輸入”:cs find s do_cscope“,查找這個C符號出現(xiàn)的位置,現(xiàn)在vim列出了這個符號出現(xiàn)的所有位置。

  我們還可以進行字符串查找,它會雙引號或單引號括起來的內(nèi)容中查找。還可以輸入一個正則表達式,這類似于egrep程序的功能,但它是在交叉索引數(shù)據(jù)庫中查找,速度要快得多。

  cscope的主要功能是通過同的子命令“find”來實現(xiàn)的

  “cscope find”的用法:

  cs find c|d|e|f|g|i|s|t name

  0 或 s查找本 C 符號(可以跳過注釋)

  1 或 g查找本定義

  2 或 d查找本函數(shù)調(diào)用的函數(shù)

  3 或 c查找調(diào)用本函數(shù)的函數(shù)

  4 或 t查找本字符串

  6 或 e查找本 egrep 模式

  7 或 f查找本文件

  8 或 i查找包含本文件的文件

  vim提供了一些選項可以調(diào)整它的cscope功能:

  cscopecscopeprg選項用于設(shè)置cscope程序的位置。

  cscopecscopequickfix設(shè)定是否使用quickfix窗口來顯示cscope的結(jié)果,詳情請”:help cscopequickfix“;

  如果你想vim同時搜索tag文件以及cscope數(shù)據(jù)庫,設(shè)置cscopecscopetag選項;

  cscopecscopetagorder選項決定是先查找tag文件還是先查找cscope數(shù)據(jù)庫。設(shè)置為0則先查找cscope數(shù)據(jù)庫,設(shè)置為1先查找tag文件。我通常設(shè)置為1,因為在tag文件中查找到的結(jié)果,會把最佳匹配列在第一位。

  vim的手冊中給出了使用cscope的建議方法,使用命令”:help cscope-suggestions“查看。

標(biāo)簽 CentOS vim

發(fā)表評論

0

沒有更多評論了

評論就這些咯,讓大家也知道你的獨特見解

立即評論

以上留言僅代表用戶個人觀點,不代表系統(tǒng)之家立場

其他版本軟件

熱門教程

人氣教程排行

Linux系統(tǒng)推薦

官方交流群 軟件收錄