今天弄了一下,算是完美解决了这个问题,解决方案:
1,利用autocomplpop插件,http://www.vim.org/scripts/script.php?script_id=1879 可以实现键入字符自动弹出补全菜单的效果。如果不需要补全,继续键入字符即可。
为了避免在光标移动时弹出补全项,在.vimrc中添加:
let g:AutoComplPop_MappingDriven = 1
2,在.vimrc中添加下列语句,可以实现用Tab键在补全菜单中选择,按空格键选中补全项的效果。
let g:pumselect = 0
inoremap <expr> <TAB> MaySelect()
function MaySelect()
if(pumvisible())
let g:pumselect = 1
return "/<DOWN>"
endif
return "/<TAB>"
endfunc
inoremap <expr> <Space> MayComplete()
func MayComplete()
if (pumvisible() && g:pumselect)
let g:pumselect = 0
return "/<CR>"
endif
return "/<Space>"
endfunc
inoremap <expr> <CR> StateChangeEnter()
func StateChangeEnter()
let g:pumselect = 0
return "/<CR>"
endfunc
另外推荐两个插件:
mark.vim:可以用多种颜色同时高亮文件中的关键词。
doxygen.vim:对注释也可以语法着色乐,前提是doxygen风格的注释。