[vim] vim中使用cscope的安装与使用

From: http://blog.sina.com.cn/s/blog_498a6eeb0100v05m.html

1. 下载cscope-15.7
http://dldx.csdn.net/fd.php?i=878111800792509&s=924cf0d6a0f63bb6ca24f900

ba3fcad8
解压所里面有三个文件, 放到vim的安装目录下即可。
2.建索引




-b
Build the cross-reference only.
-C
Ignore letter case when searching.
-k
``Kernel Mode'', turns off the use of the default include dir(usually /usr/include) when building the database, since kernelsource trees generally do not use it.
-R
Recurse subdirectories for source files.
-i namefile
Browse through all source files whose names are listed innamefile (file names separated by spaces, tabs, or new-lines)instead of the default (cscope.files). If this option is specified,cscope ignores any files appearing on the command line. Theargument namefile can be set to ``-'' to accept a list of filesfrom stdio. Filenames in the namefile that contain whitespace haveto be enclosed in "double quotes". Inside such quoted filenames,any double-quote and backslash characters have to be escaped bybackslashes.
具体参数可以见:
http://cscope.sourceforge.net/cscope_man_page.html

执行结束后你可以在当前目录下发现cscope.out文件,这就是cscope建立的符号数据库。上面这个命令中,-b参数使得cscope不启动自带的用户界面,而仅仅建立符号数据库
3. 在vim命令行下执行:



:cs help
cscope commands:
add  : Add a new database             (Usage: add file|dir [pre-path] [flags])find : Query for a pattern            (Usage: find c|d|e|f|g|i|s|t name)c: Find functions calling this functiond: Find functions called by this functione: Find this egrep patternf: Find this fileg: Find this definitioni: Find files #including this files: Find this C symbolt: Find assignments tohelp : Show this message              (Usage: help)kill : Kill a connection              (Usage: kill #)reset: Reinit all connections         (Usage: reset)show : Show connections               (Usage: show)

s: 查找C语言符号,即查找函数名、宏、枚举值等出现的地方
g: 查找函数、宏、枚举等定义的位置,类似ctags所提供的功能
d: 查找本函数调用的函数
c: 查找调用本函数的函数
t: 查找指定的字符串
e: 查找egrep模式,相当于egrep功能,但查找速度快多了
f: 查找并打开文件,类似vim的find功能
i: 查找包含本文件的文

使用cscope查找do_fork函数的定义:
在vim命令行下执行:
:cs f g do_fork每次输入这样挺麻烦, 下载一个插件cscope_quickfix.vim
。http://www.vim.org/scripts/download_script.php?src_id=2635在_vimrc中增加:"cscope"If you want to use Popup menu for :Cscope command, put a line in .vimrc like:let Cscope_PopupMenu = 1这样可以在右键中弹出菜单。这样就可以不用记命令。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/405936.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Sql Server函数全解二数学函数

阅读目录 1.绝对值函数ABS(x)和返回圆周率的函数PI()2.平方根函数SQRT(x)3.获取随机函数的函数RAND()和RAND(x)4.四舍五入函数ROUND(x,y)5.符号函数SIGN(x)6.获取整数的函数CEILING(x)和FLOOR(x)7.幂运算函数POWER(x,y)、SQUARE(x)、和EXP(x)8.对数的运算LOG(x)和LOG10(x)9.角度…

php框架 wc if_PHP if else语句

无论在何种编程语言中,流程控制都是很重要的内容。由于 PHP 的大部分语法都继承了C语言的特点,因此在流程控制方面,PHP 有着和C语言类似的流程控制。if else 语句是流程控制中根据条件判断执行的一种。该语句执行时先对条件进行判断&#xff…

无线路由与无线AP有什么不同

无线路由与无线AP有什么不同 无线网络从07年开始就进入高速发展的时期,无论是企业还是家庭,在组建网络的时候,大部分都会选择架设无线网络。但是无线网络因为其多种协议、多种功能,产品之间也会有不小的差别,就像很多人…

iOS - 判断用户是否允许推送通知(iOS7/iOS8)

(iOS8中用户开启的推送通知类型对应的是UIUserNotificationType(下边代码中UIUserNotificationSettings的types属性的类型),iOS7对应的是UIRemoteNotificationType) 此处以iOS8的UIUserNotificationType为例&#xff0…

第一课 PE格式

From: http://bbs.pediy.com/showpost.php?p138590&postcount2 要想学脱壳,第一步就得掌握PE格式,PE是Portable Executable File Format(可移植的执行体)简写,它是目前Windows平台上的主流可执行文件格式。 Micr…

