"自动补全
filetype plugin indent on
set completeopt=longest,menu
"自动补全命令时候使用菜单式匹配列表
set wildmenu
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType java set omnifunc=javacomplete#Complet omni-completion实现代码补全的效果
"TagList
let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1 我们需要制定tags目录给Vim,在Vim中执行命令:set tags=你的代码所在的路径\tags,如果你一直使用同一个代码路径可以把他写死在_vimrc中,例如我的代码在
D:\VimTest配置如下
"tags
set tags=D:\VimTest\tags
然后在Vim中执行:Tlist就可以打开TagList的窗口了,如下图左边的窗口,试着在方法上点击,可以发现右侧的光标会自动跳到你点中的方法。
"cscope show in quickfix
set cscopequickfix=s-,c-,d-,i-,t-,e- 好了,配置完成,下面我们看看怎么用。在vim中输入:help if_cscop.txt可以看到关于Cscope的帮助。
看完文档,我们可以在vim中输入命令:cs find c foo用来查找foo方法在哪里被调用过。
cscope_maps.vim映射了一些键盘的快捷键,我们可以快捷的使用查找功能。
我比较喜欢使用Ctrl+\,让光标停留在你想查找的内容,然后输入Ctrl+\后迅速的输入c,就可以在quickfix窗体看到查找的结果。如果结果有多条你可以输入命令:cw展开quickfix窗体。(这个快捷操作第一次使用可能会有些别扭,多试几遍就好了)
下面是我的一个查找结果
"MiniBufExplorer
let g:miniBufExplMapWindowNavVim = 1
let g:miniBufExplMapWindowNavArrows = 1
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplModSelTarget = 1