Linux 下阅读源码工具(Vim + ctags+Cscope)

0. 写在前面的废话

开发环境迁移到了Ubuntu下,所有windows下好用的工具都要找个替代品。

windows下一直用 souce Insight 来阅读源码,需要在Ubuntu下找个替代品。

上网看了看,貌似Vim + Ctags + Cscope不错,安装来试试 o(∩∩)o

 

1. 安装

在我用的ubuntu中,这三个软件都不是自带的,需要手动安装,很简单用apt-get命令安装就好了

$ sudo apt-get install vim

$ sudo apt-get install ctags

$ sudo apt-get install cscope

如下图:

技术分享

技术分享

 

2. 使用

2.1 建立索引

在能自由搜索之前,需要在你想要查看源码的根目录下建立索引,也就是执行两条命令:

$ ctags -R

$ cscope-indexer -r

技术分享

2.2 在vim 中使用ctag

1) 跳转到指定的函数进入vim后,用 “:tag func_name“ 跳到函数func_name处。使用tag
命令时,可以使用TAB键进行匹配查找,继续按TAB键向下切换。
某个函数有多个定义时
:tag
跳到第一个定义处,优先跳转到当前文件
:tnext
跳到第一个
:tfirst
跳到前count个
:[count]tprevious
跳到后count个
:[count]tnext
跳到最后一个
:tlast
你也可以在所有tagname中选择:
:tselect tagname

如果想跳到包含block的标识符:“tag /block” 然后用TAB键来选择。这里‘/‘就是告诉vim
‘block‘是一个语句块标签。
2)用“CTRL + ]“快捷键,跳转到光标所在函数标识符的定义处。
3)使用“CTRL + T”退回上层。如果想在以write_开头的标识符中选择一下, :tselect /^
write_ 这里,‘^‘表示开头,同理,‘$‘表示末尾。多个同名的标识符

2.3 在vim中使用csope

好吧,貌似应该叫在csope中使用vim,前提条件还是要先建立索引(cscope-indexer -r),然后在源码根目录执行csope命令

$ csope   ,效果如下图

技术分享

若干种查找方式,随便输入点查找内容,如i2c,按回车键,效果如下:

技术分享

选择想要打开的文件,输入前面序号即可在vim中打开它,之后就可以在vim中使用ctags快速的在函数间跳来跳去的了^_^

 

 

两面板切换: tab

cscope退出: ctrl + d

 

4.参考链接

http://www.360doc.com/content/10/0928/13/3564483_57033907.shtml ---- 使用Vim+Ctags+Cscope阅读源代码

http://blog.csdn.net/jsufcz/article/details/3988883  ----- 使用Vim+Ctags+Cscope阅读源代码

http://www.linuxidc.com/Linux/2011-04/34788p4.htm  ------ Cscope的使用(领略Vim + Cscope的强大魅力)

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。