¿Cómo me retiro de Vi?

81

Comencé Vi en mi máquina Ubuntu. Sin embargo, soy nuevo en Vi y ahora no puedo dejarlo. Veo el editor y puedo escribir texto, en la línea inferior hay una etiqueta de "grabación".

¿Cómo salgo de Vi?

Jonas
fuente
1
La "grabación", por cierto, significaba que estabas grabando una macro. No es que eso importe más.
frabjous
44
Esta pregunta trae recuerdos tan "divertidos". Sin embargo, estoy tan contento de haber superado ese sentimiento.
frabjous
¿Cómo podemos volver en modo de inserción desde el modo de solo lectura en Linux (Ubuntu en VMware instalado) VI Editor?
2
Salir de Vim se ha convertido en un meme ahora.
noɥʇʎԀʎzɐɹƆ
2
Para aquellos que aún no han visto esa broma: twitter.com/iamdevloper/statuses/435555976687923200
Federico Poloni el

Respuestas:

91

vim es un editor modal . Presione la ESCtecla para ingresar al modo Normal (comando), luego escriba :qy presione Enter.

Para salir sin guardar ningún cambio, escriba :q!y presione Enter.

Consulte también Salir en la documentación de Vim.

Sinan Ünür
fuente
99
Gracias: He intentado que los comandos, pero después de ejecutarlos Me decidí con: E37: No write since last change (add ! to override). No tengo nada que salvar.
Jonas
12
Úselo :wqsi desea guardar lo que ha editado y luego salga. :q!si desea salir y dejar sus cambios atrás.
Steven D
O si ha escrito algo de lo que desea hacer una copia, :w newFileName.txtresuelva el problema de solo lectura fuera de vi o vim .
Kevin Cantu
55
dejar de fumar :q; forzar el abandono :q!; salga y guarde :wqo:x
fromnaboo
2
@Jonas, la próxima vez que lo intente :qall!, sospecho que ha abierto más archivos dentro de un solo búfer.
Alan Dong
11

Utilizo ctrl+ [para generar la escsecuencia, esto evita que tenga que mover los dedos de la fila de inicio (recuerde que la escclave estaba en un lugar diferente cuando vise inventó. :wqEscribirá todos los archivos sin tener en cuenta la necesidad. Sugiero usar ZZ(que es shift+ zdos veces ) que solo se escribirá si se ha realizado un cambio en el archivo. También :xaes lo mismo que, ZZexcepto si tiene más de 1 archivo abierto en la instancia del editor (como las pestañas vim). nota: No estoy seguro de que todo esto sea 100% compatible con todos los clones vi, pero sé que funciona con vim

xenoterracida
fuente
1
Gracias. El ZZcomando parece ser útil. Puedo ver el punto con, Ctrl+[pero estoy usando una distribución de teclado sueca y tengo que presionar AltGr+8para [que sea Ctrl+AltGr+8para mí :(
Jonas
También tenga en cuenta que ZQes efectivamente lo mismo que :q!. Sin embargo, esto no es estándar. ZZ, por otro lado, se especifica en POSIX .
Comodín el
4

La renuncia del vi es otra forma de hacerlo Esc :x.

La opción se usa para guardar y salir al mismo tiempo.

loganaayahee
fuente
2
Tenga en cuenta que me gusta ZZ, :xescribirá el archivo solo si su contenido ha cambiado, a diferencia :wq.
jlliagre
2

Como dijo Sinan, vim es un editor modal. Si desea saber si eso funciona para usted, tal vez debería invertir algo de tiempo y ejecutarlo, vimtutorque es una forma interactiva de aprender vim. (También cubre cómo salir, qué significan los modos y qué puede hacer en cada modo).

tante
fuente
-2

Después de la modificación, presione ESCy el comando dado :wq!.

Esto escribirá forzosamente la nueva modificación en el archivo de solo lectura. Anteriormente no funcionaba porque el archivo es de solo lectura.

Arif A.
fuente
1
¿Por qué estás respondiendo una pregunta de hace 4 años, básicamente con una repetición de la respuesta principal? De todos modos, está mal: esto no forzará la escritura de un archivo de solo lectura: intentará escribir, podría fallar y luego forzará la salida sin guardar.
Chris
Intenté con los comentarios anteriores y no estaba funcionando. Pensé que sería útil compartir lo que he hecho. No es importante cuando se publicó la pregunta, sino si las soluciones son aplicables o no.
Arif A.
-2

prueba la combinación de controlyZ

samsoty
fuente
2
Esto mantendrá vi en segundo plano;
Archemar