gvim安装taglist
taglist 是在vim 下可以像 vc当中的可以列出类,函数 的插件。
一,下载ctags,将其中的 ctags.exe 复制到gvim.exe 所在的目录,我的是 C:\Program Files\Vim\vim73
如果不复制的话,会出现
“Taglist: Exuberant ctags (http://ctags.sf.net) not found in PATH.
Plugin is not loaded.”
二,下载taglist.zip文件,解压,
将当中的 doc\taglist.txt 文件复制到 C:\Program Files\Vim\vimfiles\doc
将当中的 plugin\taglist.vim 文件复制到 C:\Program Files\Vim\vimfiles\plugin
三,cmd 下,进入cd C:\Program Files\Vim\vimfiles\doc 目录,运行gvim.exe,输入 “:helptags .” ,重启gvim.exe。到这一步已经完成安装taglist了
四,打开任意一个代码文件,输入 “:Tlist” ,就可以打开/关闭 taglist
ctags 下载
http://sourceforge.net/projects/ctags/files/ctags/5.8/ctags58.zip/download
taglist 下载
http://www.vim.org/scripts/script.php?script_id=273
五、taglist的快捷键
<CR> 跳到光标下tag所定义的位置,用鼠标双击此tag功能也一样
o 在一个新打开的窗口中显示光标下tag
<Space> 显示光标下tag的原型定义
u 更新taglist窗口中的tag
s 更改排序方式,在按名字排序和按出现顺序排序间切换
x taglist窗口放大和缩小,方便查看较长的tag
+ 打开一个折叠,同zo
- 将tag折叠起来,同zc
* 打开所有的折叠,同zR
= 将所有tag折叠起来,同zM
[[ 跳到前一个文件
]] 跳到后一个文件
q 关闭taglist窗口
<F1> 显示帮助
六、在vimrc里面设置相应的配置:
let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1
let Tlist_Auto_Open=1
附上vim的设置:
set nobackup
set nu
set cin
set sw=4
set ai
set ts=4
set expandtab
七、附上ctags的使用方法:
ctags使用方法
1、生成tags文件
在目录树的根目录里,使用命令
ctags -R 或 ctags --recurse
如
ctags -R src/*
则会在当前目录下生成tags文件
2、编辑vim配置文件.vimrc 添加两行
set tags=tags;
set autochdir
注意第一个命令里的分号是必不可少的。
这个命令让vim首先在当前目录里寻找tags文件,如果没有找到tags文件,或者没有找到对应的目标,就到父目录中查找一直向上递归。因为tags文件中记录的路径总是相对于tags文件所在的路径,所以要使用第二个设置项来改变vim的当前目录。
当然你如果想直接使用绝对路径,这样也是可以的, set tags=/home/xxx/myproject/tags
个人建议不要使用绝对路径了,否则不同的工程都会看到这个代码。
3、vim文件时,用用ctrl+]来执行跳转,通过ctrl+t来跳转回来就可以了,很方便的。
4、如果我修改了一个文件夹里面的某些文件,需要更新怎么办呢?用ctags -a -R [文件夹] 参数来实现需要的功能,如下:
[root@localhost src_msan]# ls -la
total 1344
drwxr-xr-x 15 root root 4096 Oct 30 10:44 .
drwxr-xr-x 11 root root 4096 Jul 27 15:07 ..
drwxr-xr-x 25 root root 4096 Jul 27 15:05 ag
drwxr-xr-x 3 root root 4096 Jul 27 15:05 lib
-rw-r--r-- 1 root root 2169 Oct 30 10:00 Makefile
drwxr-xr-x 7 root root 4096 Oct 30 10:00 oam
drwxr-xr-x 4 root root 4096 Oct 30 09:56 putty
drwxr-xr-x 12 root root 4096 Oct 30 09:54 rsl
drwxr-xr-x 11 root root 4096 Jul 27 14:44 scl
drwxr-xr-x 44 root root 4096 Oct 30 09:54 service
drwxr-xr-x 7 root root 4096 Oct 30 09:55 src_prj
drwxr-xr-x 23 root root 4096 Oct 30 10:00 ssp
drwxr-xr-x 8 root root 4096 Oct 30 10:00 swl
-rw-r--r-- 1 root root 1307906 Oct 30 10:57 tags
drwxr-xr-x 4 root root 4096 Jul 27 14:42 unittest
drwxr-xr-x 4 root root 4096 Jul 27 15:05 xdsl
drwxr-xr-x 19 root root 4096 Oct 30 09:56 xpon
如果我需要把swl文件夹里面的再更新一下,ok,如下操作:
[root@localhost src_msan]# ctags -a -R swl/
这个是不会导致swl出现两份在tags文件里面的。