我的macvim上安装了 bundle ultisnips和youcompleteme。
问题在于,由于tab被ycm绑定(bind),所以ultisnips无法正常工作。
我尝试放入let g:UltiSnipsExpandTrigger = "<s-tab>",以便可以使用shift-tab触发代码段完成,但是由于某些未知原因,该代码不起作用。我可以使用大写作为触发,但是到目前为止,我还没有找到实现此目的的方法。

你们中的任何一个都一起使用这两个加载项吗?
我该怎么做才能使排类工作?
您能推荐另一个键来触发代码片段吗?

最佳答案

另一个选择是使用SuperTab插件:

" if you use Vundle, load plugins:
Bundle 'ervandew/supertab'
Bundle 'Valloric/YouCompleteMe'
Bundle 'SirVer/ultisnips'

" make YCM compatible with UltiSnips (using supertab)
let g:ycm_key_list_select_completion = ['<C-n>', '<Down>']
let g:ycm_key_list_previous_completion = ['<C-p>', '<Up>']
let g:SuperTabDefaultCompletionType = '<C-n>'

" better key bindings for UltiSnipsExpandTrigger
let g:UltiSnipsExpandTrigger = "<tab>"
let g:UltiSnipsJumpForwardTrigger = "<tab>"
let g:UltiSnipsJumpBackwardTrigger = "<s-tab>"

在这里,YouCompleteMe绑定(bind)到另一个组合Ctrln,但是该组合通过SuperTab绑定(bind)到tab。 UltiSnips和SuperTab可以很好地配合使用,因此您只需将UltiSnips绑定(bind)到选项卡即可,一切都会正常进行。

关于vim - UltiSnips和YouCompleteMe,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14896327/

10-11 21:40