Introducción
A veces, al editar un archivo, es posible que elimine una línea incorrecta o cambie de opinión acerca de un cambio y desee deshacer los cambios.
Este artículo explica cómo deshacer y rehacer cambios en Vim /Vi.
Vi o Vim se instalan de forma predeterminada en macOS y en casi todas las distribuciones de Linux. Conocer los conceptos básicos de Vim puede ser muy útil cuando se encuentra en una situación en la que su editor favorito no está disponible.
Deshacer los cambios en Vim /Vi
Vim realiza un seguimiento de todos los cambios realizados en la sesión actual. El comando Deshacer deshace uno o más cambios en el orden en que se realizaron.
Para deshacer los cambios en Vim y Vi use el comando u
:u
o :undo
:
- Si está en el modo de inserción o en cualquier otro modo, presione la
Esc
para regresar al modo normal, también conocido como modo de comando. - Escriba
u
para deshacer el último cambio. En Vim, elu
también acepta cuantificadores. Por ejemplo, si desea deshacer los últimos 4 cambios, usaría4u
.
Asegúrese de escribir u
minúscula, no el U
que, en cambio, deshace todos los cambios recientes en una línea. Si escribe U
accidentalmente, puede deshacer el cambio con u
.
Utilice el comando Deshacer para revertir los cambios realizados por cualquier otro comando, como eliminar, pegar, buscar y reemplazar, etc.
Cuando se trabaja en el modo de inserción, todos los cambios de texto se tratan como una entrada en el árbol de deshacer. Por ejemplo, si cambia al modo de inserción e ingresa cinco líneas, regresa al modo normal y presiona u
para cancelar el cambio, se eliminarán las cinco líneas.
Revertir cambios en Vim /Vi
La función de repetición Rehacer invierte la acción de deshacer.
Para rehacer un cambio en Vim y Vi, use la Ctrl-R
o :redo
:
- Presione la
Esc
para regresar al modo normal. - Use
Ctrl-R
(mantengaCtrl
tecla Ctrl y presioner
) para rehacer el último cambio. En Vim también puedes usar cuantificadores. Por ejemplo, si desea rehacer los últimos 4 cambios, escriba4Ctrl-R
.
Cada comando de deshacer puede revertirse mediante un comando de rehacer.
Conclusión
Para deshacer un cambio en el tipo Vim /Vi u
y rehacer un cambio deshecho, use la secuencia de Ctrl-R
.
Vim también admite deshacer ramas.