Gli editor di testo sono vecchi quasi quanto i computer. Al tempo ancora orientati per riga, andavano a so­sti­tui­re le schede perforate come in­ter­fac­ce di ela­bo­ra­zio­ne per software e dati, e rendevano possibile la can­cel­la­zio­ne e la modifica dei dati esclu­si­va­men­te di un’intera riga di testo, dato che i terminali con­si­ste­va­no allora in mac­chi­na­ri simili a macchine da scrivere. Con lo sviluppo dei terminali per il computer emersero a poco a poco i primi editor di testo basati sullo schermo, come il programma per il computer O26 (1967) e l’editor per sistemi Unix vi (1976), ancora compreso nella versione standard di molte di­stri­bu­zio­ni.

Ancora oggi la funzione degli editor consiste nel mostrare e mo­di­fi­ca­re il contenuto dei file di testo, ma i programmi moderni sono dotati di in­nu­me­re­vo­li esten­sio­ni che agevolano enor­me­men­te il lavoro dell’utente. Tra queste rientrano ad esempio le funzioni di ricerca, il com­ple­ta­men­to au­to­ma­ti­co del codice o la pos­si­bi­li­tà di evi­den­zia­re alcuni passaggi. Un classico editor di testo, tra i più recenti, è Vim, che si con­trad­di­stin­gue per la sua grande varietà di funzioni ed è di­spo­ni­bi­le per diverse piat­ta­for­me.

Che cos’è Vim?

L’in­for­ma­ti­co olandese Bram Moolenaar sviluppò nel 1988 la prima versione di Vim poiché l’editor vi dei sistemi Unix non era presente sul computer Amiga. Il programma open source con licenza GPL, imi­ta­zio­ne di vi e per questo ini­zial­men­te chiamato vi IMitation, venne uti­liz­za­to su Stevie. Dopo la versione per Amiga, seguirono nel 1992 anche i cor­ri­spon­den­ti per Unix e MS-DOS e da quel momento l’acronimo dell’editor di testo ha ricevuto il suo attuale si­gni­fi­ca­to: Vi IMproved (dall’inglese improved = “mi­glio­ra­to“). Da allora l’editor ha subito diversi sviluppi, che l’hanno portato ad essere oggi una delle più complete soluzioni in questo campo. Vim funziona in modalità testuale su ogni terminale, ma è pro­gram­ma­to so­prat­tut­to per essere usato con la tastiera, poiché le pos­si­bi­li­tà di uti­liz­za­re il mouse sono molto limitate. In­stal­lan­do le esten­sio­ni si hanno a di­spo­si­zio­ne diverse in­ter­fac­ce grafiche ag­giun­ti­ve. Grazie ai comandi presenti nel file di con­fi­gu­ra­zio­ne .vimrc, l’editor viene gestito cen­tral­men­te.

Vim è un editor che dispone di diverse modalità. A seconda della modalità attivata, i caratteri inseriti vengono in­ter­pre­ta­ti in modo diverso. Proprio questo tipo di struttura lo porta a di­stin­guer­si dagli altri editor di testo per Linux, cosa che però causa non poche dif­fi­col­tà ai prin­ci­pian­ti, ma allo stesso tempo consente agli utenti più avanzati di lavorare ve­lo­ce­men­te ed ef­fi­cien­te­men­te.  La tabella seguente spiega le modalità di base:

Modalità Tra­du­zio­ne De­scri­zio­ne
Normal mode Modalità standard, de­no­mi­na­ta anche modalità comando. La modalità standard in cui viene avviato Vim; tramite i tasti di scelta rapida si possono copiare e spostare le righe, oltre che for­mat­ta­re il testo.
Insert mode Modalità in­se­ri­men­to Consente l’ela­bo­ra­zio­ne diretta dei testi, tipica degli editor di testo per Linux e simili. Solo alcuni tasti o com­bi­na­zio­ni di tasti hanno una specifica funzione, come il tasto ESC per ritornare alla modalità standard.
Visual mode Modalità visuale Permette di se­le­zio­na­re righe, caratteri o parti di testo (evi­den­zian­do­li gra­fi­ca­men­te) che possono poi essere elaborati con i comandi nella modalità standard.
Select mode Modalità selezione In questa modalità si può so­sti­tui­re una porzione di testo scelta con un testo nuovo.
Command line Modalità riga di comando Modalità per l’in­se­ri­men­to del classico comando ex, del comando per impostare un filtro „!“ e di quello di ricerca „/“ e „?“; dopo l’ese­cu­zio­ne del comando de­si­de­ra­to, Vim ritorna au­to­ma­ti­ca­men­te nella modalità standard.
Ex mode Modalità ex Riprende l’editor a riga ex di UNIX; si dif­fe­ren­zia dalla modalità riga di comando solo dal fatto che bisogna inserire i comandi vi o visual per ritornare alla modalità standard.

Le funzioni che ca­rat­te­riz­za­no l’editor di testo Vim

