终于搞定了,之前弄那么两天配置,都不成功.

需要软件:

ctags

taglist

1,ctags.

  1)说明:

    这个我就不演示了,我的RedHat5.5本身就有ctags.

  2)验证ctags是否已经安装:

    在终端上输入

ctags --version

后,会出现如下所示信息(表示安装过):

Exuberant Ctags 5.6, Copyright (C) 1996-2004 Darren Hiebert
Compiled: Jul 17 2006, 11:39:49
Addresses: <dhiebert@users.sourceforge.net>, http://ctags.sourceforge.net
Optional compiled features: +wildcards, +regex

2,taglist

  1)下载:

    http://sourceforge.net/projects/vim-taglist/files/ 上搜搜,我的文件名为 taglist_46.zip.

  2)新建目录,存放taglist:

    在个人根目录($HOME)下运行:

mkdir ~/.vim

  2)解压下载的 taglist_46.zip 文件(假设当前也在 个人根目录下):    

unzip taglist_46.zip

    此时,目录中多处了两个目录 "doc" 和 "plugin",将两个目录移动至 ~/.vim目录下:

mv doc/ plugin/ .vim/

  3)安装taglist:

    在终端输入 vi(m)打开 vim,在命令模式下输入:

helptags ~/.vim/doc

  4)关联ctags和taglist:

    首先,检查一下 ctags的安装目录:

which ctags

    会显示: /usr/bin/ctags

    知道ctags的安装目录后,在终端输入:

vim .vim/plugin/taglist.vim

    找到 if !exists('loaded_taglist') 这行(其实在if !exists('s:cpo_save')行的上面也是可以,我第一次就是这样,看错了,也正常的原因可以猜到),在改行上面输入 let Tlist_Ctags_Cmd="/usr/bin/ctags"

 

   let Tlist_Ctags_Cmd="/usr/bin/ctags"
if !exists('loaded_taglist')
" First time loading the taglist plugin
71 "
72 " To speed up the loading of Vim, the taglist plugin uses autoload
73 " mechanism to load the taglist functions.
74 " Only define the configuration variables, user commands and some

    到此,已经安装完毕.

3.使用

  转到要分析源码的目录,运行:

ctags -R

  后,会在该目录下多一个tags的文件.

  打开要分析的文件(如 vi inout.c),进入 vim;在命令模式用 TlistToggle 命令控制函数列表的开关.按住ctrl键,并且按两下W,即可在正常编辑区域和tags区域中切换。在tags区域中,把光标移动到变量、函数名称上,然后按下enter键,就会自动在正常编辑区域中定位到指定内容。

  函数列表区显示的只是 inout.c 中的函数情况,在该文件中使用的在其他代码文件中的函数定义并没有显示出来。可以将光标停留的要查看的函数上,然后按“Ctrl+]”即可查看该函数的定义。查看完该函数的定义,按“Ctrl+O”可以跳回原文件。

  具体的命令上网搜一下吧,这里也没有必要一个个列出.

  ref:

    1,http://www.cnblogs.com/shenlian/archive/2011/06/14/2080655.html

    2,<Linux编程技术详解(杜华)>

