Windows下
进入http://ctags.sourceforge.net/ 下载ctags
把ctags58.zip解压,随便放个地方,我放到了Home\Vim\vim72下,在ctags58文件夹下,找到ctags.exe文件,分别复制到C:\WINDOWS\system32和源程序文件夹下(所谓的源程序文件夹,就是你经常把你所写程序保存到的地方,如我写完程序,一般都保存在F:\C++code文件夹下,那么你也可以随便新建用来保存你所写程序的文件夹),然后到你的源程序文件夹中,在这个文件夹下,新建一个记事本文件,在里面填入以下代码:
@echo offctags -R -h ".php" -f .tags --regex-php="/^[ \t]*[(private|public|static)( \t)]*function[ \t]+([A-Za-z0-9_]+)[ \t]*\(/\1/f, function, functions/" --regex-php="/^[ \t]*[(private| public|static)]+[ \t]+\$([A-Za-z0-9_]+)[ \t]*/\1/p, property, properties/" --regex-php="/^[ \t]*(const)[ \t]+([A-Za-z0-9_]+)[ \t]*/\2/d, const, constants/" --languages=php pause
保存,并命名为“批处理.dat”,双击“批处理.bat”执行,会自动在该目录下产生一个tags文件,此即为你的原始码索引。
以上操作是因为ctags需要运行ctags -R* 来生成一个tag的文件, 这个文件里包含所有的此目录下的function列表
关于Taglist是把ctags生成的标签显示出来的插件, 下载后打开命令“:TlistOpen”
vimrc的设置:
" NERDTreemap:NERDTreeToggle autocmd VimEnter * NERDTree"Taglistlet Tlist_Show_One_File=1 "不同时显示多个文件的tag,只显示当前文件的 let Tlist_Exit_OnlyWindow=1 "如果taglist窗口是最后一个窗口,则退出vim "let Tlist_Ctags_Cmd='C:/Program Files (x86)/Vim/vim74/ctags.exe' "将taglist与ctags关联 let Tlist_WinWidth=40 "设置taglist宽度let Tlist_Use_Right_Window=1 "在Vim窗口右侧显示taglist窗口set tags=tags;set autochdir