Introducción
¿Alguna vez se ha encontrado en una situación en la que accidentalmente eliminó una fila o cambió de opinión acerca de un cambio y desea deshacer los cambios?
En este artículo le mostraremos cómo deshacer y rehacer cambios en Vim/Vi.
Vi es un editor liviano que existe desde los albores de Unix, mientras que Vim es una versión mejorada de Vi que incluye muchas características y opciones adicionales.
Vi o Vim está preinstalado de forma predeterminada en macOS y en casi todas las distribuciones de Linux. Conocer los conceptos básicos de Vim puede resultar especialmente útil cuando te encuentras en una situación en la que tu editor favorito no está disponible.
Deshacer cambios en Vim/Vi
Vim realiza un seguimiento de todos los cambios realizados en la sesión actual. El comando Deshacer invierte uno o más cambios en el orden en que se realizaron.
Para deshacer cambios en Vim y Vi use los comandos u
, :u
o :undo
:
- Si está en modo de inserción o en cualquier otro modo, presione la tecla
Esc
para volver al modo normal, también conocido como modo de comando. - Escriba
u
para deshacer el último cambio. En Vim, el comandou
también acepta cuantificadores. Por ejemplo, si quisiera deshacer los últimos cuatro cambios, usaría4u
.
Asegúrese de escribir u
el comando en minúsculas y no en mayúscula U
, lo que deshace todos los cambios más recientes en una sola línea. Si accidentalmente escribe U
puede deshacer el cambio con u
.
Utilice el comando Deshacer para deshacer los cambios realizados por cualquier otro comando, como eliminar, pegar, buscar y reemplazar, etc.
Cuando se trabaja en 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, luego regresa al modo normal y presiona u
para cancelar el cambio, se eliminarán las cinco líneas.
Repetir cambios en Vim/Vi
La función rehacer es lo opuesto a Deshacer; le permite revertir la acción anterior.
Para rehacer un cambio en Vim y Vi use Ctrl-R
o el comando :redo
:
- Presione la tecla
Esc
para volver al modo normal. - Utilice
Ctrl-R
(mantenga presionadaCtrl
y presioner
) para rehacer el último cambio. En Vim también puedes usar cuantificadores. Por ejemplo, si desea repetir los últimos cuatro cambios, deberá escribir4Ctrl-R
.
Cada comando de deshacer se puede deshacer mediante un comando de rehacer.
Conclusión
Cuando se trabaja con archivos de texto, es común cometer errores durante la edición, como eliminar accidentalmente una línea o realizar un cambio no intencionado. Para deshacer un cambio en Vim/Vi u
type y rehacer un cambio cancelado use la secuencia de teclas Ctrl-R
.
Vim también admite ramas de deshacer.
Además, también puede utilizar los comandos :earlier
y :later
para avanzar y retroceder en el tiempo a través de los cambios que realice. Por ejemplo, escribir :earlier 10m
deshará los cambios realizados en los últimos diez minutos, mientras que escribir :later 5s
revertirá el cambio realizado hace cinco segundos.
No dudes en dejar un comentario si tienes alguna pregunta.