¿Cómo volver a las líneas editadas antes de la última en Vim?

201

Soy consciente del `.comando que va a la última línea editada. ¿Hay alguna manera de avanzar en el historial de edición? A menudo inserto algo accidentalmente mientras navego por el archivo, deshago, pero luego `.ya no me llevará a donde quiero.

Beto
fuente
24
Gracias por señalarme '..
Joachim Breitner
16
''es más conveniente que'.
AA.
1
@AA no cuando tienes teclas muertas en tu teclado.
tomasyany

Respuestas:

374

Intenta g ;yg , . Saltan hacia adelante y hacia atrás en la lista de cambios.

Ver :help changelistpara más detalles.

Randy Morris
fuente
Hasta ahora, solía usar este truco de deshacer seguido de rehacer para ir a la última posición cambiada. es decir, "u" y luego "ctrl + r".
Mayank Jaiswal
1
@Bob: ¿sigues vivo? por favor, ¿puedes juzgar la respuesta correcta? Esta respuesta tiene suficientes votos para justificar una discusión seria;)
arcseldon
Oh, dónde está @Bod ahora, deberías marcar esta es la respuesta correcta, hay muchas personas con TOC aquí.
Finn
esto funciona para mí
NanoNova
72

Uso CTRL-Oy CTRL-Ipara saltar de un lado a otro entre los puntos recientes en los archivos. También pasa por ciertos comandos de movimiento, pero creo que generalmente me lleva de vuelta a donde estaba editando.

Josh Lee
fuente
37
Estos comandos se mueven a través de 'jumplist' ( :help jumplist), mientras que g;y se g,desplazan a través de la 'lista de cambios'.
nelstrom el
2
Me pareció bastante útil, aunque no respondió a la pregunta directa
ebonhand
2
Nota, Tab es una forma más conveniente de escribir Ctrl + I
Steven Lu