对于基于文本的游戏,我拥有大量的ViM键映射。一个宏看起来像这样:
map <buffer> [[ g0k?UNIT [0-9a-zL]\+;<CR>zow
这达到了我想要的目的,但有一个缺点:当我按CTRL-O
时,光标在我键入[[
的行的开头。再次按CTRL-O
可使我到达上一个移动位置,而不是我开始的位置。
是否有一种方法可以使光标移回我按下[[
的位置,例如通过使ViM不缓存该中间移动步骤?还是有其他方法可以完成这项工作?
答案 0 :(得分:0)
但是,如果您的问题是我,我不理解您的真正问题
有没有办法使ViM不缓存此中间运动步骤?
是的,您应该选中:keepjump
,当执行跳转命令时,它将绕过将位置存储到跳转列表中。
P.S。 [[
很有用,您可能需要重新考虑映射键。