【问题标题】:Scrolling in vim autocomplete box with jk movement keys使用 jk 移动键在 vim 自动完成框中滚动
【发布时间】:2015-04-23 16:36:46
【问题描述】:

在 vim 中,您可以开始输入一个单词,按 ctrl-n,然后会弹出一个带有建议补全的框。我不喜欢把手移到箭头键上来滚动浏览这个列表。有什么方法可以使用 jk 键向下/向上滚动吗?

【问题讨论】:

    标签: vim autocomplete


    【解决方案1】:

    我知道问题是要求使用 J 和 K 键,但您也可以避免以其他方式使用箭头键。

    在点击 ctrl+n 获得自动完成弹出窗口后,您可以使用 ctrl+n 和 ctrl+p 导航列表。

    【讨论】:

    • 这仍然是最好的选择,但它偶尔会在插件绑定键盘映射时中断。例如数据库工具插件需要 ctrl+n。删除这些,它会再次正常工作。要找到它们,请转到 settings > keymap > keyboard icon (find actions by shortcut) 并输入 ctrl+n 或 ctrl+p。
    【解决方案2】:
    inoremap <expr> j ((pumvisible())?("\<C-n>"):("j"))
    inoremap <expr> k ((pumvisible())?("\<C-p>"):("k"))
    

    【讨论】:

    • 正是我想要的。谢谢。
    • 非常有趣的问题和解决方案:每次出现弹出窗口时,我都会不假思索地自动使用 j 和 k..
    • 注意:您将失去即时键入文本部分的可能性(当它包含 jk 时。)
    • 可以alt+j/k吗?
    • 你可以将 j/k 替换为 /
    【解决方案3】:
    inoremap <expr> <down> ((pumvisible())?("\<C-n>"):("\<down>"))
    inoremap <expr> <up> ((pumvisible())?("\<C-p>"):("\<up>"))
    

    【讨论】:

    • 对我不起作用。但是 j 和 k 而不是 工作正常
    猜你喜欢
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 2012-04-09
    • 2014-05-16
    • 2011-07-22
    • 2011-10-22
    • 1970-01-01
    相关资源
    最近更新 更多