Como voltar às linhas editadas antes da última no Vim?

201

Estou ciente do `.comando que vai para a última linha editada. Existe um caminho a percorrer na história da edição? Frequentemente, insiro algo acidentalmente enquanto navego no arquivo, desfazer, mas `.não me levará mais aonde quero.

Prumo
fonte
24
Obrigado por me indicar '..
Joachim Breitner
16
''é mais conveniente que'.
AA.
1
@AA não quando você tem teclas inoperantes no teclado.
precisa saber é o seguinte

Respostas:

374

Tente g ;e g ,. Eles pulam para trás e para frente na lista de alterações.

Veja :help changelistpara mais detalhes.

Randy Morris
fonte
Até agora, eu costumava usar esse hack de desfazer seguido de refazer para ir para a última posição alterada. ou seja, "u" e depois "ctrl + r".
Mayank Jaiswal
1
@ Bob - você ainda está vivo? por favor, você pode julgar a resposta correta. Esta resposta tem votos suficientes para justificar a disputa séria;)
arcseldon
Oh, onde está o @Bod agora, você deve marcar que esta é a resposta certa, existem muitas pessoas com TOC aqui.
Finn
isso funciona para mim
NanoNova 11/03
72

Eu uso CTRL-Oe CTRL-Ipara alternar entre pontos recentes nos arquivos. Ele também passa por certos comandos de movimento, mas acho que geralmente me leva de volta para onde estava editando.

Josh Lee
fonte
37
Estes comandos de se mover através do 'Jumplist' ( :help jumplist), enquanto que g;e g,de rolagem por meio do 'Changelist'.
Nelstrom 13/11/2009
2
Achei isso muito útil, mesmo se ele não respondeu a pergunta diretamente
ebonhand
2
Note, Tab é uma maneira mais conveniente de digitar Ctrl + I
Steven Lu