Qualche uso un po' più avanzato di VIM, il famoso editor compatibile con VI
Nella Puntata Scorsa abbiamo visto come orientarci in VI: come scrivere, cancellare e modificare il testo. Facciamo un riassuntino:
- [a] - Append: entra in "insert mode" e inizia a scrivere dal carattere successivo a quello evidenziato;
- [i] - Insert: entra in "insert mode" e inizia a scrivere dal carattere evidenziato;
- [v] - Visual: entra in "visual mode" permettendo di selezionare del testo;
- [y] - Yank: se usato in "visual mode" permette di copiare il testo selezionato;
- [x] - Cut: se usato in "visual mode" permette di tagliare il testo selezionato;
- [p] - Paste: incolla il testo precedentemente tagliato o copiato
- [ESC] - Esci dalla modalità corrente
- [o] - Crea una nuova riga al di sotto di quella selezionata
- [d][d] - Cancella la riga evidenziata
- :q! - Esce ignorando i cambiamenti
- :w - Salva
- : x - Salva ed esci
In questa parte impareremo a muoverci più velocemente che non con le sole freccette, in questo campo VI presenta alcune sorprese; iniziamo aprendo VIM:
vim
E digitiamo qualcosa:
[a]
Ecco un testo scritto in VI, un ottimo editor di testo dedicato a programmatori e non solo.
Questa è un'altra riga di testo.
Ecco a voi una terza riga di testo da usare.
Se volessimo andare a scrivere proprio tra le parole "testo" e "dedicato" della prima riga? Potremmo tenere premuta la freccetta destra fino ad arrivare alla parola cercata oppure usare:
[w]
Tante volte quante servono per arrivare alla parola cercata, il tasto [w] serve per spostarsi di parola in parola, quindi il nostro cursore salterà da "Ecco" passando per "un", "testo" ... fino ad arrivare dove ci serve. Se usiamo invece [Shift+W] potremo saltare da una macro-parola all'altra.
Infatti VI distingue le parole contenute ad esempio in "fast-food", evidenziando prima "fast" e poi "food", mentre se usiamo [Shift+W] il cursore verrà portato all'inizio di "fast-food" per poi essere portato direttamente alla parola successiva.
Ecco un esempio usando solo il tasto [w]:
Ho sentito di un ottimo fast-food presente nei paraggi
[5 volte w]
Ho sentito di un ottimo |fast-food presente nei paraggi
[w]
Ho sentito di un ottimo fast|-food presente nei paraggi
e uno con [Shift+W]:
Ho sentito di un ottimo fast-food presente nei paraggi
[5 volte Shift+w]
Ho sentito di un ottimo |fast-food presente nei paraggi
[Shift+W]
Ho sentito di un ottimo fast-food |presente nei paraggi
Il giochino funziona anche con le cancellazioni: se usiamo [d] e premiamo un tasto direzionale avremo:
parola |da cancellare
[d][Freccia destra]
parola |a cancellare
mentre se useremo [d] e [w] avremo:
un |fast-food da cancellare
[d][w]
un |-food da cancellare
e se useremo [Shift+W] avremo:
un |fast-food da cancellare
[d][Shift+W]
un | da cancellare
In VI è possibile anche cercare in maniera abbastanza veloce all'interno del documento, assicuriamoci di essere in command mode (nessuna scritta nella barra di stato) e digitiamo
/Paroladacercare [invio]
E verranno evidenziate subito tutte le occorrenze della parola cercata, mentre il cursore sarà portato sulla prima occorrenza più vicina, per passare alla prossima occorrenza usiamo:
[n]
In VI possiamo anche effettuare sostituzioni in maniera abbastanza semplice, usando il comando:
:s/Paroladasostituire/Parola/Flag
Perciò se noi scriviamo:
:s/Ciao/Buongiorno
La prima occorrenza della parola "Ciao" sarà sostituita con "Buongiorno". Se invece scriviamo:
:s/Ciao/Buongiorno/g
Tutte le occorrenze della parola "Ciao" nella riga selezionata saranno sostituite con "Buongiorno". Questo è ovviamente un uso estremamente basilare della funzione.
Per ora è tutto. Chiudiamo VI con
:q!
Buon editing! Saluti e al prossimo post!
Penaz