cscope + vim

來源:互聯網
上載者:User

1. 下載vim7.0
http://download.chinaunix.net/download.php?id=21977&ResourceID=11091

2. 編譯vim
1>配置對cscope的支援
./configure --enable-cscope
2>編譯
make
make install
vim在/usr/share/vim/vim70/裡

3.下載taglist_45.zip
http://vim.sourceforge.net/scripts/script.php?script_id=273
解壓後是doc,plugin檔案夾,把裡面的2個檔案taglist.txt,taglist.vim分別複製到/usr/share/vim/vim70/下的doc,plugin檔案夾裡

4.到要編輯的源碼目錄,輸入命令
cscope -Rbkq
R 表示把所有子目錄裡的檔案也建立索引
b 表示cscope不啟動內建的使用者介面,而僅僅建立符號資料庫
q產生cscope.in.out和cscope.po.out檔案,加快cscope的索引速度
k在產生索引檔案時,不搜尋/usr/include目錄
ctags -R

5.下載cscope_maps.vim,也就是cscope快速鍵,放到/usr/share/vim/vim70/plugin檔案夾
http://cscope.sourceforge.net/cscope_maps.vim

6.開始用了,vim開啟檔案,如果是vi開啟就不認cscope命令
1>直接跳到start_kernel函數定義處
vim -t start_kernel
2>使用cscope命令,cscope find命令簡化是cs f
cscope find s ---- 尋找C語言符號,即尋找函數名、宏、枚舉值等出現的地方
cscope find g ---- 尋找函數、宏、枚舉等定義的位置,類似ctags所提供的功能
cscope find d ---- 尋找本函數調用的函數
cscope find c ---- 尋找調用本函數的函數
cscope find t: ---- 尋找指定的字串
cscopecope find e ---- 尋找egrep模式,相當於egrep功能,但尋找速度快多了
cscope find f ---- 尋找並開啟檔案,類似vim的find功能
cscope find i ---- 尋找包含本檔案的文
Ctrl+]將跳到游標所在變數或函數的定義處 Ctrl+T返回
3>cscope命令可用快速鍵
cs f s start_kernel用快速鍵是讓游標處於start_kernel字串處,按Ctrl+/,再按s,也就是Ctrl+/等於cs f ? start_kernel,最方便的是省了敲符號名。如果想在另一個視窗彈出可使用快速鍵Ctrl+@(水平視窗),連續2次按Ctrl+@(垂直視窗)。這個快速鍵就是之前下載的cscope_maps.vim定義的,需要換按鍵就修改這個檔案
4>使用taglist辦法是在vim裡輸入TlistToggle,但是我這裡就是用不了,提示92: Not an editor command: TlistToggle

 

 

最近通過delicious發現了一個有很多vim文章的blog,記下來

http://blog.csdn.net/easwy/

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.