programming editor vim vi vintage ide coding happydev

Alla ricerca dell'editor perduto

Perché, dopo vent'anni, ho voluto ritornare alle origini

Ok, non esageriamo, proprio 20 anni non sono passati da quando ho usato vi per la prima volta. In realtà non ricordo di preciso, a quel tempo avevo nove anni e smanettavo ancora con Windows e DOS, e anche se l'editor vi era disponibile anche per quei sistemi operativi, mi limitavo a usare il blocco note o MS Word.

Real programmers http://xkcd.com/378/

È stato all'incirca nel 2000 che sono diventato un linux user. Un linux (non ricordo la distribuzione, era qualcosa come "Made in linux") installato da un cd comprato in edicola. E lì dentro, come in tutti i sistemi unix-like, c'era vi.

Sto usando vim da circa due anni, principalmente perché non riesco a trovare un modo per uscire. Anonimo utente vim

Infatti, era stato proprio quello il feeling. Un ragazzo di 14 anni con la voglia di craccare i server del pentagono non aveva tempo di impararare a usare vi! Così quel ragazzo di quindici anni fa provò emacs e lo usò pure per un po', tanto non doveva programmare, al massimo modificare qualche configurazione in /etc.

Nel frattempo mi limitavo a sviluppare in php e javascript, rigorosamente con Windows e Dreamweaver.

Poi, passando per Mandrake Linux e SuSE, finii ad usare Gentoo Linux, dove l'editor predefinitio è nano. "Finalmente un editor che non rompe le palle!" ho pensato quella volta.

E poi, c'è stata l'era degli IDE, quelli che fanno tutto, quelli pesanti che ti devi svegliare prima per avviarli. Netbeans, poi Eclipse... offrivano un buon syntax highlighting ed un fantastico completamento del codice, come mai avevo visto.

Nel frattempo imparavo sempre nuovi linguaggi, nuovi framework, nuovi * e nonostante i computer diventassero sempre più potenti, non riuscivano a stare al passo con la mastodonticità degli IDE.

Ho usato molto volentieri SublimeText3, ho anche scritto un plugin per il livereload automatico integrato con il comando make. Va benissimo per scrivere codice per il web, javascript, php etc... Lo trovo molto piacevole per scrivere la prosa, con markdown, grazie ad un plugin molto ben fatto.

E in ST3 c'era anche questa strana opzione... il vintage mode! Una specie di vi integrato in sublime. Sinceramente... l'ho provato ma non mi sembrava così utile.

Qual è il problema di ST3? Gli sviluppatori dove sono finiti? Vanno avanti? Ho provato a trovare un sostituto, che potrebbe essere Lime ma che non è ancora abbastanza maturo. Ho provato anche Atom che sarebbe ottimo, se non fosse per la lentezza.

E finalmente: VIM

Perché mi ero rotto. Mi ero rotto di cambiare editor/ide ogni anno perché non aveva le funzionalità che mi servivano. Mi ero rotto di usare editor diversi in computer diversi. Mi ero rotto di riconfigurarlo ogni volta in cui mi trovavo in un computer nuovo. Insomma, mi ero rotto.

Cercavo un editor multipiattoforma, che avesse alcune delle funzionalità che amo di SublimeText, come la fuzzy search dei file, ma anche quelle che si trovano normalmente negli IDE, come l'autocompletamento (tipo IntelliSense di Visual Studio).

E così, ormai un paio di mesi fa, ho installato vim, perché vi senza la m è veramente troppo poco.

È stata dura, i Vimcasts di Drew Neil sono stati preziosi per iniziare nell'avventura. Ho acquistato anche il suo libro e ho capito che quella volta, quindici anni fa, avrei dovuto investire qualche giorno a imparare ad usarlo. Almeno ad imparare a chiuderlo.

Dopo due mesi sono ancora niubbo, ma mi sento già più produttivo di quanto non sia mai stato, i dolori a dita e polsi (causati dagli editor precedenti) stanno scomparendo e io sono un po' meno stressato e un po' piu' felice.

Il mio vimrc è su github, ma di quello parleremo nella prossima puntata.

O lo ami, o lo odi

All'inizio lo odi, perché non sai come si fanno le cose. Niente di vim è user friendly. Se non sai come fare, all'inizio non capisci nemmeno come uscire. O Come salvare un file. Per non parlare del copia-incolla.

Cominci ad amarlo dopo un po', quando capisci che c'è un plugin per ogni cosa che ti serve. Quando lo installi anche nei server e lo puoi usare con la stessa naturalezza con cui lo usi nel portatile. Quando non devi più pensare alle sequenze di tasti da premere per fare una certa cosa. Quando ti accorgi che stai usando solo il 60% della tua tastiera. Quando rimappi il Caps-Lock sull Esc.

ADM-3A

Ma la domanda che mi sto facendo... Mi romperò anche di vim?

Per ora non lo so, quello di cui sono sicuro è che diventa sempre più piacevole usarlo, ora che sta entrando nella memoria muscolare. Ed è un'esperienza che avrei voluto fare tanto tempo fa.

Un consiglio: provalo, dagli tempo, ma non cercare di usarlo immediatamente in un contesto in cui devi essere produttivo, è tremendamente frustrante usarlo quando si ha fretta e non si sa cosa fare per scatenare una determinata azione.

Ti è piaciuto l'articolo? Condividilo! Commentalo!

comments powered by Disqus