`
Poechant
  • 浏览: 215483 次
博客专栏
Bebe66e7-3a30-3fc9-aeea-cfa3b474b591
Nginx高性能Web服务...
浏览量:23672
5738817b-23a1-3a32-86de-632d7da73b1e
Cumulus实时媒体服务...
浏览量:21564
社区版块
存档分类
最新评论

Vim实战手册(10)Vimide——打造你自己的IDE(C)

 
阅读更多

转载请注明来自“柳大的CSDN博客”:http://blog.csdn.net/poechant


经过《Vim实战手册(8Vimide——打造你自己的IDE(A)》和《Vim实战手册(9Vimide——打造你自己的IDE(B)》两篇博文,你可能还不满足。因为当我们用Visual StudioEclipseXcode等编辑器时,有一些非常强大的功能,比如:

1)查看某一函数都在哪些函数中被调用过;

2)查看某一函数都调用了哪些函数;

3)查看某一文件被哪些文件包含;

4)查看某一变量都在哪里被引用过;

……



1Linux安装CscopeMac用户可以直接跳过)


首先要下载地址:http://sourceforge.net/projects/cscope/files/

如果你是在Linux平台上安装Cscope,那么可以直接:

1./configure

2make

3sudo make install



2Mac安装CscopeLinux用户不需要关注)


如果你使用的是Mac平台,需要先编辑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


则会自动生成如下三个文件:




5、在Vim中导入Cscope文件


cscope文件都已经被生成了,但是还没有与你的工程关联起来。这时候你可以进入Vim,输入命令:




其中cs表示scopeadd是将scope源文件导入到工程中,第一个参数是scopeout文件,第二个参数是工程的根目录。如果你经常编辑该工程,你可以将这个命令写入到VimRC


6、体验Cscope


尝试查询conn_set_state函数被调用过多少次以及分别在哪里调用。输入命令:


:cs find c conn_set_state


结果为:




如果结果很多,你可以使用命令“cw”来打开QuickFix窗口,来切换搜索结果。


7Cscope的快捷键


(1)索指定符号

cs find s <symbol>


(2)搜索定义

cs find g <var_name|func_name>


(3)搜索函数所调用的函数

cs find d<functions_invoked>


(4)搜索调用此函数的函数

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这些快捷键,方法可以类似参照我们在使用WinManager时自定义的“wm”。


未完待续,欢迎您继续关注接下来的博文 : )



转载请注明来自“柳大的CSDN博客”:http://blog.csdn.net/poechant

-

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics