我的自动补全有问题。我如何在打字时得到代码建议?

我通常用PHP, Ruby, HTML, C和CSS开发。


当前回答

您可以从内置的omniunc设置开始。

把:

filetype plugin on
au FileType php setl ofu=phpcomplete#CompletePHP
au FileType ruby,eruby setl ofu=rubycomplete#Complete
au FileType html,xhtml setl ofu=htmlcomplete#CompleteTags
au FileType c setl ofu=ccomplete#CompleteCpp
au FileType css setl ofu=csscomplete#CompleteCSS

在你的。vimrc底部,然后在插入模式下键入<Ctrl-X><Ctrl-O>。

我总是依赖这个CSS完成。

其他回答

如果你只想从当前缓冲区的缓存中自动补全,supertab比neocomplete更容易安装,可以在Mac预装的vim上工作,而不需要MacVim。

你可以在vim awesome上查看其他选择。

你可以使用像AutoComplPop这样的插件在你输入的时候自动完成代码。

2015编辑:我个人现在使用YouCompleteMe。

在插入模式下,使用Ctrl-N获取单词建议列表。键入:help i_CTRL-N以查看Vim关于此功能的文档。

下面是一个将Python字典导入Vim的示例。

另一个选项是coc.nvim。

它真的很快,补全很棒,因为它使用了与VScode相同的自动补全功能。 它还具有检测功能。这说明你可能有bug。 它支持多种语言。

它可能需要一些设置和配置,但我认为它是vim最好的自动补全引擎。

还有https://github.com/Valloric/YouCompleteMe,它包括像Jedi这样的东西,也有模糊匹配。到目前为止,我发现YCM是我尝试过的最快的。

编辑:也有一些新的网站,如https://github.com/maralla/completor.vim