2015-04-02 30 views
5

我使用YouCompleteMe在Vim中自动完成。它不能与VimShell一起使用,所以我只想在VimShell缓冲区中禁用它。如何禁用YouCompleteMe并启用NeoComplete,仅适用于一种文件类型?

如何禁用YouCompleteMe并从Vimscript启用NeoComplete

+0

这取决于您如何在设置中安装插件(即您如何安装YouCompleteMe)。你是否用Vundle手动安装了Pathogen?例如,如果您使用[Vundle](https://github.com/gmarik/Vundle.vim/),则需要从'vimrc'中删除'Plugin'Valloric/YouCompleteMe'',然后添加一个'Plugin '呼吁NeoComplete。 – 2015-04-03 02:54:34

+0

@ RoryO'Kane我使用Pathoghen并从源代码构建YouCompleteMe。我只想为特定的文件类型禁用YouCompleteMe。 – Alaya 2015-04-03 15:42:22

回答

8

YouCompleteMe允许您配置文件类型白名单和黑名单,以启用或禁用给定文件类型的完成。

https://github.com/Valloric/YouCompleteMe#the-gycm_filetype_whitelist-option

Neocomplete具有类似的特征,与NeoCompleteUnlock/NeoCompleteLock

https://github.com/Shougo/neocomplete.vim/blob/290b9532ae3a04b53f0d0ecdee34e2b664229939/doc/neocomplete.txt#L204

例如,要禁用YouCompleteMe并启用NeoComplete为vimshell文件类型,你可以使用这样的事情在你的.vimrc:

let g:ycm_filetype_blacklist = { 'vimshell': 1 } 
autocmd FileType vimshell NeoCompleteUnlock 

我不能对此进行测试,因为我不使用vimshell。