1)安装cygwin+ctags+cscope 下载setup.exe,以管理员身份运行; 搜索vim, ctags, cscope,选中,taglist没有,后续自己单独下载; 安装完成后,桌面上的cygwin terminal好像不能用; 找到C:\cygwin\Cygwin批处理文件,运行就能打开终端; 注:我后来又重装了一次,这次桌面上的cygwin terminal快捷键是可用的,看来前几次安装就是出了问题。 2)找到vi的配置文件: 运行vi,:echo $VIM 可以查看VIM的安装目录,我的安装目录是/usr/share/vim,对应window的C:\cygwin\usr\share\vim,其实我的安装目录下还有一级vim73目录,的配置文件模板就是/usr/share/vim/vim73/vimrc_example.vim,打开它,有段说明,按照说明将这个vimrc_example.vim复制成~/.vimrc文件,这个就是vi的配置文件了。 3)配置ctags cd到代码目录 ctags -R * 生成tags文件; 告诉vi tags索引文件的位置: 在~/.vimrc中加入一行: set tags=<tags file path> 例如: set tags=~/linux-0.11/tags 重启vi之后,你现在可以使用Ctrl+]跳转了,把光标放到某个函数调用上,试试看。 4)安装taglist 到官网下载taglsit,是一个压缩包,解压后会看到两个文件夹:plugin和doc,把这两个文件夹里的内容复制到vi已有的对应目录:/usr/share/vim/vim73/plugin和/usr/share/vim/vim73/doc 重启vi,taglist就自动生效了,在vi中输入命令:Tlist,你就会看到Taglist窗口出现了。 5)配置cscope 在vi中使用cs命令的时候,vi默认寻找cscope可执行程序,可是我们在安装cygwin的时候装的是mlcscope,所以我们需要做个链接: cd /usr/bin ln -s mlcscope cscope cd到代码目录,搜索所有你感兴趣的文件,例如: find -name "*.s" -o -name "*.c" > file_list.cs 生成cscope索引文件 cscope -Rbkq -i file_list.cs 告诉vi cscope索引文件的位置: 在~/.vimrc中加入一行: cs add <cscope.out path> <pre_path>,例如: cs add ~/linux-0.11/cscope.out ~/linux-0.11/ <pre_path>是cscope在使用索引文件查找源码文件时候的基准位置; 比如cscope.out里面记录了一个init/main.c文件,cs在找这个文件的时候就知道从~/linux-0.11为基准找int/main,也就是说cs会找~/linux-0.11/init/main.c文件; 如果你在生成cscope.out索引文件的时候使用了-P参数,则索引文件里就已经记录了每个源码文件的绝对路径,于是你在使用cs add加载数据库的时候就不需要再制定<pre_path>了; 好了,现在可以在vi中使用cs搜索代码了,试试:cs f g foo查找foo的定义; 6) 为了让vi更好用,在.vimrc文件中加入这么几行: " add by mayq " set tag database set tags=~/linux-0.11/tags " set cscope database cs add ~/linux-0.11/cscope.out ~/linux-0.11/ " show line number set nu " set current line hightlight, forground color=white, backgournd color=dark " red set cursorline hi CursorLine cterm=NONE ctermbg=darkred ctermfg=white hi CursorColumn cterm=NONE ctermbg=darkred ctermfg=white " taglist setting let Tlist_Use_LEFT_Window=1 let Tlist_File_Fold_Auto_Close=1 let Tlist_Show_One_File=1 let Tlist_GainFocus_On_ToggleOpen=1 let Tlist_Exit_OnlyWindow=1 let Tlist_Auto_Open=1 nmap tl :Tlist<cr> " end mayq |
|
来自: Rainboy913 > 《Gvim》