Tutorial > Come installare e usare Vim Text Editor su Linux Ubuntu

Come installare e usare Vim Text Editor su Linux Ubuntu

Pubblicato il: 22 maggio 2020

Sviluppo Ubuntu

Introduzione

Utilizzare un editor di testo per creare o modificare i propri file è un'operazione scontata, tanto che ogni sistema operativo ne ha sempre uno preinstallato. Ti sarà capitato di dover modificare dei file sul tuo Cloud Server, indipendentemente dal fatto che questi fossero file di configurazione, file html dei tuoi siti web o, più comunemente, semplici file di testo.

Tra i diversi editor di testo presenti nel mondo Linux, Vim (o Vi IMproved) spicca per la sua versatilità e per le funzioni che mette a disposizione. Vim riesce infatti a velocizzare la scrittura di codice, predisponendo alcune scorciatoie tramite le quali eseguire le diverse operazioni di modifica, cancellazione o sostituzione del testo. 

Vim Text Editor permette inoltre di installare diversi plugin tramite i quali è possibile trasformare questo semplice editor di testo in un vero e proprio IDE con il quale programmare nei diversi linguaggi.

Inizialmente tutti i comandi a disposizione possono confondere l’utente che si approccia a questo strumento per la prima volta. Tuttavia una volta memorizzati i principali comandi di editing, difficilmente si riuscirà a fare a meno di questo strumento! 

In questo tutorial vedrai come installare Vim Text Editor sul tuo server Linux Ubuntu 18.04 e imparerai a utilizzare i suoi principali comandi per creare e modificare file di testo nelle diverse modalità di utilizzo.

Per iniziare dovrai connetterti al tuo server tramite una connessione SSH. Se non l’hai ancora fatto, ti consigliamo di seguire la nostra guida per connetterti in sicurezza con il protocollo SSH. In caso di server locale puoi passare al punto successivo e aprire il terminale del tuo server.

Installazione di Vim Text Editor

È possibile installare Vim interrogando direttamente i repository ufficiali di Ubuntu. Digita quindi:

 sudo apt-get update 
 sudo apt-get install vim -y

Creazione di un documento con Vim

Per creare un documento e iniziare la sua modifica basta richiamare il comando vim seguito dal nome del file:

 vim my_file 

