【转】用Vim+Taglist+Ctags阅读编辑代码

来源:互联网 发布:千里眼淘宝版官网下载 编辑:程序博客网 时间:2024/06/04 22:13

【说明】:以下文章摘自网络,如有侵权请与本人联系。

 

Linux系统下源码阅读工具ctags vim

1. 安装ctags

到http://ctags.sourceforge.net下载源码,解压后

$ ./configure

$ make

 

$ sudo make install

 

2. 在源码目录下执行

$ ctags -R

"-R"表示递归创建,也就包括源代码根目录下的所有子目录下的源程序,当前目录下会生成tags索引文件。

 

假设原来当前源码目录包含以下内容

 

./Makefile

./src #源码存放的文件夹

执行ctags -R后

./Makefile

./src #源码存放的文件夹

./tags

"tags"文件中包括这些对象的列表:

用#define定义的宏

枚举型变量的值

函数的定义、原型和声明

名字空间(namespace)

类型定义(typedefs)

变量(包括定义和声明)

类(class)、结构(struct)、枚举类型(enum)和联合(union)

类、结构和联合中成员变量或函数

3.vim会通过tags文件中的索引来定位

在tags文件所在的目录运行vim打开源文件.c或者.h

a. 把光标移到要查看的变量或函数的位置,ctrl ]便可以跳转到变量或函数定义的位置,ctrl o返回.

b. 光标停在头文件引用的地方,按gf键可跳转到该头文件,ctrl o返回

c. 将光标停放在函数或者变量的位置,gd会高亮出当前文件中所有的函数或者变量,按n查看下一个

d. gg光标返回到文件的顶部

 

              Linux用Vim+Taglist+Ctags阅读编辑代码

其实这套组合很实用了,基本上到了不用鼠标的source insight境界了,最重要的是可以在text模式下运行。

  使用的平台是Fedora 8,Vim和Ctags在F8安装完后系统已经具备。

  Taglist需要自己下载

  1、下载一个Taglist的zip文件,然后解压缩,将taglist.vim复制到~/.vim/plugin目录下。

  2、修改~/.vim/plugin/taglist.vim

  在 if !exists('loaded_taglist')上面加入

  let Tlist_Ctags_Cmd="/usr/bin/ctags"

  结果为:

" Line continuation used here
let s:cpo_save = &cpo
set cpo&vim
let Tlist_Ctags_Cmd="/usr/bin/ctags"
if !exists('loaded_taglist')
" First time loading the taglist plugin
"
" To speed up the loading of Vim, the taglist plugin uses autoload
" mechanism to load the taglist functions.
" Only define the configuration variables, user commands and some
" auto-commands and finish sourcing the file
" The taglist plugin requires the built-in Vim system() function. If this
" function is not available, then don't load the plugin.
if !exists('*system')
echomsg 'Taglist: Vim system() built-in function is not available. ' .
'Plugin is not loaded.'
let loaded_taglist = 'no'
let &cpo = s:cpo_save
finish
endif

  此时Ctags和Taglist已经结合起来。

  3、在相应的源码目录运行ctags -R产生相应的tags文件

  4、将tags文件在vim运行时导入。可以修改~/.vimrc,以后每次启动vim将自动导入此tags文件

  :set tags=/root/develop/honeyids/tags

  并设置语法高亮

  syntax enable

  syntax on

  5、运行vim, 激活Taglist时用:TaglistToggle命令。在左边的tags区域和正常编辑区域切换时用ctrl+2个w。

  6、使用ctags时, ctrl+]可查看函数的定义。 ctrl+o返回源文件。

原创粉丝点击