Vim实战手册(10)Vimide——打造你自己的IDE(C)
? ??轉(zhuǎn)載請(qǐng)注明來(lái)自“柳大的CSDN博客”:http://blog.csdn.net/poechant
? ??經(jīng)過(guò)《Vim實(shí)戰(zhàn)手冊(cè)(8)Vimide——打造你自己的IDE(A)》和《Vim實(shí)戰(zhàn)手冊(cè)(9)Vimide——打造你自己的IDE(B)》兩篇博文,你可能還不滿足。因?yàn)楫?dāng)我們用Visual Studio、Eclipse、Xcode等編輯器時(shí),有一些非常強(qiáng)大的功能,比如:
? ?(1)查看某一函數(shù)都在哪些函數(shù)中被調(diào)用過(guò);
? ?(2)查看某一函數(shù)都調(diào)用了哪些函數(shù);
? ?(3)查看某一文件被哪些文件包含;
? ?(4)查看某一變量都在哪里被引用過(guò);
? ? ……
1、Linux安裝Cscope(Mac用戶可以直接跳過(guò))
? ? 首先要下載地址:http://sourceforge.net/projects/cscope/files/
? ?如果你是在Linux平臺(tái)上安裝Cscope,那么可以直接:
? ?1./configure
? ?2make
? ?3sudo make install
2、Mac安裝Cscope(Linux用戶不需要關(guān)注)
? ?如果你使用的是Mac平臺(tái),需要先編輯src/constants.h,找到這段代碼:
? ?1#if (BSD || V9) && !__NetBSD__ && !__FreeBSD__
? ? 修改為:
? ?1#if (BSD || V9) && !__NetBSD__ && !__FreeBSD__ && !__APPLE__
? ?然后再編譯:
? ?1./configure
? ?2make
? ?3sudo make install
3、在VimRC中配置Cscope
? ?1 setcscopequickfix=s-,c-,d-,i-,t-,e-
4、生成cscope文件
? ?在你的工程根目錄下,輸入以下命令:
? ?1cscope-bqR
? ?則會(huì)自動(dòng)生成如下三個(gè)文件:
5、在Vim中導(dǎo)入Cscope文件
? ? cscope文件都已經(jīng)被生成了,但是還沒(méi)有與你的工程關(guān)聯(lián)起來(lái)。這時(shí)候你可以進(jìn)入Vim,輸入命令:
? ?其中cs表示scope,add是將scope源文件導(dǎo)入到工程中,第一個(gè)參數(shù)是scope的out文件,第二個(gè)參數(shù)是工程的根目錄。如果你經(jīng)常編輯該工程,你可以將這個(gè)命令寫入到VimRC。
6、體驗(yàn)Cscope
? ?嘗試查詢conn_set_state函數(shù)被調(diào)用過(guò)多少次以及分別在哪里調(diào)用。輸入命令:
? ? :cs find c conn_set_state
? ?結(jié)果為:
? ? 如果結(jié)果很多,你可以使用命令“cw”來(lái)打開QuickFix窗口,來(lái)切換搜索結(jié)果。
7、Cscope的快捷鍵
(1)索指定符號(hào)
? ? cs find s <symbol>
(2)搜索定義
? ? cs find g <var_name|func_name>
(3)搜索函數(shù)所調(diào)用的函數(shù)
? ? cs find d?<functions_invoked>
(4)搜索調(diào)用此函數(shù)的函數(shù)
? ? cs find c <functions_invoking>
(5)搜索指定字符串
? ? cs find t <text>
(6)搜索egrip指定的模式
? ? cs find e <egrip>
(7)搜索文件
? ? cs find f <filename>
(8)搜索包含本文件的文件
? ? cs find i <including_files>
8、映射Cscope快捷鍵
? ??你可以自定義Cscope這些快捷鍵,方法可以類似參照我們?cè)谑褂肳inManager時(shí)自定義的“wm”。
? ??未完待續(xù),歡迎您繼續(xù)關(guān)注接下來(lái)的博文 : )
轉(zhuǎn)載請(qǐng)注明來(lái)自“柳大的CSDN博客”:http://blog.csdn.net/poechant
-
總結(jié)
以上是生活随笔為你收集整理的Vim实战手册(10)Vimide——打造你自己的IDE(C)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 快速的比特反序操作
- 下一篇: jQuery输入框回车添加标签特效