在vim中编程我经常去寻找东西,猛拉它,然后回到我原来的位置,插入它,修改它.
问题是,在我搜索并找到之后,我需要手动找到回到原来的路.
有没有一种自动方式可以回到我上次搜索时的状态?
Ctrl+ O带我到以前的位置.在搜索之前不知道位置.
编辑:此外,`.还会带您进行最后一次更改.
使用``
跳回到你搜索前/跳下来,或者你的确切位置''
跳回你是你搜索之前上线的开始/跳下.
我总是通过设置标记来完成.
在命令模式下,按m [letter].例如,ma使用a作为标记标识符在当前行设置标记.
要回到标记,按'[letter].例如,'a将您带回到步骤1中设置的标记.
要查看当前设置的所有标记,请键入:marks.
在略微不相关的说明中,我刚刚发现了另一个关于标记的好东西.
假设你跳过标记b做'b.在跳转到标记b之前,Vim会自动将标记'(这是单引号)设置为您所在的任何一条线.
这意味着你可以'b跳到那个标记,然后做'(2个单引号)跳回你以前的那个.
我意外地使用:marks命令发现了这一点,它显示了所有标记的列表.
你真的应该阅读:help jumplist
它解释所有这一切.
CTRL+O并且CTRL+I,为了前后跳跃.
最简单的方法是设置一个标记m[letter]
,然后返回到它'[letter]
我用这个:
nnoremap / ms/ nnoremap ? ms?
然后,如果我使用/
或搜索某些内容?
,我可以快速返回`s
.您可以将该字母替换为s
您喜欢的任何字母.