Vim si dif­fe­ren­zia da vi, l’editor per Linux usato come modello, so­prat­tut­to per la grande varietà di funzioni. L’editor open source beneficia in par­ti­co­lar modo della com­ple­tez­za delle esten­sio­ni e delle numerose pos­si­bi­li­tà di con­fi­gu­ra­zio­ne. Anche la gestione del tool risulta molto sem­pli­fi­ca­ta, no­no­stan­te potrebbe non apparire subito intuitiva per via della com­ples­si­tà del programma. Per riuscire ad af­fron­tar­lo, Vim comprende una serie di utili aiuti, come diverse funzioni di ricerca e una do­cu­men­ta­zio­ne online completa com­pren­si­va di tutorial per Vim e FAQ. Grazie al controllo or­to­gra­fi­co in oltre 500 lingue e a opzioni di­spo­ni­bi­li per diversi tipi di file potete tenere sotto controllo e mo­di­fi­ca­re il file di testo ve­lo­ce­men­te e senza problemi. A ciò si ag­giun­go­no diverse mo­di­fi­ca­zio­ni, come la già men­zio­na­ta in­ter­fac­cia grafica utente, che aumenta l’usabilità. Tra queste vale la pena di nominare GVim, che include voci del menu e strumenti aggiunti e rie­la­bo­ra­ti gra­fi­ca­men­te, e la relativa esten­sio­ne Cream, che permette di eseguire i comandi più im­por­tan­ti con il mouse. Altre top features dell’editor Vim sono:

  • Controllo or­to­gra­fi­co: viene attivato con il comando set spell; si possono scaricare i vo­ca­bo­la­ri per le ri­spet­ti­ve lingue e ampliarli ma­nual­men­te.
  • Au­to­com­ple­ta­men­to: può essere usato nella modalità in­se­ri­men­to tramite la com­bi­na­zio­ne di tasti [Ctrl] + [n] o [Ctrl] + [p].
  • Tab: diversi file o anche lo stesso file possono essere aperti su tab dif­fe­ren­ti su finestre diverse.
  • Funzione “annulla e ri­pri­sti­na” il­li­mi­ta­ta: le modifiche possono essere annullate o ri­pri­sti­na­te il­li­mi­ta­ta­men­te, anche se Vim è stato già chiuso.
  • File di runtime completi: com­pren­do­no diverse regole per evi­den­zia­re gli elementi sin­tat­ti­ci, in­se­ri­men­ti, gamma di colori, esten­sio­ni standard, ecc.
  • Un proprio lin­guag­gio di scripting: l’editor di testo è fa­cil­men­te am­plia­bi­le tramite il lin­guag­gio di scripting Vimscript.
  • Macro: per eseguire script e una serie di comandi in un unico passaggio, si possono re­gi­stra­re e inserire delle macro.
  • Crit­to­gra­fia: i file Vim possono essere crit­to­gra­fa­ti con l’algoritmo Blowfish.
  • Variabile di ripiego: testi correlati e passaggi sin­tat­ti­ci possono essere ripiegati insieme (dall’inglese fold = “piegare“) per aumentare la chiarezza.

Come in­stal­la­re l’editor

Come già accennato all’inizio, Vim è di­spo­ni­bi­le per diverse piat­ta­for­me. Sulla pagina ufficiale dell’editor di testo trovate i file da scaricare per Linux o Unix, Windows, Amiga e i sistemi Mac OS di tutti i tipi e in diverse versioni, com­pren­si­vi di sug­ge­ri­men­ti per l’in­stal­la­zio­ne. Se volete in­stal­la­re Vim sul PC con Windows, avete due pos­si­bi­li­tà:

  1. Scaricate dalla cartella del PC il file .exe au­toin­stal­lan­te e avviate l’in­stal­la­zio­ne nel modo classico con un doppio click.

  2. Scegliete una delle tre in­ter­fac­ce utente, presenti nella stessa cartella, cioè gvim74.zip, gvim74ole.zip o gvim73_46_s.zip, e sca­ri­ca­te­la. In più avete bisogno del file di runtime vim74rt.zip, che si trova sempre nella medesima cartella. Una volta scaricati entrambi i file .zip, de­com­pri­me­te­li in una cartella comune sul vostro PC.

Il file di in­stal­la­zio­ne per le di­stri­bu­zio­ni Linux si trova nel gestore di pacchetti. In­stal­la­te Vim sem­pli­ce­men­te con il seguente comando, basato sul ben co­no­sciu­to schema:

sudo apt-get install vim

Ov­via­men­te potete scaricare i file sorgente anche nella cartella dell’editor di testo su GitHub, nel caso in cui vogliate essere sicuri di in­stal­la­re la versione più recente o se pro­gram­ma­te di apportare modifiche al codice sorgente.

Cosa dif­fe­ren­zia Vim dagli altri editor

Le ca­rat­te­ri­sti­che prin­ci­pa­li di Vim, che lo di­stin­guo­no da molti altri editor di testo, sono le dif­fe­ren­ti modalità di ela­bo­ra­zio­ne, il ruolo decisivo ricoperto dai tasti di scelta rapida e una varietà di funzioni quasi il­li­mi­ta­ta. Se da un lato queste features sono con­si­de­ra­te punti di forza dai pro­fes­sio­ni­sti, dall’altro non sono fa­cil­men­te gestibili dagli utenti meno esperti; la vera sfida consiste piuttosto nell’imparare ad usarlo. Altri editor simili per Windows e Linux, come il software Emacs di pari valore, Nano, meno ricco di funzioni, Sublime Text o Textadept non di­spon­go­no di una struttura modulare e sono perciò più intuitivi per gli utenti meno esperti. Ma non siete affatto soli, quando co­min­cia­te ad usare un editor di testo: la relativa community, svi­lup­pa­ta­si nel corso degli anni, fornisce un numero crescente di esten­sio­ni utili, che potete ad esempio trovare su Vi­mA­we­so­me e sono di­spo­ni­bi­li anche e-book, forum, wiki e tutorial che offrono ri­so­lu­zio­ni a vari problemi. Per imparare ad uti­liz­za­re l’editor, vi con­si­glia­mo anche il gioco online Vim Ad­ven­tu­res.

Vai al menu prin­ci­pa­le