VIM下的cscope使用方法(图文并茂&简易上手)

一、cscope安装

sudo apt-get install cscope

在这里插入图片描述

二、创建cscope数据库

在需要建立cscope索引的源码目录下,运行下面这个命令即可生成cscope索引。

cscope -Rbq

创建数据库的各个参数含义如下:
-R:递归解析所有的子目录。
-b:仅构建交叉引用(cross-reference)文件,即数据库,然后退出,而不会进入交互界面。
-q:通过倒排索引加速符号的查找过程。该选项会导致cscope额外产生cscope.in.out和cscope.po.out两个文件。
在这里插入图片描述

而后在当前目录下会产生三个文件,cscope.outcscope.in.outcscope.po.out

在这里插入图片描述

三、上手使用查找操作

需要首先声明的是:cscope命令都以:cscope(或者简写为:cs)开头。:表示这些命令均在vim的一般模式下执行。

1、在当前目录下打开终端,输入vim
在这里插入图片描述

然后再输入下面命令,以建立与数据库的连接。

:cs add ./cscope.out

在这里插入图片描述

当然也可以使用:cs show查看是否建立连接。
在这里插入图片描述

2、查找

我们建立数据库的目录就是为了方便查找某个函数、变量等,然后跳转到那里。常用参数如下:

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

比如我们要查找AlgorithmLink_laneDetectCreate出现的地方,可以用下面这个命令。其中ffind缩写。

:cs f s AlgorithmLink_laneDetectCreate

在这里插入图片描述

输入数字和回车是因为有多个地方符合条件!

四、一些有用的设置

这里先来解决一个自己的疑惑:vim安装的时候在/ect/vimrc已经可以进行vim的文件配置了,为什么还要~/.vimrc呢?

在目录 /etc/vim/下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主目录HOME下,都可以自己建立私有的配置文件(仅对这个用户有效),命名为:“.vimrc”。例如,对于当前用户/home/clay目录下,通常已经存在一个.vimrc文件。

1、输入vim ~/.vimrc
在这里插入图片描述

然后添加如下参数,

set cscopequickfix=s-,c-,d-,i-,t-,e-

在这里插入图片描述

这样通过:cs find xxx查找某个符号后,会立即跳转到第一个找到该符号出现的位置。

当然啦,上面手动添加cscope也是比较烦的,可以直接在~/.vimrc中加入cs add cscope.out,自动添加数据库!

2、在使用cscope时,可以输入:cw来打开quickfix窗口,来显示所有结果出现的位置。

在这里插入图片描述

在quickfix窗口切换不同的匹配项,可以输入:cs cn切换到下一个匹配项,:cs cp切换到上一个匹配项。


拓展

①、VIM撤销操作:需要从编辑状态用键盘上的Esc键切换到“一般模式”在一般模式中,按下一次字母U键就可以撤销一次上次的输入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ReCclay

如果觉得不错,不妨请我喝杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值