Cómo volver (ctrl + z) en vi / vim


106

En los editores de texto normales [con el debido respeto a Vim] hay un atajo Ctrl+ Zcuando has hecho algo desagradable y quieres volver a la versión anterior del texto. Como el botón ATRÁS en Word. Me pregunto cómo puedes lograr este comportamiento en Vim.



1
La documentación de Vim también es muy buena; :help undoencontrará su respuesta a esto, por ejemplo.
Chris Morgan

2
antes de sumergirse en vim por completo, le sugiero que siga el tutorial (interactivo)
karth

1
Gracias a todos y perdón por esta q. Debo leer más la próxima vez.
Slazer

1
en linux, CTRL-Z en vi / vim / gvim significa escapar a la consola, o poner esto en segundo plano. Luego, haga lo que quiera en la consola y escriba fg (primer plano) para regresar a la sesión de edición de vim.
mancocapac

Respuestas:


187

Puede utilizar el ubotón para deshacer la última modificación. (Y Ctrl+ Rpara rehacerlo).

Lea más sobre esto en: http://vim.wikia.com/wiki/Undo_and_Redo


2
Mapeo U para rehacer para poder deshacer / rehacer rápidamente, todo el historial de edición si es necesario, en vimrc: nnoremap U <CR>
NeilG

10

La respuesta, u(y muchas otras) está en $ vimtutor.


voto a favor solo porque nunca había oído hablar de él vimtutorantes
Paiusco

4

Sin embargo, aquí hay un truco. Puede mapear las teclas Ctrl+ Z. Esto se puede lograr editando el .vimrcarchivo. Agregue las siguientes líneas en el archivo '.vimrc`.

nnoremap <c-z> :u<CR>      " Avoid using this**
inoremap <c-z> <c-o>:u<CR>

Puede que esta no sea la forma preferida, pero se puede utilizar.

** Ctrl+ Zse usa en Linux para suspender el programa / proceso en curso.


1

Solo en modo normal presione:

  • u- deshacer ,
  • Ctrl+ r- rehacer cambios que eran incompleta ( deshacer las acciones de deshacer ).

Deshacer y rehacer


Sé que la mayor parte de mi respuesta está duplicada con las que ya están presentes, pero el valor agregado de mi respuesta es rehacer como Ctrl + r(minúsculas r) según la documentación. Nadie antes lo puso aquí. Además, traté de dar la respuesta lo más clara posible.
simhumileco

0

En una mac también puede usar el comando Z y eso se deshará. No estoy seguro de por qué, pero a veces se detiene, y si eres como yo y vimtutor está al final de esa larga lista de cosas que necesitas aprender, puedes cerrar la ventana y volver a abrirla y debería funcionar bien.


0

Tenía el mismo problema en este momento y lo resolví. No debes necesitarlo más, así que escribo para otros:

si usa gvim en Windows , simplemente agregue esto en su _vimrc : $VIMRUNTIME/mswin.vim behave mswin

si no, usa imap ...

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.