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


   结果为:


Vim实战手册(10)Vimide——打造你自己的IDE(C)_第1张图片


    如果结果很多,你可以使用命令“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

-


原文链接: http://blog.csdn.net/poechant/article/details/7225220

你可能感兴趣的:(Vim实战手册(10)Vimide——打造你自己的IDE(C))