win7下基于Vim的代码浏览器
众所周知,在Windows有一款非常出名的代码软件 source insight,不过考虑到Vim可以移植到windows平台,是否可以基于vim的插件打造vim的代码浏览功能?不过在配置过程中,也是一波三折,一开始配置好_vimrc,发现 srcexpl.vim 和 NERD_tree.vim 有冲突,怎样都配合不到一起,搞了许久,就放弃了。这几天使用UE时发现还是vim的代码高亮好用,所以又尝试再弄一次。最终,在 srcexpl 的配置中发现一个特别的选项,可以用来解决冲突,结果试了试果然好了,所以记录在此。
本篇博文上接《win7下基于Vim的代码编辑器》,请务必看过上一篇文章。
1. 插件下载
基本vim环境搭建完成后,下载vim插件source explorer,并解压文件到vim的安装目录(如:D:\Vim\vimfiles)。
注意:为防止安装后无法解析,强烈建议路径中不要出现空格,如:Program Files等。
2. vim配置
打开 D:\Vim\_vimrc 在136行空白处添加如下内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | "F4 打开或者关闭插件 nmap <F4> :SrcExplToggle<CR> let g:SrcExpl_winHeight = 8 "刷新时间 let g:SrcExpl_refreshTime = 100 "防止冲突,需要将其它插件列出来 let g:SrcExpl_pluginList = [ \ "__Tag_List__" , \ "_NERD_tree_" \ ] "跳转到定义 let g:SrcExpl_jumpKey = "<ENTER>" let g:SrcExpl_gobackKey = "<SPACE>" "不自动更新 let g:SrcExpl_isUpdateTags = 0 "利用F10手动生成索引,不需要每次打开自动生成 let g:SrcExpl_updateTagsCmd = "ctags --sort=foldcase -R ." let g:SrcExpl_updateTagsKey = "<F10>" nmap <C-H> <C-W>h "control+h进入左边的窗口 nmap <C-J> <C-W>j "control+j进入下边的窗口 nmap <C-K> <C-W>k "control+k进入上边的窗口 nmap <C-L> <C-W>l "control+l进入右边的窗口 |
3. 添加ctags
由于source explorer在生成索引时中会调用ctags,因此需要先添加ctags到系统Path中,添加内容如下:
1 | ;D:\Vim\vimfiles\ctags58 |
5. 调用ctags
若ctags添加成功,则打开CMD输入:ctags --help 会看到如下内容:
6. 浏览源码
以linux内核文件 linux-2.6.30.4 为例,同一级目录下打开vim后,按下 F10 (_vimrc配置文件可知),会弹出窗口并开始生成索引,当出现如下内容,表示索引生成完毕,如下:
此时,查看源码目录下,会增加了一个tags索引文件,如下:
浏览源码时,可在下方窗口中双击函数或者变量名直接进行跳转。