Eseguendo il comando riportato sopra verrà generato il file “my_file” (non è stata indicata l'estensione ma in maniera opzionale la si può definire, digitando ad esempio: vim my_file.txt).

Ti si aprirà immediatamente un editor all’interno del quale puoi iniziare a scrivere il contenuto del documento.

Modifica file con VIM

Una volta aperto il documento puoi già iniziare a scrivere il contenuto. Una volta finito di scrivere, premi “Esc” e successivamente digita “:wq”. Premi “Invio” ed il tuo file sarà salvato nel percorso in cui hai avviato il comando (il significato di “:wq” verrà spiegato successivamente).

Questo è il modo più semplice di utilizzare Vim come editor di testo, ma le potenzialità che ha da offrire questo strumento sono ben altre!

Modalità di Vim Text Editor

La principale differenza tra Vim e gli altri editor di testo è che questo strumento può essere considerato come un editor ‘modale’: in base alla modalità in cui si sta utilizzando Vim, la stessa combinazione di tasti può assumere diverse funzioni. Le modalità previste sono 3:

  • Normale
  • Inserimento
  • Riga di comando.

Da qualsiasi modalità è possibile uscire mediante la pressione del tasto ESC, tramite il quale si entrerà nella modalità “riga di comando”.

Modalità Normale

La modalità normale è quella tramite la quale si può modificare un testo o navigare attraverso le righe. In questa modalità premendo i tasti h, j, k, l ci si muove all’interno del testo come se si stessero premendo le frecce direzionali della tastiera. Più precisamente:

  • h: sposta il cursore verso sinistra
  • j: sposta il cursore in giù
  • k: sposta il cursore in alto
  • l: sposta il cursore verso destra

Ciascun comando può essere eseguito affiancando a esso un numero. Ad esempio il comando 3k sposterà il cursore 3 righe in alto.

Modalità Visuale

In questa modalità potrai utilizzare Vim per modificare porzioni di testo che rispecchiano determinate condizioni. Ci sono 3 modi per utilizzare Vim in Modalità Visuale:

  • Carattere (digita “v”)
  • Riga (digita “V”)
  • Blocco (digita “CTRL + V”)

Nella modalità Carattere potrai evidenziare una riga per copiarla, eliminarla o modificarla così come faresti con qualsiasi altro editor: ti basterà infatti muovere il cursore per evidenziare la frase dal punto di partenza fino a dove verrà posizionato il cursore.

Ad esempio se vuoi spostare una frase, ti basterà entrare in questa modalità, selezionare la frase da spostare, premere il tasto d, posizionare il cursore nel punto in cui vuoi incollarla e premere infine p. Per modificare invece una porzione di frase, analogamente a come descritto prima, evidenzia la frase e premi il tasto c: la frase evidenziata verrà cancellata ed entrerai nella modalità di Inserimento per editare il testo.

Nella modalità Riga invece di poter evidenziare una porzione di frase a partire da un singolo carattere, potrai evidenziare intere righe del documento. In questa maniera risulta più rapido poter copiare porzioni di testo (una volta evidenziato, premi y) oppure eliminarle (una volta evidenziato, premi d). Per poi incollarle ti basterà premere p. In questa modalità puoi anche aumentare o ridurre il rientro del testo: dopo averlo selezionato potrai indentarlo verso l'interno o l'esterno mediante i tasti > e < .

Nella modalità Blocco puoi immaginare di vedere il documento come se fosse costituito da tante colonne. In questo modo ti è più facile identificare se una specifica riga si trova nella giusta posizione: questa verifica può risultare molto utile quando si scrive del codice che ha alcuni elementi indentati in diverse posizioni.

Ad esempio, verificare la giusta indentazione di un blocco di codice potrebbe essere difficile a occhio nudo, tuttavia evidenziando una ‘colonna’ di riferimento possiamo facilmente verificare che tutto sia a suo posto. Nell’immagine sottostante puoi osservare come l’ultima print non sia indentata correttamente (dovrebbe essere ‘spostata’ di 3 posizioni più a destra).

Esempio indentazione

Modalità Inserimento

La modalità inserimento è quella tramite la quale Vim viene utilizzato come un normale editor di testo, permettendo quindi di aggiungere testo, cancellarlo, etc.Anche in questa modalità esistono delle combinazioni di tasti che permettono di inserire del testo in diversi punti del documento.

Comando Descrizione
i Entra nella modalità di inserimento nel punto precedente al quale è posizionato il cursore.
A Entra nella modalità di inserimento del testo nel punto stesso in cui il cursore è posizionato.
Shift + A Entra nella modalità di inserimento del testo alla fine della riga sulla quale il cursore è posizionato.
Shift + I Entra nella modalità di inserimento del testo all’inizio della riga sulla quale il cursore è posizionato
O Crea una nuova riga al di sotto di quella sulla quale è posizionato il cursore ed entra nella modalità di inserimento del testo ad inizio della nuova riga.
Shift + O Crea una nuova riga al di sopra di quella sulla quale è posizionato il cursore ed entra nella modalità di inserimento del testo ad inizio della nuova riga.

Per uscire dalla modalità di inserimento basta premere il tasto ”ESC”.

Per entrare in questa modalità ti basterà digitare il comando :i.

Modalità Riga di comando

Da questa modalità puoi eseguire comandi più complessi, come il salvataggio delle modifiche apportate al documento o anche la chiusura di Vim.

Questi comandi devono essere preceduti da : (due punti). Anche in questo caso, si possono creare macro (combinazioni di comandi) che verranno eseguiti in serie.

Ad esempio se si vuole salvare e chiudere un documento si utilizza il comando :wq dove:

  • “w” (write) rappresenta la richiesta di scrittura delle modifiche effettuate (salvataggio)
  • “q” (quit) serve a chiudere il documento.

Puoi combinare questi comandi per sfruttare le potenzialità di questo editor.

Di seguito puoi trovare l’elenco dei comandi previsti da Vim Text Editor.

Comando Descrizione
i Entra nella modalità di inserimento nel punto precedente al  quale è posizionato il cursore.
I Entra nella modalità di inserimento ad inizio della riga in cui è posizionato il cursore.
a Entra nella modalità di inserimento nel punto successivo al quale è posizionato il cursore.
A Entra nella modalità di inserimento alla fine della riga sulla quale è posizionato il cursore.
x, dl Cancella il carattere evidenziato dal cursore.
X Cancella il carattere a sinistra del cursore.
w Passa alla parola successiva posizionando il cursore sulla prima lettera.
b Passa alla parola precedente posizionando il cursore sulla prima lettera.
0 Sposta il cursore sul primo carattere della riga sulla quale si trova.
$ Sposta il cursore sull’ultimo carattere della riga sulla quale si trova.
r Abilita la modifica di un carattere. Una volta posizionato il cursore sul carattere digita il comando seguito del carattere che prenderà il posto di quello evidenziato dal cursore.
R Abilita la modifica continuativa della frase. Una volta digitato questo comando, ciascun nuovo carattere digitato sulla tastiera sostituirà quello evidenziato dal cursore.
s Cancella il carattere evidenziato dal cursore ed entra in modalità di inserimento.
S Cancella la riga sulla quale si trova il cursore ed entra in modalità di inserimento
ESC Esce dalla modalità di inserimento e torna nella modalità normale.
u Annulla l’ultima azione eseguita.
Cr Riesegui l’ultima azione eseguita
dd Cancella l’intera riga sulla quale il cursore è posizionato e posiziona il cursore all’inizio della riga precedente.
dw Cancella la parola sulla quale il cursore è posizionato e si posiziona sul primo carattere della parola successiva.
d$ Cancella ciò che si trovi oltre il cursore sulla stessa linea.
cc Cancella la riga sulla quale è posizionato il cursore e si mette in modalità di inserimento.
cw Posizionando il cursore sulla prima lettera della parola, la parola intera viene cancellata abilitando infine la modalità di inserimento.
cl Cancella il carattere sul quale è posizionato il cursore e si mette in modalità di inserimento.
yy Copia la riga sulla quale è posizionato il cursore.
yw Copia il carattere sul quale è posizionato il cursore.
y$ Copia la parola dal punto in cui il cursore è posizionato.
p Incolla nella posizione successiva al cursore
P Incolla nella posizione precedente al cursore
o Crea una nuova riga sotto a quella sulla quale il cursore è posizionato
O Crea una nuova riga sopra a quella sulla quale il cursore è posizionato
:w Salva il testo scritto
:q! , ZQ Interrompe la modifica del documento chiudendo Vim senza salvare
:x, :wq, ZZ Salva le modifiche e chiude il Vim.
:help Apre una finestra contenente consigli utili per utilizzare Vim.
:help  {argument} Apre una finestra contenente istruzioni e descrizioni dell’argomento richiesto
qz Permette di registrare delle macro. Una volta iniziata la registrazione puoi iniziare ad inserire del testo e/o digitare comandi da eseguire in serie. Quando avrai finito di registrare la tua Macro (combinazione di istruzioni) digita il comando z. Per eseguire la macro registrata digita il comando @z.