diff --git a/lang/LICENSE.itx b/lang/LICENSE.itx
new file mode 100644
index 0000000..892219c
--- /dev/null
+++ b/lang/LICENSE.itx
@@ -0,0 +1,99 @@
+LICENZA VIM
+
+Nota: Agli effetti legali ha valore non la seguente traduzione italiana, ma
+l'originale inglese su cui è basata. È alla versione inglese che si fa
+riferimento qui sotto quando si parla di "questa licenza" (NdT).
+
+I)  Non ci sono restrizioni alla distribuzione di copie non modificate di Vim,
+    alla condizione che esse includano il testo di questa licenza.  Si possono
+    anche distribuire parti non modificate di Vim, sempre senza restrizioni,
+    alla condizione che esse includano il testo di questa licenza.  È anche
+    consentito includere programmi eseguibili da voi preparati a partire dai
+    file sorgenti Vim non modificati, più i vostri esempi di utilizzo e i
+    vostri script Vim.
+
+II) È consentito distribuire una versione modificata (o estesa) di Vim,
+    contenente programmi eseguibile e/o codice sorgente, quando siano
+    rispettare le seguenti quattro condizioni:
+    1) Il testo di questa licenza deve essere incluso senza modifiche.
+    2) La versione modificata di Vim dev'essere distribuita in una della
+       seguenti cinque maniere:
+       a) Se voi personalmente modificate a Vim, dovete descrivere
+          chiaramente nella distribuzione come è possibile mettersi in
+          contatto con voi.  Quando il manutentore vi chiede (in qualsiasi
+          forma) una copia della versione modificata di Vim da voi
+          distribuita, dovete rendere disponibili le vostre modifiche,
+          compreso il codice sorgente, al manutentore, senza alcuna spesa.
+          Il manutentore si riserva il diritto di includere le vostre
+          modifiche nella versione ufficiale di Vim.  Quel che il manutentore
+          potrà fare con le vostre modifiche e sotto quale licenza esse
+          verranno distribuite può essere oggetto di negoziazione.  Se non c'è
+          stata alcuna negoziazione, questa licenza, o una versione successiva
+          della stessa è anche applicabile alle vostre modifiche.
+          I manutentori correnti sono elencati qui:
+          https://github.com/orgs/vim/people.
+          Se dovessero cambiare, ne sarò dato annuncio nei luoghi appropriati
+          (verosimilmente vim.sf.net, www.vim.org e/o comp.editors).  Quando
+          sia completamente impossibile contattare il manutentore, l'obbligo
+          di spedirgli le vostre modifiche viene meno.  Una volta che il
+          manutentore abbia confermato di aver ricevuto le vostre modifiche,
+          non sarà necessario spedirle ulteriormente.
+       b) Se avete ricevuto un Vim modificato che era stato distribuito come
+          descritto al punto a) potete ulteriormente distribuirlo senza
+          modificarlo, come menzionato al punto I).  Se fate ulteriori
+          modifiche, il testo al punto a) si applica a queste modifiche.
+       c) Includete tutte le modifiche, compreso il codice sorgente, con ogni
+          copia del Vim modificato da voi distribuito.  Questo può essere
+          fatto sotto forma dell'output di un comando "diff", che contenga
+          anche il contesto [ossia anche le linee non modificate di sorgente
+          che vengono prima o dopo le modifiche - NdT].  Potete scegliere
+          quale licenza volete utilizzare per il nuovo codice sorgente che voi
+          aggiungere.  Le modifiche e la relativa licenza non devono impedire
+          a terze parti di apportare le loro proprie modifiche a Vim.
+       d) Quando avete un Vim modificato che comprende modifiche quali quelle
+          menzionate al punto c), potete distribuirlo senza il codice sorgente
+          che descrive le modifiche, se le seguenti tre condizioni sono
+          soddisfatte:
+          - La licenza applicabile alle modifiche vi consente di distribuire
+            le modifiche al manutentore Vim senza alcun costo o restrizione, e
+            permette al manutentore Vim di includere le modifiche nella
+            versione ufficiale di Vim senza alcun costo o restrizione.
+          - Le modifiche da voi fatte sono conservate per almeno tre anni,
+            dopo che avrete distribuito per l'ultima volta il Vim modificato
+            corrispondente alle modifiche stesse.  Quando il manutentore o
+            qualcuno a cui voi avete distribuito il Vim modificato vi chiede
+            (in qualsiasi forma) le modifiche, entro il periodo qui indicato,
+            dovete fargliele avere.
+          - Dovete descrivere chiaramente nella distribuzione come è possibile
+            mettersi in contatto con voi.  Questa informazione di contatto
+            deve rimanere valida per almeno tre anni dopo l'ultima data di
+            distribuzione della corrispondente modifica di Vim, oppure il più
+            a lungo possibile.
+       e) Quando al GNU General Public License (GPL) si applica alle
+          modifiche, potete distribuire il Vim modificato sotto la versione 2
+          della licenza GNU GPL versione 2 o una qualsiasi versione successiva
+          della stessa licenza.
+    3) Un messaggio deve essere aggiunto, almeno all'output del comando
+       ":version" e nella schermata introduttiva, in modo che l'utilizzatore
+       del Vim modificato sia in grado di comprendere cosa è stato modificato.
+       Quando si distribuisca come menzionato al punto 2)e) l'aggiunta del
+       messaggio è richiesta solo se ciò non conduca a conflitti con la
+       licenza usata per le modifiche.
+    4) L'informazione di contatto, richiesta ai punto 2)a) e 2)d) non deve
+       essere rimossa o modificata, tranne che per il fatto che la persona
+       stessa può apportare delle correzioni.
+
+III) Se distribuite una versione modificata di Vim, siete incoraggiati a
+     utilizzare la licenza Vim per le vostre modifiche, e a mettere le
+     modifiche a disposizione del manutentore, compreso il codice sorgente.
+     Il modo preferito in cui fare questo è tramite e-mail o caricando
+     i file su un server ed inviandone l'indirizzo (URL) tramite e-mail.
+     Se il numero di modifiche è piccolo (per esempio, una modifica a un
+     Makefile) inviare tramite email l'output del comando diff con contesto
+     può essere sufficiente.  L'indirizzo e-mail da utilizzare è
+     <maintainer@vim.org>
+
+IV)  Non è consentito rimuovere questa licenza dalla distribuzione dei codici
+     sorgente Vim, anche in parte, o da una versione di Vim modificata.
+     Potete usare questa licenza per precedenti versioni di Vim, invece della
+     licenza con cui esse sono state distribuite, a vostra scelta.
diff --git a/lang/README.itx b/lang/README.itx
new file mode 100644
index 0000000..82d5eb9
--- /dev/null
+++ b/lang/README.itx
@@ -0,0 +1,167 @@
+README.txt per la versione 9.1 di Vim: VI Migliorato.
+
+
+COS'È VIM?
+
+Vim è una versione migliorata del classico programma di videoscrittura UNIX
+Vi.  Molte nuove funzionalità sono state aggiunte: la possibilità di avere
+multipli annullamenti di comando, l'evidenziazione sintattica, una storia dei
+comandi immessi, file di aiuto facilmente consultabili, controlli ortografici,
+completamento di nomi di file, operazioni su blocchi di dati, un linguaggio di
+script, etc.  È anche disponibile una versione grafica (GUI).  Tuttavia è
+possibile lavorare come se si stesse usando il Vi "classico".  Chi avesse Vi
+"sulle dita" si troverà a suo agio.  Vedere il file "runtime/doc/vi_diff.txt"
+[in inglese] per dettagli sulle differenze di Vim rispetto a Vi.
+
+Questo editor è molto utile per modificare programmi e altri file di testo.
+Tutti i comandi sono immessi usando i tasti presenti sulla tastiera, in modo
+che chi è in grado di digitare usando tutte e dieci le dita può lavorare molto
+velocemente.  Inoltre, i tasti funzione possono essere mappati per inserire
+comandi dell'utente, ed è possibile usare il mouse.
+
+Vim è disponibile in ambiente MS-Windows (7, 8, 10, 11), macOS, Haiku, VMS e
+in quasi tutte le varianti di Unix.  L'adattamento a nuovi sistemi operativi
+non dovrebbe essere molto difficile.
+Precedenti versioni di Vim funzionano in ambiente MS-DOS, MS-Windows
+95/98/Me/NT/2000/XP/Vista, Amiga DOS, Atari MiNT, BeOS, RISC OS e OS/2.
+Tali versioni non sono più supportate.
+
+
+DISTRIBUZIONE
+
+Spesso è possibile usare il vostro Gestore applicazioni preferito per
+installare Vim.  Negli ambienti Mac e Linux una versione base di Vim è inclusa
+nel sistema operativo, ma può ancora essere necessario installare Vim se si
+desiderano funzionalità ulteriori.
+
+Ci sono distribuzioni separate di Vim per gli ambienti Unix, PC, Amiga e per
+qualche altro sistema operativo.  Questo file README.txt è contenuto nelle
+directory che contengono i file usati da Vim in fase di esecuzione.  Nelle
+stesse directory sono presente la documentazione, i file usati per
+l'evidenziazione sintattica e altri file usati da Vim in fase di esecuzione.
+Per installare Vim occorre ottenere un archivio che contiene solo i file
+eseguibili, o un archivio che permette di compilare Vim a partire dai file
+sorgente.  Quale alternativa preferire dipende dal sistema su cui si vuole
+usare Vim, e dal preferire (o meno) di compilarlo direttamente a partire dai
+file sorgente.  Consultate "https://www.vim.org/download.php" per una
+panoramica delle distribuzioni correntemente disponibili.
+
+Alcuni siti da cui ottenere l'ultima versione di Vim:
+* Consultare la repository git in github: https://github.com/vim/vim.
+* Procurarsi il codice sorgente come archivio https://github.com/vim/vim/tags.
+* Ottenere un file per installare Vim in ambiente Windows dalla repository
+  vim-win32-installer:
+  https://github.com/vim/vim-win32-installer/releases.
+
+
+COMPILARE VIM
+
+Se si è ottenuta una distribuzione di file eseguibili di Vim non è necessario
+compilarlo.  Se si è ottenuta una distribuzione di file sorgente, tutto ciò
+che serve per compilare Vim è nella directory "src".  Vedere src/INSTALL per
+come procedere.
+
+
+INSTALLAZIONE
+
+Vedere uno dei file elencati più sotto per istruzioni riguardo a uno specifico
+sistema operativo.  Tali file sono (nella repository git) nella directory
+READMEdir oppure nella directory principale se si scompatta un archivio:
+
+README_ami.txt		Amiga
+README_unix.txt		Unix
+README_dos.txt		MS-DOS e MS-Windows
+README_mac.txt		Macintosh
+README_haiku.txt	Haiku
+README_vms.txt		VMS
+
+Esistono altri file README_*.txt, a seconda della distribuzione in uso.
+
+
+DOCUMENTAZIONE
+
+Esiste un corso di introduzione a Vim per principianti, della durata di circa
+un'ora.  Normalmente si può accedervi tramite il comando "vimtutor".  Vedere
+":help tutor" per ulteriori informazioni.
+
+Ma la cosa migliore è usare la documentazione disponibile in una sessione di
+Vim, tramite il comando ":help".  Se ancora non si ha a disposizione Vim, si
+può leggere il file "runtime/doc/help.txt".  Questo file contiene puntatori
+agli altri file che costituiscono la documentazione.
+All'interno della documentazione esiste anche uno User Manual (manuale utente)
+che si legge come un libro ed è raccomandato per imparare a usare Vim.
+Vedere ":help user-manual".  Il manuale utente è stato interamente tradotto in
+italiano, ed è disponibile, vedere:
+	https://www.vim.org/translations.php
+
+
+COPIE
+
+Vim è un Charityware (ossia eventuali offerte per il suo utilizzo vanno a
+un'attività caritativa).  Vim può essere usato e copiato liberamente, senza
+limitazioni, ma è incoraggiata un'offerta a favore di orfani ugandesi.  Si
+prega di leggere il file "runtime/doc/uganda.txt" per dettagli su come fare
+(il file si può visualizzare digitando ":help uganda" all'interno di Vim).
+
+Sommario della licenza: Non ci sono restrizioni nell'uso e nella distribuzione
+di una copia non modificata di Vim.  Parti di Vim possono anche essere
+distribuite, ma il testo della licenza va sempre incluso.  Per versioni
+modificate di Vim, valgono alcune limitazioni.  La licenza di Vim è
+compatibile con la licenza GPL, è possibile compilare Vim utilizzando librerie
+con licenza GPL e distribuirlo.
+
+
+SPONSORIZZAZIONI
+
+Correggere errori e aggiungere nuove funzionalità richiede tempo e fatica.
+Per mostrare la vostra stima per quest'attività e per fornire motivazioni
+agli sviluppatori perché continuino a lavorare su Vim, siete invitati a
+fare una donazione.
+
+Le somme donate saranno usate principalmente per aiutare dei bambini in
+Uganda.  Vedere "runtime/doc/uganda.txt".  Allo stesso tempo, le donazioni
+aumentano la motivazione del gruppo di sviluppo a continuare a lavorare su
+Vim!
+
+Informazioni più aggiornate sulla sponsorizzazione, possono essere trovate
+sul sito Internet di Vim:
+	https://www.vim.org/sponsor/
+
+
+CONTRIBUIRE
+
+Chi vuole contribuire a rendere Vim ancora migliore, può consultare
+il file CONTRIBUTING.md (in inglese).
+
+
+INFORMAZIONE
+
+Se il vostro sistema operativo è macOS, potete usare MacVim:
+	https://macvim.org
+
+Le ultime notizie riguardo a Vim si possono trovare sulla pagina Internet di
+Vim:
+	https://www.vim.org/
+
+Se avete problemi, è possibile consultare la documentazione Vim e i
+suggerimenti su come utilizzarlo:
+	https://www.vim.org/docs.php
+	https://vim.fandom.com/wiki/Vim_Tips_Wiki
+
+Se avete ancora problemi o qualsiasi altra richiesta, è possibile usare una
+delle mailing list per discuterne con utenti e sviluppatori di Vim:
+	https://www.vim.org/maillist.php
+
+Se nient'altro funziona, potete riferire direttamente i problemi incontrati
+alla mailing list degli sviluppatori, vim-dev:
+	<vim-dev@vim.org>
+
+
+AUTORE PRINCIPALE
+
+La maggior parte di Vim è stata creata da Bram Moolenaar <Bram@vim.org>,
+vedere ":help Bram-Moolenaar"
+
+Spedire tutti gli altri commenti, modifiche al codice sorgente, fiori e
+suggerimenti alla mailing list vim-dev:
+	<vim-dev@vim.org>
