Chinaunix首页 | 论坛 | 博客
  • 博客访问: 438709
  • 博文数量: 161
  • 博客积分: 5005
  • 博客等级: 上校
  • 技术积分: 1090
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-20 16:38
文章分类

全部博文(161)

文章存档

2011年(21)

2010年(33)

2009年(89)

2008年(18)

我的朋友

分类: 系统运维

2010-10-06 00:08:12

vim + taglist + ctags  
==================================
在windows下安装:
1.  先在上下载 taglist_45.zip,解压后有两个文件doc和plugin。把这个两个文件,拷到vim的安装目录的doc和plugin即可。
2. 打开vim
  :helptags $(home)/doc
  :help taglist
这时就可以看taglist的帮助内容了。

3. 下载Exuberant Ctags
  下载一个支持windows的版本的,只要拷贝出ctags.exe这个文件就可以,把它放在$(home)\vim71下(也就是在vim的安装目录下找到.exe这样的文件所在的文件目录下)

 特别重要的地方:
编辑_vimrc,在里面加入以下两句:
    set tags=tags;
    set autochdir
    注意第一个命令里的分号是必不可少的。这个命令让vim首先在当前目录里寻找tags文件,如果没有找到tags文件,或者没有找到对应的目标,就到父目录中查找,一直向上递归。因为tags文件中记录的路径总是相对于tags文件所在的路径,所以要使用第二个设置项来改变vim的当前目录。

如果不加入这两个语句,那么有的宏定义,还有一些就找不到了。

4. 同时按下win + R , 键入cmd,打开dos窗口,在所要看的源代码根目录下运行:

 ctags -R

如果不能运行,可能是ctags.exe的路径没有设置。

在这个目录下会生成一个tags文件。可以看看里面的内容。

5. 打开源文件,键入
  :Tlist (再次键入时,关闭)
这时可以看到两个窗口(要改变窗口的位置,可以修改taglist.vim或是在_vimrc中修改)
==================================
最常用的几个命令:
 :Tlist
 ctr + ]
 ctr + o
 ctr + W W
==================================  
 cscope 由于在windows下要编译,就没有安装。
 有一个cscope_map的插件很好用


为了方便使用Vim阅读源代码,Tag List 这个Vim插件不可或缺。这是一个用来浏览源代码的Vim插件,使用它我们可以概览源代码的结构并在各个源文件中跳转浏览,非常方便。

Tag List插件需要Ctags这个程序的支持(动态生成tag file),Ctags 是一个用来为源文件中的标识符(如变量、函数、类成员、宏定义等)创建索引文件(tag file)的程序。这些索引让我们能够快速便利地在编辑器或其它工具中定位到指定标识符的定义。最初的Ctags由Ken Arnold编写并首先出现在BSD Unix中,现在大多数的Unix-like系统中都已经内置了这个工具,当然,也包括了Mac OS X 。

然而,系统自带的Ctags功能比较简单,支持的语言也少(如不支持C++、Java等语言),所以推荐安装更强大的Exuberant Ctags。Exuberant Ctags最初由Darren Hiebert编写并随Vim发布,但在Vim6时独立出来为一个项目,它提供了对更多的编程语言(支持多达41种语言,并可以添加自定义语言),同时兼容原始Ctags的索引文件格式,除此之外很多的Vim插件也只支持Exuberant Ctags,所以最好把它装上。

接下来我们在Mac下编译安装Exuberant Ctags:

首先到官方网站下载Exuberant Ctags的源代码,最新版本是5.8。

接着解压到本地并进入文件夹,确保你的Mac上面已经安装了XCode之后,就可以开始编译安装Exuberant Ctags:

./configure
make
sudo make install

根据这几个简单的步骤,Exuberant Ctags就会被安装在/usr/local/目录下了,但是由于系统中原先已经内置了Ctags,如果没有将/usr/local/bin添加到系统路径中的话,默认执行的是/usr/bin/ctags,可以在命令行中执行:

which ctags

如果返回的不是/usr/local/bin/ctags,那么就需要在~目录下的.profile文件中加入以下语句:

export PATH="/usr/local/bin:/usr/local/sbin:$PATH"

然后命令行中执行:

source ~/.profile

或者直接在~/.vimrc中加入以下配置语句:

let Tlist_Ctags_Cmd="/usr/local/bin/ctags"

不过还是推荐第一种做法,因为通常用户自行安装的软件安装到/usr/local目录下会比较合适,这样做的好处可以参考这篇文章,所以不妨先把路径加到$PATH变量中。

Exuberant Ctags安装完毕之后就可以安装Tag List插件了,在官方网站上下载Tag List然后解压,将plugin文件夹中的taglist.vim复制到~/.vim/plugin/中,将doc文件夹中的taglist.txt复制到~/.vim/doc/中,如果~目录下没有对应的文件夹请自行创建。

最后,处理Tag List的帮助文件,先命令行进入~/.vim/doc文件夹,然后启动Vim,在Vim中执行(注意命令中的”.”):

:helptags .

安装完毕!接下来就是对Tag List进行配置了,Tag List提供了很多的配置参数,用户可以根据自己的使用习惯和需要在Vim的配置文件中进行设置,查看详细的帮助信息可以在Vim中执行:

:help taglist.txt

下面列举一些常用的配置:

" Configure the Tag List plugin
        nnoremap  :TlistToggle
        let Tlist_Auto_Open=0 " Let the tag list open automatically
        let Tlist_Auto_Update " Update the tag list automatically
        let Tlist_Compact_Format=1 " Show small menu
        let Tlist_Ctags_Cmd='ctags' " Location of ctags
        let Tlist_Enable_Fold_Column=0 "do show folding tree
        let Tlist_Process_File_Always=1 " Always process the source file
        let Tlist_Show_One_File=1 " Only show the tag list of current file
        let Tlist_Exist_OnlyWindow=1 " If you are the last, kill yourself
        let Tlist_File_Fold_Auto_Close=0 " Fold closed other trees
        let Tlist_Sort_Type="name" " Order by name
        let Tlist_WinWidth=40 " Set the window 40 cols wide.
        let Tlist_Close_On_Select=1 " Close the list when a item is selected
/pre>

阅读(622) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~