Omnicompletion功能可以正常使用,但它会自动插入第一个结果。
我想要的是打开Omnicomplete菜单,然后通过输入内容逐渐缩小搜索范围,最后按下回车键、Tab键、空格键或其他按键插入所选的菜单项。
这种做法可行吗?
Omnicompletion功能可以正常使用,但它会自动插入第一个结果。
我想要的是打开Omnicomplete菜单,然后通过输入内容逐渐缩小搜索范围,最后按下回车键、Tab键、空格键或其他按键插入所选的菜单项。
这种做法可行吗?
您正在寻找的命令是:
:set completeopt+=longest
它将插入所有建议的最长公共前缀,然后您可以键入和删除以缩小或扩大结果。
set wildmenu
set wildmode=list:longest,full
在这里发现。还有一个名为SuperTab continued的插件,可满足您的所有自动完成需求。
这是一般的 Vim 自动补全行为。如需完整概述,您可以执行以下操作
:he compl-current
但是针对您的特定情况(您需要完成状态为2或3(在上面的文档中描述)。您可以简单地使用Backspace或Control-H从状态一跳转到状态二。在状态2中,您可以通过键入常规字符来缩小搜索范围。因此,要完成缩小的完成:
compl<C-X><C-P><BS>letion
我知道这完全是反过来的,但这就是它的工作方式。
编辑:您也可以使用向下箭头键代替Control-H或退格键,这样还有不删除字符的好处。