Molto spesso in ambiente UNIX ho a che fare con modifiche veloci su file. Vim è un editor efficiente e open source ma soprattutto predominante poiché spesso installato di default in ambiente SSH. In questo articolo non spiego nulla in particolare ma mi limito ad elencare i principali comandi Vim come promemoria necessari per avere dimestichezza con l’editor.
Comando | Memo |
---|---|
vim nomefile | Esegue l’apertura di un file con vim |
:e nomefile | Come vim nomefile |
i | INSERT: Predispone l’editor in modalità inserimento |
ESC | EXIT: Comando generico utilizzato per uscire, ad esempio dalla modalità inserimento |
:q | QUIT: Esegue la chiusura di un file solo se salvato |
:q! | QUIT: Chiude un file senza salvarlo |
:wq | WRITE AND QUIT: chiude un file salvandolo |
:w | WRITE: salva i cambiamenti all’interno del file |
Comando | Memo |
---|---|
/testo | Comando base per la ricerca di una stringa all’interno di un file |
n | NEXT: cerca il successivo |
:s/cosa/con_cosa | :s è il comando base seguito dalla stringa da ricercare con stringa da rimpiazzare |
:s/cosa/con_cosa/g | l’attributo g (GLOBAL), aggiunto a quanto già precedentemente descritto effettua tutte le sostituzioni all’interno di una stessa riga |
:%s/cosa/con_cosa/g | l’attributo % coadiuvato dal g permette di effettuare un find and replace su tutto il documento |
:%s/cosa/con_cosa/i | l’attributo i come opzione ignora il case sensitive all’interno del documento |
:%s/cosa/con_cosa/I | l’attributo I come opzione obbliga il case sensitive all’interno del documento |
:%s/cosa/con_cosa/c | l’attributo c chiede conferma prima del find and replace |
N.B. In caso di sostituzioni i parametri opzionali possono coesistere, esempio:
:s/ciao/salve/gc
:s/ciao/salve/gi
:s/ciao/salve/gc
:s/ciao/salve/gi
Comando | Memo |
---|---|
j | Sposta il cursore verso su (equivalente di freccia su) |
j | Sposta il cursore di una riga su (equivalente di freccia su) |
l | Sposta il cursore di un carattere verso destra (equivalente di freccia destra) |
k | Sposta il cursore di una riga giù (equivalente di freccia giù) |
h | Sposta il cursore verso sinistra (equivalente di freccia sinistra) |
e | Si sposta al termine di una parola |
E | Sposta il cursore alla fine di uno spazio delimitato da una parola |
b | Sposta il cursore all’inizio di una parola |
B | Sposta il cursore all’inizio di uno spazio delimitato da una parola |
0 | Sposta il cursore all’inizio di una riga |
$ | Sposta il cursore alla fine di una riga |
H | Sposta il cursore alla prima linea del documento |
M | Sposta il cursore alla metà del documento |
L | Sposta il cursore alla fine del documento |
:numero | Sposta il cursore al numero di riga digitato in input dopo i due punti |
u | Torna indietro rispetto ultima azione (undo) |
U | Annulla tutte le modifiche apportate alla riga corrente |
CTRL + r | Effettua il redo |