烦人 <C-Space> 不适用于 YouCompleteMe (YCM)
Annoying <C-Space> does not work with YouCompleteMe (YCM)
我在 linux 系统上设置了 YCM,并通过 gui-terminal 调用了 vim 虽然 YCM 在 vim 插入模式下工作正常并且它打开了全方位菜单 但是只要我按下或 vim 进入粘贴模式,它就不会触发 YCM。
None .vimrc 中的以下设置对我有用。
let g:ycm_key_invoke_completion = '<C-x><C-o>'
let g:ycm_key_invoke_completion = '<C-Space>'
let g:ycm_key_invoke_completion = '<Nul>'
以下诊断命令return
:verbose imap <Nul>
i <Nul> * <C-X><C-O><C-P>
Last set from ~/.vim/bundle/YouCompleteMe/autoload/youcompleteme.vim
:verbose imap <C-Space>
No mapping found
:verbose imap <C-x><C-o>
i <C-X> * <C-R>=<SNR>20_ManualCompletionEnter()<CR>
Last set from ~/.vim/bundle/supertab/plugin/supertab.vim
不知道是SuperTab的问题还是其他的,我真的很想弹出Omnimenu。 谢谢
来自:h paste
When the 'paste' option is switched on (also when it was already on):
- mapping in Insert mode and Command-line mode is disabled
- abbreviations are disabled
- 'textwidth' is set to 0
- 'wrapmargin' is set to 0
- 'autoindent' is reset
- 'smartindent' is reset
- 'softtabstop' is set to 0
- 'revins' is reset
- 'ruler' is reset
- 'showmatch' is reset
- 'formatoptions' is used like it is empty
所以我不确定为什么您会期望这些映射起作用。如果您想正常编辑文件,只需禁用粘贴模式即可。