% $Id: texlive-it.tex 30726 2013-05-27 20:50:37Z karl $
% TeX Live documentation.  Originally written by Sebastian Rahtz and
% Michel Goossens, now maintained by Karl Berry and others.
% Public domain.
%
% Traduzione originaria a cura di Marco Pallante. Attualmente la traduzione
% è portata avanti in seno al progetto GuITeX del GuIT, Gruppo Utilizzatori
% Italiani di TeX (http://http://www.guit.sssup.it/).
%
% Chiunque può contribuire accedendo al repository Git diponibile
% all'indirizzo
%
%    https://github.com/GuITeX/texlive-it-guide
%
\documentclass{article}
%\let\tldocenglish=1  % for live4ht.cfg
\usepackage{tex-live}
\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\begin{document}

\title{%
  {\huge \textit{Guida a \TeX\ Live---2013}}
}

\author{Karl Berry\\[3mm]
        \url{http://tug.org/texlive/}
       }

\date{Maggio 2013}

\maketitle

\begin{multicols}{2}
\tableofcontents
%\listoftables
\end{multicols}


\section*{Note all'edizione italiana}

Dopo tanti anni, finalmente abbiamo anche un'edizione italiana di questa
guida alla distribuzione \TL. Vorrei premettere che, per garantirne il
completamento entro l'uscita di \TL{} 2009, mi sono fatto in quattro
destinando praticamente ogni attimo libero a questo lavoro; ho tenuto
sempre acceso il computer, con l'editor aperto e, spesso, passandoci
davanti, mi fermavo a tradurre una sola frase o addirittura una sola
parola pur di non restare fermo.

Ovviamente il risultato è un lavoro fatto con i piedi, uno stile
incoerente, parti che nemmeno io riesco a capire, errori di battitura e di
grammatica. Di tutto questo chiedo scusa. Però, adesso, il grosso dello
sforzo è stato fatto e revisionare periodicamente questa guida per limarla
e migliorarla sarà un'opera di gran lunga più semplice.

Purtroppo, ho mancato l'appuntamento con \TL\ 2010 e la guida lì presente
era la stessa del 2009, con tutti i suoi difetti. Questa volta, per
l'edizione 2011, mi sono impegnato un po' di più, ho ripreso l'intero
lavoro, l'ho aggiornato prima con le modifiche del 2010 e quindi con quelle
del 2011, ho corretto una valanga di errori e ritradotto frasi che con
l'italiano avevano davvero poco a che vedere.

Ovviamente ci saranno ancora tanti errori, frasi incomprensibili, incoerenze
e chi più ne ha più ne metta, ma spero nuovamente che il mio piccolo
contributo a \TeX{} sia apprezzato. Potete contattarmi per qualunque cosa,
aiuti, suggerimenti, correzioni, all'indirizzo
\email{marco.pallante@gmail.com}.

Vorrei dedicare questo lavoro alla mia città.

\bigskip

\noindent Marco Pallante\\
\emph{L'Aquila, 20 giugno 2011}.


\section{Introduzione}
\label{sec:intro}

\subsection{\TeX\ Live e la \TeX\ Collection}

Questo documento descrive le caratteristiche principali della
distribuzione \TL{}\Dash \TeX{} e i programmi ad esso correlati per
i sistemi GNU/Linux e altre versioni di Unix, \MacOSX{} e Windows.

Potete ottenere \TL{} scaricandola, oppure sul \DVD{} \TK, che i gruppi di
utenti \TeX{} distribuiscono ai propri membri, o in altri modi. La sezione
\ref{sec:tl-coll-dists} descrive brevemente il contenuto del \DVD. Sia
\TL{} che \TK{} sono progetti cooperativi dei gruppi di utenti \TeX.
Questo descrive principalmente \TL.

\TL{} include gli eseguibili per \TeX, \LaTeXe, \ConTeXt, \MF, \MP,
\BibTeX{} e molti altri programmi, una vasta collezione di macro, font e
documentazione e il supporto per la composizione tipografica in molti
diversi alfabeti provenienti da tutte le parti del mondo.

Per un breve riassunto dei principali cambiamenti in questa edizione di
\TL, consultate la fine di questo documento, sezione~\ref{sec:history}
(\p.\pageref{sec:history}).



\htmlanchor{platforms}
\subsection{Supporto per i sistemi operativi}
\label{sec:os-support}

\TL{} contiene gli eseguibili per molte piattaforme basate su Unix,
inclusi \GNU/Linux, \MacOSX{} e Cygwin. I sorgenti inclusi possono essere
compilati per quelle piattaforme per le quali non forniamo i binari.

Per quanto riguarda Windows: Windows \acro{XP} e successivi sono supportati.
Windows~2000 probabilmente continuerà a funzionare quasi del tutto.  Non ci
sono specifici eseguibili a 64-bit per Windows, ma quelli a 32-bit
dovrebbero funzionare sui sistemi a 64-bit.

Consulta la sezione~\ref{sec:tl-coll-dists} per scoprire soluzioni
alternative per Windows e \MacOSX.

\subsection{Installazione base di \protect\TL{}}
\label{sec:basic}

È possibile installare \TL{} dal \DVD{} oppure attraverso Internet
(\url{http://tug.org/texlive/acquire.html}). Il programma di installazione
via rete è piccolo e scarica tutto ciò che è necessario da Internet.

Il programma di installazione nel \DVD{} vi permette l'installazione su un
disco locale. Non è possibile eseguire \TL{} direttamente dal \DVD{} \TK{}
(o dalla sua immagine \code{.iso}), ma potete preparare un'installazione
pronta per l'uso su, per esempio, una pennetta \USB{} (consultate la
sezione~\ref{sec:portable-tl}). L'installazione è descritta nelle prossime
sezioni (\p.\pageref{sec:install}), ma eccone un rapido accenno:

\begin{itemize*}

\item Lo script di installazione è chiamato \filename{install-tl}.
  Può operare in ``modalità guidata'' (\emph{wizard}) dando l'opzione
  \code{-gui=wizard} (predefinita sotto Windows), in modalità testuale
  dando l'opzione \code{-gui=text} (predefinito per gli altri sistemi) e
  in modalità \GUI{} esperta dando \code{-gui=perltk}.

\item Uno degli elementi installati è il programma ``\TL\ Manager'',
  chiamato \prog{tlmgr}. Così come l'installatore, può essere usato sia in
  modalità \GUI{} che in modalità testuale. Lo si può usare per installare
  e disinstallare i pacchetti e per compiere varie operazioni di
  configurazione.

\end{itemize*}


\htmlanchor{security}
\subsection{Considerazioni sulla sicurezza}
\label{sec:security}

Sulla base delle nostre conoscenze, i programmi centrali di \TeX\ sono (e
sono sempre stati) estremamente robusti. Tuttavia, gli altri programmi in
\TeX\ Live potrebbero non raggiungere lo stesso livello, nonostante il
massimo impegno di tutti. Come sempre, dovreste essere attenti
nell'eseguire i programmi su documenti di origine inaffidabile; per la
massima sicurezza, eseguiteli in una nuova sotto directory.

Questo bisogno di attenzone è particolarmente pressante sotto Windows,
dato che generalmente Windows cerca i programmi nella directory attuale
prima che in qualunque altra posizione, indipendentemente dal percorso di
ricerca. Questo comportamento crea un'ampia varietà di possibili attacchi.
Abbiamo chiuso molte falle, ma indubbiamente alcune ne rimangono,
soprattutto con i programmi di terze parti. Perciò raccomandiamo di
controllare la presenza di file sospetti nella directory attuale,
soprattutto quella di eseguibili (binari o script). Normalmente questi non
dovrebbero essere presenti e senza alcun dubbio normalmente non dovrebbero
essere creati semplicemente elaborando un documento.

Infine, \TeX\ (e i programmi che lo accompagnano) è capace di creare nuovi
file quando elabora i documento, una funzionalità che può anche essere
abusata in una grande quantità di modi. Di nuovo, elaborare documenti
sconosciuti in una nuova sotto directory è la cosa più sicura.


\subsection{Ottenere aiuto}
\label{sec:help}

La comunità \TeX{} è attiva ed amichevole e le domande più importanti
finiscono per ricevere una risposta. Tuttavia il supporto è informale,
offerto da volontari e lettori casuali, per cui è particolarmente
importante fare la propria parte prima di chiedere (se preferite un
supporto commerciale garantito, potete rinunciare del tutto a \TL{} e
ordinare il sistema di un fornitore; alla pagina
\url{http://tug.org/interest.html#vendors} trovate un elenco).

Ecco una lista di risorse, approssimativamente nell'ordine in cui noi
raccomandiamo di usarle:

\begin{description}
\item [Per Cominciare] Se siete nuovi di \TeX, alla pagina web
  \url{http://tug.org/begin.html} troverete una breve introduzione al sistema.

\item [\TeX{} \acro{FAQ}] Le \TeX{} \acro{FAQ} sono un enorme compendio di
  risposte ad ogni genere di domanda, dalle più elementari alle più
  oscure. Sono incluse in \TL{} in
  \OnCD{texmf-dist/doc/generic/FAQ-en} e sono disponibili
  su Internet alla pagina \url{http://www.tex.ac.uk/faq}. Controllate
  prima qui.

\item [\TeX{} Catalogue] Se state cercando uno specifico pacchetto, font,
  programma, ecc., il \TeX{} Catalogue è il luogo dove guardare. È un
  enorme catalogo con tutte le voci relative a \TeX. Visitate
  \url{http://mirror.ctan.org/help/Catalogue/}.


\item [Risorse Web per \TeX{}] La pagina web
  \url{http://tug.org/interest.html} ha molti collegamenti relativi a
  \TeX, in particolare a numerosi libri, manuali ed articoli su tutti
  gli aspetti del sistema.

\item [archivi di supporto] I principali forum di supporto includono
  il gruppo Usenet \url{news:comp.text.tex}, la mailing list
  \email{texhax@tug.org} e \url{http://tex.stackexchange.com}, un sito
  di domande e risposte redatto collettivamente. I loro archivi
  raccolgono anni di domande e risposte per il vostro piacere di ricerca
  tramite \url{http://groups.google.com/group/comp.text.tex/topics} e
  \url{http://tug.org/mail-archives/texhax}, rispettivamente. E una
  generica ricerca su web, ad esempio da \url{http://google.com}, non fa
  mai male.

\item [porre domande] Se non riuscite a trovare una risposta, potete
  formulare la vostra domanda su \dirname{comp.text.tex} tramite Google o
  un programma per Usenet, oppure tramite posta elettronica su
  \email{texhax@tug.org}. Ma prima di scrivere, \emph{leggete} questa voce
  delle \acro{FAQ}, al fine di massimizzare le probabilità di ottenere una
  risposta utile:
  \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}.
  Vale anche la pena nominare il sito della Comunità \LaTeX{} su
  \url{http://www.latex-community.org/} e il suo forum
  \url{http://www.latex-community.org/forum/} e il \TeX\ StackExchange su
  \url{http://tex.stackexchange.com/}.

\item [supporto \TL{}] Se volete segnalare un bug o avete dei suggerimenti o
  commenti sulla distribuzione \TL{}, sull'installazione o la
  documentazione, la mailing list è \email{tex-live@tug.org}. Tuttavia, se
  la vostra domanda è relativa all'uso di un particolare programma incluso in
  \TL{}, scrivete al mantenitore o alla mailing list di quel programma.
  Spesso eseguire un programma con l'opzione \code{-{}-help} fornisce un
  indirizzo al quale segnalare i bug.

\end{description}

L'altra faccia della medaglia è aiutare coloro che hanno domande. Sia
\dirname{comp.text.tex} che \code{texhax} sono aperte a chiunque, quindi
sentevi liberi di unirvi, iniziare a leggere e dare una mano dove potete.

% don't use \TL so the \uppercase in the headline works.  Also so
% tex4ht ends up with the right TeX.  Likewise the \protect's.
\section{Panoramica di \protect\TeX\protect\ Live}
\label{sec:overview-tl}

Questa sezione descrive i contenuti di \TL{} e della \TK{} di cui è parte.

\subsection{La \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX}
\label{sec:tl-coll-dists}

Il \DVD{} \TK{} include quanto segue:

\begin{description}

\item [\TL] Un sistema \TeX{} completo da installare sul proprio disco. Home
  page: \url{http://tug.org/texlive/}.

\item [Mac\TeX] per \MacOSX, aggiunge a \TL{} un installatore nativo per \MacOSX
  ed altre applicazioni Mac. Home page: \url{http://tug.org/mactex/}.

\item [pro\TeX{}t] Un miglioramento della distribuzione \MIKTEX\ per
  Windows, \ProTeXt\ aggiunge alcuni strumenti supplementari a \MIKTEX\ e
  semplifica l'installazione. È interamente indipendente da \TL{} e ha le
  proprie istruzioni per l'installazione. Home page:
  \url{http://tug.org/protext}.  

\item [CTAN] Un'instantanea dell'archivio \CTAN{}
  (\url{http://www.ctan.org/}).

\end{description}

\CTAN{} e \pkgname{protext} non seguono le stesse condizioni di licenza di
\TL{}, per cui fate attenzione nel ridistribuirli o modificarli.


\subsection{Directory primarie di \TL{}}
\label{sec:tld}

Segue un breve elenco e una descrizione delle directory primarie in
un'installazione di \TL.

\begin{ttdescription}
\item[bin] I programmi del sistema \TeX{}, raggruppati per piattaforma.
%
\item[readme-*.dir] Una rapida panoramica e collegamenti utili per \TL{},
  in varie lingue, sia in \HTML{} che in formato testuale.
%
\item[source] I sorgenti di tutti i programmi inclusi, comprese le
  distribuzioni \TeX{} basate su \Webc{}.
%
\item[texmf-dist] Il percorso principale; vedi \dirname{TEXMFDIST} sotto.
%
\item[tlpkg] Script, programmi e dati per l'amministrazione
  dell'installazione e per il supporto specifico di Windows.
\end{ttdescription}

In aggiunta alle precedenti directory, gli script di installazione e i
file \filename{README} (in varie lingue) si trovano nella directory della
distribuzione.

Per quanto riguarda la documentazione, i collegamenti nel file
\OnCD{doc.html} possono risultare utili. La documentazione per i programmi
(manuali, pagine di manuale, file Info) si trova in \dirname{texmf-dist/doc}.
La documentazione per i pacchetti ed i formati \TeX\ si trova nella
directory \dirname{texmf-dist/doc}. Potete usare il programma
\cmdname{texdoc} per trovare una qualsiasi documentazione, ovunque sia
collocata.

Questa stessa documentazione di \TL\ si trova in
\dirname{texmf-dist/doc/texlive}, disponibile in varie lingue:

\begin{itemize*}
\item{Ceco/Slovacco:} \OnCD{texmf-dist/doc/texlive/texlive-cz}
\item{Cinese Semplificato:} \OnCD{texmf-dist/doc/texlive/texlive-zh-cn}
\item{Francese:} \OnCD{texmf-dist/doc/texlive/texlive-fr}
\item{Inglese:} \OnCD{texmf-dist/doc/texlive/texlive-en}
\item{Italiano:} \OnCD{texmf-dist/doc/texlive/texlive-it}
\item{Polacco:} \OnCD{texmf-dist/doc/texlive/texlive-pl}
\item{Russo:} \OnCD{texmf-dist/doc/texlive/texlive-ru}
\item{Serbo:} \OnCD{texmf-dist/doc/texlive/texlive-sr}
\item{Tedesco:} \OnCD{texmf-dist/doc/texlive/texlive-de}
\end{itemize*}

\subsection{Panoramica dei percorsi predefiniti in texmf}
\label{sec:texmftrees}

Questa sezione elenca le variabili predefinite che specificano i percorsi
dentro texmf usati dal sistema, il loro scopo e la strutturazione
predefinita di \TL{}. Il comando \texttt{tlmgr~conf} mostra i valori di
queste variabili, così che sia possibile scoprire con facilità come queste
siano riferite alle specifiche directory nella propria installazione.

Tutti i percorsi, inclusi quelli personali, dovrebbero seguire la Struttura
delle Directory di \TeX\ (\TeX\ Directory Structure, \TDS,
\url{http://tug.org/tds}) con tutta la sua miriade di sotto directory,
altrimenti i file potrebbero non essere trovati. La sezione
\ref{sec:local-personal-macros} (\p.\pageref{sec:local-personal-macros})
descrive ciò con maggior dettaglio.

\begin{ttdescription}
\item [TEXMFDIST] Il percorso che contiene quasi tutti i file nella
  distribuzione originale --- file di configurazione, script, pacchetti,
  font, ecc (l'eccezione principale sono gli eseguibili per ciascuna
  piattaforma, che sono contenuti in un percorso adiacente \code{bin/}).
\item [TEXMFLOCAL] Il percorso che un amministratore può usare per
  l'installazione di macro, di font, ecc., aggiuntivi o aggiornati nel
  proprio sistema, in modo che siano disponibili per tutti gli utenti.
\item [TEXMFHOME] Il percorso che ciascun utente può usare per la propria
  installazione personale di macro, font, ecc., aggiuntivi o aggiornati.
  L'espansione di questa variabile si adatta dinamicamente per ciascun
  utente alla directory individuale dell'utente stesso.
\item [TEXMFCONFIG] Il percorso relativo a ciascun utente usato dai
  programmi \verb+texconfig+, \verb+updmap+ e \verb+fmtutil+ per
  memorizzare i dati di configurazione modificati.
\item [TEXMFSYSCONFIG] Il percorso relativo all'intero sistema usato dai
  programmi \verb+texconfig-sys+, \verb+updmap-sys+ e \verb+fmtutil-sys+
  per memorizzare i dati di configurazione modificati.
\item [TEXMFVAR] Il percorso relativo a ciascun utente usato da
  \verb+texconfig+, \verb+updmap+ e \verb+fmtutil+ per memorizzare i dati
  generati durante l'esecuzione, come i file dei formati e le mappe per i
  font.
\item [TEXMFSYSVAR] Il percorso relativo all'intero sistema usato da
  \verb+texconfig-sys+, \verb+updmap-sys+, \verb+fmtutil-sys+ ed anche da
  \verb+tlmgr+ per memorizzare i dati generati durante l'esecuzione, come
  i file dei formati e le mappe per i font.
\item [TEXMFCACHE] I percorsi usati da \ConTeXt\ Mk\acro{IV} e Lua\LaTeX\
  per memorizzare i dati generati durante l'esecuzione; il valore
  predefinito è \code{TEXMFSYSVAR}, oppure (se non si hanno i permessi di
  scrittura) \code{TEXMFVAR}.
\end{ttdescription}

\noindent
La strutturazione predefinita è:
\begin{description}
  \item[percorso del sistema] può contenere diverse edizioni di \TL{}:
  \begin{ttdescription}
    \item[2012] Un'edizione precedente.
    \item[2013] L'attuale edizione.
    \begin{ttdescription}
      \item [bin] ~
      \begin{ttdescription}
        \item [i386-linux] Esebuibili per \GNU/Linux
        \item [...]
        \item [universal-darwin] Eseguibili per \MacOSX
        \item [win32] Eseguibili per Windows
      \end{ttdescription}
      \item [texmf-dist\ \ ]      \envname{TEXMFDIST} e \envname{TEXMFMAIN}
      \item [texmf-var \ \ ]      \envname{TEXMFSYSVAR}, \envname{TEXMFCACHE}
      \item [texmf-config]        \envname{TEXMFSYSCONFIG}
    \end{ttdescription}
    \item [texmf-local] \envname{TEXMFLOCAL}, pensato per essere mantenuto
      tra diverse edizioni.
  \end{ttdescription}
  \item[percorso home dell'utente] (\texttt{\$HOME} o
      \texttt{\%USERPROFILE\%})
    \begin{ttdescription}
      \item[.texlive2012] Dati privati generati e di configurazione per
        un'edizione precedente.
      \item[.texlive2013] Dati privati generati e di configurazione per
        l'attuale edizione.
      \begin{ttdescription}
        \item [texmf-var\ \ \ ] \envname{TEXMFVAR}, \envname{TEXMFCACHE}
        \item [texmf-config]    \envname{TEXMFCONFIG}
      \end{ttdescription}
    \item[texmf] \envname{TEXMFHOME} Macro personali, ecc.
  \end{ttdescription}
\end{description}


\subsection{Estensioni di \protect\TeX}
\label{sec:tex-extensions}

Lo sviluppo dell'originale \TeX{} di Knuth è congelato, se si escludono
rare correzioni di bug. È presente in \TL\ come \prog{tex} e vi
rimarrà nel prossimo futuro. \TL{} contiene anche diverse versioni estese
di \TeX\ (note anche come motori \TeX):

\begin{description}

\item [\eTeX] aggiunge un insieme di nuove primitive \label{text:etex}
(riguardanti l'espansione delle macro, la scansione dei caratteri, le
classi di segnaposti, caratteristiche di debug aggiuntive ed altro ancora)
e le estensioni \TeXXeT{} per la scrittura bidirezionale. Nella modalità
di base, \eTeX{} è compatibile al 100\% con il \TeX{} ordinario.
Consultate \OnCD{texmf-dist/doc/etex/base/etex_man.pdf}.

\item [pdf\TeX] parte dalle estensioni di \eTeX, aggiunge il supporto per
la generazione di file \acro{PDF} oltre che dei \dvi{} e molte estensioni
che non sono legate alla generazione dell'output. Questo programma è
invocato dalla maggior parte dei formati, come \prog{etex}, \prog{latex},
\prog{pdflatex}. Il suo sito web è \url{http://www.pdftex.org/}.
Consultate \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf} per il manuale
e \OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex} per gli
esempi d'uso di alcune delle sue caratteristiche.

\item [Lua\TeX] è il successore prescelto di pdf\TeX ed è quasi del tutto
(ma non completamente) compatibile con i predecessori. È anche destinato a
sostituire le funzioni di Aleph (vedi sotto), per quanto non sia stata
predisposta la compatibilità tecnica. L'interprete Lua incorportato
(\url{http://www.lua.org/}) permette soluzioni eleganti a molti problemi
spinosi di \TeX. Quando è invocato come \filename{texlua}, si comporta
come un interprete Lua autonomo ed è già usato in questo modo all'interno
di \TL. Il suo sito web è \url{http://www.luatex.org} e il manuale di
riferimento è \OnCD{texmf-dist/doc/luatex/base/luatexref-t.pdf}.

\item [\XeTeX] aggiunge il supporto per l'input in Unicode e per i font
OpenType e di sistema, implementato usando librerie di terze parti
standard. Visitate \url{http://tug.org/xetex}.

\item [\OMEGA\ (Omega)] è basato sull'Unicode (caratteri a 16 bit) e
dunque consente di lavorare con quasi tutti gli alfabeti del mondo
contemporaneamente. Supporta anche i cosiddetti ``\OMEGA{} Translation
Process'' (\acro{OTP}, Processi di Traduzione Omega), per compiere
trasformazioni complesse su input arbitrari. Omega non è più incluso in
\TL{} come programma separato; soltanto Aleph è fornito.

\item [Aleph] combina le estensioni \OMEGA\ e \eTeX. Consultate
\OnCD{texmf-dist/doc/aleph/base}.

\end{description}


\subsection{Altri rilevanti programmi in \protect\TL}

Seguono alcuni altri programmi di uso comune inclusi in \TL{}:

\begin{cmddescription}

\item [bibtex, bibtex8] supporto per la bibliografia.

\item [makeindex, xindy] supporto per gli indici.

\item [dvips] converte i \dvi{} in \PS{}.

\item [xdvi] programma di anteprima dei \dvi{} per l'X Window System.

\item [dvilj] convertitore di \dvi{} per la famiglia di stampanti HP
LaserJet.

\item [dviconcat, dviselect] tagliano ed incollano le pagine contenute nei
file \dvi{}.

\item [dvipdfmx] converte i \dvi{} in \acro{PDF}, un approccio alternativo
a pdf\TeX\ (citato in precedenza).

\item [psselect, psnup, \ldots] programmi di manipolazione dei \PS{}.

\item [pdfjam, pdfjoin, \ldots] programmi di manipolazione dei \acro{PDF}.

\item [context, mtxrun] processore Con\TeX{}t e \acro{PDF}.

\item [htlatex, \ldots] \cmdname{tex4ht}: convertitore da \AllTeX{} a
  \acro{HTML} (e a \acro{XML} ed altro ancora).

\end{cmddescription}


\htmlanchor{installation}
\section{Installazione}
\label{sec:install}

\subsection{Avviare l'installatore}
\label{sec:inst-start}

Per cominciare, procuratevi il \DVD{} \TK{} oppure scaricate
l'installatore di rete di \TL{} ed individuate il programma di
installazione: \filename{install-tl} per Unix, \filename{install-tl.bat}
per Windows. Consulate \url{http://tug.org/texlive/acquire.html} per
maggiori informazioni ed altri metodi per ottenere il software.

\begin{description}
\item [Installatore di rete:] Scaricatelo da \CTAN, dal percorso
\dirname{systems/texlive/tlnet}; l'indirizzo
\url{http://mirror.ctan.org/systems/texlive/tlnet} reindirizzerà
automaticamente ad un mirror aggiornato vicino. Potete scaricare sia
\filename{install-tl.zip} che può essere usato sotto Unix e Windows, sia
il notevolmente più piccolo \filename{install-unx.tar.gz} solo per Unix.
Dopo averlo decompresso, \filename{install-tl} e \filename{install-tl.bat}
si troveranno nella sotto directory \dirname{install-tl}.

\item [\DVD{} \TeX{} Collection:] aprite la sotto directory
\dirname{texlive} del \DVD. Sotto Windows, il programma di installazione
dovrebbe partire automaticamente quando inserite il \DVD. Potete ottenere il
\DVD\ diventando membri di un gruppo utenti \TeX\ (caldamente consigliato,
\url{http://tug.org/usergroups.html}) oppure acquistandolo separatamente
(\url{http://tug.org/store}) o ancora masterizzandolo a partire
dall'immagine \ISO. Sulla maggior parte dei sistemi potete anche montare
direttamente l'\ISO. Dopo l'installazione dal \DVD\ o dall'immagine \ISO, se
volete ottenere gli aggiornamenti da Internet, consulate
\ref{sec:dvd-install-net-updates}.

\end{description}

Indipendentemente dall'origine, viene eseguito lo stesso programma di
installazione. La differenza più evidente tra i due è che con l'installatore
di rete riceverete i pacchetti che sono disponibili al momento. Questo
contrasta con le immagini \DVD\ e \ISO, che non vengono aggiornate tra le
principali versioni pubbliche.

\noindent
Le sezioni seguenti spiegano l'avvio dell'installazione in maggiore
dettaglio.

\subsubsection{Unix}

Di seguito, \texttt{>} denota il prompt della shell; l'input dell'utente è
in \Ucom{\texttt{grassetto}}.
Il programma \filename{install-tl} è uno script Perl. Il modo più semplice
per avviarlo su un sistema compatibile Unix è il seguente:
\begin{alltt}
> \Ucom{cd /percorso/verso/il/programma}
> \Ucom{perl install-tl}
\end{alltt}
In alternativa potete invocare
\Ucom{perl /percorso/verso/il/programma/install-lt}, oppure
\Ucom{./install-tl} se avete i permessi di esecuzione, ecc.; non ripeteremo
tutte queste varianti. Potreste dover ingrandire la finestra di terminale
affinché mostri l'intera schermata dell'installatore testuale
(Figura~\ref{fig:text-main}).

Per eseguire l'installazione nella modalità \GUI\ avanzata
(figura~\ref{fig:gui-main}) avete bisogno del modulo \dirname{Perl::TK})
compilato con il supporto per \acro{XFT}, che avviene normalmente con
\GNU/Linux, ma non altrettanto spesso altri sistemi. Detto questo, potete
eseguire:
\begin{alltt}
> \Ucom{perl install-tl -gui}
\end{alltt}

Per un elenco completo delle diverse opzioni:
\begin{alltt}
> \Ucom{perl install-tl -help}
\end{alltt}

\textbf{Attenzione riguardo i permessi Unix:} La tua \code{umask} nel
momento dell'installazione sarà rispettata dall'installatore di \TL{}.
Quindi se vuoi che l'installazione sia usabile da altri utenti oltre che
te, sii sicuro che le tue impostazioni siano permissive a sufficienza, per
esempio, \code{umask 002}. Per ulteriori informazioni riguardo
\code{umask}, consulta la documentazione del tuo sistema.

\textbf{Considerazioni speciali per Cygwin:} Diversamente da altri sistemi
Unix-compatibili, Cygwin non è preimpostato per includere tutti i
programmi di cui l'installatore di \TL{} ha bisogno. Consulta la
sezione~\ref{sec:cygwin}.


\subsubsection{MacOSX}

Come accennato nella sezione~\ref{sec:tl-coll-dists}, abbiamo preparato
una distribuzione separata per \MacOSX{} chiamata Mac\TeX\
(\url{http://tug.org/mactex}). Su \MacOSX{} raccomandiamo di usare
l'installatore nativo di Mac\TeX\ al posto dell'installatore di \TL\ in
quanto quello nativo esegue alcuni aggiustamenti specifici per il Mac, in
particolare per consentire con semplicità il passaggio tra le varie
distribuzioni \TeX\ per \MacOSX\ (Mac\TeX, Fink, MacPorts, \ldots)
usando la cosiddetta struttura dati \TeX{}Dist.

Mac\TeX\ è strettamente basato su \TL\ e le rispettive strutture delle
directory e gli eseguibili sono esattamente gli stessi. Il primo aggiunge
alcune ulteriori cartelle con documentazione e applicazioni specifici per
il Mac.


\subsubsection{Windows}

Se state usando l'installatore di rete oppure se l'installatore su \DVD\
non si avvia automaticamente, fate doppio click su
\filename{install-tl.bat}. Per ottenere maggiori opzioni di
configurazione, come la selezione di specifiche collezioni di pacchetti,
lanciate \filename{install-tl-advanced.bat}.

Potete avviare l'installatore anche dal prompt dei comandi. Qui sotto,
\texttt{>} denota il prompt; l'input dell'utente è in
\Ucom{\texttt{grassetto}}. Se vi trovate nella cartella dell'installatore,
eseguite semplicemente:
\begin{alltt}
> \Ucom{install-tl}
\end{alltt}

In aternativa potete lanciarlo con un percorso assoluto, come:
\begin{alltt}
> \Ucom{D:\bs{}texlive\bs{}install-tl}
\end{alltt}
per il \DVD\ \TK, supponendo che \dirname{D:} sia il lettore \DVD. La
figura~\ref{fig:wizard-w32} mostra l'installazione guidata, che è quella
preimpostata per Windows.

Per installare in modalità testuale, usate:
\begin{alltt}
> \Ucom{install-tl -no-gui}
\end{alltt}

Per un elenco completo delle diverse opzioni:
\begin{alltt}
> \Ucom{install-tl -help}
\end{alltt}

%%% TODO
\begin{figure}[tb]
\begin{boxedverbatim}
Installing TeX Live 2013 from: ...
Platform: i386-linux => 'Intel x86 with GNU/Linux'
Distribution: inst (compressed)
...
 Detected platform: Intel x86 with GNU/Linux

 <B> binary platforms: 1 out of 21

 <S> set installation scheme (scheme-full)

 <C> customizing installation collections
     43 collections out of 45, disk space required: 3909 MB

 <D> directories:
   TEXDIR (the main TeX directory):
     /usr/local/texlive/2013
   ...

 <O> options:
   [ ] use letter size instead of A4 by default
   ...

 <V> set up for portable installation

Actions:
 <I> start installation to hard disk
 <H> help
 <Q> quit
\end{boxedverbatim}
\caption{Schermata principale dell'installatore testuale
  (\GNU/Linux)}\label{fig:text-main}
\end{figure}

\begin{figure}[tb]
\tlpng{install-lnx-main}{\linewidth}
\caption{Schermata dell'installatore grafico avanzato
  (\GNU/Linux)}\label{fig:gui-main}
\end{figure}

\begin{figure}[tb]
\tlpng{wizard-w32}{\linewidth}
\caption{Schermata dell'installazione guidata
  (Windows)}\label{fig:wizard-w32}
\end{figure}


\htmlanchor{cygwin}
\subsubsection{Cygwin}
\label{sec:cygwin}

Prima di iniziare l'installazione, usate il programma \filename{setup.exe}
di Cygwin per installare i pacchetti \filename{perl} e \filename{wget}, a
meno che non lo abbiate già fatto. I seguenti pacchetti aggiuntivi sono
raccomandati:
\begin{itemize*}
\item \filename{fontconfig} [richiesto da \XeTeX\ e Lua\TeX]
\item \filename{ghostscript} [richiesto da vari programmi]
\item \filename{libXaw7} [richiesto da xdvi]
\item \filename{ncurses} [fornisce il comando 'clear' usato
  dall'installatore]
\end{itemize*}

\subsubsection{L'installatore testuale}

La figura~\ref{fig:text-main} mostra la schermata principale della
modalità testuale sotto Unix. L'installatore testuale è quello
predefinito sotto Unix.

Questo è soltanto un installatore a riga di comando; non c'è alcun
supporto per il movimento del cursore di inserimento. Ad esempio, non
potete muovervi tra le caselle di spunta o i campi di inserimento.
Voi semplicemente digitate qualcosa al prompt (MAIUSCOLE e minuscole sono
differenti), premete il tasto Invio e l'intera schermata del terminale
sarà aggiornata, con il contenuto alterato.

L'interfaccia dell'installatore testuale è così primitiva per una ragione:
è progettata per funzionare sul maggior numero di piattaforme possibile,
anche con una versione minimale di Perl.

\subsubsection{L'installatore grafico avanzato}

La figura~\ref{fig:gui-main} mostra l'installatore grafico avanzato sotto
\GNU/Linux. Al di là dell'uso di pulsanti e menu, questo installatore non
differisce di molto da quello testuale.

Questa modalità può essere invocata esplicitamente tramite
\begin{alltt}
> \Ucom{install-tl -gui=perltk}
\end{alltt}


\subsubsection{La semplice installazione guidata}

Sotto Windows, l'azione predefinita è di eseguire il più semplice metodo
di installazione che potessimo escogitare, chiamato ``installazione
guidata''. Questa installa tutto e praticamente non pone domande. Se
volete personalizzare la vostra installazione, dovete lanciare uno degli
altri installatori.

Questa modalità può essere invocata esplicitamente con
\begin{alltt}
> \Ucom{install-tl -gui=wizard}
\end{alltt}


\subsection{Eseguire l'installatore}
\label{sec:runinstall}

L'installatore è pensato per essere perlopiù autoesplicativo, ma seguono
alcune note riguardo varie opzioni e sottomenu.

\subsubsection{Menu delle architetture (solo Unix)}
\label{sec:binary}

%TODO figura!
\begin{figure}[tb]
\begin{boxedverbatim}
Available platforms:
===============================================================================
   a [ ] alpha-linux      DEC Alpha with GNU/Linux
   b [ ] amd64-freebsd    x86_64 with FreeBSD
   c [ ] amd64-kfreebsd   x86_64 with GNU/kFreeBSD
   d [ ] amd64-netbsd     x86_64 with NetBSD
   e [ ] armel-linux      ARM with GNU/Linux
   f [ ] armhf-linux      ARMhf with GNU/Linux
   g [ ] i386-cygwin      Intel x86 with Cygwin
   h [ ] i386-freebsd     Intel x86 with FreeBSD
   i [ ] i386-kfreebsd    Intel x86 with GNU/kFreeBSD
   j [ ] i386-linux       Intel x86 with GNU/Linux
   k [ ] i386-netbsd      Intel x86 with NetBSD
   l [ ] i386-solaris     Intel x86 with Solaris
   m [ ] mips-irix        SGI IRIX
   o [ ] mipsel-linux     mipsel with Linux
   p [ ] powerpc-linux    PowerPC with GNU/Linux
   s [ ] sparc-solaris    Sparc with Solaris
   t [ ] universal-darwin universal binaries for MacOSX/Darwin
   u [ ] win32            Windows
   v [ ] x86_64-darwin    x86_64 with MacOSX/Darwin
   w [ ] x86_64-linux     x86_64 with GNU/Linux
   x [ ] x86_64-solaris   x86_64 with Solaris
\end{boxedverbatim}
\caption{Menu delle architetture}\label{fig:bin-text}
\end{figure}

La figura~\ref{fig:bin-text} mostra il menu delle architetture in modalità
testuale. Di base, saranno installati solo gli eseguibili per la propria
piattaforma attuale. Da questo menu si può selezionare l'installazione
dei binari anche per altre piattaforme. Questa opzione è utile se si
condivide un'installazione di \TeX\ in una rete di macchine eterogenee,
oppure per una macchina con due sistemi operativi.

\subsubsection{Selezionare cosa deve essere installato}
\label{sec:components}

% TODO
\begin{figure}[tbh]
\begin{boxedverbatim}
Select scheme:
===============================================================================
 a [X] full scheme (everything)
 b [ ] medium scheme (small + more packages and languages)
 c [ ] small scheme (basic + xetex, metapost, a few languages)
 d [ ] basic scheme (plain and latex)
 e [ ] minimal scheme (plain only)
 f [ ] ConTeXt scheme
 g [ ] GUST TeX Live scheme
 h [ ] teTeX scheme (more than medium, but nowhere near full)
 i [ ] XML scheme
 j [ ] custom selection of collections
\end{boxedverbatim}
\caption{Menu degli schemi}\label{fig:scheme-text}
\end{figure}

La figura~\ref{fig:scheme-text} mostra il menu degli schemi di \TL; da qui
potete scegliere uno ``schema'', che è un insieme di collezioni di pacchetti.
Questo è lo schema raccomandato, ma potete anche scegliere \optname{basic}
per un sistema piccolo, \optname{minimal} per scopi di prova e
\optname{medium} o \optname{teTeX} per una via di mezzo. Ci sono anche
ulteriori schemi specializzati e specifici per particolari paesi.

\begin{figure}[tbh]
\centering \tlpng{stdcoll}{.7\linewidth}
\caption{Menu delle collezioni}\label{fig:collections-gui}
\end{figure}

Potete rifinire la vostra scelta dello schema con i menu ``Collezioni''
(figura~\ref{fig:collections-gui}, mostrati, per cambiare, in modalità \GUI).

Le collezioni stanno ad un livello di dettaglio maggiore rispetto agli
schemi \Dash\ in pratica, uno schema consiste in varie collezioni, una
collezione consiste in uno o più pacchetti e un pacchetto (la più piccola
forma di raggruppamento in \TL) contiene i file con le macro \TeX, i font
e così via.

Se desiderate un controllo maggiore di quello fornito dal menu delle
collezioni, potete usare il programma \TeX\ Live Manager (\prog{tlmgr})
dopo l'installazione (cfr. la sezione~\ref{sec:tlmgr}); tramite tale
programma, potete controllare l'installazione al livello di dettaglio dei
singoli pacchetti.

\subsubsection{Directory}
\label{sec:directories}

La strutturazione predefinita è descritta nella
sezione~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. La posizione
predefinita di \dirname{TEXDIR} è \dirname{/usr/local/texlive/2013} sotto
Unix e |%SystemDrive%\texlive\2013| sotto Windows.

La ragione principale per cambiare il valore preimpostato si ha quando non
avete i permessi di scrittura per tale percorso. Non dovete essere root o
l'amministratore per installare \TL, ma avete bisogno dell'accesso in
scrittura sulla directory di destinazione.

Una ragionevole scelta alternativa è una directory all'interno della
vostra home, soprattutto se sarete gli unici utilizzatori. Usate ``|~|''
per specificare la vostra home, come ad esempio in ``|~/texlive/2013|''.

Raccomandiamo di includere l'anno nel percorso, così da poter tenere
diverse edizioni di \TL{} fianco a fianco (potete usare un collegamento
simbolico con il nome indipendente dalla edizione, come
\dirname{/usr/local/texlive-cur}, da redirigere dopo aver provato la nuova
edizione).

Modificare \dirname{TEXDIR} durante l'installazione causerà anche la
modifica di \dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} e
\dirname{TEXMFSYSCONFIG}.

\dirname{TEXMFHOME} è la posizione raccomandata per le macro e i pacchetti
personali. Il suo valore predefinito è |~/texmf|. A differenza di
\dirname{TEXDIR}, qui il carattere |~| viene mantenuto all'interno dei
file di configurazione creati, dato che è utile che si riferisca alla home
dell'utente che esegue \TeX. Si espande in \dirname{$HOME} sotto
Unix e \verb|%USERPROFILE%| sotto Windows. Speciale nota ridondante:
\envname{TEXMFHOME}, come tutti gli altri percorsi, deve essere organizzata
secondo il \TDS, o i file potrebbero non essere trovati. %stopzone

\dirname{TEXMFVAR} è la posizione in cui vengono memorizzati la maggior
parte dei dati generati durante l'esecuzione specifici per ciascun utente.
\dirname{TEXMFCACHE} è il nome della variabile usata per lo stesso scopo da
Lua\LaTeX\ e \ConTeXt\ Mk\acro{IV} (consultate la
sezione~\ref{sec:context-mkiv}, \p.\pageref{sec:context-mkiv}); il suo
valore predefinito è \dirname{TEXMFSYSVAR}, oppure (se non si hanno i
permessi di scrittura) \dirname{TEXMFVAR}.


\subsubsection{Opzioni}
\label{sec:options}

% TODO FIGURA!!!
\begin{figure}[tbh]
\begin{boxedverbatim}
Options setup:
===============================================================================
 <P> use letter size instead of A4 by default: [ ]
 <E> execution of restricted list of programs: [X]
 <F> create format files:                      [X]
 <D> install font/macro doc tree:              [X]
 <S> install font/macro source tree:           [X]
 <L> create symlinks in standard directories:  [ ]
            binaries to:
            manpages to:
                info to:
 <Y> after installation, get package updates from CTAN: [X]
\end{boxedverbatim}
\caption{Menu delle opzioni (Unix)}\label{fig:options-text}
\end{figure}

La figura~\ref{fig:options-text} mostra il menu delle opzioni in modalità
testuale. Ulteriori informazioni su ciascuna opzione:

\begin{description}
\item[Usa come predefinito il formato di pagina lettera al posto dell'A4:]
  Questa è la selezione del formato di carta predefinito. Ovviamente, se
  lo si desidera, si potrà e si dovrebbe specificare il formato della
  carta in ogni singolo documento.

\item[execution of restricted list of programs:] A partire da \TL\ 2010,
  è consentita l'esecuzione da parte di \TeX\ di pochi programmo esterni.
  La (molto breve) lista di questi programmi è data nel file
  \filename{texmf.cnf}. Consultate le novità 2010
  (sezione~\ref{sec:2010news}) per maggiori dettagli.

\item[Crea i file di formato:] Per quanto i file di formato non
  strettamente necessari richiedano tempo per essere generati e spazio su
  disco per essere memorizzati, è comunque raccomandato di lasciare questa
  opzione attiva: se non lo fate, allora i file di formato saranno
  generati, quando necessari, all'interno delle directory private
  \dirname{TEXMFVAR} di ciascun utente. In tali posizioni, non saranno
  aggiornati automaticamente se lo sono (ad esempio) gli eseguibili o i
  modelli di sillabazione nell'installazione, e così potreste trovarvi ad
  avere formati incompatibili.

\item[Installa \ldots\ per font e macro:] Omettono lo scaricamento e
  l'installazione della documentazione e dei file sorgenti inclusi nella
  maggior parte dei pacchetti. Non sono raccomandate.

\item[Crea i collegamenti nelle directory di sistema:] Questa opzione
  (solo Unix) scavalca la necessità di modificare le variabili di ambiente.
  Senza di essa, le directory di \TL{} devono solitamente essere aggiunte
  alle variabili \envname{PATH}, \envname{MANPATH} e \envname{INFOPATH}.
  Avete bisogno dei permessi di scrittura nelle directory di destinazione.
  Suggeriamo vivamente di \emph{non} usare questa opzione per
  sovrascrivere un'installazione \TeX\ fornita con il vostro sistema.
  Questa opzione è pensata principalmente per accedere al sistema \TeX\
  tramite directory già note agli utenti, come \dirname{/usr/local/bin},
  che non contengono già alcun file di \TeX.

\item[after installation \ldots\ \CTAN:] Quando si esegue l'installazione
  da \DVD, questa opzione è abilitata di default, dato che di solito si
  vuole prendere ogni successivo aggiornamento di pacchetti dall'area
  \CTAN\ che è aggiornata durante l'anno. L'unica ragione plausibile per
  disabilitarla è quando si vuole installare solo un sottoinsieme dal \DVD
  e si ha intenzione di estendere l'installazione successivamente. In
  ogni caso, l'archivio dei pacchetti per l'installatore e per gli
  aggiornamenti successivi all'installazione può essere impostato in modo
  indipendente secondo le necessità; consultate le sezioni~\ref{sec:location}
  e \ref{sec:dvd-install-net-updates}.
\end{description}

Quando tutte le impostazioni sono come le desiderate, potete digitare
``I'' per avviare il processo di installazione. Quando questo è completo,
passate alla sezione~\ref{sec:postinstall} per leggere cos'altro dovete
fare, se ce n'è bisogno.


\subsection{Opzioni della riga di comando di install-tl}
\label{sec:cmdline}

Digitate
\begin{alltt}
> \Ucom{install-tl -help}
\end{alltt}
per ottenere un elenco delle opzioni della riga di comando. Sia |-| che
|--| possono essere usati per introdurre i nomi delle opzioni. Ecco le più
comuni:

\begin{ttdescription}
\item[-gui] Se possibile, usa l'installatore grafico. Questa opzione
  richiede il modulo Perl/Tk
  (\url{http://tug.org/texlive/distro.html#perltk}) compilato con il
  supporto per \acro{XFT}; se Perl/Tk non è disponibile, l'installazione
  prosegue in modalità testuale.

\item[-no-gui] Costringe all'uso dell'installatore testuale, anche sotto
  Windows.

\item[-lang {\sl LL}] Specifica la lingua dell'interfaccia
  dell'installatore sotto forma di codice standard (di solito a due
  lettere). L'installatore cerca di determinare automaticamente la lingua
  corretta, ma se fallisce o se la lingua corretta non è disponibile,
  allora usa l'inglese come ripiego. Lanciate \verb|install-tl --help|
  per la lista delle lingue disponibili.

\item[-portable] Installa per un uso portatile su una chiavetta \USB{}.
  Questa oprione è selezionabile dall'installatore testuale con il comando
  \code{V} e dall'installatore grafico. Consultate la
  sezione~\ref{sec:portable-tl}.

\item[-profile {\sl file}] Carica il profilo di installazione \var{file} ed
  esegue l'installazione senza interazione con l'utente. Il programma di
  installazione scrive sempre un file \filename{texlive.profile} nella sotto
  directory \dirname{tlpkg} della vostra installazione. Quel file può essere
  passato come argomento per ripetere esattamente la stessa installazione su
  un sistema differente. In alternativa, potete usare un profilo
  personalizzato, creato facilmente partendo da uno generato automaticamente
  e modificandone i valori, oppure potete usare un file vuoto, che prenderà
  come valori tutti quelli predefiniti.

\item [-repository {\sl url-o-directory}] Specifica l'archivio dei
  pacchetti da cui installare; vedi più avanti.

\htmlanchor{opt-in-place}
\item[-in-place] (Documentato solo per completezza: non usate questa
  opzione a meno che non sappiate cosa state facendo.) Se avete già una
  copia di \TL{}, anche ottenuta tramite rsync o svn (consultate
  \url{http://tug.org/texlive/acquire-mirror.html}),
  allora questa opzione userà ciò che avete ottenuto, così com'è, ed
  eseguirà solo le necessarie procedure di post installazione. Siete
  avvisati che il file \filename{tlpkg/texlive.tlpdb} potrebbe venire
  sovrascritto; salvarne una copia è vostra responsabilità. Inoltre, la
  rimozione dei pacchetti deve essere eseguita manualmente. Questa
  opzione non può essere attivata dall'interfaccia dell'installatore.
\end{ttdescription}


\subsubsection{L'opzione \optname{-repository}}
\label{sec:location}

L'archivio dei pacchetti di rete predefinito è uno dei mirror di \CTAN{}
scelto automaticamente tramite \url{http://mirror.ctan.org}.

Per rimpiazzare questa scelta, potete specificare un url che comincia per
\texttt{ftp:}, \texttt{http:} o \texttt{file:/}, oppure il semplice nome
di una directory (quando specificate un indirizzo \texttt{http:} o
\texttt{ftp:}, l'eventuale carattere finale ``\texttt{/}'' e l'eventuale
``\texttt{/tlpkg}'' conclusivo saranno ignorati).

Per esempio, potete scegliere uno specifico mirror di \CTAN\ con qualcosa
del tipo:
\url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/},
sostituendo a |ctan.example.org/tex-archive| il vero nome del sito e il
percorso che ospita \CTAN. L'elenco dei mirror di \CTAN\ si trova alla
pagina \url{http://ctan.org/mirrors}.

Se il valore specificato è locale (sia tramite percorso che tramite un url
\texttt{file:/}), saranno usati i file compressi contenuti in una sotto
directory \dirname{archive} del percorso (anche se sono disponibili anche
file non compressi).


\subsection{Azioni successive all'installazione}
\label{sec:postinstall}

Potrebbero essere necessarie alcune azioni successivie all'installazione.


\subsubsection{Variabili d'ambiente per Unix}
\label{sec:env}

Se avete deciso di creare i collegamenti simbolici nelle directory standard
(descritto nella sezione~\ref{sec:options}), allora non c'è bisogno di
modificare le variabili d'ambiente. Altrimenti, nei sistemi Unix, la
directory degli eseguibili per la vostra piattaforma deve essere aggiunta al
percorso di ricerca (sotto Windows, è l'installatore ad occuparsene).

Ogni piattaforma supportata ha la propria sotto directory all'interno di
\dirname{TEXDIR/bin}. Consultate la figura~\ref{fig:bin-text} per la lista
delle sotto directory e delle corrispondenti piattaforme.

Facoltativamente potete anche aggiungere le directory della documentazione
man e Info ai propri rispettivi percorsi di ricerca, se volete che gli
strumenti di sistema la trovino. Le pagine di manuale potrebbero essere
trovate magicamente dopo l'aggiunta al \envname{PATH}. 

Per le shell compatibili con la Bourne, come \prog{bash}, e usando
\GNU/Linux per Intel x86 e le directory predefinite come esempio, il file
da modificare dovrebbe essere \filename{$HOME/.profile} %stopzone
(o un qualunque altro file aperto da \filename{.profile}), e le linee da
aggiungere sarebbero simili alle seguenti:

\begin{sverbatim}
PATH=/usr/local/texlive/2013/bin/i386-linux:$PATH; export PATH
MANPATH=/usr/local/texlive/2013/texmf/doc/man:$MANPATH; export MANPATH
INFOPATH=/usr/local/texlive/2013/texmf/doc/info:$INFOPATH; export INFOPATH
\end{sverbatim}
%stopzone

Per csh o tcsh, il file da modificare tipicamente è
\filename{$HOME/.cshrc} e le linee da aggiungere sarebbero del
tipo:

\begin{sverbatim}
setenv PATH /usr/local/texlive/2013/bin/i386-linux:$PATH
setenv MANPATH /usr/local/texlive/2013/texmf/doc/man:$MANPATH
setenv INFOPATH /usr/local/texlive/2013/texmf/doc/info:$INFOPATH
\end{sverbatim}

Se già avete delle impostazioni del genere in uno dei file citati,
naturalmente dovete semplicemente unirvi le directory di \TL\ come è più
opportuno.


\subsubsection{Variabili d'ambiente: configurazione globale}
\label{sec:envglobal}

Se volete che questi cambiamenti siano globali oppure che si applichino a
ciascun nuovo utente aggiunto nel sistema, allora dovete cavarvela da
soli; c'è semplicemente troppa varietà tra i diversi sistemi nel come e
nel dove queste cose siano configurate.

I nostri due suggerimenti sono: 1)~potete controllare il file
\filename{/etc/manpath.config} e, se esiste, aggiungere linee come

\begin{sverbatim}
MANPATH_MAP /usr/local/texlive/2013/bin/i386-linux \
            /usr/local/texlive/2013/texmf/doc/man
\end{sverbatim}

E 2)~verificate la presenza di un file \filename{/etc/environment} che
potrebbe definire il percorso di ricerca ed altre variabili di ambiente
predefinite.

In ciascuna directory contenente eseguibili (per Unix), noi creiamo anche
un collegamento simbolico chiamato \code{man} alla directory
\dirname{texmf-dist/doc/man}. Alcuni programmi \code{man}, come quello di
\MacOSX, lo individueranno automaticamente, ovviando alla necessità di
qualunque configurazione per le pagine di manuale.


\subsubsection{Aggiornamenti da Internet dopo l'installazione del \DVD}
\label{sec:dvd-install-net-updates}

Se avete installato \TL\ dal \DVD\ e successivamente volete ottenere gli
aggiornamenti da Internet, dovete eseguire questo comando---\emph{dopo} aver
aggiornato il vostro percorso di ricerca (come descritto nella sezione
precedente):

\begin{alltt}
> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet}
\end{alltt}

Questo dice a \cmdname{tlmgr} di usare un mirror di \CTAN\ nelle vicinanze
per gli aggiornamenti futuri. È l'azione predefinita quando si installa dal
\DVD, tramite l'opzione descritta nella sezione~\ref{sec:options}.

Se ci sono problemi con la selezione automatica di un mirror, potete
specificarne uno in particolare dall'elenco alla pagina
\url{http://ctan.org/mirrors}. Usate il percorso esatto alla sotto directory
\dirname{tlnet} su quel mirror, come mostrato in precedenza.


\htmlanchor{xetexfontconfig}  % manteniamo il link storico funzionante
\htmlanchor{sysfontconfig}
\subsubsection{Configurazione dei font di sistema per \XeTeX\ e Lua\TeX}
\label{sec:font-conf-sys}

\XeTeX\ e Lua\TeX\ possono usare qualsiasi font installato nel sistema,
non solo quelli nelle directory di \TeX. Fanno questo tramite metodi
correlati, ma non identici.

Su Windows, i font distribuiti con \TL\ sono resi disponibili a \XeTeX\
automaticamente. Ma se avete installato il pacchetto \filename{xetex} su
un sistema Unix, dovete configurare il vostro sistema in modo che sia
capace di trovare i font distribuiti con \TL\ tramite il meccanismo di
ricerca dei nomi di sistema e non semplicemente la ricerca di nomi di
file.

Per facilitare il compito, quando il pacchetto \pkgname{xetex} è
installato (sia durante l'installazione iniziale che in seguito), viene 
creato il file di configurazione necessario in
\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}.

Per impostare i font di \TL{} per l'uso nell'intero sistema (assumendo che
abbiate gli opportuni privilegi), procedete come segue:
\begin{enumerate*}
\item Copiate il file \filename{texlive-fontconfig.conf} in
  \dirname{/etc/fonts/conf.d/09-texlive.conf}.

\item Eseguite \Ucom{fc-cache -fsv}.
\end{enumerate*}

Se non avete privilegi sufficienti per completare i passi precedenti,
p se volete semplicemente rendere disponibili i font di \TL{} ad un
solo utente, fate quello che segue:
\begin{enumerate*}
\item Copiate il file \filename{texlive-fontconfig.conf} in
  \filename{~/.fonts.conf}, dove \filename{~} è la vostra directory di
  home.

\item Eseguite \Ucom{fc-cache -fv}.
\end{enumerate*}

Potete eseguire \code{fc-list} per vedere i nomi dei font di sistema.
L'incantesimo \code{fc-list : family style file spacing} (dove tutti gli
argomenti sono esattamente come mostrati) generalmente fornisce delle
informazioni interessanti.


\subsubsection{\ConTeXt{} Mark IV}
\label{sec:context-mkiv}

Sia il ``vecchio'' \ConTeXt{} (Mark \acro{II}) che il ``nuovo'' \ConTeXt{}
(Mark \acro{IV}) dovrebbero funzionare così come sono dopo l'installazione
di \TL{} e non dovrebbero richiedere alcuna attenzione particolare finché
restate fedeli a \verb+tlmgr+ per gli aggiornamenti.

Comunque, dato che \ConTeXt{} Mk\acro{IV} non usa la libreria kpathsea,
sarà richiesta un po' di configurazione ogni qual volta installate nuovi
file manualmente (senza usare \verb+tlmgr+). Dopo ogni installazione del
genere, ogni utente di Mk\acro{IV} deve eseguire:
\begin{sverbatim}
context --generate
\end{sverbatim}
per aggiornare  i dati della cache di \ConTeXt{} sul disco.
I file risultanti sono memorizzati dentro \code{TEXMFCACHE} il cui valore
predefinito in \TL\ è \verb+TEXMFSYSVAR;TEXMFVAR+.

\ConTeXt\ Mk\acro{IV} leggerà da tutti i percorsi menzionati in
\verb+TEXMFCACHE+ e scriverà nel primo percorso che sia scrivibile. Durante
la lettura, in caso di dati di cache duplicati avrà la precedenza l'ultima
corrispondenza trovata.

Per ulteriori informazioni, consultate le pagine
\url{http://wiki.contextgarden.net/Running_Mark_IV}.


\subsubsection{Integrare macro locali e personali}
\label{sec:local-personal-macros}

Questa questione è già stata citata implicitamente nella
sezione~\ref{sec:texmftrees}:
\dirname{TEXMFLOCAL} (\dirname{/usr/local/texlive/texmf-local} o
\verb|%SystemDrive%\texlive\texmf-local| su Windows, di default) è pensato
per i font e le macro locali, ma disponibili per l'intero sistema; mentre
\dirname{TEXMFHOME} (\dirname{$HOME/texmf} o \verb|%USERPROFILE%\texmf|,
come predefiniti) è per le macro e i font personali.%stopzone
Queste directory sono pensare per rimanere fisse da un'edizione all'altra
e il loro contenuto è visto automaticamente da una nuova versione di \TL.
Quindi, è meglio trattenersi dal modificare la definizione di
\dirname{TEXMFLOCAL} in modo che punti ad una directory troppo diversa da
quella principale di \TL, oppure potreste doverla modificare manualmente
nelle future edizioni.

In entrambe le posizioni, i file dovrebbero essere posti ognuno nella
propria sotto directory secondo la Struttura delle Directory di \TeX\
(\TDS); visitate \url{http://tug.org/tds} o consultate
\filename{texmf-dist/web2c/texmf.cnf}. Ad esempio, il file di una
classe o di un pacchetto \LaTeX{} andrebbero posizionati in
\dirname{TEXMFLOCAL/tex/latex} o in \dirname{TEXMFHOME/tex/latex}, oppure
in una sotto directory di una delle due.

\dirname{TEXMFLOCAL} richiede un database dei nomi dei file aggiornato,
altrimenti i file non saranno trovati. Potete aggiornarlo con il comando
\cmdname{mktexlsr} o utilizzando il pulsante ``Aggiorna il database dei
nomi dei file'' nel pannello di configurazione della \GUI\ di \TeX\ Live
Manager.

Di default, ciascuna di queste variabili è definita come una directory
singola, come mostrato. Questo non è un requisito rigido. Se dovete passare
facilmente tra diverse versioni di grandi pacchetti, ad esempio, potete
mantenere directory multiple per i vostri scopi. Questo è ottenuto
impostando \dirname{TEXMFHOME} alla lista delle directory, tra parentesi
graffe, separate da virgole:

\begin{verbatim}
  TEXMFHOME = {/mia/dir1,/miadir2,/una/terza/dir}
\end{verbatim}

La sezione~\ref{sec:brace-expansion} descrive ulteriormente l'espansione
delle graffe.


\subsubsection{Integrare font di terze parti}

Sfortunatamente, si tratta di un argomento ingarbugliato. Dimenticatevene
a meno che non vogliate addentrarvi nei numerosi dettagli
dell'installazione di \TeX{}. Molti font sono già inclusi in \TL, quindi
dategli uno sguardo se non sapete già che quello che volete non è qui.

Una possibile alternativa è quella di usare \XeTeX\ o Lua\TeX\ (consultate
la sezione~\ref{sec:tex-extensions}), che vi consentono di usare i font
del sistema operativo senza alcuna installazione in \TeX.

Se avete comunque bisogno di farlo, visitate la pagina
\url{http://tug.org/fonts/fontinstall.html} dove abbiamo fatto del nostro
meglio nel descrivere la procedura. Se mantenete le vostre mappe di font
locali in modo rigoroso, \texttt{tlmgr generate updmap} \textit{potrebbe}
essere utile, soprattutto nel muoversi tra una versione e l'altra;
consultate la documentazione di \cmdname{tlmgr}.


\subsection{Collaudare l'installazione}
\label{sec:test-install}

Dopo aver installato \TL{} nel modo migliore, naturalmente vorrete
collaudarla, così da poter iniziare a creare bellissimi documenti e\slash
o font.

Questa sezione fornisce alcune procedure elementari per verificare che il
nuovo sistema funzioni. Qui daremo i comandi per Unix; è più facile che
sotto \MacOSX e Windows eseguiate le prove tramite un'interfaccia grafica,
ma i principi sono gli stessi.

\begin{enumerate}

\item Assicuratevi per prima cosa di poter eseguire il programma
\cmdname{tex}:
\begin{alltt}
> \Ucom{tex -{}-version}
TeX 3.1415926 (TeX Live ...)
kpathsea version 6.0.1
Copyright ... D.E. Knuth.
...
\end{alltt}
Se questo restituisce ``comando non trovato'' al posto delle informazioni
sulla versione e sul copyright, oppure una versione più vecchia,
verosimilmente non avete la giusta directory \dirname{bin} nel vostro
\envname{PATH}. Consultate le informazioni sull'impostazione delle
variabili d'ambiente a \p.\pageref{sec:env}.

\item Elaborate un file \LaTeX{} elementare:
\begin{alltt}
> \Ucom{latex sample2e.tex}
pdfTeX 3.1415926-... (TeX Live ...)
...
Output written on sample2e.dvi (3 pages, 7484 bytes).
Transcript written on sample2e.log.
\end{alltt}
Se questo non riesce a trovare \filename{sample2e.tex} o altri file,
verosimilmente avete qualche interferenza proveniente da vecchie variabili
d'ambiente o vecchi file di configurazione; noi raccomandiamo, tanto per
iniziare, di eliminare tutte le variabili d'ambiente relative a \TeX\ (per
un'analisi approfondita, potete chiedere a \TeX{} di fare un resoconto su
ciò che esattamente stia cercando e che trovi; consultate ``Risoluzione
dei problemi'' a pagina~\pageref{sec:debugging}).

\item Mostrate un'anteprima del risultato:
\begin{alltt}
> \Ucom{xdvi sample2e.dvi}    # Unix
> \Ucom{dviout sample2e.dvi}  # Windows
\end{alltt}
Dovreste vedere una nuova finestra con un bel documento che spiega alcuni
dei fondamenti di \LaTeX{} (ad ogni modo, vale la pena leggerlo se siete
nuovi a \TeX). Dovete avere X in esecuzione affinché \cmdname{xdvi}
funzioni; se non è così, oppure se la vostra variabile d'ambiente
\envname{DISPLAY} è impostata non correttamente, otterrete un errore
\samp{Can't open display}.

\item Create un file \PS{} per la stampa o la visualizzazione:
\begin{alltt}
> \Ucom{dvips sample2e.dvi -o sample2e.ps}
\end{alltt}

\item Create un file \acro{PDF} al posto di un \dvi{}; questo comando
elabora il file \filename{.tex} e scrive direttamente un \acro{PDF}:
\begin{alltt}
> \Ucom{pdflatex sample2e.tex}
\end{alltt}

\item Mostrate un'anteprima del \acro{PDF}:
\begin{alltt}
> \Ucom{gv sample2e.pdf}
\textrm{o:}
> \Ucom{xpdf sample2e.pdf}
\end{alltt}
Né \cmdname{gv}, né \cmdname{xpdf} sono inclusi in \TL{}, quindi dovete
installarli separatamente. Visitate \url{http://www.gnu.org/software/gv} e
\url{http://www.foolabs.com/xpdf}, rispettivamente. Ci sono tantissimi
altri visualizzatori \acro{PDF}. Per Windows, noi raccomandiamo di provare
Sumatra PDF (\url{http://blog.kowalczyk.info/software/sumatrapdf}).

\item Potreste trovare utili, in aggiunta a \filename{sample2e.tex}, i
seguenti file di prova predefiniti:

\begin{ttdescription}
\item [small2e.tex] Un documento più semplice di \filename{sample2e}, per
ridurre la dimensione dell'input qualora si riscontrino problemi.
\item [testpage.tex] Verifica se la vostra stampante introduce qualche
margine.
\item [nfssfont.tex] Per stampare tabelle e prove riguardanti i font.
\item [testfont.tex] Anche questo per le tabelle dei font, ma usando plain
\TeX{}.
\item [story.tex] Il più canonico tra tutti file di prova per (plain) \TeX{}.
Dovete digitare \samp{\bs bye} al prompt \code{*} dopo \samp{tex story.tex}.
\end{ttdescription}

\item Se avete installato il pacchetto \filename{xetex}, potete verificare che
riesca ad accedere ai font di sistema in questo modo:
\begin{alltt}
> \Ucom{xetex opentype-info.tex}
This is XeTeX, Version 3.1415926\dots
...
Output written on opentype-info.pdf (1 page).
Transcript written on opentype-info.log.
\end{alltt}

Se ricevete un messaggio di errore che riporta ``Invalid fontname `Latin
Modern Roman/ICU\dots'', allora dovete configurare il vostro sistema in
modo che i font distribuiti con \TL\ possano essere trovati. Consultate la
sezione~\ref{sec:font-conf-sys}.

\end{enumerate}

\subsection{Collegamenti ad ulteriori software scaricabili}

Se siete nuovi di \TeX{} oppure in alternativa avete bisogno di aiuto
nella scrittura di documenti \TeX{} o \LaTeX, visitate la pagina
\url{http://tug.org/begin.html} per alcune risorse introduttive.

Ecco i collegamenti ad alcuni altri strumenti che potete prendere in
considerazione per l'installazione:
\begin{description}
\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/}
\item[Perl] \url{http://www.perl.org/} con i pacchetti supplementari da
      \acro{CPAN}, \url{http://www.cpan.org/}
\item[ImageMagick] \url{http://www.imagemagick.com}, per l'elaborazione e
      la conversione di immagini
\item[NetPBM] \url{http://netpbm.sourceforge.net/}, anch'esso per le
      immagini.

\item[Editor orientati a \TeX] C'è un'ampia scelta ed è una questione di
      gusto dell'utente. Eccone una selezione in ordine alfabetico (alcuni
      sono solo per Windows).
  \begin{itemize*}
  \item \cmdname{GNU Emacs} è disponibile per Windows, visita
        \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}.
  \item \cmdname{Emacs con Auc\TeX} per Windows è disponibile su \CTAN. La
        home page di Auc\TeX\ è \url{http://www.gnu.org/software/auctex}.
  \item \cmdname{LEd} è disponibile su
	\url{http://mirror.ctan.org/support/LEd}.  \item \cmdname{SciTE} è
	disponibile su \url{http://www.scintilla.org/SciTE.html}.
  \item \cmdname{Texmaker} è un software libero disponibile su
        \url{http://www.xmlmath.net/texmaker/}.
  \item \cmdname{TeXstudio} è nato come un fork di \cmdname{Texmaker}
        con funzionalità aggiuntive; \url{http://texstudio.sourceforge.net}.
  \item \cmdname{TeXnicCenter} è un software libero, disponibile su
        \url{http://www.texniccenter.org} e nella distribuzione
        pro\TeX{}t.
  \item \cmdname{TeXworks} è un software libero disponibile su
        \url{http://tug.org/texworks} e installato per Windows e \MacOSX\
        come parte di \TL.
  \item \cmdname{Vim} è un software libero disponibile su
        \url{http://www.vim.org}.
  \item \cmdname{WinEdt} è un software shareware disponibile su
        \url{http://tug.org/winedt} o \url{http://www.winedt.com}.
  \item \cmdname{WinShell} è disponibile su \url{http://www.winshell.de}.
  \end{itemize*}
\end{description}
Per un elenco molto più lungo di pacchetti e programmi, visitate
\url{http://tug.org/interest.html}.


\section{Installazione specializzate}

Le sezioni precedenti hanno descritto il processo di installazione di base.
Qui ci rivolgiamo ad alcuni casi speciali.

\htmlanchor{tlsharedinstall}
\subsection{Installazioni condivise tra utenti o macchine}
\label{sec:sharedinstall}

\TL{} è stato progettato per essere condivisibile tra diversi utenti di un
solo sistema, ma anche tra sistemi differenti in una rete. Con
l'organizzazione predefinita delle directory, nessun percorso assoluto
viene configurato: le posizioni dei file necessari ai programmi di \TL{}
sono relative ai programmi stessi. Potete vedere questo nel file di
configurazione principale \filename{$TEXMFDIST/web2c/texmf.cnf}, che
contiene linee come:%stopzone
\begin{sverbatim}
TEXMFROOT = $SELFAUTOPARENT
...
TEXMFDIST = $TEXMFROOT/texmf-dist
...
TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local
\end{sverbatim}
%stopzone
Questo significa che aggiungere la directory degli eseguibili di \TL{}
appropriati alla propria piattaforma al percorso di ricerca è sufficiente
per ottenere una configurazione funzionante.

Per la stessa ragione, potete anche installare \TL{} localmente e
successivamente muovere l'intera struttura verso una locazione di rete.

Per Windows, uno script di installazione di rete esemplificativo chiamato
\filename{w32client} può essere scaricato da
\url{http://tug.org/texlive/w32client.html}. Questo script crea le
impostazioni e i collegamenti nei menu per usare una installazione di
\TL{} esistente su una \acro{LAN}. Registra anche un disinstallatore
\filename{w32unclient}, disponibile nello stesso file zip. Visitate la
pagina web indicata per maggiori informazioni.


\htmlanchor{tlportable}
\section{Installazioni portatili (\USB)}
\label{sec:portable-tl}

L'opzione \code{-portable} dell'installazione (o il comando \code{V}
nell'installatore testuale o la corrispondente opzione della \GUI) crea
un'installazione di \TL{} contenuta completamente in sé stessa all'interno
di una radice comune e rinuncia all'integrazione con il sistema. Potete
creare una tale installazione direttamente su una penna \USB{} o copiarla su
una penna \USB{} successivamente.

Per eseguire \TeX\ usando l'installazione portatile, avete bisogno di
aggiungere la directory degli eseguibili appropriata al percorso di ricerca
durante la sessione di terminale, come al solito. Sotto Windows, potete fare
doppio click su \filename{tl-tray-menu} alla radice dell'installazione per
scegliere tra alcuni compiti comuni, come mostrati in questa schermata:

\medskip
\tlpng{tray-menu}{4cm}
\smallskip


\htmlanchor{tlisoinstall}
\subsection{Installazioni degli \ISO\ (o del \DVD)}
\label{sec:isoinstall}

Se non avete bisogno di aggiornare o in qualunque altro modo modificare
spesso la vostra installazione e\slash o avete diversi sistemi sui quali
usare \TL, potrebbe essere conveniente creare un'\ISO\ della vostra
installazione di \TL{} perché:

\begin{itemize}
\item Copiare una \ISO\ tra diversi computer è molto più rapido che copiare
  un'installazione normale.
\item Se avete due sistemi operativi sulla stessa macchina e volete che
  condividano un'installazione di \TL, un'installazione \ISO\ non è
  vincolata alle idiosincrasie e alle limitazioni di altri filesystem
  reciprocamente supportati (\acro{FAT32}, \acro{NTFS}, \acro{HFS+}).
\item Le macchine virtuali possono semplicemente montare tale \ISO.
\end{itemize}

Ovviamente potete anche masterizzare un'\ISO\ su un \DVD, se lo ritenete
utile per voi.

I sistemi desktop \GNU/Linux/Unix, incluso \MacOSX, sono capaci di montare
una \ISO. Windows 8 è la prima versione di Windows che può farlo. Al di là
di questo, non cambia nulla confrontato con una normale
installazione su hard disk, consulate la sezione \ref{sec:env}.

Quando preparate tale installazione su \ISO, è meglio omettere la
sottodirectory per l'anno dell'edizione e avere \filename{texmf-local} allo
stesso livello degli altri alberi (\filename{texmf-dist},
\filename{texmf-var}, ecc.). Potete fare ciò con le normali opzioni per le
directory nell'installatore.

Per un sistema Windows fisico (piuttosto che virtuale), potete masterizzare
la \ISO\ su un \acro{DVD}. Comunque, potrebbe valere la pena investigare le
varie opzioni gratuite per il montaggio delle \ISO, come WinCDEmu da
\url{http://wincdemu.sysprogs.org/}.

Per l'integrazione con il sistema Windows, potete includere gli script
\filename{w32client} descritti nella sezione~\ref{sec:sharedinstall} e su
\url{http://tug.org/texlive/w32client.html}, che funzionano per
un'installazione \ISO\ così come per una condivisa.

Su \MacOSX, TeXShop e \TeX{}works saranno capaci di usare l'installazione su
\acro{DVD} se un collegamento simbolico \filename{/usr/texbin} punta alla
directory degli eseguibili appropriata, per esempio,
\begin{verbatim}
sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin
\end{verbatim}

Nota storica: \TL{} 2010 è stata la prima edizione di \TL{} che non è stata
più distribuita ``live''. Comunque, richiedeva sempre alcune acrobazie per
funzionare da \DVD\ o da \ISO; in particolare, non c'era alcun modo di
evitare di impostare almeno un'ulteriore variabile d'ambiente. Se create la
vostra \ISO\ da un'installazione esistente, allora non c'è bisogno di
questo.


\htmlanchor{tlmgr}
\section{\cmdname{tlmgr}: gestire la vostra installazione}
\label{sec:tlmgr}

\begin{figure}[tb]
\tlpng{tlmgr-gui}{\linewidth}
\caption{\prog{tlmgr} in modalità \GUI: la finestra principale dopo aver
  premuto il pulsante ``Carica''.}\label{fig:tlmgr-gui}
\end{figure}

\begin{figure}[tb]
\hbox to \hsize{%
  \vtop{\hsize=.59\linewidth
    \null  % make figures align at the top
    \tlpng{tlmgr-general-options}{\hsize}
    \caption{\texttt{tlmgr} in modalità \GUI: opzioni generali}
    \label{fig:tlmgr-general-options}
  }
  \hfil
  \vtop{\hsize=.39\linewidth
    \null
    \tlpng{tlmgr-paper-options}{\hsize}
    \caption{\texttt{tlmgr} in modalità \GUI: opzioni della dimensione del
    foglio}
    \label{fig:tlmgr-paper-options}
  }
}
\end{figure}

\TL{} include un programma chiamato \prog{tlmgr} per gestire \TL{} dopo
l'installazione iniziale. I programmi \prog{updmap}, \prog{fmtutil} e
\prog{texconfig} sono ancora inclusi e saranno mantenuti nel futuro, ma
\prog{tlmgr} è ora l'interfaccia preferita. Le sue funzionalità includono:

\begin{itemize*}
\item installare, aggiornare, archiviare, ripristinare e disinstallare i
  singoli pacchetti, eventualmente tenendo conto delle dipendenze;
\item cercare ed elencare pacchetti, ecc.;
\item elencare, aggiungere e rimuovere le piattaforme disponibili;
\item cambiare le opzioni di installazione come la dimensione del foglio e
  il percorso di installazione (consultate la sezione~\ref{sec:location}).
\end{itemize*}

\subsection{Modalità GUI di \cmdname{tlmgr}}
\prog{tlmgr} può essere avviato in modalità \GUI{}
(figura~\ref{fig:tlmgr-gui} con
\begin{alltt}
> \Ucom{tlmgr -gui}
\end{alltt}
oppure sotto Windows tramite il menu Start: \texttt{Start},
\texttt{Programmi}, \texttt{TeX Live ...}, \texttt{TeX Live Manager}.
Dopo aver premuto il pulsante ``Carica'' il programma mostra un elenco dei
pacchetti disponibili ed installati. Ovviamente assumiamo che il percorso
di installazione attuale sia valido e raggiungibile.

Le figure~\ref{fig:tlmgr-general-options} e~\ref{fig:tlmgr-paper-options}
mostrano le schermate con le opzioni generali e il formato di pagina.

\subsection{Esempi di invocazioni di \cmdname{tlmgr} dalla riga di comando}

Dopo l'installazione iniziale, potete aggiornare il vostro sistema alle
ultime versioni disponibili con:
\begin{alltt}
> \Ucom{tlmgr update -all}
\end{alltt}
Se questo vi rende nervosi, provate prima
%If this makes you nervous, first try
\begin{alltt}
> \Ucom{tlmgr update -all -dry-run}
\end{alltt}
o (meno prolisso):
%or (less verbose):
\begin{alltt}
> \Ucom{tlmgr update -list}
\end{alltt}

Questo esempio più complesso aggiunge una collezione, per il motore
Xe\TeX, da una directory locale:

\begin{alltt}
> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex}
\end{alltt}
Genera il seguente risultato (ridotto):
\begin{fverbatim}
install: collection-xetex
install: arabxetex
...
install: xetex
install: xetexconfig
install: xetex.i386-linux
running post install action for xetex
install: xetex-def
...
running mktexlsr
mktexlsr: Updating /usr/local/texlive/2013/texmf-dist/ls-R...
...
running fmtutil-sys --missing
...
Transcript written on xelatex.log.
fmtutil: /usr/local/texlive/2013/texmf-var/web2c/xetex/xelatex.fmt installed.
\end{fverbatim}

Come potete vedere, \prog{tlmgr} installa le dipendenze e si occupa di ogni
azione necessaria dopo l'installazione, incluso l'aggiornamento del
database dei nomi dei file e la generazione (o rigenerazione) dei formati.
Nell'esempio precedente, abbiamo generato nuovi formati per \XeTeX.

Per ottenere la descrizione di un pacchetto (o di una collezione o di uno
schema):
\begin{alltt}
> \Ucom{tlmgr show collection-latexextra}
\end{alltt}
che produce
\begin{fverbatim}
package:    collection-latexextra
category:   Collection
shortdesc:  LaTeX supplementary packages
longdesc:   A large collection of add-on packages for LaTeX.
installed:  Yes
revision:   14675
\end{fverbatim}

Infine, cosa più importante, per ottenere la documentazione completa,
visitate \url{http://tug.org/texlive/tlmgr.html} oppure eseguite:
\begin{alltt}
> \Ucom{tlmgr -help}
\end{alltt}


\section{Note relative a Windows}
\label{sec:windows}


\subsection{Funzionalità specifiche per Windows}
\label{sec:winfeatures}

Sotto Windows, l'installatore fa alcune cose in più:
\begin{description}
\item[Menu e collegamenti.] Viene creato nel menu Start un nuovo sotto
  menu ``\TL'' che contiene le voci per alcuni programmi grafici
  (\prog{tlmgr}, \prog{texdoctk}, il visualizzatore PostScript PS\_View
  \Dash\ \prog{psv}) e per un po' di documentazione. PS\_View riceve anche
  un collegamento sul desktop per avere un'icona sulla quale trascinare i
  file PostScript per l'apertura diretta.
\item[Associazioni dei file.] Se abilitati, \prog{TeXworks}, \prog{Dviout} e
  \prog{PS\_view} diventano ciascuno il programma predefinito per i loro
  rispettivi tipi di file, oppure ottengono una voce nei menu contestuali
  ``Apri con'' per quei tipi di file.
\item[Convertitore da bitmap ad eps.] I vari formati bitmap ricevono una
  voce \cmdname{bitmap2eps} nei loro menu contestuali ``Apri con''.
  Bitmap2eps è un semplice script che permette a \cmdname{sam2p} o
  \cmdname{bmeps} di compiere il vero lavoro.
\item[Impostazione automatica delle variabili di ambiente.] Non sono
  richiesti passi manuali.
\item[Disinstallatore.] Il programma di installazione crea una voce per
  \TL\ in ``Installazione Applicazioni''. La pagina di disinstallazione
  della \GUI\ \TeX\ Live Manager fa riferimento a questo.
\end{description}

\subsection{Software aggiuntivo incluso sotto Windows}

Per essere completa, un'installazione di \TL\ ha bisogno di alcuni
pacchetti di supporto che non si trovano abitualmente su una macchina
Windows. \TL{} fornisce questi pezzi mancanti:
\begin{description}
\item[Perl e Ghostscript.] A causa dell'importanza di Perl e Ghostscript,
  \TL{} include una copia ``nascosta'' di questi programmi. I programmi di
  \TL{} che ne hanno bisogno sanno dove trovarli, ma non ne tradiscono la
  presenza tramite variabili d'ambiente o impostazioni sul registro di
  sistema. Non si tratta di installazioni complete e non dovrebbero
  interferire con installazioni nel sistema di Perl o Ghostscript.

\item[PS\_View.] Viene installato anche PS\_View, un visualizzatore di
  file \PS{} e \acro{PDF}; osservate la figura~\ref{fig:psview}.

\begin{figure}[tb]
\tlpng{psview}{.6\linewidth}
\caption{PS\_View: ingrandimenti elevatissimi disponibili!}
\label{fig:psview}
\end{figure}

\item[dviout.] Viene installato anche \prog{dviout}, un visualizzatore di
  \acro{DVI}. All'inizio, quando visualizzate i file con \cmdname{dviout},
  questo creerà i font in quanto quelli per la visione su schermo non sono
  isntallati. Dopo un po', avrete creato la maggior parte dei font che
  usate e raramente vedrete la finestra di creazione dei font. Maggiori
  informazioni possono essere trovate nell'aiuto del programma (altamente
  raccomandato).

\item[\TeX{}works.] \TeX{}works è un editor orientato a \TeX\ con un
  visualizzatore per \acro{PDF} incorporato.

\item[Strumenti a riga di comando.] Assieme ai soliti programmi di \TL{}
  vengono installate alcune versioni per Windows di tipici programmi Unix
  a riga di comando. Questi programmi includono \cmdname{gzip},
  \cmdname{unzip} e gli strumenti della suite \cmdname{xpdf}
  (\cmdname{pdfinfo}, \cmdname{pdffonts}, \ldots). Il visualizzatore
  \cmdname{xpdf} non è disponibile per Windows. Come alternativa, tra le
  altre, potete scaricare Sumatra \acro{PDF}, che è basato su xpdf, da
  \url{http://blog.kowalczyk.info/software/sumatrapdf}.

\item[fc-list, fc-cache, \ldots] Gli strumenti dalla libreria fontconfig
  consentono a \XeTeX{} di gestire i font di sistema sotto Windows. Potete
  usare \prog{fc-list} per trovare i nomi dei font da passare al comando
  esteso di \XeTeX\ \cs{font}. Se è necessario, eseguite prima
  \prog{fc-cache} per aggiornare le informazioni sui font.

\end{description}


\subsection{Il profilo utente è ``home''}
\label{sec:winhome}

La controparte Windows di una directory di home di Unix è la directory
\verb|%USERPROFILE%|. Sotto Windows \acro{XP}, di solito
è \verb|C:\Documents and Settings\<nomeutente>| e sotto Windows Vista e
successivi è \verb|C:\Users\<nomeutente>|. Nel file \filename{texmf.cnf} e in
generale in \KPS{}, \verb|~| verrà interpretato in modo appropriato sia
sotto Windows che sotto Unix.


\subsection{Il registro di configurazione di Windows}
\label{sec:registry}

Windows memorizza quasi tutti i dati di configurazione nel suo registro.
Il registro contiene un insieme di chiavi organizzate gerarchicamente,
con varie gerarchie. Le più importanti per i programmi di installazione
sono \path{HKEY_CURRENT_USER} e \path{HKEY_LOCAL_MACHINE}, abbreviate in
\path{HKCU} e \path{HKLM}. La porzione \path{HKCU} del registro si trova
nella directory di home dell'utente (vedi sezione~\ref{sec:winhome}).
\path{HKLM} si trova di solito in una sotto directory della cartella
Windows.

In alcuni casi, le informazioni di sistema possono essere ottenute dalle
variabili d'ambiente, ma per altre informazioni, come la posizione dei
collegamenti, è necessario consultare il registro. Impostare
permanentemente le variabili d'ambiente richiede ugualmente l'accesso al
registro.


\subsection{Permessi di Windows}
\label{sec:winpermissions}

Nelle ultime versioni di Windows si fa distinzione tra utenti normali ed
amministratori e solo questi ultimi hanno libero accesso all'intero
sistema operativo. In pratica, però, si potrebbero meglio descrivere
queste classi come ``utenti senza privilegi'' e ``utenti normali'': essere
un amministratore è la regola, non l'eccezione. Ciononostante, ci siamo
sforzati di rendere \TL{} installabile senza i privilegi amministrativi.

Se l'utente è un amministratore, c'è un'opzione per rendere
l'installazione disponibile a tutti gli utenti. Se questa opzione è
selezionata, i collegamenti sono creati per tutti gli utenti e l'ambiente
di sistema è modificato. In alternativa, i collegamenti e le voci nel menu
sono creati solo per l'utente corrente e viene modificato l'ambiente
dell'utente.

Indipendentemente dallo stato di amministratore, la cartella predefinita
di \TL{} proposta dal programma di installazione si trova sempre sotto
\verb|%SystemDrive%|. L'installatore verifica sempre se l'utente corrente
ha i permessi di scrittura in tale cartella.

Possono sorgere dei problemi se l'utente non è un amministratore e \TeX{}
già esiste nel percorso di ricerca. Dato che nel percorso di ricerca
vengono prima le impostazioni di sistema e poi quelle dell'utente, la
nuova \TL{} non avrebbe mai la precedenza. Come precauzione, il programma
di installazione crea un collegamento ad un prompt dei comandi in cui la
nuova directory degli eseguibili di \TL{} è anteposta al percorso di
ricerca locale. La nuova \TL{} sarà sempre accessibile usando questo
prompt. Anche il collegamento a \TeX{}works, se è installato, antepone
\TL{} al percorso di ricerca, quindi dovrebbe essere immune a questo
problema.

Sotto Vista e successivi c'è un ulteriore colpo di scena: anche se avete
eseguito l'accesso come amministratori, dovete chiedere esplicitamente i
privilegi di amministrazione. In pratica, non serve a molto entrare come
amministratore. Invece, facendo clic con il tasto destro sul programma o
sul collegamento che volete eseguire, solitamente appare la voce ``Esegui
come amministratore''.

\subsection{Incrementare la memoria massima sotto Windows e Cygwin}
\label{sec:cygwin-maxmem}

Gli utenti di Windows e Cygwin (consulta la sezione~\ref{sec:cygwin} per i
dettagli sull'installazione con Cygwin) possono ritrovarsi con la memoria
esaurita durante l'esecuzione di alcuni dei programmi forniti con \TL. Ad
esempio, \prog{asy} potrebbe esaurire la memoria se tentate di allocare un
array di 20.000.000 di reali e Lua\TeX\ potrebbe esaurirla se tentate di
elaborare un documento con un gran numero di font grandi.

Per Cygwin, potete incrementare la quantità di memoria disponibile seguendo
le istruzioni nella Guida dell'Utente di Cygwin
(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}).

Per Windows, dovete creare un file, ad esempio \code{moremem.reg}, con le
seguenti quattro righe:

\begin{sverbatim}
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\Software\Cygwin]
"heap_chunk_in_mb"=dword:ffffff00
\end{sverbatim}

\noindent ed eseguire il comando \code{regedit /s moremem.reg} come
amministratore (se volete cambiare la memoria unicamente per l'utente
corrente invece che per l'intero sistema, usate \code{HKEY\_CURRENT\_USER}).


\section{Una guida a Web2C}

\Webc{} è una collezione integrata di programmi legati a \TeX: \TeX{}
stesso, \MF{}, \MP, \BibTeX{}, ecc. È il cuore di \TL{}. Il sito web di
\Webc{}, con il manuale corrente e molto altro, è
\url{http://tug.org/web2c}.

Ecco un po' di storia: l'implementazione originale fu realizzata da Tomas
Rokicki il quale, nel 1987, sviluppò un primo sistema \TeX{}-to-C
cambiando dei file sotto Unix, che erano principalmente un lavoro
originale di Howard Trickey e Pavel Curtis. Tim Morgan divenne il
manutentore del sistema e durante questo periodo il nome cambiò in
Web-to-C\@. Nel 1990, Karl Berry prese in mano il lavoro, con il
contributo di molte persone, e nel 1997 passò il testimone a Olaf Weber,
il quale lo restituì a Karl nel 2006.

Il sistema \Webc{} gira sotto Unix, sotto i sistemi Windows a 32 bit,
sotto MacOSX{} e sotto altri sistemi operativi. Usa i sorgenti originali
di Knuth per \TeX{} e per altri programmi scritti nel sistema di
programmazione letterata \web{} e li traduce in codice C. I programmi
basilari di \TeX{} gestiti in questo modo sono:

\begin{cmddescription}
\item[bibtex]    Per mantenere le bibliografie.
\item[dvicopy]   Espande i riferimenti ai font virtuali nei file \dvi{}.
\item[dvitomp]   Converte da \dvi{} a MPX (MetaPost picture).
\item[dvitype]   Converte i \dvi{} in testo leggibile
\item[gftodvi]   Provini dei font generici.
\item[gftopk]    Converte da font generici ad impacchettati.
\item[gftype]    Converte i font generici in testo leggibile.
\item[mf]        Crea famiglie di caratteri tipografici.
\item[mft]       Formatta i sorgenti \MF{}.
\item[mpost]     Crea diagrammi tecnici.
\item[patgen]    Crea modelli di sillabazione.
\item[pktogf]    Converte da font impacchettati a generici.
\item[pktype]    Converte i font impacchettati in testo leggibile.
\item[pltotf]    Converte le liste di proprietà da testo leggibile in TFM.
\item[pooltype]  Mostra i file delle riserve di \web{}.
\item[tangle]    Converte da \web{} al Pascal.
\item[tex]       Compone tipograficamente i documenti.
\item[tftopl]    Converte le liste di proprietà da TFM in testo leggibile
\item[vftovp]    Converte da font virtuali a liste di proprietà virtuali.
\item[vptovf]    Converte da liste di proprietà virtuali a font virtuali.
\item[weave]     Converte da \web{} a \TeX.
\end{cmddescription}

\noindent Le esatte funzioni e la sintassi di questi programmi sono
descritte nella documentazione dei singoli pacchetti e di \Webc{} stesso.
Tuttavia, conoscere alcuni principi che governano l'intera famiglia di
programmi vi aiuterà a trarre vantaggio dalla vostra installazione \Webc{}.

Tutti i programmi rispettano queste opzioni \GNU{} standard:
\begin{ttdescription}
\item[-{}-help] stampa un semplice sommario d'uso.
\item[-{}-verbose] stampa un rapporto dettagliato sull'avanzamento.
\item[-{}-version] stampa le informazioni sulla versione, quindi esce.
\end{ttdescription}

Per individuare i file, i programmi \Webc{} usano la libreria di ricerca
dei percorsi \KPS{} (\url{http://tug.org/kpathsea}). Questa libreria usa
una combinazione di variabili d'ambiente e file di configurazione per
ottimizzare la ricerca nella (enorme) raccolta di file di \TeX{}. \Webc{}
può controllare simultaneamente molte directory, cosa utile per mantenere
la distribuzione standard \TeX{}, le estensioni locali e quelle personali
in directory distinte. Per velocizzare le ricerche dei file, alla radice
di ogni albero di directory c'è un file \file{ls-R} contenente una voce
con il nome ed il percorso relativo per ciascun file all'interno di
quell'albero.


\subsection{Ricerca dei percorsi con Kpathsea}
\label{sec:kpathsea}

Per prima cosa descriviamo il generico meccanismo di ricerca dei percorsi
della libreria \KPS.

Chiameremo \emph{percorso di ricerca} una lista separata da un due punti o
da un punto e virgola di \emph{elementi di percorso}, che sono
fondamentalmente nomi di directory. Un percorso di ricerca può provenire
da (una combinazione di) molte fonti. Per cercare un file \samp{my-file}
attraverso un percorso \samp{.:/dir}, \KPS{} controlla a turno ogni
elemento del percorso: prima \file{./my-file}, poi \file{/dir/my-file},
restituendo la prima corrispondenza (o, eventualmente, tutte).

Al fine di adattarsi al meglio alle convenzioni di tutti i sistemi
operativi, sui sistemi non Unix \KPS{} può usare separatori di nomi di
file diversi dai due punti (\samp{:}) e barra (slash, \samp{/}).

Per controllare un particolare elemento \var{p} di un percorso, \KPS{} per
prima cosa verifica se può applicare a \var{p} un database precostruito
(consulta ``Database di file'' a pagina~\pageref{sec:filename-database}),
cioè se il database è in una directory che è prefisso di \var{p}. Se è
così, la specifica del percorso è confrontata con il contenuto del
database.

Se il database non esiste o non si applica a questo elemento del percorso,
oppure se non contiene corrispondenze, viene eseguita una ricerca sul
disco (se non è stata proibita da una specifica che comincia con
\samp{!!}\ e se il file viene cercato per scoprire se esiste). \KPS{}
costruisce la lista di directory che corrispondono a questo elemento del
percorso e verifica all'interno di ciascuna di esse se può individuare il
file.

La condizione ``il file deve esistere'' entra in gioco con i file
\samp{.vf} e i file letti tramite il comando \cs{openin} di \TeX. Questi
file potrebbero non esistere (ad esempio \file{cmr10.vf}) e dunque sarebbe
sbagliato cercarli sul disco. Quindi, se non siete riusciti ad aggiornare
correttamente il file \file{ls-R} quando avete installato un nuovo
\samp{.vf}, quest'ultimo non sarà mai trovato. A turno, viene controllato
ogni elemento del percorso: prima il database, poi il disco.  Se viene
trovata una corrispondenza, la ricerca si interrompe e il risultato è
restituito. 

Per quanto il più semplice e comune elemento di un percorso sia il nome di
una directory, \KPS{} supporta caratteristiche aggiuntive nei percorsi di
ricerca: valori predefiniti stratificati, nomi di variabili
d'ambiente, valori di file di configurazione, directory personali degli
utenti e ricerca ricorsiva di sotto directory. Dunque, diciamo che \KPS{}
\emph{espande} un elemento di percorso, intendendo che trasforma tutte le
specifiche in semplici nomi di directory. Questa trasformazione è
descritta nelle seguenti sezioni nello stesso ordine in cui avviene.

Notate che se il nome del file cercato è assoluto o esplicitamente relativo,
ossia se comincia con \samp{/}, \samp{./} o \samp{../}, \KPS{} controlla
semplicemente se quel file esiste.

\ifSingleColumn
\else
\begin{figure*}
\verbatiminput{examples/ex5.tex}
\setlength{\abovecaptionskip}{0pt}
  \caption{Un pezzo illustrativo di file di configurazione}
  \label{fig:config-sample}
\end{figure*}
\fi

\subsubsection{Fonti dei percorsi}
\label{sec:path-sources}

Un percorso di ricerca può provenire da molte fonti. Nell'ordine in cui
\KPS{} le usa:

\begin{enumerate}
\item
  Una variabile d'ambiente impostata dall'utente, per esempio
  \envname{TEXINPUTS}\@. Le variabili d'ambiente a cui è stato aggiunto un
  punto ed il nome di un programma hanno la precedenza; per esempio, se
  \samp{latex} è il nome del programma in esecuzione, allora
  \envname{TEXINPUTS.latex} avrà la precedenza su \envname{TEXINPUTS}.
\item
  Il file di configurazione specifico per un programma, per esempio una
  riga \samp{S /a:/b} nel file di configurazione \file{config.ps} di
  \cmdname{dvips}.
\item
  Un file di configurazione \file{texmf.cnf} di \KPS, contenente una riga
  del tipo \samp{TEXINPUTS=/c:/d} (vedi più avanti).
\item Il valore predefinito alla compilazione del programma.
\end{enumerate}
\noindent Potete vedere ciascuno di questi valori per un dato percorso di
ricerca usando le opzioni di debug (consultate ``Risoluzione dei
problemi'' a pagina~\pageref{sec:debugging}).

\subsubsection{File di configurazione}

\KPS{} legge i percorsi di ricerca ed altre definizioni nei \emph{file di
configurazione a tempo di esecuzione} chiamati \file{texmf.cnf}. Il
percorso di ricerca usato per cercare questi file è chiamato
\envname{TEXMFCNF}, ma non raccomandiamo di impostare questa (o qualunque
altra) variabile d'ambiente.

Invece, l'installazione normale dà luogo ad un file
\file{.../2013/texmf.cnf}. Se dovete apportare delle modifiche ai valori
predefiniti (di norma non è necessario), questo è il posto in cui
piazzarle. Il file di configurazione principale è
\file{.../2013/texmf-dist/web2c/texmf.cnf}. Non dovreste modificare
quest'ultimo file, dato che le vostre modifiche andrebbero perdute quando
la versione distribuita viene aggiornata.

\emph{Tutti} i file \file{texmf.cnf} nel percorso di ricerca saranno letti
e le definizioni in quelli che appaiono per primi sostituiranno quelle nei
file che appaiono per ultimi. Ad esempio, con un percorso di ricerca di
\verb|.:$TEXMF|, i valori provenienti da \file{./texmf.cnf} sostituiranno
quelli provenienti da \verb|$TEXMF/texmf.cnf|.

\begin{itemize}
\item
  I commenti iniziano con \code{\%} e continuano fino alla fine della
  riga.
\item
  Le righe vuote sono ignorate.
\item
  Un \bs{} alla fine di una riga funziona come un carattere di
  continuazione, cioè la linea successiva viene apposta. Gli spazi bianchi
  all'inizio delle righe di continuazione non sono ignorati.
\item
  Ogni riga rimanente ha la forma:
\begin{alltt}
  \var{variabile}[.\var{nomeprogramma}] [=] \var{valore}
\end{alltt}
  dove il carattere \samp{=} e gli spazi che lo circondano sono opzionali.
\item
  Il nome \ttvar{variabile} può contenere un qualunque carattere diverso
  dallo spazio, da \samp{=} e da \samp{.}, ma usare solo i caratteri
  \samp{A-Za-z\_} è più sicuro.
\item
  Se la parte \samp{.\var{nomeprogramma}} è presente, la definizione si
  applica solo se il programma che è in esecuzione ha il nome
  \texttt{\var{nomeprogramma}} oppure \texttt{\var{nomeprogramma}.exe}.
  Questo consente, ad esempio, alle diverse varianti di \TeX{} di avere
  diversi percorsi di ricerca.
\item \var{valore} può contentere qualunque carattere tranne che \code{\%}
  e \samp{@}. La caratteristica \code{\$\var{variabile}.\var{programma}}
  non è disponibile come valore valido; in alternativa, dovete usare una
  variabile aggiuntiva. Un \samp{;}\ in \var{valore} è tradotto
  automaticamente in \samp{:}\ se state usando Unix; questa caratteristica
  è utile per avere un singlo \file{texmf.cnf} per Unix, \acro{MS-DOS} e
  Windows.
\item
  Tutte le definizioni vengono lette prima che qualunque cosa sia espanza,
  quindi si può fare riferimento alle variabili prima che siano definite.
\end{itemize}
Un frammento di file di configurazione che mostra la maggior parte di
questi punti è
\ifSingleColumn
mostrato sotto:

\verbatiminput{examples/ex5.tex}
\else
mostrato nella figura~\ref{fig:config-sample}.
\fi

\subsubsection{Espansione dei percorsi}
\label{sec:path-expansion}

\KPS{} riconosce nei percorsi di ricerca alcuni caratteri e costrutti
speciali, simili a quelli disponibili nelle shell di Unix. Come esempio
generale, il complesso percorso \verb+~$USER/{foo,bar}//baz+ viene espanso
in tutte le directory sotto \file{foo} e \file{bar} nella home dell'utente
\texttt{\$USER}, che contengono a loro volta una directory o un file di
nome \file{baz}. Queste espansioni sono spiegate nelle prossime sezioni-
%$
\subsubsection{Espansione predefinita}
\label{sec:default-expansion}

Se il percorso di ricerca a più alta priorità (consultate ``Fonti dei
percorsi'' a pagina~\pageref{sec:path-sources}) contiene un \emph{due
punti di troppo} (cioè all'inizio, alla fine oppure una coppia di due
punti), \KPS{} inserisce in quel punto il percorso di ricerca con la
seconda più alta priorità che sia stato definito. Se questo percorso
inserito ha a sua vuolta un due punti aggiuntivo, accade lo stesso con il
successivo in ordine di priorità. Per esempio, data l'impostazione di una
variabile d'ambiente

\begin{alltt}
> \Ucom{setenv TEXINPUTS /home/karl:}
\end{alltt}
e un valore di \code{TEXINPUTS} proveniente da \file{texmf.cnf} di

\begin{alltt}
  .:\$TEXMF//tex
\end{alltt}
allora il valore finale usato nella ricerca sarà:

\begin{alltt}
  /home/karl:.:\$TEXMF//tex
\end{alltt}

Dato che sarebbe inutile inserire lo stesso valore predefinito in più di
un posto, \KPS{} cambia solo uno dei \samp{:}\ di troppo e lascia gli
altri al loro posto. Per prima cosa cerca un \samp{:} all'inizio, quindi
cerca un \samp{:} alla fine, per ultimo cerca un \samp{:} doppio.

\subsubsection{Espansione delle parentesi graffe}
\label{sec:brace-expansion}

Una caratteristica utile è l'espansione delle parentesi graffe, che
significa che, per esempio, \verb+v{a,b}w+ viene espanso in
\verb+vaw:vbw+. L'annidamento delle parentesi è permesso. Tale
caratteristica è usata per implementare gerarchie \TeX{} multiple,
assegnando una lista di nomi tra graffe a \code{\$TEXMF}. Ad esempio, in
\file{texmf.cnf}, è fatta la seguente definizione (semplificata per questo
esempio):
\begin{verbatim}
  TEXMF = {$TEXMFVAR,$TEXMFHOME,!!$TEXMFLOCAL,!!$TEXMFDIST}
\end{verbatim}
Pssiamo usarlo per definire, ad esempio, il percorso di input per \TeX:
\begin{verbatim}
  TEXINPUTS = .;$TEXMF/tex//
\end{verbatim}
%$
che vuol dire che, dopo aver guardato nella directory attuale, la ricerca
proseguirà (\emph{soltanto}) nei rami \code{\$TEXMFVAR/tex},
\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex} e \code{\$TEXMFDIST/tex}
(gli ultimi due usando i database \file{ls-R}). È una maniera conveniente
per avere due strutture \TeX{} parallele, una ``congelata'' (ad
esempio su un \CD) e l'altra aggiornata di continuo con nuove versioni non
appena diventino disponibili. Usando la variabile \code{\$TEXMF} in tutte
le definizioni, si è sicuri di cercare innanzitutto nel ramo
aggiornato.

\subsubsection{Espansione delle sotto directory}
\label{sec:subdirectory-expansion}

In un elemento di percorso, due o più barre (slash) consecutive alla fine
di una directory \var{d} sono sostituite da tutte le sotto directory di
\var{d}: prima quelle che si trovano direttamente sotto \var{d}, quindi
quelle all'interno delle prime e così via. Ad ogni livello, l'ordine in
cui le directory sono cercate \emph{non è specificato}.

Se specificate il nome di un file dopo il \samp{//}, saranno incluse solo
le sotto directory che lo contengono. Ad esempio, \samp{/a//b} si
espande nelle directory \file{/a/1/b}, \file{/a/2/b}, \file{/a/1/1/b} e
così via, ma non in \file{/a/b/c} o \file{/a/1}.

È possibile usare più volte il costrutto \samp{//} in un percorso, ma ogni
\samp{//} all'inizio di un percorso viene ignorato.

\subsubsection{Elenco dei caratteri speciali e loro significato: un
  riepilogo}

Il seguente elenco riassume i caratteri speciali nei file di
configurazione di \KPS{}.

% need a wider space for the item labels here.
\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}}
\begin{ttdescription}
\item[\CODE{:}] Separatore nella specifica di un percorso; all'inizio o
  alla fine di un percorso sostituisce l'espansione di percorso
  predefinita.\par
\item[\CODE{;}] Separatore nei sistemi non Unix (si comporta come
  \code{:}).
\item[\CODE{\$}] Espansione di una variabile.
\item[\CODE{\string~}] Rappresenta la directory di home di un utente.
\item[\CODE{\char`\{...\char`\}}] Espansione di parentesi graffe.
\item[\CODE{//}] Espansione di sotto directory (può trovarsi ovunque in un
  percorso tranne che al suo inizio).
\item[\CODE{\%}] Inizio di un commento.
\item[\CODE{\bs}] Carattere di continuazione (consente alle voci di
  continuare su più linee).
\item[\CODE{!!}] Cerca \emph{solo} nei database per individuare un file,
    \emph{non} cerca sul disco.
\end{ttdescription}


\subsection{Database di nomi di file}
\label{sec:filename-database}

\KPS{} si sforza di minimizzare gli accessi al disco per le ricerche.
Infatti, in installazioni con parecchie directory, cercare un dato file
in ognuna di esse può richiedere una quantità di tempo eccessiva (vero
soprattutto se devono essere attraversate molte centinaia di directory di
font). Quindi, \KPS{} può usare un file di ``database'' testuale costruito
esternamente, chiamato \file{ls-R}, che associa file a directory, evitando
in questo modo di cercare esaustivamente sul disco.

Un secondo file di database, \file{aliases}, permette di dare nomi
aggiuntivi ai file elencati in \file{ls-R}. Questa caratteristica può
essere utile per conformare i file sorgenti alla convenzione dei nomi
\acro{DOS} 8.3.

\subsubsection{Il database di nomi}
\label{sec:ls-R}

Come spiegato in precedenza, il nome del database principale di nomi di
file deve essere \file{ls-R}. Potete metterne uno alla radice di ogni
ramo \TeX{} della vostra installazione nel quale volete che si effettuino
le ricerche (\code{\$TEXMF} di base). \KPS{} cerca i file \file{ls-R} nel
percorso \code{TEXMFDBS}.

Il metodo raccomandato per creare e mantenere \samp{ls-R} è quello di
eseguire lo script \code{mktexlsr} incluso nella distribuzione. Esso è
invocato dai vari script \samp{mktex}\dots. In teoria, questo script esegue
semplicemente il comando
\begin{alltt}
cd \var{/la/vostra/radice/texmf} && \path|\|ls -1LAR ./ >ls-R
\end{alltt}
assumendo che il comando \code{ls} del vostro sistema produca il giusto
formato di output (\code{ls} del progetto \GNU lo fa). Per garantire che
l'archivio sia sempre aggiornato, la cosa più semplice è rigenerarlo
regolarmente tramite \code{cron}, così che sia automaticamente ricostruito
quando i file installati cambiano, ad esempio dopo aver installato o
aggiornato un pacchetto \LaTeX.

Se un file non è trovato nel database, per default \KPS{} va avanti e
cerca sul disco. Se un particolare elemento di percorso comincia con
\samp{!!}, però, la ricerca per quell'elemento sarà effettuata \emph{solo}
nel database, mai sul disco.


\subsubsection{kpsewhich: ricerca indipendente di percorsi}
\label{sec:invoking-kpsewhich}

Il programma \texttt{kpsewhich} compie la ricerca di percorsi
indipendentemente da qualunque particolare applicazione. Può essere utile
come una sorta di programma \code{find} per individuare i file nelle
gerarchie \TeX{} (è ampiamente usato negli script \samp{mktex}\dots\
distribuiti).

\begin{alltt}
> \Ucom{kpsewhich \var{opzioni}\dots{} \var{nomefile}\dots{}}
\end{alltt}
Le opzioni specificate in \ttvar{opzioni} cominciano con \samp{-} oppure
con \samp{-{}-} ed è accettata qualunque abbreviazione non ambigua.

\KPS{} cerca ogni argomento sulla riga di comando che non sia un'opzione
come se fosse il nome di un file e restituisce il primo trovato. Non ci
sono opzioni per restituire tutti i file con un particolare nome (per fare
questo, potete eseguire il programma Unix \samp{find}).

Le opzioni più comuni sono descritte in seguito.

\begin{ttdescription}
\item[\texttt{-{}-dpi=\var{num}}]\mbox{}
  Imposta la risoluzione a \ttvar{num}; questa opzione ha effetto solo
  nelle ricerche dei file \samp{gf} e \samp{pk}. \samp{-D} è un sinonimo,
  per compatibilità con \cmdname{dvips}. Il valore preimpostato è 600.

\item[\texttt{-{}-format=\var{nome}}]\mbox{}\\
  Imposta il formato da cercare a \ttvar{nome}. Di base, il formato è
  ipotizzato a partire dal nome del file. Per i formati che non hanno
  associato un suffisso non ambiguo, come i file di supporto di \MP{} e i
  file di configurazione di \cmdname{dvips}, dovete specificare il nome
  così come è conosciuto da \KPS{}, come \texttt{tex} o \texttt{enc
  files}. Eseguite \texttt{kpsewhich -{}-help} per un elenco.

\item[\texttt{-{}-mode=\var{stringa}}]\mbox{}\\
  Imposta il nome della modalità a \ttvar{stringa}; questa opzione ha
  effetto solo sulle ricerche dei file \samp{gf} e \samp{pk}. Non esiste
  un valore preimpostato: sarà trovata qualunque tipo di modalità.
\item[\texttt{-{}-must-exist}]\mbox{}\\
  Fa tutto ciò che è possibile per trovare il file, inclusa nello
  specifico la ricerca sul disco. Di base, per questioni di efficienza, è
  controllato solo l'archivio \file{ls-R}.
\item[\texttt{-{}-path=\var{stringa}}]\mbox{}\\
  Cerca nel percorso di ricerca \ttvar{stringa} (separata da due punti,
  come al solito), invece di ricavarlo dal nome del file. \samp{//} e
  tutte le solite espansioni sono supportate. Le opzioni \samp{-{}-path} e
  \samp{-{}-format} si escludono a vicenda.
\item[\texttt{-{}-progname=\var{nome}}]\mbox{}\\
  Imposta il nome del programma a \texttt{\var{nome}}. Questa opzione può
  modificare i percorsi di ricerca per mezzo della funzionalità
  \texttt{.\var{nomeprogramma}}. Il valore predefinito è
  \cmdname{kpsewhich}.
\item[\texttt{-{}-show-path=\var{nome}}]\mbox{}\\
  Mostra il percorso usato per la ricerca dei file il cui tipo sia
  \texttt{\var{nome}}. Può essere usata sia un'estensione (\code{.pk},
  \code{.vf}, ecc.) che un nome, proprio come per l'opzione
  \samp{-{}-format}.
\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\
  Imposta le opzioni per la ricerca degli errori a \texttt{\var{num}}.
\end{ttdescription}


\subsubsection{Esempi d'uso}
\label{sec:examples-of-use}

Diamo uno sguardo a \KPS{} in azione. Ecco una ricerca semplice:

\begin{alltt}
> \Ucom{kpsewhich article.cls}
   /usr/local/texmf-dist/tex/latex/base/article.cls
\end{alltt}
Stiamo cercando il file \file{article.cls}. Dato che il suffisso
\samp{.cls} non è ambiguo, non abbiamo bisogno di specificare che vogliamo
cercare un file di tipo \optname{tex} (file sorgente \TeX). Lo troviamo
nella sotto directory \file{tex/latex/base} sotto la directory di \TL\
\samp{texmf-dist}. In modo simile, tutti i file seguenti sono trovati
senza problemi grazia alla non ambiguità dei loro suffissi.
\begin{alltt}
> \Ucom{kpsewhich array.sty}
   /usr/local/texmf-dist/tex/latex/tools/array.sty
> \Ucom{kpsewhich latin1.def}
   /usr/local/texmf-dist/tex/latex/base/latin1.def
> \Ucom{kpsewhich size10.clo}
   /usr/local/texmf-dist/tex/latex/base/size10.clo
> \Ucom{kpsewhich small2e.tex}
   /usr/local/texmf-dist/tex/latex/base/small2e.tex
> \Ucom{kpsewhich tugboat.bib}
   /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib
\end{alltt}

Ad ogni modo, quest'ultimo è un registro bibliografico in formato
\BibTeX{} per gli articoli di \textsl{TUGboat}.

\begin{alltt}
> \Ucom{kpsewhich cmr10.pk}
\end{alltt}
I file di glifi dei font bitmat di tipo \file{.pk} sono usati dai
programmi di visualizzazione come \cmdname{dvips} e \cmdname{xdvi}. Non
viene restituito nulla in questo caso dato che in \TL\ non ci sono file
\samp{.pk} pregenerati per il carattere tipografico Computer Modern \Dash
come predefinite sono usate le varianti Type~1.
\begin{alltt}
> \Ucom{kpsewhich wsuipa10.pk}
\ifSingleColumn   /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk
\else /usr/local/texmf-var/fonts/pk/ljfour/public/
...                         wsuipa/wsuipa10.600pk
\fi\end{alltt}
Per questi font (un alfabeto fonetico creato dall'Università di
Washington) dobbiamo generare i file \samp{.pk} e dato che la modalità
predefinita di \MF{} nella nostra installazione è \texttt{ljfour} con una
risoluzione di base di 600\dpi{} (dots per inch, punti per pollice), viene
restituito questo valore.
\begin{alltt}
> \Ucom{kpsewhich -dpi=300 wsuipa10.pk}
\end{alltt}
In questo caso, quando specifichiamo di essere interessati ad una
risoluzione di 300\dpi{} (\texttt{-dpi=300}) osserviamo che questo font
non è disponibile nel sistema. Un programma come \cmdname{dvips} o
\cmdname{xdvi} andrebbe avanti e genererebbe i file \texttt{.pk} richiesti
usando lo script \cmdname{mktexpk}.

Adesso spostiamo la nostra attenzione sui file di intestazione e di
configurazione di \cmdname{dvips}. Cercheremo innanzitutto un file tra
quelli usati comunemente, il prologo generale \file{tex.pro} per il
supporto a \TeX, prima di spostare l'attenzione sul generico file di
configurazione (\file{config.ps}) e la mappa dei font \PS{}
\file{psfonts.map} \Dash\ a partire dal 2004, i file di mappatura e di
codifica hanno i propri percorsi di ricerca e una nuova posizione negli
alberi \dirname{texmf}. Dato che il suffisso \samp{.ps} è ambiguo,
dobbiamo specificare esplicitamente quale tipo stiamo considerando
(\optname{dvips config}) per il file \texttt{config.ps}.
\begin{alltt}
> \Ucom{kpsewhich tex.pro}
   /usr/local/texmf/dvips/base/tex.pro
> \Ucom{kpsewhich --format="dvips config" config.ps}
   /usr/local/texmf/dvips/config/config.ps
> \Ucom{kpsewhich psfonts.map}
   /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map
\end{alltt}

Diamo ora uno sguardo ravvicinato ai file di supporto per il carattere
\PS{} \acro{URW} Times. Il prefisso per questi file nello schema dei nomi
dei font è \samp{utm}. Il primo file che cerchiamo è quello di
configurazione, che contiene il nome del file di mappatura:
\begin{alltt}
> \Ucom{kpsewhich --format="dvips config" config.utm}
   /usr/local/texmf-dist/dvips/psnfss/config.utm
\end{alltt}
Il contenuto di questo file è
\begin{alltt}
  p +utm.map
\end{alltt}
che punta al file \file{utm.map}, che sarà il prossimo che cercheremo.
\begin{alltt}
> \Ucom{kpsewhich utm.map}
   /usr/local/texmf-dist/fonts/map/dvips/times/utm.map
\end{alltt}
Questo file di mappatura definisce i nomi dei file dei font \PS{} Type~1
nella collezione URW. Il suo contenuto è simile al seguente (mostriamo
solo una parte delle righe):
\begin{alltt}
utmb8r  NimbusRomNo9L-Medi    ... <utmb8a.pfb
utmbi8r NimbusRomNo9L-MediItal... <utmbi8a.pfb
utmr8r  NimbusRomNo9L-Regu    ... <utmr8a.pfb
utmri8r NimbusRomNo9L-ReguItal... <utmri8a.pfb
utmbo8r NimbusRomNo9L-Medi    ... <utmb8a.pfb
utmro8r NimbusRomNo9L-Regu    ... <utmr8a.pfb
\end{alltt}
Prendiamo, ad esempio, il file per il Times Roman \file{utmr8a.pfb} e
cerchiamo la sua posizione nell'albero delle directory \file{texmf} con
una ricerca dei file di font Type~1:
\begin{alltt}
> \Ucom{kpsewhich utmr8a.pfb}
\ifSingleColumn   /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb
\else   /usr/local/texmf-dist/fonts/type1/
... urw/utm/utmr8a.pfb
\fi\end{alltt}

Dovrebbe essere chiaro da questi esempi come potete individuare facilmente
dove si trovi un dato file. Tutto ciò è particolarmente importante se
sospettate che in qualche modo venga prelevata la versione sbagliata di un
file, in quanto \cmdname{kpsewhich} mostrerà il primo file incontrato.

\subsubsection{Risoluzione dei problemi}
\label{sec:debugging}

A volte è necessario investigare sul come un programma determina i
riferimenti ad un file. Per rendere pratico ciò, \KPS{} offre vari livelli
di messaggi diagnostici:

\begin{ttdescription}
\item[\texttt{\ 1}] Chiamate a \texttt{stat} (accessi al disco). Quando si
  compie una ricerca avendo a disposizione un database \file{ls-R}
  aggiornato, questo livello non dovrebbe mostrare quasi nessun messaggio.
\item[\texttt{\ 2}] Riferimenti alle tabelle dei dati (come i database
  \file{ls-R}, i file di mappatura, quelli di configurazione).
\item[\texttt{\ 4}] Operazioni di apertura e chiusura dei file.
\item[\texttt{\ 8}] Informazioni generali sui percorsi per i tipi di file
  cercati da \KPS. Utile per scoprire dove è stato definito un particolare
  percorso per un file.
\item[\texttt{16}] Elenco delle directory per ogni elemento di un percorso
  (rilevante solo per le ricerche su disco).
\item[\texttt{32}] Ricerche di file.
\item[\texttt{64}] Valori delle variabili.
\end{ttdescription}
Un valore di \texttt{-1} attiverà tutte le opzioni precedenti; nella
pratica, questo valore è di solito il più conveniente.

Analogamente, con il programma \cmdname{dvips}, impostando una
combinazione di opzioni di diagnostica, è possibile seguire in dettaglio
le posizioni da cui i file sono prelevati. In alternativa, quando un file
non viene trovato, la traccia dei messaggi mostra in quali directory il
programma ha cercato il file, così che si possa ottenere un'indicazione
sull'origine del problema.

In termini generali, dato che la maggior parte dei programmi invoca la
libreria \KPS{} internamente, è possibile selezionare il livello di
diagnostica usando la variabile d'ambiente \envname{KPATHSEA\_DEBUG} ed
impostandola ad una combinazione dei valori descritti nell'elenco di cui
sopra.

(Nota per gli utenti Windows: in questo sistema non è semplice redirigere
tutti i messaggi verso un file. Per scopi di diagnostica potete impostare
temporaneamente \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}).

Consideriamo, come esempio, un piccolo file sorgente di \LaTeX,
\file{hello-world.tex}, che contiene il seguente testo.
\begin{verbatim}
  \documentclass{article}
  \begin{document}
  Ciao Mondo!
  \end{document}
\end{verbatim}
Questo piccolo file usa solo il font \file{cmr10}, quindi vediamo come
\cmdname{dvips} prepara il file \PS{} (vogliamo usare la versione Type~1
dei font Computer Modern, da qui l'opzione \texttt{-Pcms}).
\begin{alltt}
> \Ucom{dvips -d4100 hello-world -Pcms -o}
\end{alltt}
In questo caso abbiamo combinato la classe di diagnostica 4 di
\cmdname{dvips} (percorsi dei font) con l'espansione degli elementi di
percorso di \KPS{} (vedi il manuale di riferimento di \cmdname{dvips}).
Il risultato (leggermente riorganizzato) appare in
figura~\ref{fig:dvipsdbga}.
\begin{figure*}[tp]
\centering
\input{examples/ex6a.tex}
\caption{Ricerca dei file di configurazione}\label{fig:dvipsdbga}

\bigskip

\input{examples/ex6b.tex}
\caption{Ricerca del file di prologo}\label{fig:dvipsdbgb}

\bigskip

\input{examples/ex6c.tex}
\caption{Ricerca del file del font}\label{fig:dvipsdbgc}
\end{figure*}

\cmdname{dvips} inizia individuando i propri file di lavoro. Per primo
viene trovato \file{texmf.cnf}, che fornisce le definizioni dei percorsi
di ricerca per gli altri file, quindi il file di database \file{ls-R} (per
ottimizzare la ricerca) e il file \file{aliases}, che rende possibile
dichiarare diversi nomi (ad esempio, una versione breve in formato
\acro{DOS} 8.3 e una più lunga e più naturale) per lo stesso file. Quindi
\cmdname{dvips} prosegue nel cercare il file di configurazione generico
\file{config.ps} prima di guardare al file personalizzato \file{.dvipsrc}
(che in questo caso \emph{non viene trovato}). Infine,
\cmdname{dvips} individua il file di configurazione \file{config.cms} per
il font \PS{} Computer Modern (questo passo è stato attivato con l'opzione
\texttt{-Pcms} data al comando \cmdname{dvips}). Questo file contiene
la lista delle mappature che definiscono la relazione tra il modo di
chiamare i font in \TeX{}, in \PS{} e sul disco.
\begin{alltt}
> \Ucom{more /usr/local/texmf/dvips/cms/config.cms}
   p +ams.map
   p +cms.map
   p +cmbkm.map
   p +amsbkm.map
\end{alltt}
\cmdname{dvips}, quindi, procede nel trovare tutti questi file, più il
generico file di mappatura \file{psfonts.map}, che è caricato sempre
(contiene le dichiarazioni per i font \PS{} usati comunemente; consultate
la parte finale della sezione~\ref{sec:examples-of-use} per ulteriori
dettagli sulla gestione delle mappature \PS).

A questo punto, \cmdname{dvips} si presenta all'utente:
\begin{alltt}
This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com)
\end{alltt}
\ifSingleColumn
Quindi prosegue nel cercare il file di prologo \file{texc.pro}:
\begin{alltt}\small
kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro
\end{alltt}
\else
Quindi prosegue nel cercare il file di prologo \file{texc.pro} (vedi la
figura~\ref{fig:dvipsdbgb}).
\fi

Dopo aver trovato il file in questione, \cmdname{dvips} mostra la data e
l'ora, ci informa che genererà il file \file{hello-world.ps}, poi
che avrà bisogno del file del font \file{cmr10} e che quest'ultimo è
dichiarato ``residente'' (non sono necessarie bitmap):
\begin{alltt}\small
TeX output 1998.02.26:1204' -> hello-world.ps
Defining font () cmr10 at 10.0pt
Font cmr10 <CMR10> is resident.
\end{alltt}
Adesso la ricerca prosegue con il file \file{cmr10.tfm}, che viene
trovato, quindi viene fatto riferimento ad alcuni ulteriori file di
prologo (non mostrati) e, infine, l'istanza Type~1 del font,
\file{cmr10.pfb}, è individuata ed inclusa del file in uscita (vedi
l'ultima linea).
\begin{alltt}\small
kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0,
  path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
       /var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0,
   ...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]
\end{alltt}

\subsection{Opzioni di esecuzione}

Un'altra funzionalità utile di \Webc{} è la sua possibilità di controllare
un certo numero di parametri relativi alla memoria (nello specifico la
dimensione degli array) tramite il file \file{texmf.cnf} letto da \KPS{}
durante l'esecuzione. Le impostazioni della memoria possono essere trovate
nella Parte 3 di quel file nella distribuzione \TL. Le più importanti
sono:

\begin{ttdescription}
\item[\texttt{main\_memory}]
  La quantità complessiva di memoria disponibile per \TeX, \MF{} e \MP.
  Dovete creare un nuovo file di formato per ogni impostazione differente.
  Per esempio, potreste generare una versione ``enorme'' di \TeX{} e
  chiamare il file di formato \texttt{hugetex.fmt}. Usando il modo normale
  di specificare il nome del programma usato da \KPS{}, l'opportuno valore
  della variabile \texttt{main\_memory} sarà letto da \file{texmf.cnf}.
\item[\texttt{extra\_mem\_bot}]
  Spazio aggiuntivo per le strutture dati ``grandi'' di \TeX: scatole,
  colle, interruzioni, ecc. Utile specialmente se usate \PiCTeX.
\item[\texttt{font\_mem\_size}]
  Numero di registri per le informazioni sui font disponibili in \TeX.
  Questo valore è più o meno pari alla dimensione totale di tutti i file
  \acro{TFM} che vengono letti.
\item[\texttt{hash\_extra}]
  Spazio aggiuntivo per la tabella con i nomi delle sequenze di
  controllo. Nella tabella principale possono essere memorizzate solo
  approssimativamente 10.000 sequenze di controllo; se lavorate su un
  libro di grandi dimensioni con numerosi riferimenti incrociati, questo
  valore potrebbe non essere sufficiente. Il valore predefinito per
  \texttt{hash\_extra} è \texttt{50000}.
\end{ttdescription}

\noindent Ovviamente questa funzionalità non è un sostituto per una vera
allocazione dinamica di memoria e array, ma dato che questi sono
estremamente difficili da implementare negli attuali sorgenti di \TeX,
questi parametri di esecuzione forniscono un compromesso pratico per
offrire  un minimo di flessibilità.


\begin{comment}
\section{Compilare su una nuova piattaforma Unix}

Se avete una piattaforma per la quale non sono inclusi gli eseguibili,
avrai bisogno di compilare \TeX{} e compagni. Non è difficile come sembra.
Quello di cui avete bisogno è interamente contenuto nella directory
\texttt{source} della distribuzione.

\subsection{Prerequisiti}

Avrete bisogno di almeno 100 megabyte di spazio su disco per compilare
tutto \TeX{} e i suoi programmi di supporto. Avrete anche bisogno di un
compilatore \acro{ANSI} C, un'utilità \cmdname{make}, un analizzatore
lessicale e un generatore di parser. Raccomandiamo la versione \GNU{} di
questi programmi (\cmdname{gcc}, \GNU \cmdname{make}, \cmdname{m4},
\cmdname{flex}, \cmdname{bison}). Potreste essere in grado di lavorare con
altri compilatori C e programmi \cmdname{make}, ma dovrete conoscere bene
i principi di compilazione di programmi Unix per superare i problemi.

Inoltre il comando \texttt{uname} deve restituire un valore significativo.


\subsection{Configurazione}

Per cominciare, eseguite una normale installazione di \TL{} sul vostro
disco (consultate la sezione~\ref{sec:install-disk} a
\p.\pageref{sec:install-disk}). Potreste voler saltare l'installazione di
tutti gli eseguibili pregenerati.

Quindi, prelevate i sorgenti dal file \texttt{tar} compresso presente
nella directory \dirname{source} sul vostro disco e spostatevi nella
directory dove lo avete posizionato.

Successivamente, eseguite \cmdname{configure} con una riga di comando come
questa:
\begin{alltt}
> \Ucom{sh configure -prefix=/usr/local/TeX}
\end{alltt}

La directory \optname{-prefix} è quella dove avete installato l'albero di
supporto; la strutturazione della directory sarà come segue (dove \$TEXDIR
sta per la directory che avete scelto):

\noindent
\begin{tabular}{>{\ttfamily}ll@{}}
  \dirname{$TEXDIR/share/texmf}          & albero principale con
                                         & font, \qquad macro, ecc\\
  \dirname{$TEXDIR/man}                  & pagine di manuale Unix\\
  \dirname{$TEXDIR/info}                 & manuali Info in stile \GNU\\
  \dirname{$TEXDIR/bin/$PLATFORM}        & eseguibili\\
\end{tabular}
%$

Se volete escludere il livello di directory \dirname{$PLATFORM}, ossia
volete piazzare gli eseguibili direttamente in \dirname{$TEXDIR/bin},
specificate l'opzione \verb|--disable-multiplatform| a
\cmdname{configure}.

Date uno sguardo ai messaggi restituiti da \verb|./configure --help| per
ulteriori opzioni che potete usare. Ad esempio, potete saltare la
compilazione di \OMEGA{} ed \eTeX.


\subsection{Eseguire \cmdname{make}}

Siate sicuri che né la variabile d'ambiente, né l'opzione
\texttt{noclobber} siano impostate. Quindi, eseguite il \cmdname{make}
principale in questo modo:
\begin{alltt}
> \Ucom{make world}
\end{alltt}
e rilassatevi\ldots

In alternativa, potete voler salvare in un registro tutti i messaggi
restituiti, come in:
\begin{alltt}
> \Ucom{sh -c "make world >world.log 2>\&1" \&}
\end{alltt}

Prima di credere che tutto sia andato bene, controllate il file di
registro per eventuali errori: \GNU \cmdname{make} usa sempre la stringa
\samp{***} quando un comando fallisce. Inoltre, controllate se tutti i
programmi sono stati compilati:

\begin{alltt}
> \Ucom{cd \var{TEXDIR}/bin/\var{archname}}
> \Ucom{ls | wc}
\end{alltt}
Il risultato dovrebbe essere oltre 200 (potete controllare il numero
esatto con il contenuto della directory \dirname{bin} della
distribuzione).

Se avete bisogno di privilegi speciali per \texttt{make install}, potete
separare l'esecuzione di \samp{make world} in due parti, come segue:
\begin{alltt}
> \Ucom{make all}
> \Ucom{su}
> \Ucom{make install strip}
\end{alltt}

Dopo aver installato i vostri nuovi eseguibili, dovreste eseguire le
normali procedure di post installazione fornite nella
sezione~\ref{sec:postinstall} (\p.\pageref{sec:postinstall}).

Inoltre, se desiderate rendere disponibili i vostri eseguibili ad altri,
contattateci. Saremo felici di inserirli nelle pagine web di \TL.
\end{comment}

\htmlanchor{ack}
\section{Ringraziamenti}

\TL{} è il risultato dello sforzo congiunto di praticamente tutti i gruppi
utenti \TeX.  Questa edizione di \TL{} è stata supervisionata da Karl
Berry. Gli altri contributori principali, passati e presenti, sono
elencati qui sotto.

\begin{itemize*}

\item I gruppi utenti \TeX{} Inglese, Tedesco, Olandese e Polacco
(\acro{TUG}, \acro{DANTE} e.V., \acro{NTG} e \acro{GUST},
rispettivamente), che forniscono la necessaria infrastruttura tecnica ed
amministrativa. Unitevi al gruppo utenti \TeX\ più vicino a voi
(consultate la pagina \url{http://tug.org/usergroups.html})!

\item Il team di \acro{CTAN}, in particolare Robin Fairbairns e Rainer
Sch\"opf, che distribuiscono le immagini di \TL{} e
forniscono l'infrastruttura comune per gli aggiornamenti dei pacchetti,
dalla quale dipende \TL.

\item Nelson Beebe per aver reso disponibili molte piattaforme agli
sviluppatori di \TL{} e per i suoi esaustivi collaudi.

\item John Bowman per aver fatto molti cambiamenti al suo programma
di grafica avanzata Asymptote affinché funzionasse in \TL.

\item Peter Breitenlohner ed il team di \eTeX\ per le stabili
fondamenta del \TeX{} del futuro e Peter in particolare per l'aiuto
stellare con l'uso degli strumenti \GNU\ autotool in \TL.

\item Jin-Hwan Cho e tutti i membri del team di DVIPDFM$x$ per il loro
eccellente driver e la velocità di risposta ai problemi di configurazione.

\item Thomas Esser, senza il cui meraviglioso pacchetto \teTeX{} \TL{} non
sarebbe mai esistito.

\item Michel Goossens, che è stato coautore della documentazione
originale.

\item Eitan Gurari, il cui \TeX4ht è stato usato per creare la versione
\HTML{} di questa documentazione e che ha lavorato instancabilmente per
migliorarlo con brevi preavvisi ogni anno. Eitan è scomparso
prematuramente nel giugno 2009 e dedichiamo questa documentazione alla sua
memoria.

\item Hans Hagen per la grande quantità di collaudi e per aver permesso al
suo formato \ConTeXt{} (\url{http://pragma-ade.com}) di lavorare
all'interno dell'infrastruttura di \TL.

\item \Thanh, Martin Schr\"oder e il team di pdf\TeX{}
(\url{http://pdftex.prg}) per i continui miglioramenti delle capacità di
\TeX.

\item Hartmut Henkel per i significativi contributi allo sviluppo di
pdf\TeX, Lua\TeX{} e molto ancora.

\item Taco Hoekwater per gli importanti forzi nel rinnovato sviluppo di
MetaPost e (Lua)\TeX{} (\url{http://luatex.org}) stesso, per aver
incorporato \ConTeXt{} in \TL, per aver dato a Kpathsea le funzionalità
multi-thread e per molto altro ancora.

\item Pawe{\l} Jackowski per l'installatore Windows \cmdname{tlpm} e
Tomasz {\L}uczak per \cmdname{tlpmgui}, usati nelle edizioni passate.

\item Akira Kakuto per aver fornito gli eseguibili per Windows a partire
dalla sua distribuzione \TeX{} giapponese \acro{W32TEX} e per molti altri
contributi allo sviluppo.

\item Jonathan Kew per aver sviluppato il notevole motore \XeTeX{} e per
aver investito tempo e fatica per integrarlo in \TL, così come per la
versione iniziale dell'installatore di Mac\TeX{} e per il programma
\TeX{}works, che raccomandiamo.

\item Dick Koch per mantenere Mac\TeX{} (\url{http://tug.org/mactex}) a
distanza molto ravvicinata da \TL{} e per il suo gran buon umore nel
farlo.

\item Reinhard Kotucha per i maggiori contributi all'infrastruttura e
all'installatore di \TL{} 2008, così come per gli sforzi di ricerca sotto
Windows, lo script \texttt{getnonfreefonts} e molto altro.

\item Anche Siep Kroonenberg per maggiori contributi all'infrastruttura e
all'installatore di \TL{} 2008, specialmente sotto Windows, e il grosso
del lavoro di aggiornamento di questo manuale per descrivere queste
funzionalità.

\item Mojca Miklavec, per il grande aiuto con \ConTeXt.

\item Heiko Oberdiek per il pacchetto \pkgname{epstopdf} e molti altri,
per aver compresso gli enormi file di dati di \pkgname{pst-geo} così che
potessimo includerli e, più di tutto, per il suo notevole lavoro su
\pkgname{hyperref}.

\item Petr Ok\v{s}ak che ha coordinato e controllato con grande attenzione
tutto il materiale ceco e slovacco.

\item Toshio Oshima per il suo visualizzatore per Windows
\cmdname{dviout}.

\item Manuel Pégourié-Gonnard per aver aiutato con gli aggiornamenti dei
pacchetti, con i miglioramenti alla documentazione e con lo sviluppo di
\cmdname{texdoc}.

\item Fabrice Popineau per l'originale supporto per Windows in \TL{} e per
il lavoro sulla documentazione in francese.

\item Norbert Preining, l'architetto principale dell'infrastruttura e
dell'installatore di \TL{} 2008, anche per aver coordinato la versione
Debian di \TL{} (insieme con Frank Küster), offrendo molti suggerimenti
lungo il cammino.

\item Sebastian Rahtz per aver originariamente creato \TL{} ed averne
curato la manutenzione per molti anni.

\item Phil Taylor per aver allestito gli scaricamenti tramite BitTorrent.

\item Tomasz Trzeciak per aiuti su vasta scala con Windows.

\item Vladimir Volovich per il sostanziale aiuto nel porting e in altre
questioni di mantenimento e specialmente per aver reso possibile includere
\cmdname{xindy}.

\item Staszek Wawrykiewicz, il collaudatore principale di tutta \TL{} e
coordinatore di molti dei maggiori contributori polacchi: font,
installazione sotto Windows e molto altro.

\item Olaf Weber per la sua paziente manutenzione a \Webc.

\item Gerben Wierda per aver creato e fatto manutenzione all'originale
supporto per \MacOSX{}.

\item Graham Williams, l'artefice del Catalogo \TeX{} dei pacchetti.

\end{itemize*}

Preparatori degli eseguibili:
Ettore Aldrovandi (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}),
Marc Baudoin (\pkgname{amd64-netbsd}, \pkgname{i386-netbsd}),
Karl Berry (\pkgname{i386-linux}, \pkgname{sparc-solaris}),
Alan Braslau (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}),
Peter Breitenlohner (\pkgname{x86\_64-linux}),
Ken Brown (\pkgname{i386-cygwin}),
Simon Dales (\pkgname{armhf-linux}),
Christian Mensing (\pkgname{mips-irix}),
Akira Kakuto (\pkgname{win32}),
Dick Koch (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}),
Nikola Le\v{c}i\'c (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}),
Mojca Miklavec (\pkgname{mipsel-linux}),
Norbert Preining (\pkgname{alpha-linux}),
Thomas Schmitz (\pkgname{powerpc-linux}),
Boris Veytsman (\pkgname{armel-linux}).
Per informazioni sul processo di compilazione di \TL, visitate
\url{http://tug.org/texlive/build.html}.

Attuali traduttori della documentazione:
Boris Veytsman (russo),
Jjgod Jiang, Jinsong Zhao, Yue Wang \& Helin Gai (cinese),
Klaus Höppner (tedesco),
Manuel Pégourié-Gonnard (francese),
Marco Pallante (italiano),
Nikola Le\v{c}ić (serbo),
Petr Sojka \& Jan Busa (ceco\slash slovacco),
Staszek Wawrykiewicz (polacco).  La pagina web della documentazione di
\TL{} è \url{http://tug.org/texlive/doc.html}.

Ovviamente il più importante ringraziamento deve andare a Donald Knuth,
innanzitutto per aver inventato \TeX{} e poi per averlo donato al mondo.



\section{Storia delle edizioni}
\label{sec:history}

\subsection{Passato}

La discussione iniziò nel tardo 1993 quando il gruppo utenti \TeX{}
olandese stava iniziando a lavorare al proprio \CD{} 4All\TeX{} per gli
utenti \acro{MS-DOS} e si sperava a quel tempo di rilasciare un solo
razionale \CD{} per tutti i sistemi. Questo era un obiettivo troppo
ambizioso per il tempo, ma non solo diede vita al \CD{} di grande successo
4All\TeX{}, ma spinse il gruppo di lavoro del \acro{TUG} Technical
Council verso una \emph{Struttura delle Directory \TeX{}} (\TDS{}, \TeX{}
Directory Structure, \url{http://tug.org/tds}), che specificò come creare
collezioni consistenti e gestibili di file di supporto a \TeX. Una bozza
completa della \TDS{} fu pubblicata nel numero di dicembre 1995 di
\textsl{TUGboat} e fu chiaro dalle fasi iniziali che un prodotto
desiderabile sarebbe stata una struttura di modello su \CD{}. La
distribuzione che hai ora è il risultato diretto delle decisioni del
gruppo di lavoro. Fu anche chiaro dal successo del \CD{} 4All\TeX{} che
gli utenti Unix avrebbero beneficiato da un simile semplice sistema e
questa è l'altro filone principale di \TL.

Per prima cosa ci mettemmo all'opera per realizare un nuovo \CD{} della
\TDS{} basato su Unix nell'autunno del 1995 e rapidamente identificammo il
\teTeX{} di Thomas Esser come l'impianto ideale, dato che già aveva il
supporto per più piattaforme ed era costruito con la portabilità tra
diversi file system in mente. Thomas acconsentì ad aiutarci e il lavoro
cominciò seriamente all'inizio del 1996. La prima edizione fu rilasciata
nel maggio 1996. All'inizio del 1996, Karl Berry completò una nuova
versione di Web2c, che includeva praticamente tutte le funzionalità che
Thomas Esser aveva aggiunto in \teTeX{} e decidemmo di basare la seconda
edizione del \CD{} sul \Webc{} standard, con l'inclusione dello script
\texttt{texconfig} proveniente da \teTeX. La terza edizione del \CD{} fu
basata su una nuova grande revisione di \Webc, la 7.2, realizzata da Olaf
Weber; allo stesso tempo, era stata fatta una nuova revisione di \teTeX{}
e \TL{} incluse quasi tutte le sue funzionalità. La quarta edizione seguì
lo stesso modello, usando una nuova versione di \teTeX{} e di \Webc{}
(7.3). Il sistema adesso includeva anche un completo allestimento per
Windows.

Per la quinta edizione (marzo 2000) furono riviste e controllate molte
parti del \CD, aggiornando centinaia di pacchetti. I dettagli sui
pacchetti furono memorizzati in file XML. Ma il cambiamento maggiore per
\TeX\ Live 5 fu che tutto il software non libero fu rimosso. Tutto in
\TL{} era pensato per essere compatibile con le Debian Free Software
Guidelines (linee guida Debian sul software libero,
\url{http://www.debian.org/intro/free}); abbiamo fatto del nostro meglio
per controllare le condizioni di licenza di tutti i pacchetti, ma
apprezzeremo tantissimo ogni segnalazione di errori.

La sesta edizione (luglio 2001) aveva aggiornato ancora più materiale. Il
cambiamento più grande fu un nuovo concetto di installazione: l'utente
poteva selezionare un insieme più esatto delle collezioni desiderate. Le
collezioni relative alle lingue furono completamente riorganizzate, così
che, selezionandone una qualunque, non solo venissero installati le macro, i
font, ecc., ma fosse anche preparato un opportuno file
\texttt{language.dat}.

La settima edizione del 2002 ebbe la notevole aggiunta del supporto per
\MacOSX{} e la solita miriade di aggiornamenti ad ogni genere di pacchetto
e programma. Un traguardo importante fu l'integrazione dei sorgenti con
quelli di \teTeX{} per correggere l'allontanamento l'uno dall'altro
avvenuto nelle versioni~5 e~6.

\subsubsection{2003}

Nel 2003, con il continuo flusso di aggiornamenti ed aggiunte, trovammo
che \TL{} era cresciuta così tanto che non poteva più essere contenuta in
un singolo \CD, quindi la dividemmo in tre diverse distribuzioni (consultate
la sezione~\ref{sec:tl-coll-dists}, \p.\pageref{sec:tl-coll-dists}). In
più:

\begin{itemize*}
\item Su richiesta del team di \LaTeX, cambiammo i comandi \cmdname{latex} e
      \cmdname{pdflatex} affinché usassero \eTeX{} (consultate la
      \p.\pageref{text:etex}).
\item I nuovi font Latin Modern furono inclusi (e sono raccomandati).
\item Il supporto per Alpha \acro{OSF} fu rimosso (il supporto per
      \acro{HPUX} era già stato rimosso in precedenza) dato che nessuno
      aveva (o voleva donare) l'hardware su cui compilare i nuovi
      eseguibili.
\item L'allestimento per Windows fu cambiato sostanzialmente; per la prima
      volta fu introdotto un ambiente integrato basato su XEmacs.
\item Importanti programmi aggiuntivi per Windows (Perl, Ghost\-script,
      Image\-Magic, Ispell) sono ora installati nelle directory \TL{}.
\item I file di mappatura per i font usati da \cmdname{dvips},
      \cmdname{dvipdfm} e \cmdname{pdftex} sono ora generati da un nuovo
      programma \cmdname{updmap} ed installati in
      \dirname{texmf/fonts/map}.
\item \TeX, \MF{} e \MP{} adesso mostrano la maggior parte dei caratteri
      in ingresso (dal numero 32 \acro{ASCII} in su) come sé stessi nei
      file che vengono generati (ad esempio, con \verb|\write|), nei file
      di registro e sul terminale, ossia \emph{non sono più} tradotti
      usando la notazione \verb|^^|. In \TL{}~7 questa traduzione
      dipendeva dalle impostazioni sulla lingua del sistema; adesso,
      queste impostazioni non influenzano il comportamento dei programmi
      \TeX. Se per qualche ragione avete bisogno della notazione \verb|^^|,
      rinominate il file \verb|texmf/web2c/cp8bit.tcx| (le edizioni future
      avranno un modo più pulito per controllare questa opzione).
\item Questa documentazione fu revisionata sostanzialmente.
\item Infine, dato che i numeri delle edizioni erano cresciuti in modo
      poco agevole, da adesso la versione è identificata semplicemente
      dall'anno: \TL{} 2003.
\end{itemize*}


\subsubsection{2004}

Il 2004 vide molti cambiamenti:

\begin{itemize}

\item Se avete font installati localmente che usano i propri file di
supporto \filename{.map} o (molto meno probabilmente) \filename{.enc},
potreste aver bisogno di muovere questi file.

I file \filename{.map} adesso sono cercati soltanto in sotto directory di
\dirname{fonts/map} (per ciascuna gerarchia \filename{texmf}, lungo il
percorso \envname{TEXFONTMAPS}). In modo simile, i file \filename{.enc}
sono cercati soltanto nelle sottodirectory di \dirname{font/enc}, lungo il
percorso \envname{ENCFONTS}. \cmdname{updmap} tenterà di avvisarvi su file
che possono provocare problemi.

Per i metodi per gestire questa ed altre informazioni, visitate la pagina
\url{http://tug.org/texlive/mapenc.html}.

\item \TK{} è stata espansa con l'aggiunta di un \CD{} installabile basato
su \MIKTEX, per coloro che preferiscono quell'implementazione a Web2C.
Consultate la sezione~\ref{sec:overview-tl} (\p.\pageref{sec:overview-tl}).

\item All'interno di \TL, la singola grande directory \dirname{texmf}
delle edizioni precedenti è stata sostituita da: \dirname{texmf},
\dirname{texmf-dist} e \dirname{texmf-doc}. Consultate la
sezione~\ref{sec:tld} (\p.\pageref{sec:tld} e il file \filename{README}
contenuto in ciascuna di esse.

\item Tutti file in ingresso relativi a \TeX{} sono adesso raccolti nella
sotto directory \dirname{tex} delle varie \dirname{texmf*}, piuttosto che
avere le diverse posizioni \dirname{tex}, \dirname{etex},
\dirname{pdftex}, \dirname{pdfetex}, ecc. Consultate
\CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions}
{\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}.

\item Gli script di supporto (pensati per non essere invocati dagli
utenti) sono adesso posizionati in una nuova sotto directory delle varie
\dirname{texmf*} chiamata \dirname{scripts} e possono essere cercati
usando \verb|kpsewhich -format=texmfscripts|. Se quindi avete dei programmi
che richiamano questi script, allora dovranno essere corretti. Consultate
\CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts}
{\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}.

\item Quasi tutti i formati lasciano la maggior parte dei caratteri
stampabili uguali a se stessi tramite il ``file di traduzione''
\filename{cp227.tcx}, piuttosto che trasformarli nella notazione
\verb|^^|. Nello specifico, i caratteri alle posizioni \acro{ASCII}
32--256, la tabulazione orizzontale, quella verticale e il ``form feed''
sono considerati stampabili e non vengono trasformati. Le eccezioni sono
plain \TeX{} (solo i caratteri 32--126 sono stampabili), \ConTeXt{}
(caratteri 0--255) e i formati legati ad \OMEGA. Questo comportamento
predefinito è quasi lo stesso che in \TL\,2003, ma è implementato in
maniera più pulita, con maggiori possibilità di personalizzazione.
Consultate \CDref{texmf-dist/doc/web2c/web2c.html\#TCX-files}
{\texttt{texmf-dist/doc/web2c/web2c.html\#TCX-files}} (ad ogni modo, con
l'input in formato Unicode, \TeX{} potrebbe stampare sequenze parziali di
caratteri quando viene mostrato il contesto degli errori dato che legge
l'input come una sequenza di byte, non di caratteri).

\item \textsf{pdfetex} è adesso il motore predefinito per tutti i formati
tranne (plain) \textsf{tex} stesso (ovviamente genera file \acro{DVI}
quando è eseguito come \textsf{latex}, ecc.). Questo significa, tra le
altre cose, che le caratteristiche di microtipografia di \textsf{pdftex}
sono disponibili in \LaTeX, \ConTeXt, ecc., così come le funzionalità di
\eTeX{} (\OnCD{texmf-dist/doc/etex/base/}).

Significa anche che è \emph{più importante che mai} usare il pacchetto
\pkgname{ifpdf} (funziona sia con plain \TeX, che con \LaTeX) o del codice
equivalente, perché verificare semplicemente se \cs{pdfoutput} o qualche
altra primitiva sono definiti non è un modo affidabile per determinare se
si sta generando un file \acro{PDF}. Per quest'anno abbiamo cercato di
rendere questo aspetto compatibile con le edizioni passate al meglio delle
nostra capacità, ma a partire dal prossimo anno \cs{pdfoutput} potrebbe
essere definito anche se il file generato è un \acro{DVI}.

\item pdf\TeX\ (\url{http://pdftex.org}) ha molte nuove funzionalità:

  \begin{itemize*}

  \item \cs{pdfmapfile} e \cs{pdfmapline} forniscono il supporto alle
  mappature dei font direttamente all'interno di un documento.

  \item L'espansione microtipografica dei font può essere usata più
  facilmente.\\
  \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html}

  \item Tutti i parametri che prima erano impostati tramite lo speciale
  file di configurazione \filename{pdftex.cfg} devono essere adesso
  impostati tramite primitive, tipicamente in \filename{pdftexconfig.tex};
  \filename{pdftex.cfg} non è più supportato. Ogni file \filename{.fmt}
  deve essere rigenerato quando \filename{pdftexconfig.tex} viene
  modificato.

  \item Per saperne di più, consultate il manuale di pdf\TeX{}:
  \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}.

  \end{itemize*}

\item La primitiva \cs{input} in \cmdname{tex} (e in \cmdname{mf} e
\cmdname{mpost}) adesso accetta nomi con spazi ed altri caratteri speciali
racchiusi tra doppi apici. Esempi tipici:
\begin{verbatim}
\input "file con spazi"   % plain
\input{"file con spazi"}  % latex
\end{verbatim}
Consultate il manuale di Web2C per saperne di più:
\OnCD{texmf-dist/doc/web2c}.

\item Il supporto per enc\TeX{} è ora incluso in Web2C e, di conseguenza,
in tutti i programmi \TeX, per mezzo dell'opzione \optname{-enc} \Dash\
\emph{solo quando i formati sono stati generati}. enc\TeX{} supporta la
ricodifica generale dell'input e dell'output, permettendo il supporto
completo per l'Unicode (in \acro{UTF}-8). Consultate
\OnCD{texmf-dist/doc/generic/enctex/} e
\url{http://www.olsak.net/enctex.html}.

\item Aleph, un nuovo motore che combina \eTeX\ ed \OMEGA, è disponibile.
Alcune informazioni sono disponibili in \OnCD{texmf-dist/doc/aleph/base} e
su \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. Il formato
basato su \LaTeX{} per Aleph è chiamato \textsf{lamed}.

\item L'ultimo aggiornamento di \LaTeX\ ha una nuova versione della
\acro{LPPL} \Dash\ ora una licenza ufficialmente approvata da Debian.
Per altri aggiornamenti assortiti, consultiate i file \filename{ltnews} in
\OnCD{texmf-dist/doc/latex/base}.

\item \cmdname{dvipng}, un nuovo programma per convertire i \acro{DVI} in
immagini \acro{PNG}, è incluso. Consultate
\url{http://www.ctan.org/pkg/dvipng}.

\item Abbiamo ridotto il pacchetto \pkgname{cbgreek} ad un insieme di font
di ``medie'' dimensioni, con il consenso e i suggerimenti dell'autore
(Claudio Beccari). I font omessi sono quelli invisibili, quelli profilati
e i trasparenti, che sono usati abbastanza raramente, mentre noi avevamo
bisogno di spazio. L'insieme completo è ovviamente disponibile su
\acro{CTAN} (\url{http://mirror.ctan.org/tex-archive/fonts/greek/cbfonts}).

\item \cmdname{oxdvi} è stato rimosso; usate semplicemente \cmdname{xdvi}.

\item I comandi (collegamenti) \cmdname{ini} e \cmdname{vir} per
\cmdname{tex}, \cmdname{mf} e \cmdname{mpost} non sono più creati, così
come \cmdname{initex}. Le funzionalità di \cmdname{ini} sono disponibili
oramai da anni tramite l'opzione su riga di comando \optname{-ini}.

\item Il supporto per la piattaforma \textsf{i386-openbsd} è stato
rimosso. Dato che è disponibile il pacchetto \pkgname{tetex} nel sistema
\acro{BSD} Port e gli eseguibili per \acro{GNU/}Linux e Free\acro{BSD}
erano disponibili, ci è sembrato che il tempo dedicato dai volontari
potesse essere meglio speso da altre parti.

\item Su \textsf{sparc-solaris} (almeno), potreste dover impostare la
variabile d'ambiente \envname{LD\_LIBRARY\_PATH} per eseguire i programmi
delle \pkgname{t1utils}. La ragione è che questi sono compilati con il C++
e non esiste una posizione comune per le librerie (questo problema non è
nuovo dell'edizione 2004, ma non era stato documentato in precedenza). In
modo simile, su \textsf{mips-irix}, sono richieste le librerie di runtime
del \acro{MIPS}pro 7.4.

\end{itemize}

\subsubsection{2005}

L'edizione del 2005 ha visto il solito enorme numero di aggiornamenti ai
pacchetti ed ai programmi. L'infrastruttura è rimasta sostanzialmente
invariata dal 2004, ma inevitabilmente ci sono stati comunque dei
cambiamenti:

\begin{itemize}

\item Sono stati introdotti i nuovi script \cmdname{texconfig-sys},
      \cmdname{updmap-sys} e \cmdname{fmtutil-sys} che modificano la
      configurazione nei percorsi di sistema. Gli script
      \cmdname{texconfig}, \cmdname{updmap} e \cmdname{fmtutil} ora
      modificano i file specifici per i singoli utenti, sotto
      \dirname{$HOME/.texlive2005}.

\item Sono state introdotte le corrispondenti nuove variabili
      \envname{TEXMFCONFIG} e \envname{TEXMFSYSCONFIG} per specificare i
      percorsi dove trovare i file di configurazione (per il singolo
      utente e per l'intero sistema, rispettivamente). Quindi, potreste
      dover spostare le versioni personali di \filename{fmtutil.cnf} e
      \filename{updmap.cfg} in questi posti; un'altra possibilità è quella
      di ridefinire \envname{TEXMFCONFIG} o \envname{TEXMFSYSCONFIG} in
      \filename{texmf.cfg}. In ogni caso la posizione reale di questi file
      e i valori di \envname{TEXMFCONFIG} e \envname{TEXMFSYSCONFIG}
      devono concordare. Consultate la sezione~\ref{sec:texmftrees},
      \p.\pageref{sec:texmftrees}.

\item L'anno precedente, abbiamo tenuto \verb|\pdfoutput| ed altre
      primitive non definite per l'output in \dvi, anche quando veniva
      usato il programma \cmdname{pdfetex}. Quest'anno, come promesso,
      abbiamo annullato quella misura di compatibilità. Per cui, se il
      vostro documento usa \verb|\ifx\pdfoutput\undefined| per verificare
      se viene generato un PDF, dovrà essere cambiato. Potete usare il
      pacchetto \pkgname{ifpdf.sty} (che funziona sia sotto plain \TeX{}
      che sotto \LaTeX) per fare ciò, oppure rubarne la logica.

\item L'anno precedente, abbiamo cambiato la maggior parte dei formati per
      stampare i caratteri (a 8 bit) come sé stessi (consultate la sezione
      precedente). Il nuovo file TCX \filename{empty.tcx} adesso offre un
      modo più semplice per ottenere l'originaria notazione \verb|^^| se
      la desiderate, come in:
\begin{verbatim}
latex --translate-file=empty.tcx vostrofile.tex
\end{verbatim}

\item È incluso il nuovo programma \cmdname{dvipdfmx} per la
      trasformazione dei DVI in PDF; si tratta di un aggiornamento
      attivamente mantenuto di \cmdname{dvipdfm} (che per ora è ancora
      disponibile, anche se non più raccomandato).

\item Sono inclusi i nuovi programmi \cmdname{pdfopen} e
      \cmdname{pdfclose} per consentire di ricaricare i file pdf nel
      lettore Adobe Acrobat Reader senza riavviare il programma
      (altri lettori pdf, in particolare \cmdname{xpdf}, \cmdname{gv} e
      \cmdname{gsview}, non hanno mai sofferto di questo problema).

\item Per consistenza, le variabili \envname{HOMETEXMF} e
      \envname{VARTEXMF} sono state rinominate \envname{TEXMFHOME} e
      \envname{TEXMFVAR}, rispettivamente. C'è anche \envname{TEXMFVAR},
      che è specifica per ogni utente. Consultate il primo punto
      dell'elenco.

\end{itemize}


\subsubsection{2006--2007}

Nell'edizione 2006--2007, la nuova più grande aggiunta a \TL{} è stato il
programma \XeTeX, disponibile con i comandi \texttt{xetex} e
\texttt{xelatex}; visitate il sito \url{http://scripts.sil.org/xetex}.

Anche MetaPost ha ricevuto un aggiornamento degno di nota, mentre altri ne
sono stati pianificati per il futuro
(\url{http://tug.org/metapost/articles}), così come per pdf\TeX{}
(\url{http://tug.org/applications/pdftex}).

I \filename{.fmt} di \TeX{} (formati ad alta velocità) e i file simili per
MetaPost e \MF{} adesso sono posizionati in sotto directory di
\dirname{texmf/web2c}, invece che nella directory stessa (sebbene la
directory sia ancora visitata durante la ricerca, a beneficio dei
\filename{.fmt} esisitenti). Le sotto directory sono chiamate in base al
``motore'' usato, come \filename{tex} o \filename{pdftex} o
\filename{xetex}. Questo cambiamento dovrebbe essere invisibile nell'uso
normale.

Il programma (plain) \texttt{tex} non legge più le prime linee
identificate da \texttt{\%\&} per determinare quale formato adoperare; è
il puro \TeX{} Knuthiano (\LaTeX{} e tutto il resto leggono ancora le
linee \texttt{\%\&}).

Ovviamente anche quest'anno ha visto (i soliti) centinaia di altri
aggiornamenti ai pacchetti ed ai programmi. Come sempre, visitate
\acro{CTAN} (\url{http://mirror.ctan.org}) per tutti gli aggiornamenti.

Internamente, i sorgenti sono ora memorizzati tramite Subversion, con
un'interfaccia web standard per visitarli; il collegamento è sulla nostra
pagina home. Sebbene invisibile nella distribuzione finale, ci aspettiamo
che questo fornisca un fondamento stabile per lo sviluppo negli anni a
venire.

Infine, nel maggio 2006 Thomas Esser ha annunciato che non avrebbe più
aggiornato te\TeX{} (\url{http://tug.org/tetex}). Come risultato, c'è
stata una nascita di interesse verso \TL, specialmente tra i distributori
di \GNU/Linux (c'è un nuovo schema di installazione in \TL{} chiamato
\texttt{tetex}, che fornisce un equivalente approssimativo).  Speriamo che
alla fine questo si traduca in miglioramenti per tutti all'ambiente \TeX.

\subsubsection{2008}

Nell'edizione del 2008, l'intera infrastruttura di \TL{} è stata
riprogettata e reimplementata. Le informazioni complete su
un'installazione sono adesso memorizzate in un file di testo puro
\filename{tlpkg/texlive.tlpdb}.

Tra le altre cose, ciò rende finalmente possibile aggiornare
un'installazione \TL{} tramite Internet dopo l'installazione iniziale, una
caratteristica che Mik\TeX{} ha offerto per anni. Ci attendiamo di
aggiornare regolarmente i nuovi pacchetti così come diventano disponibili
su \CTAN.

Il nuovo motore Lua\TeX{} (\url{http://luatex.org}) è ora incluso;
accanto ad un nuovo livello di flessibilità nella composizione
tipografica, questo fornisce un eccellente linguaggio di scripting da
usare sia dentro che fuori i documenti \TeX.

Il supporto tra Windows e le piattaforme basate su Unix è ora molto più
uniforme. In particolare, la maggior parte degli script Perl e Lua sono
ora disponibili sotto Windows tramite l'interprete Perl distribuito
internamente con \TL.

Il nuovo script \cmdname{tlmgr} (sezione~\ref{sec:tlmgr}) è l'interfaccia
generale per amministrare \TL{} dopo l'installazione iniziale. Esso
gestice l'aggiornamento dei pacchetti e la conseguente rigenerazione dei
formati, dei file di mappatura e dei file delle lingue, incluse
opzionalmente le aggiunte locali.

Con l'avvento di \cmdname{tlmgr}, è ora disabilitata l'azione di modifica
dei file di configurazione dei formati e delle sillabazioni operata da
\cmdname{texconfig}.

Il programma per la creazione degli indici \cmdname{xindy}
(\url{http://xindy.sourceforge.net/}) è ora incluso nella maggior parte
delle piattaforme.

Lo strumento \cmdname{kpsewhich} può ora riportare tutte le corrispondenze
per un dato file (opzione \optname{--all}) e limitarle ad una data sotto
directory (opzione \optname{--subdir}).

Il programma \cmdname{dvipdfmx} adesso include la funzionalità di estrarre
le informazioni sulla bounding box attraverso il comando
\cmdname{extractbb}; si tratta di una delle ultime caratteristiche che
erano fornite da \cmdname{dvipdfm} ma non ancora incluse in
\cmdname{dvipdfmx}.

Gli alias dei font \filename{Times-Roman}, \filename{Helvetica} e così via
sono stati rimossi. Diversi pacchetti si aspettavano che funzionassero in
modo diverso (in particolare, che avessero codifiche differenti) e non
c'era un buon modo per risolverlo.

Il formato \pkgname{platex} è stato rimosso per risolvere un conflitto di
nome con un completamente diverso \pkgname{platex} giapponese; il
pacchetto \pkgname{polski} contiene ora il principale supporto per la
lingua polacca.

Internamente, i file con le riserve di stringhe di \web{} sono compilati
dentro gli eseguibili, per semplificare gli aggiornamenti.

Infine, in questa edizione sono stati inclusi i cambiamenti fatti da
Donald Knuth nella sua ``messa a punto di \TeX\ del 2008''. Consultate
\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}.


\subsubsection{2009}

Nell'edizione 2009, il formato di output predefinito di Lua\AllTeX\ è ora
il PDF per avvalersi del supporto OpenType di Lua\TeX, ecc. I nuovi
eseguibili chiamati \code{dviluatex} e \code{dvilualatex} eseguono
Lua\TeX{} con l'output in DVI. La pagina web di Lua\TeX{} è
\url{http://luatex.org}.

Il motore Omega e il formato Lambda originari sono stati rimossi dopo
averne discusso con gli autori di Omega. Restano le versioni aggiornate
Aleph e Lamed, così come le utilità di Omega.

È stata inclusa una nuova versione dei font AMS \TypeI, compreso il
Computer Modern: sono stati integrati alcuni cambiamenti nelle forme
fatti da Knuth nei sorgenti Metafont nel corso degli anni e
l'\emph{hinting} è stato aggiornato. I font Euler sono stati ridisegnati a
fondo da Hermann Zapf (visitate
\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). In ogni
caso, le metriche non hanno subito modifiche. La pagina dei font AMS è
\url{http://www.ams.org/tex/amsfonts.html}.

Il nuovo editor GUI \TeX{}works è incluso per Windows così come in
Mac\TeX. Per le altre piattaforme e per ulteriori informazioni, consultate
il sito di \TeX{}works, \url{http://tug.org/texworks}. Si tratta di un
programma multi piattaforma ispirato all'editor TeXShop per \MacOSX\ e che
ha come obiettivo la facilità d'uso.

Il programma per la grafica Asymptote è stato incluso per diverse
piattaforme. Esso implementa un linguaggio descrittivo per la grafica
basato su testo vagamente simile a MetaPost, ma con un supporto avanzato
al 3D ed altre caratteristiche. Il suo sito web è
\url{http://asymptote.sourceforge.net}.

Il programma \code{dvipdfm} è stato sostituito da \code{dvipdfmx}, che
opera in una speciale modalità di compatibilità quando viene invocato con
il primo nome. \code{dvipdfmx} include il supporto per \acro{CJK}
(Chinese-Japanese-Korean, Cinese-Giapponese-Coreano) ed ha accumulato
molte correzione negli anni trascorsi dall'ultima versione di
\code{dvipdfm}. Il sito di DVIPDFMx è
\url{http://project.ktug.or.kr/dvipdfmx}.

Gli eseguibili per le piattaforme \pkgname{cygwin} e
\pkgname{i386-netbsd} sono ora inclusi, mentre siamo stati avvisati che
gli utenti di Open\acro{BSD} ottengono \TeX\ tramite il loro sistema di
pacchetti, e in più c'erano difficoltà nel produrre eseguibili che
avessero una qualche possibilità di funzionare su più di una versione.

Una varietà di cambiamenti più piccoli: adesso usiamo la compressione
\pkgname{xz}, il rimpiazzo stabile per \pkgname{lzma}
(\url{http://tukaani.org/xz/}); il carattere |$| è ammesso nei nomi dei
file quando non introduce il nome di variabile noto; la libreria Kpathsea
è ora multi-thread (lo sfrutta MetaPost); l'intera compilazione di
\TL{} è ora basata su Automake.%stopzone

Nota finale sul passato: tutte le edizioni di \TL{}, assieme al materiale
ausiliario come le etichette dei \CD, sono disponibili all'indirizzo
\url{ftp://tug.org/historic/systems/texlive}.


\subsection{2010}
\label{sec:2010news} % keep with 2010

Nell'edizione 2010, la versione predefinita per l'output PDF è ora la 1.5,
che consente una maggiore compressione. Questo si applica a tutti i motori
\TeX\ quando vengono usati per produrre PDF e a \code{dvipdfmx}. Caricando
il pacchetto \LaTeX\ \pkgname{pdf14} o impostando |\pdfminorversion=4|, si
si ritorna al PDF~1.4.

pdf\AllTeX\ ora converte \emph{automaticamente} un file Encapsulated
Postscript (EPS) richiesto in PDF tramite il pacchetto \pkgname{epstopdf}
quando e se viene caricato il file di configurazione per \LaTeX\
\code{graphics.cfg} e viene richiesto l'output in PDF. Le opzioni
predefinite sono tali da eliminare ogni possibilità che siano sovrascritti i
file PDF creati a mano, ma potete del tutto evitare che \code{epstopdf} sia
caricato mettendo |\newcommand{\DoNotLoadEpstopdf}{}| (o |\def...|) prima
della dichiarazione \cs{documentclass}. Non viene caricato neppure se viene
usato il pacchetto \pkgname{pst-pdf}. Per maggiori dettagli, consultate la
documentazione del pacchetto \pkgname{epstopdf}
(\url{http://ctan.org/pkg/epstopdf-pkg}).

Un cambiamento correlato è che adesso è abilitata per default l'esecuzione
di alcuni comandi esterni a \TeX, tramite la funzionalità \cs{write18}.
Questi comandi sono \code{repstopdf}, \code{makeindex}, \code{kpsewhich},
\code{bibtex} e \code{bibtex8}; la lista è definita in \code{texmf.cnf}. Gli
ambienti che devono disabilitare tutti questi comandi esterni possono
deselezionare questa opzione nell'installatore (consultate la
sezione~\ref{sec:options}), oppure rimpiazzare il valore dopo
l'installazione eseguendo |tlmgr conf texmf shell_escape 0|.

Ancora un altro cambiamento correlato è che ora \BibTeX\ e Makeindex si
rifiutano di scrivere il proprio output in una directory arbitraria (come lo
stesso \TeX) per default. In questo modo diventa ora possibile consentirne
l'uso tramite lo stringente \cs{write18}. Per cambiare questo, può essere
impostata la variabile d'ambiente \envname{TEXMFOUTPUT} oppure può essere
modificata l'opzione |openout_any|.

\XeTeX\ ora supporta la crenatura al margine lungo le stesse righe come
pdf\TeX\ (l'espansione dei caratteri non è supportata al momento).

Per default, \prog{tlmgr} ora salva un backup di ciascun pacchetto
aggiornato (\code{tlmgr option autobackup 1}), così che gli aggiornamenti
con pacchetti danneggiati possano essere facilmente ripristinati con
\code{tlmgr restore}. Se eseguite aggiornamenti successivi all'installazione
e non avete spazio sul disco per i backup, eseguite \code{tlmgr option
autobackup 0}.

Nuovi programmi inclusi: il motore p\TeX\ e le utilità correlate per la
composizione in giapponese; il programma \BibTeX{}U per un \BibTeX\
compatibile con Unicode; l'utilità \prog{chktex}
(\url{http://baruch.ev-en.org/proj/chktex}) per controllare i documenti
\AllTeX; il traduttore da DVI a SVG \prog{dvisvgm}
(\url{http://dvisvgm.sourceforge.net}).

Ora sono inclusi gli eseguibili per queste nuove piattaforme:
\code{amd64-freebsd}, \code{amd64-kfreebsd}, \code{i386-freebsd},
\code{i386-kfreebsd}, \code{x86\_64-darwin}, \code{x86\_64-solaris}.

Un cambiamento in \TL{} 2009 che ci siamo dimenticati di notare: numerosi
eseguibili legati a \TeX4ht (\url{http://tug.org/tex4ht}) sono stati rimossi
dalle directory degli eseguibili. Il programma generico \code{mk4ht} può
essere usato per eseguire una qualunque tra le varie combinazioni di
\code{tex4ht}.

Infine, la versione di \TL{} sul \DVD\ TK\ non può più essere eseguita
``live'' (curiosamente). Un singolo \DVD\ non ha più abbastanza spazio. Un
effetto collaterale benefico è che l'installazione da un \DVD\ fisico è ora
molto più rapida.

\subsubsection{2011}

Gli eseguibili per \MacOSX\ (\code{universal-darwin} e \code{x86\_64-darwin}
ora funzionano solo su Leopard e succesivi; Panther e Tiger non sono più
supportati.

Il programma \code{biber} per l'elaborazione delle bibliografie è incluso
per le piattaforme comuni. Il suo sviluppo è strettamente accoppiato con il
pacchetto \code{biblatex}, che reimplementa completamente l'infrastruttura
bibliografica fornita da LaTeX.

Il programma MetaPost (\code{mpost}) non crea né usa più i file \code{.mem}.
I file necessari, come \code{plain.mp}, sono semplicemente letti ad ogni
esecuzione. Questo è correlato al supporto di MetaPost come libreria, che è
un'altra modifica significativa non visibile dall'utente.

L'implementazione di \code{updmap} in Perl, precedentemente usata solo su
Windows, è stata rimodernata ed è ora usata su tutte le piattaforme. Non
dovrebbe esserci alcun cambiamento visibile dall'utente, tranne che ora gira
molto più velocemente.

I programmi \cmdname{initex} e \cmdname{inimf} sono stati ripristinati
(ma non le altre varianti \cmdname{ini*}).

% 
\subsubsection{2013}

\code{tlmgr} supporta gli aggiornamenti da archivi di rete multipli. La
sezione sugli archivi multipli nel messaggio di \code{tlmgr help} ha
ulteriori informazioni.

Il parametro \cs{XeTeXdashbreakstate} ha il valore predefinito di~1 sia per
\code{xetex} che per \code{xelatex}. Questo permette l'interruzione delle
linee dopo i trattini lunghi e medi, che è stato sempre il comportamento di
\TeX, \LaTeX, Lua\TeX, ecc. I documenti \XeTeX\ esistenti che devono
mantenere la perfetta compatibilità con le interruzioni di linee, devono
impostare \cs{XeTeXdashbreakstate} a~0 esplicitamente.

I file di output generati, tra gli altri, da \code{pdftex} e \code{dvips}
possono ora superare i 2gb.

I 35 font standard di PostScript sono ora inclusi nell'output di \code{dvips}
per default, dato che ne esistono così tante versioni differenti.

Nel modo di esecuzione ristretto \cs{write18}, impostato per default,
\code{mpost} è diventato un programma ammissibile.

Un file \code{texmf.cnf} viene trovato anche in \filename{../texmf-local},
se esiste (ad esempio, \filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf}).

Lo script \code{updmap} legge un file \code{updmap.cfg} in ciascuna directory
invece di una configurazione globale. Questo cambiamento dovrebbe essere invisibile,
a meno che non abbiate modificato il vostro updmap.cfg direttamente. Il messaggio
mostrato da \verb|updmap --help| dà ulteriori informazioni.

Piattaforme: aggiunte \pkgname{armel-linux} e \pkgname{mipsel-linux};
\pkgname{sparc-linux} e \pkgname{i386-netbsd} non fanno più parte della
distribuzione principale.

\htmlanchor{news}
\subsection{Presente}
\label{sec:tlcurrent}

Struttura della distribuzione: la directory \code{texmf/} è stata fusa
all'interno di \code{texmf-dist}, per semplicità. Entrambe le variabili
di Kpathsea \code{TEXMFMAIN} e \code{TEXMFDIST} adesso puntano a
\code{texmf-dist}.

Molte piccole collezioni di lingue sono state fuse insieme, per
semplificare l'instllazione.

\MP: sono stati aggiunti il supporto nativo per l'output in PNG e per
i numeri in virgola mobile (double IEEE).

Lua\TeX: aggiornato a Lua 5.2 e include una nuova libreria
(\code{pdfscanner}) per processare il contenuto di pagine PDF esterne,
tra le altre cose (visitate il suo sito).

\XeTeX\ (di nuovo, visitate il sito per altri dettagli):
\begin{itemize}
\item La libreria HarfBuzz è usata per il layout dei font al posto di
ICU (ICU è ancora usata per la codifica dell'input, la bidirezionalità
e interruzione di riga Unicode opzionale).
\item Graphite2 e HarfBuzz sono usate al posto di SilGraphite per il
layout di Graphite.
\item Sul Mac, Core Text è usato al posto del deprecato ATSUI.
\item Preferisce i font TrueType/OpenType ai Type1 quando i nomi sono
gli stessi.
\item Corregge le occasionali discrepanze tra \XeTeX\ e \code{xdvipdfmx}
nella ricerca dei font.
\item Supporta i cut-in per i font OpenType Math.
\end{itemize}

\cmdname{xdvi}: ora usa FreeType al posto di \code{t1lib} per il
rendering.

\pkgname{microtype.sty}: un qualche supporto per \XeTeX\ (protrusione)
e Lua\TeX\ (protrusione, espansione dei font, tracking), tra i vari
miglioramenti.

\cmdname{tlmgr}: nuova azione di \emph{affissione} (\code{pinning}) per
facilitare la configurazione di repository multipli; la relativa sezione
in \verb|tlmgr --help|, visibile online su
\url{http://tug.org/texlive/doc/tlmgr.html#MULTIPLE-REPOSITORIES},
ne parla più approfonditamente.

Piattaforme: \pkgname{armhf-linux}, \pkgname{mips-irix},
\pkgname{i386-netbsd} e \pkgname{amd64-netbsd} aggiunte o resuscitate;
\pkgname{powerpc-aix} rimossa. Il supporto per alcune altre piattaforme
è disponibile come eseguibili personalizzati
(\url{http://tug.org/texlive/custom-bin.html}). Inoltre, alcune
piattaforme sono omesse dal \DVD\ (semplicemente per risparmiare spazio),
ma possono essere installate normalmente via rete.

\subsection{Futuro}
%\subsection{Future}

\emph{\TL{} non è perfetto!} (e mai lo sarà). Intendiamo di continuare a
fornire nuove versione e vorremmo fornire ulteriore materiale d'aiuto, più
programmi di utilità, più programmi di installazione e (ovviamente) un
ancor più migliorato e meglio controllato insieme di macro e font. Questo
lavoro è fatto completamente da volontari sovraccaricati nel loro
limitato tempo libero e quindi c'è sempre molto da fare. Visita il sito
\url{http://tug.org/texlive/contribute.html}.

Potete inviare correzioni, suggerimenti e offerte d'aiuto a:
\begin{quote}
\email{tex-live@tug.org} \\
\url{http://tug.org/texlive}
\end{quote}

\medskip
\noindent \textsl{Buon lavoro con \TeX!}

\end{document}