Vim+Taglist+Ctags(源码阅读).的更多相关文章

  1. 内核源码阅读vim+cscope+ctags+taglist

    杜斌博客:http://blog.db89.org/kernel-source-read-vim-cscope-ctags-taglist/ 武特博客:http://edsionte.com/tech ...

  2. [转]Linux下阅读源代码:(g)vim+Taglist+ctags

      Linux下阅读源代码的方法很多,聪明人从标题应该就可以知道,需要(g)vim+Taglist+ctags.3者配合,真是珠联璧合,功力无限啊! vim/gvim什么是vim/gvim,如果看官连 ...

  3. 【linux】vim编辑器vim+taglist+ctags的配置

    很多linux软件开发实际上并不实在X window的情况下进行的,这时我们不可能启动基于X window的图形化窗口,在这一情况下我们所能使用的主要的编辑器是vim和emacs.(ps:emacs和 ...

  4. ubuntu下linux内核源码阅读工具和调试方法总结

    http://blog.chinaunix.net/uid-20940095-id-66148.html 一 linux内核源码阅读工具 windows下当然首选source insight, 但是l ...

  5. CI框架源码阅读笔记1 - 环境准备、基本术语和框架流程

    最开始使用CI框架的时候,就打算写一个CI源码阅读的笔记系列,可惜虎头蛇尾,一直没有行动.最近项目少,总算是有了一些时间去写一些东西.于是准备将之前的一些笔记和经验记录下来,一方面权作备忘,另一方面时 ...

  6. 【原】FMDB源码阅读(三)

    [原]FMDB源码阅读(三) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 FMDB比较优秀的地方就在于对多线程的处理.所以这一篇主要是研究FMDB的多线程处理的实现.而 ...

  7. 【原】FMDB源码阅读(二)

    [原]FMDB源码阅读(二) 本文转载请注明出处 -- polobymulberry-博客园 1. 前言 上一篇只是简单地过了一下FMDB一个简单例子的基本流程,并没有涉及到FMDB的所有方方面面,比 ...

  8. 【原】FMDB源码阅读(一)

    [原]FMDB源码阅读(一) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 说实话,之前的SDWebImage和AFNetworking这两个组件我还是使用过的,但是对于 ...

  9. 【原】AFNetworking源码阅读(六)

    [原]AFNetworking源码阅读(六) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 这一篇的想讲的,一个就是分析一下AFSecurityPolicy文件,看看AF ...

随机推荐

  1. 记 tower.im 的一次重构

    原文in here: http://outofmemory.cn/wr?u=http%3A%2F%2Fblog.mycolorway.com%2F2013%2F05%2F01%2Ftower-refa ...

  2. 转:开源项目学习方法ABC

    文章来自于 http://yizhaolingyan.net/?p=123#comment-207 学习各种开源项目,已经成为很多朋友不可回避的工作内容了.笔者本人也是如此.在接触并学习了若干个开源项 ...

  3. angular-utils-pagination 使用案例

    angular-utils-pagination是基于angular,bootstrap,jquery的一个分页插件,详细介绍以及使用方法参照: Git:https://github.com/mich ...

  4. 使用thumbnailator 时部分图片抛异常

    net.coobird.thumbnailator.tasks.UnsupportedFormatException: No suitable ImageReader found for source ...

  5. CSS3自定义图标

    http://ntesmailfetc.blog.163.com/blog/static/206287061201292631536545/ http://www.zhihu.com/question ...

  6. h.264码率控制

    h.264的码流传输是基于目前有限的网络带宽来进行的,以目前的压缩效率来说,运动不算剧烈.细节不多的影像,在720p的情况下,1000kbps压缩损耗较少(psnr较大),能达到比较好的观赏效果,10 ...

  7. POJ2248 A Knight's Journey(DFS)

    题目链接. 题目大意: 给定一个矩阵,马的初始位置在(0,0),要求给出一个方案,使马走遍所有的点. 列为数字,行为字母,搜索按字典序. 分析: 用 vis[x][y] 标记是否已经访问.因为要搜索所 ...

  8. web references是在.NET下的一个东东?它有什么用呢?和“引用”有什么区别!

    WEB引用的意思啊 在.net中有类库和WEB SERVICE这两种类型的项目, 前者编译出来的DLL就是我们普通使用的引用中的类库, 后都编译出来的,在服务器IIS上为其提供服务,我们调用时就要用到 ...

  9. Java---IO加强(3)-IO流的操作规律

    一般写关于操作文件的读取的几个通用步骤!!! 1.明确源和目的. 源:InputStream Reader 一定是被读取的. 目的:OutputStream Writer 一定是被写入的. 2.处理的 ...

  10. ACM中Java的应用

    先说一下Java对于ACM的一些优点吧: (1) 对于熟悉C/C++的程序员来说Java 并不难学,两周时间基本可以搞定一般的编程,再用些时间了解一下Java库就行了.Java的语法和C++非常类似, ...