LaTeX

software di scrittura testi
Versione del 17 giu 2006 alle 19:24 di Alleborgo (discussione | contributi) (disambiguazione Microsoft Windows)
Disambiguazione – Se stai cercando il materiale plastico, vedi poliuretano.

LATEX, scritto anche LaTex è un sistema per la preparazione di testi basato sul programma di composizione tipografica TEX.

LaTeX logo

Fornisce funzioni di desktop publishing programmabili e mezzi per l'automazione della maggior parte della composizione tipografica, inclusa la numerazione, i riferimenti incrociati, tabelle e figure, organizzazione delle pagine, bibliografie e molto altro. LATEX venne creato nel 1985 da Leslie Lamport ed è divenuto il principale metodo di utilizzo di TEX — poche persone usano ancora direttamente TEX base per la redazione di documenti. La versione attuale è denominata LATEX2ε.

LATEX ha trovato un'ampia diffusione nel mondo accademico, grazie all'ottima gestione dell'impaginazione delle formule matematiche (anche il motore di Wikipedia utilizza LATEX per il rendering delle formule) ed alla gestione dei riferimenti bibliografici, resa possibile dal progetto gemello BibTeX.

È distribuito con una licenza di software libero e questo lo ha reso disponibile per praticamente qualsiasi architettura: ne esistono pertanto versioni funzionanti per tutti i sistemi operativi, tra cui anche Microsoft Windows e MacOS X.

Al contrario di editor (meglio parlare di word processors) più conosciuti quali ad esempio Microsoft Word, WordPerfect, Works, StarOffice, che si basano sull'editoria WYSIWYG (What You See Is What You Get), con LATEX si scrive un testo quale lo si pensa. Scrivendo il codice sorgente (o più semplicemente, sorgente) sullo schermo, il testo del documento risulta frammisto ad istruzioni: per ottenere l'output finale è necessario che tale sorgente sia poi compilato. Questo approccio viene anche definito WYSIWYM (What You See Is What You Mean): con LATEX cioè lo scrittore è anche tipografo e deve occuparsi, all'inizio, soltanto delle convenzioni da usare. Fissate queste si concentra sul contenuto del testo, non curando invece ad esempio l'impaginazione, l'indice (generale e analitico), l'inserimento delle figure, delle tabelle, che sarà invece semi-automaticamente curata da LATEX.

Il file prodotto da LATEX era, in passato, esclusivamente in formato DVI. Grazie al contributo degli sviluppatori della comunità open source ora si può ottenere un file nel più comune e diffuso standard Portable Document Format (PDF) ed anche in HTML: in quest'ultimo caso però le eventuali formule matematiche presenti verranno incluse in formato grafico (se non in MathML), come se fossero immagini. È anche possibile, partendo da un file compilato con LATEX, ottenere un qualsiasi altro formato, anche .doc di Microsoft Word.

L'uso di LATEX non è semplice e richiede una certa pratica, ma i documenti che si ottengono sono di estrema professionalità.

I documenti redatti con LATEX possono essere scritti utilizzando diverse classi (che sono formati standard per alcuni tipi di documento): book, article, letter, report, slides. Ognuna di queste classi ha (alcuni) comandi propri che sono incompatibili con le altre: ad esempio, l'istruzione \chapter{...} è propria della classe book ed è incompatibile con article e letter. Alcune altre istruzioni sono invece d'ordine generale e possono essere usate senza problemi in ogni classe (ad esempio, istruzioni di cambiamento di carattere come \emph{...}).

LATEX lavora per ambienti e comandi; essi sono definiti sia dalle classi standard sia dai vari packages (moduli aggiuntivi che è possibile caricare on the fly) che si trovano sui siti dedicati che compongono la Comprehensive TEX Archive Network (CTAN). Il sito CTAN più conosciuto in ambito europeo è sicuramente dante e.V..

Una digressione su LATEX e il suo macrolinguaggio non ha senso in queste pagine, perché si tratta di un linguaggio di programmazione che richiede una certa pratica, impossibile da acquisire in poco tempo: per approfondimenti rinvio al manuale LATEX che è indicato più sotto.

Esempio

Soltanto per dare un'idea di com'è strutturato un documento in LATEX, qui sotto è un esempio di sorgente per LATEX scritto per ottenere un articolo standard:

%Inizio Preambolo

% Prepara un documento per carta A4, con un bel font grande
\documentclass[a4paper,12pt]{article}

\usepackage[italian]{babel} % Consente l'uso caratteri accentati italiani
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\frenchspacing % forza LaTeX ad una spaziatura fra parole non inglese

\title{\LaTeX per esempi} % \LaTeX è una macro che compone il logo "LaTeX"
% I commenti (introdotti da %) vengono ignorati

\author{Mario Rossi}
\date{8 aprile 2002}

%Fine Preambolo

\begin{document}
\maketitle % Produce effettivamente il titolo a partire dai comandi \title,
% \author e \date

