经过几天的调整,我想我得到了 vim 的自动完成功能(omnicomplete + Acp 插件)可以正常工作。但令人讨厌的是它仍然对纯文本文件启用,所以我必须为 README 或纯文本文件键入 :DisableAcp。如何向我的 vimrc 添加逻辑,以便在它检测到空文件类型时在启动时禁用 Acp?
这是我写的:
if &filetype == ""
let g:acp_enableStartup = 0
endif
但这会在所有文件的启动时禁用 Acp。
Add this to your vimrc:
autocmd WinEnter README,*.txt :DisableAcp
autocmd WinLeave README,*.txt :EnableAcp
autocmd WinEnter * :if &ft=='text' | DisableAcp | else | EnableAcp | endif
功能/方法是:AcpDisable
,不是:DisableAcp
在不知道为什么 vim 不尊重我之后,我决定改变逻辑
autocmd Filetype * | if &omnifunc=="" | call acp#disable() | endif
所以我这样做了:
let g:acp_EnableAtStartup = 0
autocmd FileType python call acp#enable()
autocmd FileType ncl call acp#enable()
autocmd FileType javascript call acp#enable()
autocmd FileType html call acp#enable()
autocmd FileType css call acp#enable()
autocmd FileType xml call acp#enable()
autocmd FileType php call acp#enable()
autocmd FileType c call acp#enable()
这有效。谢谢你的帮助。