LaTeX

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
LATEX
software
Logo
Logo
Schermata di esempio
Schermata di esempio
GenereLinguaggio di markup
Desktop publishing
SviluppatoreLaTeX project site
Ultima versione2ε (27 giugno 2011)
Sistema operativoMultipiattaforma
LinguaggioTeX
LicenzaLPPL
(licenza libera)
Sito webwww.latex-project.org/

LaTeX (scritto anche LATEX; pronunciato [ˈlatek], e non ['lateks], perché la X è in realtà una chi maiuscola)[1] è un linguaggio di marcatura per la preparazione di testi, basato sul programma di composizione tipografica TEX; la versione attuale è chiamata LaTeX2ε, mentre LaTeX3 è in corso di sviluppo.

LaTeX venne creato nel 1985 da Leslie Lamport[2] (adesso è mantenuto dal LaTeX project team) ed è divenuto il principale metodo di utilizzo di TEX — l'uso diretto di TEX base per la redazione di documenti è una circostanza rara.

Caratteristiche

[modifica | modifica wikitesto]

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.

Oltre a documenti stampabili può inoltre produrre presentazioni della stessa resa grafica grazie alla classe Beamer.

È 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, macOS e le varie distribuzioni Linux.

WYSIWYM in contrapposizione a WYSIWYG

[modifica | modifica wikitesto]

Al contrario di editor (o word processor) più conosciuti quali ad esempio Microsoft Word, WordPerfect, Works, Writer della suite LibreOffice (o OpenOffice.org), che si basano sul paradigma WYSIWYG (What You See Is What You Get, cioè ciò che vedi è quello che ottieni), con LaTeX si scrive un testo preoccupandosi essenzialmente del contenuto (della struttura) e non della forma. Il testo del documento conterrà anche delle istruzioni (direttive di LaTeX): per ottenere l'output finale è necessario che tale sorgente sia poi compilata.

Questo approccio viene anche definito WYSIWYM (What You See Is What You Mean, cioè ciò che vedi è quello che intendi): con LaTeX l'autore inizialmente può occuparsi delle convenzioni da usare, ma una volta fissate queste, si può concentrare soltanto sul contenuto del testo. L'impaginazione, l'indice (generale e analitico), l'inserimento delle figure e delle tabelle sarà semi-automaticamente curato da LaTeX.

Il file prodotto da LaTeX era, in passato, esclusivamente in formato DVI (DeVice Independent). Grazie al contributo degli sviluppatori della comunità open source ora LaTeX è in grado di produrre un file nel più comune e diffuso standard PDF (Portable Document Format) e anche in HTML (le eventuali formule matematiche in esso presenti verranno incluse in formato grafico come se fossero immagini, se non in MathML).
È anche possibile, partendo da un file prodotto da LaTeX, ottenere un qualsiasi altro formato, anche .doc di Microsoft Word oppure un .odt (OpenDocument, usato da OpenOffice.org, LibreOffice...) o altro.

I documenti redatti con LaTeX possono essere scritti utilizzando diverse classi (che sono formati standard per alcuni tipi di documento):

  • book, per realizzare libri
  • article, per articoli, soprattutto scientifici
  • letter per lettere
  • report
  • slides per creare presentazioni

Oltre alle classi standard qui sopra elencate, la comunità ha oggi a disposizione un numero enorme e costantemente in crescita di nuove classi scritte per andare espressamente incontro ad una specifica esigenza editoriale: classi per redigere un curriculum vitæ, per pubblicare un articolo scientifico su una specifica rivista, per realizzare presentazioni di elevata qualità estetica (ad esempio con la classe Beamer), ecc.

LaTeX lavora per ambienti e comandi; essi sono definiti sia dalle classi standard sia dai vari pacchetti (packages - moduli aggiuntivi che è possibile caricare al volo, on the fly) che si trovano sui siti dedicati che compongono la Comprehensive TEX Archive Network (CTAN).

Ognuna di queste classi ha (alcuni) comandi propri che sono incompatibili con le altre. Ad esempio, la direttiva \chapter{...} (che indica l'inizio di un capitolo) è propria della classe book ed è incompatibile con article e letter, che non hanno capitoli, ma soltanto sezioni (direttiva \section{...}). Alcune altre istruzioni sono invece d'ordine generale e possono essere usate senza problemi in ogni classe (ad esempio, istruzioni di enfasi (rilievo) come \emph{...}).

Utilizzo e diffusione

[modifica | modifica wikitesto]

Viene usato soprattutto da fisici, matematici, economisti, informatici, chimici, ingegneri e accademici (oltre ad avere un impiego commerciale).[3]

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) e alla gestione dei riferimenti bibliografici resa possibile dal progetto gemello BibTeX.

Esempio di utilizzo di LaTeX

[modifica | modifica wikitesto]

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

Una formula in LaTeX

[modifica | modifica wikitesto]

Di seguito è riportato un esempio di scrittura di formula matematica.

Per ottenere l'espressione precedente occorre scrivere:

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

In rete esiste un'amplissima documentazione sulle direttive LaTeX, anche in italiano.[4]

LaTeX è inoltre lo standard nella scrittura di testi matematici e formule chimiche. Si possono inoltre preparare spartiti musicali grazie a macrolinguaggi basati su LaTeX come, ad esempio, MusiXTEX.

Un esempio più complesso

[modifica | modifica wikitesto]

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:

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

\usepackage[french,italian]{babel} % Adatta LaTeX alle convenzioni tipografiche italiane,
% e ridefinisce alcuni titoli in italiano, come "Capitolo" al posto di "Chapter",
% se il vostro documento è in italiano
% l'opzione  linguistica 'french' è necessaria per l'abilitazione della
% successiva istruzione <<\frenchspacing>> 
\usepackage[T1]{fontenc} % Riga da togliere se si compila con PDFLaTeX
\usepackage[utf8]{inputenc} % Consente l'uso caratteri accentati italiani

\frenchspacing % forza LaTeX ad una spaziatura uniforme, invece di lasciare più spazio
% alla fine dei punti fermi come da convenzione inglese: richiede opzione linguistica 'french'

\title{Esempio di documento in \LaTeX} % \LaTeX è una macro che compone il logo "LaTeX"
% I commenti (introdotti da %) vengono ignorati

\author{Mario Rossi}
\date{8 aprile 2002}
% in alternativa a \date il comando \today introduce la data di sistema.

\begin{document}
\maketitle % Genera il titolo sulle istruzioni  \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 ''abstract''

\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...

\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 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 può notare, un 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 struttura del documento (la lingua, il formato della pagina, il numero di colonne, ...). Segue il corpo del documento vero e proprio, che è tutta la parte di testo compresa fra le istruzioni \begin{document} e \end{document}.

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

La "compilazione"

[modifica | modifica wikitesto]

Il file sorgente, pur essendo un file di testo puro, è per convenzione salvato con il suffisso .tex (oppure, più raramente, .ltx) come, ad esempio, miodocumento.tex.

Una volta scritto, il sorgente deve essere processato per creare il file PDF formattato. Si possono usare programmi con GUI, come LyX, oppure usare la riga di comando. Per mezzo del comando (il simbolo $ indica il prompt dei comandi)

$ latex miodocumento.tex

Oltre a vari altri file, quali .aux, .log, .idx, viene generato anche un file .dvi (in formato DVI). Questo può essere letto direttamente tramite il programma Unix xdvi (oppure Yap o Windvi sotto Windows).

Se si desidera invece ottenere un file PostScript, bisogna, dopo aver prodotto il DVI, impartire il comando

$ dvips -t -f miodocumento.dvi -o miodocumento.ps

che permette di ottenere il file PostScript miodocumento.ps (è necessario aver installato un interprete PostScript quale Ghostscript) — l'opzione -t è necessaria se il documento contiene pagine in formato landscape. Per visualizzare il file PostScript si può utilizzare il programma Unix gv.

Per ottenere un documento in formato PDF bisogna processare il file sorgente 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 .ps o .eps, come invece è necessario per ottenere un file in PostScript.

Qualora siano stati introdotti errori (nella scrittura direttive), il processo di compilazione si blocca alla 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, e quindi è necessario cercarlo all'interno del sorgente.

La licenza di distribuzione

[modifica | modifica wikitesto]

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 non vengano danneggiati da modifiche inattese o da prodotti di terze parti. 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.

  1. ^ Lorenzo Pantieri e Tommaso Gordini, L'arte di scrivere con LaTeX (PDF), su lorenzopantieri.net. URL consultato il 20 aprile 2019.
  2. ^ (EN) Leslie Lamport, The Writings of Leslie Lamport: LaTeX: A Document Preparation System, su Leslie Lamport's Home Page, 23 aprile 2007. URL consultato il 27 aprile 2007.
  3. ^ (EN) What are TeX, LaTeX and friends?, su ctan.org.
  4. ^ GuIT - Gruppo utilizzatori Italiani di TeX, su guitex.org.

Voci correlate

[modifica | modifica wikitesto]

Editor per LaTeX

[modifica | modifica wikitesto]

Macro per TeX o LaTeX

[modifica | modifica wikitesto]

Traduttore da LaTeX a XML

[modifica | modifica wikitesto]

Estensione di LaTeX con markups semantici

[modifica | modifica wikitesto]

Altri progetti

[modifica | modifica wikitesto]

Collegamenti esterni

[modifica | modifica wikitesto]
Controllo di autoritàVIAF (EN181932361 · LCCN (ENn92088870 · GND (DE4192618-3 · J9U (ENHE987007588658305171
  Portale Software libero: accedi alle voci di Wikipedia che trattano di software libero