Vim Home Row导航不滚动但定向箭头

时间:2014-08-31 18:36:18

标签: macos vim text-editor

当在Vim中使用箭头键时,光标会以我当前的速率滚动( defaults write NSGlobalDomain KeyRepeat -int 0 (非常快)),但在使用 'h', 'j', 'k'时/ strong>或 'l' ,滚动不会发生。有什么建议?

2 个答案:

答案 0 :(得分:0)

首先,hjkl不滚动,它们会移动可能引发滚动的光标。如果要滚动,请使用实际的滚动命令:

" scroll by one line
<C-e>
<C-y>

" scroll by half screen
<C-u>
<C-d>

" scroll by full screen
<C-b>
<C-f>

请参阅:help scrolling

第二,你是否尝试过其他价值观?也许有一个阈值超出Vim停止响应?

答案 1 :(得分:0)

为了澄清,你的箭头键只是以极快的速度移动光标(可能会引起滚动)。这是由您的系统(通过您的配置)而非Vim完成的。

我自己遇到了这个问题,当我想要一种更简单的方式来滚动代码而不必经常按jk。以下是我发现的几个解决方案:

  1. 使用&lt; C-f&gt;和&lt; C-b&gt;,将屏幕向上滚动一页或向下滚动一页。可以找到更多类似的命令here

  2. 试用vim easy motion,这样可以更轻松地将动作变为整体

  3. 最后,尝试输入命令:

    defaults write NSGlobalDomain ApplePressAndHoldEnabled -bool false
    

    默认情况下,mac在按键时允许一个奇特的功能,诱导选项(如重音等)。 vim可能被该功能欺骗了。