Omnicompletion正在运行,但会自动插入第一个结果。
我想要做的是打开omnicomplete菜单,然后输入以缩小结果范围,然后点击输入或制表符或空格或其他内容以插入所选菜单项。
这可能吗?
答案 0 :(得分:16)
您正在寻找的命令是:
:set completeopt+=longest
它会插入所有建议的最长公共前缀,然后您可以输入和删除以缩小或扩展结果。
答案 1 :(得分:3)
set wildmenu
set wildmode=list:longest,full
找到here。 还有一个很棒的插件可以满足您的所有完成需求SuperTab continued。
答案 2 :(得分:0)
此插件可能会完成您的操作: autocomplpop
或者您可以尝试制作Vim完成弹出菜单work just like in an IDE。
答案 3 :(得分:0)
这是一般的Vim完成行为。如需完整概述,您可以
:he compl-current
但是对于您的特定情况(您需要完成状态2或3(在上面的文档中描述)。您可以简单地使用Backspace或Control-H从状态1跳转到状态2。 2你可以通过输入常规字符来缩小搜索范围。所以要缩小完成完成:
compl<C-X><C-P><BS>letion
我知道,这完全是倒退,但这就是它的运作方式。
编辑:您也可以使用向下箭头键而不是Control-H或Backspace,它具有不删除字符的好处。