web analytics

[Guida] Vim, dalle basi alla configurazione come IDE – Parte 1

vim programming ide

L’editing testuale è un’attività abbastanza comune per chi lavora in ambito informatico. Tutti i programmi sono scritti in testo semplice, così come i file di configurazione. Praticamente tutti i sistemi Unix permettono di utilizzare Vim. In questa mini-guida vi mostrerò i comandi base, per utilizzare consapevolmente questo editor, e come renderlo un efficace ambiente di sviluppo.

Vim: Vi Improved

Padroneggiare Vim è sicuramente più complesso rispetto alle moderne alternative come Sublime o VS Code, ma, a mio avviso, permette di incrementare la propria produttività. Quando si utilizza questo genere di editor, tutti i comandi vengono immessi tramite la tastiera. Non è necessario continuare a muovere le mani per utilizzare il mouse o il touchpad. Per esercitarsi con i comandi di base basterà generare un classico file “lorem ipsum”:

sudo apt install libtext-lorem-perl # Debian e derivate
lorem -p 5 > test                   # crea un file test contenente 5 paragrafi
vim test			    # apre il file con l’editor vim

vim text editor

Il primo ostacolo da superare, nell’apprendimento di Vim, è la comprensione delle tre differenti istanze di utilizzo dell’editor. Appena aperto il programma ci troviamo nella command mode, che è quella di default. Da questa modalità è possibile aprire una delle due istanze speciali, premendo i si aprirà la insert mode oppure con : la last line mode. Per passare da un’istanza speciale a quella di default basta premere ESC. Si può chiudere Vim, scartando le modifiche, con ESC seguito da :q! Per uscire dall’editor salvando le modifiche, invece, utilizzate :wq.

Command mode

Appena aperto il programma vi troverete nella command mode. In questa modalità ciascun tasto rappresenta un comando. È anche l’istanza che ci permette, tramite tasti specifici, di muoverci nel testo molto rapidamente. All’inizio può sembrare pura follia, ma con tanta pratica è davvero un sistema comodissimo, soprattutto se siete soliti non guardare la tastiera e mantenere le mani nella corretta posizione di battitura. Ecco le combinazioni principali:

  • h,j,k,l permettono di muovere il cursore rispettivamente a sinistra, giù, su, destra;
  • Muoversi tra le linee:
    • 0, primo carattere della linea;
    • $, ultimo carattere della linea;
    • +, primo carattere della linea successiva, diverso da blank;
    • – , primo carattere della linea precedente, diverso da blank.
  • Muoversi tra le parole:
    • w, primo carattere della parola successiva;
    • e, ultimo carattere della parola corrente/successiva;
    • b, primo carattere della parola corrente/precedente.

Per ognuno di questi comandi, è possibile effettuare la combinazione numero + comando, per moltiplicarne l’effetto. Ad esempio 10e porterà il cursore alla fine della decima parola.

Operatori di modifica

Vediamo adesso come poter effettuare una modifica al testo. Gli operatori vanno usati in combinazione con quelli di movimento, vi spiegherò a breve come:

  • c, serve a sostituire un testo evidenziato. Ad esempio voglio evidenziare le tre parole successive al cursore e sostituire con “questo è vim”. In tal caso, sempre dalla command mode, date la combinazione c3w , inserite la nuova stringa e tornate tramite ESC all’istanza di default;
  • y e p sono l’equivalente del copia e incolla. Per copiare una linea, ad esempio, posizionatevi all’inizio della stessa con 0, utilizzate la combinazione y$, e su una nuova riga digitare p;
  • d, ovvero delete. Ad esempio d$ cancella tutti i caratteri, dal cursore al termine della linea;
  • u, il classico undo change.

Last line mode

In questa modalità è possibile utilizzare alcuni comandi davvero utili. Ipotizziamo, ad esempio, che il debugger vi segnali un errore alla riga 235 del codice. All’interno dell’editor basterà utilizzare la combinazione :235 per trovarsi direttamente alla relativa linea. Rimanendo in tema, :set number mostra all’inizio di ogni linea il relativo numero, :set nonumber, disabilità l’opzione precedente.

Siamo giunti alla conclusione di questa prima parte. Nel secondo capitolo vi mostrerò ulteriori importanti funzionalità, come la ricerca. Vi spiegherò, poi, come poter installare i plugin necessari ad utilizzare, efficacemente, questo editor come un IDE. Per conoscere ulteriori comandi, oltre alla classica pagina del manuale accessibile con man vim, è possibile anche accedere ad un tutorial tramite il comando vimtutor.

sharing-caring-1Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.