In vim, how do I go back to where I was before a search?

前端 未结 7 755
佛祖请我去吃肉
佛祖请我去吃肉 2021-01-29 17:07

Programming in vim I often go search for something, yank it, then go back to where I was, insert it, modify it.

The problem is that after I search and find, I need to MA

7条回答
  •  被撕碎了的回忆
    2021-01-29 17:49

    I've always done by it setting a mark.

    1. In command-mode, press m[letter]. For example, ma sets a mark at the current line using a as the mark identifier.

    2. To get back to the mark press ' [letter]. For example, 'a takes you back to the line mark set in step 1. To get back to the column position of the row where you marked the line, use `a (back-tick [letter]).

    To see all of the marks that currently set, type :marks.


    On a slightly unrelated note, I just discovered another nifty thing about marks.

    Let's say you jump to mark b by doing mb. Vim automatically sets the mark ' (that's a single-quote) to be whichever line you were on before jumping to mark b.

    That means you can do 'b to jump to that mark, then do '' (2 single-quotes) to jump back to wherever you were before.

    I discovered this accidentally using the :marks command, which shows a list of all marks.

提交回复
热议问题