hjkl和箭头键之间有什么区别吗?

时间:2017-07-05 15:18:16

标签: vim

除了需要它们的位置和手部动作外,使用hjkl和箭头键之间有什么区别吗?我可以互换使用任何一个并期望相同的行为吗?我能想到的唯一区别是箭头键在插入模式下工作,所以如果你需要移动1-2个字符,你可以保存笔画。

注意:我使用备用键盘布局,并且hjkl键混合在一起。我的键盘上有一个可编程图层,想知道它是否应该有hjkl或箭头键。我更喜欢使用箭头键,因为它们可以在所有程序中使用。

1 个答案:

答案 0 :(得分:5)

箭头键与h,j,k,l

您的评估是正确的。它们是等效的,除了箭头键也可以在插入模式下工作。

(在其他几个地方也是如此,例如你可以使用左/右箭头在命令中移动或搜索/替换你正在输入,但在这些情况下你不能使用hjkl进行移动。)

我认为还有另外一个区别 - 因为它们是单独的键,它们可以映射到不同的东西。因此,如果您重新映射h,则不会影响<Left>的功能,反之亦然。

其他键

您在评论中询问了其他一些关键字。

  

X - Bkspc,x - 删除,0 - 主页,$ - 结束,R - 插入

有些是等同的,但不是全部。

x,X,退格,删除

x<Del>是等效的,甚至可以在帮助文本中共享完全相同的节点。它们都删除光标下和光标后的字符。

X<BS>都会删除光标左侧的字符。但在不同模式下:X在正常模式下执行此操作,<BS>在插入模式下执行此操作。如果您处于正常模式,<BS>只会向后移动一个字符而不更改文本(因此它的行为类似于h)。

0,$,Home,End

这些是可以互换的。

R,插入

这些不做同样的事情。 <Insert>的作用类似i,并插入。 R进入插入模式,但是以特殊的方式覆盖字符而不是在它们之前插入。