在(g)Vim中,是否可以将光标移动到其先前的位置(在普通模式下)?最好能够循环在先前光标位置列表之间切换。但是仅切换到最后一个位置也足够了(类似于bash中的cd -
与目录)。
这里是一个小演示:
line |1| <- cursor position
line 2
line 3
line 4
假设我执行了2j
,现在的情况如下:
line 1
line 2
line |3| <- cursor position
line 4
现在我想按下某个东西(除了显然的2k
),以回到第一个位置并可能返回之前的位置。
i j k l
移动命令之外的任何运动命令)时,跳跃列表才会更新(例如记录上一个光标位置)。根据帮助文档中的完整列表来看,“跳转”命令包括"'"', "\
", "G", "/", "?", n", "N", "%", "(", ")", "[[", "]]", "{", "}", ":s", ":tag", "L", "M", H" 以及开始编辑新文件的命令。因此,不,这不会“撤消”2j
或类似操作,但它几乎对其他所有操作都有效。这是有道理的,因为2j
等已经有简单的反向操作(例如2k
),而其他操作则没有。 - Kyle Strand