\begin{abstract} % Questo è l'inizio dell'ambiente "abstract".
% L'ambiente abstract è fatto per contenere un riassunto del contenuto.
Breve dimostrazione dell'uso di \LaTeX.
\end{abstract} % Qui termina l'ambiente

\tableofcontents % Prepara l'indice generale

\section{Testo normale}
È possibile scrivere il testo dell'articolo normalmente, ed
\emph{enfatizzare} alcune parti del discorso. Una riga vuota nel testo indica
la fine di un paragrafo.

Eppure ero sicuro di aver aggiunto altre frasi\dots

\section{Formule}
La forza di \LaTeX sono però le formule, sia in linea (ad esempio \(y=x^2\))
che messe in bella mostra in un'area propria:
\[y=\sqrt{x+y}\]

\section{Poesia}
L'ambiente ``verse'' è usato per comporre tipograficamente le poesie:
\begin{verse}
La vispa Teresa avea tra l'erbetta\\ % la doppia barra inversa forza l'a capo
al volo sorpresa gentil farfalletta.
\end{verse}

\end{document}

 
Il documento generato dal file di input dell'esempio avrà questo aspetto.

Come si nota il documento si compone di due parti principali: il preambolo ed il corpo del documento vero e proprio. Nel preambolo sono contenute le istruzioni principali che verranno processate ma non produrranno alcun output specifico: sono le istruzioni relative per esempio alla lingua, al formato della pagina, al numero di colonne. Segue il documento vero e proprio che inizia con l'ambiente document, compreso fra le due istruzioni \begin{document} e \end{document}.

Il segno % introduce un commento, cioè una nota per il redattore che non viene stampata nel documento generato. I commenti possono iniziare in qualunque punto del documento, e terminano al primo carattere di "a capo" incontrato.

Il file sorgente, pur essendo un file di testo puro, è per convenzione salvato con il suffisso .tex (oppure, più raramente, .ltx), ottenendo cioè un file del tipo miodocumento.tex.

Una volta scritto il documento, questo va processato con il comando latex miodocumento.tex. Oltre a vari altri files quali .aux, .log, .idx, si genera un file in dvi. Questo può essere letto direttamente tramite xdvi (oppure Yap o Windvi sotto Windows).

Se si desidera invece ottenere un file PostScript, bisogna ulteriormente impartire il comando dvips -t -o miodocumento.ps miodocumento.dvi e si ottiene un file PostScript (è necessario aver installato un interprete PostScript quale GhostScript). Per vedere il file: gv miodocumento.ps. L'opzione -t è necessaria se il documento contiene pagine in formato landscape.

Per ottenere un file in formato PDF bisogna processare il file con il comando pdflatex miodocumento.tex. Se nel file sono presenti delle figure, esse devono, per essere processate correttamente con PDFLATEX, essere salvate con il suffisso .png, .jpg oppure .pdf e non con il suffisso .eps o .ps come è necessario per ottenere un file in PostScript.

Qualora siano stati introdotti errori (nella scrittura delle sole istruzioni), il processo di compilazione si blocca e restituisce la riga in cui compare l'errore: può avvenire, come nella programmazione, che l'errore non si trovi in quella riga ma si ripercuota su quella riga, e così bisogna cercarlo.

Questo è un esempio di scrittura matematica. Per ottenere questa espressione:

 

occorre scrivere:

\[
\int_0^\infty f(x)\,\mathrm{d}x \approx \sum_{i=1}^n w_i \mathrm{e}^{x_i} f(x_i)
\]

In rete esiste un'ampissima documentazione, soprattutto in lingua inglese.

LATEX è inoltre lo standard nella scrittura di spartiti musicali, grazie a macrolinguaggi basati su LATEX quali MusiXTEX.

La licenza di distribuzione

LATEX è software libero. È coperto dalla LaTeX Project Public License (LPPL), una licenza incompatibile con la GNU General Public License, poiché richiede che le versioni modificate usino un nome di file modificato; questo è stato fatto per far sì che i file dipendenti da altri producano non vengano danneggiati da modifiche inattese. Una nuova versione della licenza LPPL compatibile con la GPL è in preparazione. La LPPL è conforme alle linee guida per il free software di Debian dalla versione 1.3 in avanti.

Voci correlate

Collegamenti esterni

  • Appunti LATEX, un manuale LATEX in italiano di Heinrich Fleck. Il manuale alla prima edizione è stato licenziato il 5 maggio 2005. Il testo nonostante le non piccole dimensioni (2.5 Mb zippati in formato pdf) è ancora in versione provvisoria.
  • Una ricca documentazione su LATEX in italiano si trova sul sito ufficiale degli utilizzatori italiani di TEX, nonché TEX User Group italiano. Di particolare interesse su quel sito la sezione 'downloads' dove è possibile scaricare molti manuali ed approfondimenti. Disponibili altresì numerosi pacchetti ed utility.
  • Anche il Gruppo Italiano LATEX Documentazione e Altro ha tradotto alcuni manuali, tra i quali l'utilissima guida introduttiva Una (mica tanto) breve introduzione a LATEX2&epsilon.