VIM使用——通过cscope打造编译器

一直想要将VIM打造成便捷高效的IDE,所以学习VIM的配置

一、依赖环境
安装cscope和ctags. 此插件可以离线安装。

二、配置方法
需要 通过脚本生成cscope文件才可以
1.首先要编写脚本

#!/bin/sh
find . -name "*.h" -o -name "*.c" -o -name "*.cc" > cscope.files
cscope -Rbkq -i cscope.files
ctags -R

#  -o 是连接find之间的内容

此处 cscope -Rbkq 是为当前目录下所有子目录均创建数据库
-R:为当前目录下所有子目录创建数据库
-b:生成数据库之后退出,不启动自带界面
-q:生成cscope.in.out和cscope.po.out,加快搜索速度
-k:跳过/usr/include目录
-I dir :在-I选项指出的目录中查找头文件
-u:扫描所有文件,重新生成交叉索引文件;
-C:在搜索时忽略大小写;
i: 如果保存文件列表的文件名不是cscope.files时,需要加此选项告诉cscope到哪里去找源文件列表;

2.脚本使用方法, 在对应源代码的根目录下执行此脚本,例如将此脚本命名为 getcs, 放在home目录下
则在源文件目录下执行 ~/getcs, 此脚本即会生成cscope.file

3.在.vimrc 配置文件中配置cscope的使用,此处建议复制其它人在github上已经分享出来的.vimrc文件进行扩展

三、常用操作
1.cscope 可以vim命令行下输入 cs help来查看其基础操作,
常用的操作有
find : Query for a pattern (Usage: find a|c|d|e|f|g|i|s|t name)
a: Find assignments to this symbol
c: Find functions calling this function 查找调用本函数的函数
d: Find functions called by this function 查找本函数调用的函数,光标需要落在函数名上。
e: Find this egrep pattern
f: Find this file跳转光标位置声明的文件,如有多个匹配项则输入序号
g: Find this definition 跳转到定义
i: Find files #including this file 搜索包含该头文件的文件
s: Find this C symbol 搜索该对象出现的所有位置,之后输入序号查看
t: Find this text string

具体使用语句,比如要跳转到某文件,可以采用:
cs f f 文件名
cs(cscope) f (find) f (f 选项) 文件名
此查找时文件名可以只给出前缀关键字, 这样就可以显示出几个相应的结果,然后可通过对应数字跳转到相应的文件

ctrl+]                # 光标在function_name上,按下ctrl键的同时按下’]’键
:tag function_name 	  # 需要安装ctag
:cs f g function_name  # 需要配置vimrc的escope

ctrl+t #按下ctrl键的同时按下t键
此操作会返回跳转之前的文件位置

至此, 看同事玩出花的VIM 操作我们也可以用起来啦~~

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值