我知道我可以通过CTRL+N
& CTRL+P
并通过带有CTRL+X
CTRL+O
的omnifunc完成代码。我另外尝试了Supertab(非常好),因为我已经习惯了TAB完成。这一切都很好。我想在我打字的时候看到可能的比赛,所以我也试过autocomplpop.vim,女巫就是这么做的。
我想要完成的是,两者结合起来还有一点点扭曲:我希望看到我输入时弹出的建议(就像autocompop
一样)但是当我使用{{1 这个词应该仅扩展到最大的公共匹配:
TAB
在第二行输入foo bar testor booze test baz teter
te<TAB>
后,弹出窗口应显示te
,test
和teter
。
当我按testor
时,它应该什么都不做,因为没有比TAB
更常见的基础。在我输入其他te
并按s
后,它应该将TAB
扩展为tes
(因为它是最小的共同点),并且在test
之后第二testor
。
修改:我试着更清楚......
TAB
te<TAB>
tes<TAB>
(因为这适用于 - test和testor - 并且teter不再是可能的匹配)。 test
test<TAB>
(仅可能匹配)。好吧,建议弹出窗口只是奖金,但我真的很想看到testor
行为。希望我在这里不要深奥,你可以帮助我用一些脚本技巧或插件来驯服VIM来做到这一点。
答案 0 :(得分:6)
:set completeopt=longest,menu,preview
可能?
(我不确定你的陈述是否
“当我按TAB时,它应该什么都不做,因为没有比te更多的共同点”
与您之后的陈述冲突
“在第二次TAB之后对testor。”
在我看来,那时没有比“测试”更常见的了......除非你的意思是第一个标签进入最长的共同点,然后随后的标签循环通过其他匹配,在这种情况下你跟我上面的东西......)