如何设置 vim 的自动完成弹出菜单位置?

How do I set vim's autocomplete popup menu location?

在vim中,当使用自动完成插件(或只是vim的内置omnifunc)时,光标旁边会弹出一个window完成建议:

Vim 尽量巧妙地选择将此菜单放在哪里,大部分时间将其放在光标下方,但如果靠近 window 的底部,则放在光标上方,并且没有 space 才能看到 window.

我最近更新到 vim 的新版本(和 YouCompleteMe,我使用的自动完成插件),似乎 vim(或 YCM,不确定是哪个负责)现在过于积极地将内容放在光标上方而不是下方,基本上如果你在 window 的上半部分,弹出菜单在光标下方,而如果你在下半部分,弹出菜单始终在光标上方。

我的问题是,如何控制这种行为?看起来它可能是一个 vim 设置,但在我的所有搜索中我找不到任何可以暗示 vim 如何决定将弹出菜单放在光标上方还是下方的内容。

唯一与完成相关的选项是 'complete''completeopt'。完整弹出菜单的位置在 Vim 的源代码中进行了硬编码。

如果您认为这在最近的 Vim 版本中变得更糟,请在 bug tracker, or directly discuss this on the vim_dev mailing list 上提出问题。