¿Hay un comando para deshacer la última operación realizada en modo de inserción?
Acabo de pegar texto del registro incorrecto usando <C-r>
, y tengo dos opciones:
- Elimina a mano lo que acabo de pegar y comienza de nuevo.
- Cambie al modo normal, presione
u
y pierda el texto que escribí antes de presionar<C-r>
.
¿Hay una mejor manera?
insert-mode
undo-redo
zool
fuente
fuente
<C-O>u
y ver el resultado en la pantalla (aproximadamente 4 segundos), ¿alguna idea de cómo podría deshacerme de eso?:help i_CTRL-G_u
.Desde el modo de inserción:
Si su texto pegado es más pequeño que una línea (que es lo que su segundo punto implica), simplemente presione
<C-u>
para eliminar todos los caracteres antes del cursor en la línea actual.Si el texto pegado es más de una línea, su segunda solución sería trabajar mejor, con las siguientes adaptaciones:
<C-o>u
.Ambos puntos anteriores comenzarán y permanecerán, o terminarán, en modo de inserción; en realidad son lo mismo con sus soluciones propuestas, solo que se acortaron :)
fuente
Puede intentar
<C-w>
(elimina una palabra a la izquierda) o<C-u>
(borrar caracteres antes del cursor cuando se presiona una vez, elimina el salto de línea cuando se presiona una segunda vez). Ver:help i_CTRL-W
y:help i_CTRL-U
.Si pega mucho de un registro, por supuesto, es más rápido deshacer sus cambios, puede usar insert-normal-mode con
<C-o>
eso (ejecute un comando de modo normal y luego regrese al modo de inserción).En general, es útil dividir las ediciones en pequeños trozos volviendo a menudo al modo normal, de modo que tenga posibilidades de deshacer con precisión.
fuente