【问题标题】:How to prevent Vim from jumping to next line, when auto-completing words using `C-P`?使用`C-P`自动完成单词时,如何防止Vim跳到下一行?
【发布时间】:2020-03-12 09:15:15
【问题描述】:

当在 Vim 中使用 C-P 自动完成单词并按 Enter 选择第一个候选词,而不先使用箭头键在候选词之间进行选择时,Vim 会将光标跳转到下一行。

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

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

【问题讨论】:

  • 我猜按 Enter 会插入换行符。如果你继续打字呢?

标签: linux ubuntu vim vi


【解决方案1】:

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

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

另见Improve completion popup menu Vim 提示。

【讨论】:

    猜你喜欢
    • 2014-03-31
    • 1970-01-01
    • 2021-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-19
    • 2010-10-15
    • 1970-01-01
    相关资源
    最近更新 更多