使用`C-P`自动完成单词时,如何防止Vim跳到下一行?

How to prevent Vim from jumping to next line, when auto-completing words using `C-P`?

当使用 C-P 自动完成 Vim 中的单词并按 Enter 到第一个候选 select 时,没有先使用箭头键到 select 候选人之间,Vim 将光标跳到下一行。

相反,如果我先使用箭头键 select 在候选之间,Vim 不会跳到下一行。

当 select 使用 Vim 的自动完成功能 C-P 第一个候选人时,如何防止 Vim 跳到下一行?

当弹出(完成)菜单处于活动状态时,您应该分别使用 <C-N> <C-P> <C-E> <C-Y> 而不是 <Down> <Up> <Esc> <CR>(注意所有这些键的行为有点不同)。但如果你真的喜欢它,你可以使用映射:

inoremap <expr><CR> pumvisible() ? "\<C-Y>" : "\<CR>"

另请参阅 Improve completion popup menu Vim 提示。