q!
per uscire dall'editor.Ho già scritto in precedenza riguardo questo soggetto, ma sono incappato in una innocente immagine di un minicorso del linguaggio C che, ancora una volta, insegna a chi è alle prime armi ad uscire da Vi con la combinazione mortale
:wq!
(qui l'immagine del post).Vediamo di approfondire ancora una volta.
Anzitutto cosa suggerisce l'aiuto in linea di Vi? Eseguendo
:help
si ottiene qualcosa del genere:*help.txt* For Vim version 7.4. Last change: 2016 Mar 31
VIM - main help file
k
Move around: Use the cursor keys, or "h" to go left, h l
"j" to go down, "k" to go up, "l" to go right. j
Close this window: Use ":q<Enter>".
Get out of Vim: Use ":qa!<Enter>" (careful, all changes are lost!).
Andiamo bene! L'help in linea suggerisce di uscire dall'editor con
:qa!
, in sostanza l'equivalente di una kill -9
!Eppure ci sono alcuni modi molto piu' furbi di uscire da Vi senza rischiare di perdere i dati, e il mio preferito è quello di usare
ZZ
che esce salvando se necessario le modifiche. Perché questa cosa è importante? Perché forzare un aggiornamento del file ad ogni uscita ne cambia il timestamp e potrebbe creare conflitti con strumenti di controllo delle versioni e di build automatico.Ma non solo, se si digita
:help :x
si scopre che:*:x* *:xit*
Like ":wq", but write only when changes have been
made.
ZZ Write current file, if modified, and quit (same as
":x"). (Note: If there are several windows for the
current file, the file is written if it was modified
and the window is closed).
Mettiamo ora a confronto le varie modalità:
comando | caratteri | rischio di perdita modifiche |
---|---|---|
:qa! | 4 | si |
:wq! | 4 | no |
ZZ | 3 (contando SHIFT) | no |
:x | 2 | no |
Quindi perché non istruire gli utenti da subito ad usare modalità di uscita smart, visto che risultano perfino piu' compatte (in termini di caratteri) rispetto a quelle brutali?