撤消Vim中的光标移动

alb*_*hin 4 vim

假设我的光标位于下面的代码中:

internal static SingleSelectList<Country, int> CreateCountrySingleSelectList(List<Country> countries, List<Airport> airPorts)
Run Code Online (Sandbox Code Playgroud)

并且光标位于该行的头部.现在我想将光标移动到<这行代码中的第二行,这是在WORD中List<Country>,只是按键序列f<;将把我带到那里.

但是,如果我通过按下另一个做错了什么怎么办呢;,这将把我带到行中的下一个<,就在这个词中List<Airport>.

在这种情况下,如何<使用最小击键次数返回到秒?

是否有最快的方法来取消光标移动,而不是长F<按键或按键h

Rus*_*pov 6

尝试CtrlO返回游标历史记录。

http://www.rosipov.com/blog/open-previously-edited-file-in-vim/

  • 请注意,这不适用于所有运动命令。“被视为“跳转”的命令包括搜索,替换和标记。滚动浏览文件不被视为跳转。” 参见https://vim.fandom.com/wiki/Jumping_to_previously_visited_locations (2认同)

Lie*_*ers 6

可逆的动作;,你的问题的答案是使用,一次.

您可以查看命令的作用 :h ;

;           Repeat latest f, t, F or T [count] times.   
,           Repeat latest f, t, F or T in opposite direction
            [count] times
Run Code Online (Sandbox Code Playgroud)


Ing*_*kat 5

与鲁斯兰·奥西波夫(Ruslan Osipov)的错误答案相反,该f动作将先前的位置存储在跳转列表中(只有通常移至非相邻行的动作存储)。

但是,没有什么可以阻止您使用来明确设置跳跃m'。然后,您可以通过``或返回到该位置<C-O>