React开发(182):ant design table中 带线框的列表

ReactDOM.render(<Tablecolumns{columns}dataSource{data}borderedtitle{() > Header}footer{() > Footer}/>,mountNode, );

Linux DHCP Server 配置给FIT AP 使用的option

Linux DHCP Server 配置给FIT AP 使用的option 2010-09-17 09:45:52标签&#xff1a;Linux DHCP Server option FIT    [推送到技术圈] 版权声明&#xff1a;原创作品&#xff0c;允许转载&#xff0c;转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将…

Claims 认证详解(1)

很多时候&#xff0c;我们进行应用程序之间的交互。比如&#xff0c;一个员工登录了门户网站后&#xff0c;需要访问进销存系统、CRM系统&#xff0c;如果不进行特殊处理&#xff0c;就需要多次输入用户名和密码。用过SharePoint的朋友&#xff0c;可能知道有个“单点登录”的东…

php什么设置前端代码,代码编辑器与PHPSTUDY的安装与配置过程(前端第一课)

前端第一课&#xff1a;编辑器与PHPSTUDY的安装与配置过程编辑器安装过程1.Visual Studio Code 官网下载软件&#xff0c;解压下载文件&#xff0c;打开安装程序安装至你的计算机。2.安装“Chinese(Simplified)Language Pack for Visual Studio Code” 插件&#xff0c;并重启v…

重学java基础第二十课:环境配置和第一个helloWorld

大家好 我是歌谣 闲来无事做 不如敲代码 今天大概说如何编译一个简单的helloWorld小案例 安装环境的配置 1首先进入jdk的官网 找到对应的jdk版本 这边一window为例 2接下来--右键--计算机--属性--进行高级系统设置 3在用户变量里面配置 JAVA_HOME:G:\java CLASSPATH:.;%JAV…

vim QuickFix 窗口

From: http://hi.baidu.com/bali5/blog/item/82f87c0ab670a136b0351d4f.html 在上一节的图10中大家可以看到在窗口下面有一个显示查询结果的窗口, 这个窗口中列出了查询命令的查询结果, 用户可以从这个窗口中选择每个结果进行查看, 这个窗口叫"QuickFix"窗口, 以前也…

谷歌笔试题(Google十二岁生日晚)

2010-9-27日是Google十二岁生日&#xff0c;就在生日当天&#xff0c;Google进行了一场宣讲会加笔试。Google果然不一般&#xff0c;宣讲会门外都站满了人&#xff0c;也可见竞争之激烈&#xff0c;据说只需要40个人参加面试&#xff0c;而笔试的人有1000之多&#xff0c;汗………

RHE5服务器配置——Samba服务器

Samba的核心 Samba的核心是两个守护进程&#xff0c;即smbd和nmbd。服务器启动到停止期间持续运行&#xff0c;smba监听139TCP端口&#xff1b;nmbd监听137和 138UDP端口。smbd和nmbd使用的全部配置信息保存在smb.conf文件中&#xff0c;smb.conf向smbd和nmbd两个守护进程说明输…

PHP检查微信域名屏蔽接口,微信域名检测API接口,实时查询域名是否被微信拦截...

微信域名检测API接口的应用场景&#xff1a;由于微信对外部链接内容规范比较严格&#xff0c;所以可能一不小心就会被判定为是违反内容规范的&#xff0c;或被同行恶意举报投诉之类的。那么此时就要用到微信域名检测接口&#xff0c;实时检测域名的状态&#xff0c;实时查询域名…

NGINX + TOMCAT7 + MEMCACHED 实现SESSION 共享

原文地址&#xff1a; http://my.oschina.net/u/1791256/blog/283064 TOMCAT7.0 NGINX MEMCACHED memcached-session-manager 实现SESSION共享 http://blog.csdn.net/nerissa/article/details/18961361 ; //参考博客 http://pan.baidu.com/s/1pJlZ0mB //相关包下载&#…

实验二十四、OSPF 在NBMA 环境中点到点的配置

实验二十四、OSPF 在NBMA 环境中点到点的配置 一、 实验目的 1. 掌握NBMA 环境中点到点的配置 2. 理解NBMA 环境中点到点网络类型的意义 二、 应用环境 在帧中继的网络中&#xff0c;OSPF 的路由更新不能正常进行&#xff0c;需要配置点到点的网络类型保证OSPF 协议的正常运行…