Vim + Cscope打造Linux下的Source Insight
2016-03-15 15:46
369 查看
Vim + Cscope打造Linux下的Source Insight
Source Insight是Windows下最方便浏览代码的工具。但是Source Insight是没有Linux版本的。为了方便在Linux下浏览代码并进行学习,可以利用Vim配合Cscope来打造Linux下的Source Insight。Cscope是Vim适用的工具和插件,通过Cscope可以方便地获知某个函数的定义以及被哪些函数调用。
Cscope安装
可以在http://cscope.sourceforge.net/下载源码包,然后解压,编译安装。./configure
make
make install
生成Cscope数据库
使用cscope前,必须为代码生成一个cscope数据库。假设当前代码在/usr/src/linux目录下,则运行下列命令。cd /usr/src/linux
cscope –Rbq
然后会生成3个文件:cscope.in.out,cscope.out,cscope.po.out。
用vim打开代码文件,将刚才生成的cscope文件导入到vim中。
vim init/main.c
:cs add /usr/src/linux/cscope.out /usr/src/linux
也可以将下面语句添加到vim的配置文件.vimrc中。
if filereadable("cscope.out") cs add cscope.out elseif $CSCOPE_DB != "" cs add $CSCOPE_DB endif
Cscope的功能
Cscope的功能通过它的子命令“find”来实现。cs find c|d|e|g|f|i|s|t name
s:查找C代码符号
g:查找本定义
d:查找本函数调用的函数
c:查找调用本函数的函数
t:查找本字符串
e:查找本egrep模式
f:查找本文件
i:查找包含本文件的文件
可以在.vimrc中添加下面的快捷键,免得每次都要输入一长串命令。
nmap <C-@>s :cs find s <C-R>=expand("<cword>")<CR><CR> nmap <C-@>g :cs find g <C-R>=expand("<cword>")<CR><CR> nmap <C-@>c :cs find c <C-R>=expand("<cword>")<CR><CR> nmap <C-@>t :cs find t <C-R>=expand("<cword>")<CR><CR> nmap <C-@>e :cs find e <C-R>=expand("<cword>")<CR><CR> nmap <C-@>f :cs find f <C-R>=expand("<cword>")<CR><CR> nmap <C-@>i :cs find i ^<C-R>=expand("<cword>")<CR>$<CR> nmap <C-@>d :cs find d <C-R>=expand("<cword>")<CR><CR>
使用时,将光标停留在要查找的对象上,按下<C-@>g,即先按“Ctrl+@”,然后很快再按“g”,将会查找该对象的定义。
相关文章推荐
- Linux apt-get
- 简单搭建spark编译环境
- 在.NET Core之前,实现.Net跨平台之Mono+CentOS+Jexus初体验
- LINUX内核之内存屏障
- Linux case语句
- linux 命名信号量实现进程间的互斥与同步
- linux系统关机与重新启动命令
- RAID简单介绍和Linux如何搭建一个RAID
- centOS安装firefox浏览器
- 使用 rtcwake 定时唤醒休眠的linux
- centos7 安装rsyslog
- Putty---客户端,远程登录管理Linux服务器
- Linux中__init、__devinit等内核优化宏【转】
- linux 修改mysql的root密码(忘记密码)
- 从零开始学Linux[三]:VIM常用编辑指令
- Linux初识(转)
- 3.Linux中fork()函数
- Linux Kernel 4.5在3月15日发布最终版
- CentOS7 PostgreSQL安装
- 如何在安卓系统上使用arm-linux-gdb调试内核