LaTeX

software di scrittura testi
Versione del 5 mar 2006 alle 15:09 di Syntaxerrormmm (discussione | contributi) (Cambiata matematica: da $$ a \[)

LaTeX (pronuncia "latek", in quanto X sta per la Χ greca) è un linguaggio avanzato di editoria elettronica composto da un insieme di macro-comandi che facilitano la scrittura di documenti elaborabili con TeX. TeX invece è il programma di formattazione vero e proprio. TeX nacque nel 1978 per opera di Donald Knuth della Stanford University. LaTeX venne creato nel 1985 da Leslie Lamport.

LaTeX logo
Disambiguazione – Se stai cercando il materiale plastico, vedi poliuretano.

Il linguaggio ha trovato un'ampia diffusione nei sistemi operativi di tipo UNIX. Essendo però free software, è disponibile per qualsiasi architettura: ne esistono pertanto versioni funzionanti per tutti i sistemi operativi, tra cui anche Windows e MacOS X.

LaTeX è nato soprattutto per l'editoria scientifica: uno dei suoi punti di forza sono le formule matematiche (il motore di Wikipedia utilizza LaTeX per il rendering delle formule), ma esso si presta altrettanto bene all'inserimento di grafici, alla grafica vettoriale e quant'altro sia necessario alla moderna tipografia digitale.

Al contrario di editor (meglio parlare di word processors) più conosciuti quali Microsoft Word, WordPerfect, Works, StarOffice, ecc., 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 l'impaginazione, l'indice (generale e analitico), l'inserimento delle figure, delle tabelle, ecc. che sarà invece semi-automaticamente curata da LaTeX.

Il file finale era, in passato, esclusivamente in formato PostScript. 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.

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

\documentclass[a4paper,11pt,twocolumn,twoside]{article}

\usepackage[italian]{babel} %consente l'uso caratteri accentati italiani
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc} 
\usepackage{indentfirst} %effettua l'indentazione ad ogni nuovo paragrafo

\setlength{\parindent}{20pt} %stabilisce la misura dell'indentazione
\frenchspacing % forza LaTeX ad una spaziatura fra parole non inglese

\title{Qui si scrive il titolo}
% Qui si scrivono eventuali commenti che non vengono processati

\author{Qui si scrive il nome dell'Autore}
\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 di un ambiente
Qui si scrive il sommario del documento.
\end{abstract} %qui termina l'ambiente

\tableofcontents %prepara l'indice generale

\section{Questa è la prima sezione}
Testo riempitivo di prova.

% Una riga vuota viene interpretata da LaTeX come da TeX con un 'nuovo paragrafo'
Eppure ero sicuro di aver aggiunto altre frasi\dots

\section{Questa è la seconda sezione}
Ancora testo a caso.

\section{Questa è la terza sezione}

\end{document}
-----

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 alla lingua, al formato della pagina, al numero di colonne, ecc. Segue il documento vero e proprio che inizia con l'ambiente document, compreso fra le due istruzioni \begin{document} e \end{document}.

La scrittura preceduta dal segno % è ignorata in fase di compilazione ed equivale al commento del linguaggio C++ “//”.

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 .aux, .log, .idx, ecc., 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 l'istruzione 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 involontariamente 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.

Voci correlate

Collegamenti esterni

  • Su questo link [1] sono disponibili Appunti LaTeX, un manuale LaTeX in italiano (fra i non tantissimi) del primo compilatore di queste note (Heinrich Fleck) su LaTeX. 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. Alternativamente il Manuale LaTeX può anche essere scaricato dall'indirizzo [2].
  • Una ricca documentazione su LaTeX in italiano si trova al sito del GuIT il 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 LaTeX2e. Attualmente però il gruppo è fermo.