Você está na página 1de 248

L

'

Prefazione di Enrico Gregorio

A Gruppo Utilizzatori Italiani di TEX e LTEX

http://www.guit.sssup.it/

Ottobre 2009

A A Lorenzo Pantieri: Larte di scrivere con L TEX, Unintroduzione a L TEX 2 , ottobre 2009.

:
http://www.lorenzopantieri.net/

lorenzo.pantieri@iperbole.bologna.it

Nel frontespizio sono riprodotte una litograa e unincisione di Maurits C. Escher, dal titolo Mano con sfera riettente e Tassellazione del piano con uccelli (le immagini sono tratte da http://www.mcescher.com/).

La citazione un utile sostituto dellarguzia. Oscar Wilde

Dedicato a Monia e alla sua dolce bellezza.

SOMMARIO
A L TEX un programma di composizione tipograca liberamente disponibile, particolarmente indicato per lelaborazione di documenti scientici, ai pi elevati livelli di qualit. Lo scopo di questo lavoro, riA volto sia ai principianti di L TEX sia a coloro che gi lo conoscono, forA nire agli utenti di L TEX di lingua italiana alcuni elementi per comporre un documento usando questo potentissimo strumento di scrittura. Tale obiettivo perseguito innanzitutto presentando le nozioni fondamentali del programma, con lintento di operare una sintesi di numerosi concetti sparsi in svariati manuali, condensandoli in un unico documento e presentandoli nella maniera pi chiara e organica possibile. Al contempo, viene fornita una vasta gamma di esempi e vengono analizzati alcuni problemi tipici incontrati durante la stesura di una pubblicazione scientica o professionale, specialmente in lingua italiana, indicando le soluzioni che ritengo migliori. La scelta delle soluzioni adottate deriva principalmente dalle numerose discussioni presenti sul forum del Gruppo Utilizzatori ItaliaA ni di TEX e L TEX (http://www.guit.sssup.it/), che resta sempre un eccellente riferimento per tutti i temi trattati in questo documento.

ABSTRACT
A L TEX is a free typesetting system, particularly useful to elaborate scientical documents, at the highest standards of quality. The purpose A of this work, devoted both to the beginners of L TEX and to those who AT X users some tools to create a already know it, is to provide Italian L E document using this powerful writing tool. This aim is pursued by introducing the fundamental notions of the program, in order to make a synthesis of several concepts scattered in many different guides, condensing them all into one single document and presenting them in the most organic and clearest way. At the same time, this work shows many examples and analyzes the typical problems faced during the writing of a scientic or professional publication, especially in Italian, indicating the solutions I consider best. The choice of the solutions mainly stems from the several topics on the forum of the Italian TEX User Group (http://www.guit.sssup.it/), which is always an excellent reference for all the themes dealt with in this document.

Abbiamo visto che la programmazione unarte, perch richiede conoscenza, applicazione, abilit e ingegno, ma soprattutto per la bellezza degli oggetti che produce. Donald E. Knuth [1973]

RINGRAZIAMENTI
Desidero ringraziare in primo luogo i membri dello Staff del Gruppo A Utilizzatori Italiani di TEX e L TEX (g It, http://www.guit.sssup.it/), u in particolare il Prof. Claudio Beccari, Fabiano Busdraghi, Gustavo Cevolani, Agostino De Marco, Massimiliano Dominici, Gloria Faccanoni, Daniele Ferone, il Prof. Enrico Gregorio, Maurizio Himmelmann, Jernimo Leal, Lapo F. Mori, Ottavio Rizzo, Luigi Scarso, Andrea Tonelli, Emiliano G. Vavassori ed Emanuele Vicentini, per limpagabile aiuto fornito nella redazione di questo lavoro, le spiegazioni dettagliate, la pazienza e la precisione nei suggerimenti, le soluzioni fornite, la competenza e la disponibilit: grazie mille, ragazzi! Grazie anche a Francesco Agosti, Daniele Avitabile, Vincenzo A. Balzano, Daniele Bergamini, Francesco Biccari, Marco Brunero, Carlo Ciccarelli, Mirko D. Comparetti, Rosaria DAddazio, Marco Di Bello, Roberto Giacomelli, Matteo Leccardi, Antonio Ledda, Emanuele Pagone, Emanuele Paolini, Alessandro Sacco, Giovanni Saponaro, Maurizio Vacca e a tutti quelli che hanno discusso con me sul forum del g It, prodighi di u preziose osservazioni e di validi consigli. Rivolgo un ringraziamento davvero particolare al Prof. Enrico Gregorio, per i suoi impagabili insegnamenti, per le squisite parole di apprezzamento che ha espresso nei confronti del mio lavoro e per avermi concesso lonore di scriverne la prefazione. La sua alta professionalit ed esperienza, unite alla gentilezza e disponibilit, sono state indispensabili per la riuscita di questo studio. Esprimo un ringraziamento altrettanto speciale al Prof. Claudio Beccari e ad Andrea Tonelli, per i consigli che mi hanno fornito durante la stesura e la revisione di questo documento: senza il loro eccellente contributo questo lavoro non avrebbe mai raggiunto la forma attuale. Ringrazio in modo particolare anche Gustavo Cevolani e Lapo F. Mori, per la disponibilit che hanno dimostrato dandomi la possibilit di rielaborare i loro articoli (indicati nella bibliograa di questo documento) sulle norme tipograche dellitaliano e sulla realizzazione delle A tabelle con L TEX, rispettivamente. Ringrazio inne Andr Miede, per aver realizzato lo splendido stile ClassicThesis (con cui composto questo lavoro), e Daniel Gottschlag, che mi ha dato lo spunto per realizzarne unoriginale rielaborazione. Cesena, 1 ottobre 2009 L. P.

vii

ARGOMENTI
xxiii 1 2 3 4 5 6 7 8 9 10 a b 203 207 185 21 41 77 111 145 159 163 173 11 1 3

ix

INDICE
xxiii 1 2 2.1 1 3 Storia 3 2.1.1 TEX 3 2.1.2 Etimologia 4 A 2.1.3 L TEX 5 Filosoa 5 2.2.1 Composizione sincrona e asincrona 5 2.2.2 Concentrarsi sul contenuto e non sulla forma 2.2.3 Vantaggi e svantaggi 8 2.2.4 Luoghi comuni 9 11 Introduzione 11 Installazione per Windows 12 3.2.1 La distribuzione MiKTEX 12 3.2.2 La distribuzione TEX Live per Windows 13 3.2.3 Editor per Windows 13 Installazione per Mac 15 3.3.1 La distribuzione MacTEX 15 3.3.2 Editor per Mac 15 Installazione per Linux 16 3.4.1 La distribuzione TEX Live per Linux 16 3.4.2 Editor per Linux 16 Editor multipiattaforma 16 Altri programmi utili 17 A A L TEX e pdfL TEX 18 21 A Il nostro primo documento con L TEX 21 4.1.1 La scrittura del sorgente 22 4.1.2 La compilazione 22 4.1.3 La correzione degli errori 23 4.1.4 La visualizzazione 23 4.1.5 La stampa 23 A I le sorgenti di L TEX 24 4.2.1 Spazi 24 4.2.2 I caratteri speciali 24 4.2.3 I comandi 26 4.2.4 I commenti 27 La struttura del le sorgente 27 Le classi di documento 29 I pacchetti 31 4.5.1 Che cosa sono? 31

2.2

3 3.1 3.2

3.3

3.4

3.5 3.6 3.7 4 4.1

4.2

4.3 4.4 4.5

xi

xii

4.6 4.7

4.8 5 5.1

4.5.2 Come sapere se se ne ha bisogno? 31 4.5.3 Come scoprire qual il pacchetto giusto? 4.5.4 Come installarli? 32 4.5.5 Come caricarli? 34 4.5.6 Come imparare a usarli al meglio? 35 4.5.7 E i le .ins e .dtx? 35 4.5.8 I pacchetti di uso pi comune 35 Gli stili di pagina 37 I le con cui si ha a che fare 37 4.7.1 I le dellutente 38 4.7.2 File di classi, pacchetti e stili 38 4.7.3 I le ausiliari 38 4.7.4 I le di output 39 Documenti di grandi dimensioni 39

31

5.2 5.3 5.4

5.5

5.6

5.7

5.8 5.9 5.10 5.11 5.12

5.13 5.14 5.15 6 6.1

41 A L TEX multilingue e multipiattaforma 41 5.1.1 Il pacchetto babel 41 5.1.2 Il pacchetto inputenc 44 La codica dei font 44 La struttura del testo 45 La composizione dei capoversi 46 5.4.1 La divisione delle parole in n di riga 48 5.4.2 Lo spazio tra le parole 50 5.4.3 Il pacchetto microtype 50 5.4.4 Il rientro sulla prima riga 51 Le proporzioni di pagina 51 5.5.1 Il tormentone dei margini 51 5.5.2 Linterlinea e il riempimento della pagina 52 Il sezionamento del documento 53 5.6.1 Materiale iniziale, principale e nale 53 5.6.2 Lindice generale 54 5.6.3 I miniindici 56 Caratteri speciali e simboli 56 5.7.1 Virgolette, tratti e punti ellittici 56 5.7.2 Indirizzi Internet e riferimenti ipertestuali 58 5.7.3 Loghi, accenti e caratteri speciali 61 Il titolo del documento e il frontespizio 62 I riferimenti incrociati 63 Note a margine e a pi di pagina 64 Parole evidenziate 65 Ambienti 65 5.12.1 Elenchi puntati, numerati e descrizioni 66 5.12.2 Centrare e allineare i capoversi 68 5.12.3 Citazioni e versi 69 5.12.4 Codici e algoritmi 70 Gli acronimi e i glossari 71 Epigra, capolettera e scritture curiose 72 La revisione nale 73 77 Le tabelle 77

xiii

6.2

6.3 6.4

6.1.1 Regole generali 78 6.1.2 Lambiente tabular 78 6.1.3 Celle su pi colonne 79 6.1.4 Celle su pi righe 80 6.1.5 Il pacchetto array 80 6.1.6 Il pacchetto tabularx 82 6.1.7 Allineare i numeri alla virgola 83 6.1.8 Tabelle grandi 84 6.1.9 Note dentro a tabelle 89 6.1.10 Tabelle colorate 90 Le gure 93 6.2.1 Immagini vettoriali e bitmap 93 6.2.2 Conversione dei formati 95 6.2.3 Scontornare le immagini 96 6.2.4 Linclusione delle immagini 96 Figure e tabelle in testo e fuori testo 98 Gli oggetti mobili 100 6.4.1 Gli ambienti table e figure 101 6.4.2 Il controllo degli oggetti mobili 103 6.4.3 Personalizzare le didascalie: il pacchetto caption 105 6.4.4 Afancare gure o tabelle: il pacchetto subg 105 6.4.5 Testo che avvolge un oggetto: il pacchetto wrapg 107 6.4.6 Didascalie laterali: il pacchetto sidecap 108

7.1 7.2

111 Formule in corpo e fuori corpo 112 Nozioni basilari 113 7.2.1 Raggruppamenti 113 7.2.2 Apici, pedici e radici 114 7.2.3 Somme, prodotti e frazioni 114 7.2.4 Limiti, derivate e integrali 115 7.2.5 Insiemi numerici 115 7.2.6 Lettere greche 116 7.2.7 Accostare simboli ad altri simboli 116 7.2.8 Barre e accenti 117 7.2.9 Punti e frecce 118 7.2.10 Spazi in modo matematico 119 7.3 Gli operatori 120 7.4 Le parentesi 122 7.5 Vettori e matrici 124 7.6 Formule fuori corpo 126 7.6.1 Formule spezzate senza allineamento: multline 126 7.6.2 Formule spezzate con allineamento: split 126 7.6.3 Gruppi di formule senza allineamento: gather 127 7.6.4 Gruppi di formule con allineamento: align 127 7.6.5 Gli ambienti gathered e aligned 128 7.6.6 Casi e numerazione subordinata 128 7.7 Modicare lo stile e il corpo dei font 129 7.8 Enunciati e dimostrazioni 131 7.9 Diagrammi commutativi 135 7.10 Fisica e chimica 135

xiv

7.11 Evidenziare formule: il pacchetto empheq 7.12 Elenco dei simboli matematici 136 8 8.1 8.2

136

8.3 9 9.1 9.2

145 Lambiente thebibliography 145 Il programma BibTEX 147 8.2.1 Basi di dati dei riferimenti bibliograci 147 8.2.2 I diversi tipi di record 148 8.2.3 I diversi tipi di campi 150 8.2.4 Alcune precisazioni 151 8.2.5 Generare la bibliograa 152 8.2.6 Stili bibliograci personalizzati 155 8.2.7 Riferimenti autore-anno: il pacchetto natbib 155 8.2.8 Riferimenti nali: il pacchetto backref 157 8.2.9 Riferimenti capitolo per capitolo: bibunits 157 Elenco dei siti Web consultati 157 159 Creare lindice analitico 159 Personalizzare lindice analitico

161

10

163 10.1 Comandi, ambienti e pacchetti nuovi 163 10.1.1 Denire nuovi comandi 163 10.1.2 Spazi dopo i comandi 164 10.1.3 Nuovi ambienti 165 10.1.4 Un pacchetto personale 165 10.2 Font 166 10.2.1 Comandi per cambiare lo stile dei font 166 10.2.2 Dichiarazioni per cambiare il corpo dei font 167 10.3 Inserire uno sfondo colorato in unimmagine 168 10.4 Le pagine bianche nei documenti fronte-retro 169 10.5 Testatine personalizzate 169 10.6 Cambiare le voci generate da babel 170 173 a.1 Laccento e lapostrofo 174 a.1.1 Accento tonico e fonico 174 a.1.2 Apostrofo 175 a.2 Punteggiatura e spaziatura 176 a.2.1 Segni di interpunzione e apostrofo a.2.2 Virgolette 176 a.2.3 Parentesi 177 a.2.4 Punti ellittici 178 a.2.5 Trattini 178 a.2.6 Sbarretta e asterisco 178 a.3 Stile dei font 178 a.3.1 Corsivo 179 a.3.2 Neretto 179 a.3.3 Maiuscoletto 179 a.4 Composizione del testo 179 a.4.1 Capoversi 179

176

xv

a.4.2 Uso delle maiuscole 180 a.4.3 La d eufonica 180 a.4.4 Parole straniere 180 a.4.5 Numeri 182 a.4.6 Frazioni, percentuali, unit di misura a.4.7 Sigle 184 a.5 La bibliograa 184 b b.1

183

b.2

b.3 b.4

b.5

185 Il testo 185 b.1.1 Linserimento dei caratteri accentati 185 b.1.2 La divisione in sillabe 186 b.1.3 I margini 186 b.1.4 Gli indirizzi Internet 186 b.1.5 Le note a pi di pagina 187 Le tabelle 187 b.2.1 Regole generali 187 b.2.2 Allineare i numeri alla virgola 189 b.2.3 Le tabelle mobili 190 Le gure 191 La matematica 193 b.4.1 Formule fuori corpo 193 b.4.2 Operatori 196 b.4.3 Parentesi 197 b.4.4 Matrici 198 b.4.5 Integrali multipli 198 b.4.6 Insiemi numerici 199 b.4.7 Riferimenti a una formula 200 b.4.8 Punti ellittici 200 Codici sorgente leggibili 200 203 207

ELENCO DELLE FIGURE


Figura 1 Figura 2 Figura 3 Figura 4 Figura 5 Figura 6 Figura 7 Figura 8 Figura 9 Figura 10 Figura 11 Figura 12 Figura 13 Figura 14 Figura 15 Figura 16 Donald Knuth 3 Una dispensa di matematica degli anni Settanta 4 Leslie Lamport 5 A Alcuni editor per L TEX 14 Un breve documento 28 La gestione automatica dei pacchetti 33 Un esempio duso del pacchetto frontespizio 63 Tabella ottenuta con sidewaystable 88 Una gura posizionata manualmente 105 Un esempio duso del pacchetto subg 106 Un esempio duso del pacchetto wrapg 107 Un esempio duso del pacchetto sidecap 109 Alcuni stili bibliograci 154 Inserire uno sfondo colorato in unimmagine 169 Un esempio duso del pacchetto fancyhdr 170 Un esempio di gura mobile 192

ELENCO DELLE TABELLE


Tabella 1 Tabella 2 Tabella 3 Tabella 4 Tabella 5 Tabella 6 Tabella 7 Tabella 8 Tabella 9 Tabella 10 Tabella 11 Tabella 12 Tabella 13 Tabella 14 Tabella 15 Tabella 16 Tabella 17 Tabella 18 Tabella 19 Tabella 20 Tabella 21 Tabella 22
A Cronologia di TEX e L TEX 6 Alcuni codici ascii 25 Opzioni delle classi standard 30 Le principali codiche di input 44 Comandi di sezionamento del documento 53 Loghi particolari 60 Accenti e caratteri speciali 61 Tabella composta scorrettamente 78 Tabella composta secondo le regole 78 Tabella con \multicolumn e \multirow 81 Tabella ottenuta con il pacchetto array 82 Tabella con formato specico di una colonna 82 Tabella ottenuta con il pacchetto tabularx 83 Tabella con colonne della stessa larghezza 84 Tabella con allineamento alla virgola 85 Tabella con font di dimensione ridotta 86 Tabella ridimensionata con \resizebox 87 Tabella ottenuta con il pacchetto footnote 89 Tabella ottenuta con il pacchetto ctable 90 Tabella con una colonna colorata 91 Tabella con una riga colorata 92 Tabella con le righe dispari colorate 92

xvi

Tabella 23 Tabella 24 Tabella 25 Tabella 26 Tabella 27 Tabella 28 Tabella 29 Tabella 30 Tabella 31 Tabella 32 Tabella 33 Tabella 34 Tabella 35 Tabella 36 Tabella 37 Tabella 38 Tabella 39 Tabella 40 Tabella 41 Tabella 42 Tabella 43 Tabella 44 Tabella 45 Tabella 46 Tabella 47 Tabella 48 Tabella 49 Tabella 50 Tabella 51 Tabella 52 Tabella 53 Tabella 54

Tabella con una cella colorata 93 Opzioni del pacchetto graphicx 97 Caratteri di trasferimento 101 Opzioni di posizionamento di wrapfloat 108 Lettere greche minuscole 116 Spazi in modo matematico 120 Gli operatori predeniti 122 Lettere greche minuscole 137 Lettere greche maiuscole 137 Accenti in modo matematico 137 Relazioni binarie 138 Operazioni binarie 138 Grandi operatori 139 Delimitatori 139 Grandi delimitatori 139 Frecce 140 Simboli misti 141 Simboli non matematici 141 Altri caratteri alfabetici 141 Altre relazioni binarie 142 Altre operazioni binarie 142 Negazioni di simboli 143 Font matematici 143 Esempi di voci dellindice analitico 160 Comandi per cambiare lo stile dei font 166 Comandi per cambiare il corpo dei font 167 I corpi dei font nelle classi standard 168 Comandi di babel specici per litaliano 171 Tabella composta scorrettamente 189 Tabella composta secondo le regole 189 Tabella con allineamento alla virgola 190 Un esempio di tabella mobile 191

ACRONIMI
AMS

American Mathematical Society


Fondata nel 1888, la Societ Matematica Americana una delle pi importanti associazioni di matematici, con varie decine di migliaia A di soci. La AMS ha sostenuto attivamente lo sviluppo di L TEX ed stata tra i primi organismi a sollecitare gli autori di lavori scientici a scrivere servendosi di questo programma.

American Standard Code for Information Interchange


Il codice standard americano per lo scambio di informazioni un sistema di codica dei caratteri a 8 bit (di cui uno usato come bit di parit) proposto nel 1961 e comunemente impiegato nei calcolatori.

xvii

xviii

Windows bitmap
un formato di le per la rappresentazione di immagini a mappa di bit nei sistemi operativi Microsoft Windows e OS/2. Fu introdotto con Windows 3.0 nel 1990. I le bmp possono essere compressi senza perdita di informazioni (ossia in modo lossless) oppure possono non essere compressi affatto.

Comprehensive TEX Archive Network


La Rete di archivi completi di TEX il luogo di riferimento da cui A scaricare software e materiale relativo a TEX e L TEX.

Cyan Magenta Yellow BlacK


un metodo per denire i colori (detto anche di quadricromia), per mezzo dei colori azzurro (Cyan), magenta, giallo (Yellow) e nero (blacK). In questo modello ciascun colore viene rappresentato mediante quattro valori numerici che indicano quanto le quattro componenti concorrono alla formazione del colore analizzato. I colori ottenibili con la quadricromia sono un sottoinsieme della gamma visibile: in particolare non tutti i colori realizzati con il modello rgb hanno un corrispondente nellinsieme cmyk. Il cmyk un modello sottrattivo: in teoria lazzurro, il magenta e il giallo, se mescolati insieme, dovrebbero assorbire tutti i colori e produrre il nero. Tuttavia, a causa di piccole impurit contenute in tutti gli inchiostri, di fatto combinandosi producono una sorta di marrone scuro (il cosiddetto bistro). Questa (insieme al fatto che gli inchiostri colorati sono pi costosi di quello nero) la ragione dellinchiostro nero. Il modello cmyk viene usato soprattutto dalle stampanti.

DeVice Independent
il formato di output indipendente dal dispositivo generato da A L TEX.

Extended Cork
Sono font che hanno lo stesso aspetto dei Computer Modern (i font A predeniti di L TEX), ma che contengono caratteri speciali per la maggior parte delle lettere accentate usate nelle lingue europee. Il nome deriva dalla citt di Cork, in Irlanda, sede della Conferenza Internazionale (1990) nella quale questi font vennero introdotti.

Encapsulated PostScript
un formato per immagini di tipo PostScript (un linguaggio di descrizione della pagina sviluppato da Adobe). Rispetto al PostScript, unimmagine eps contiene alcune restrizioni che la rendono adatta a essere inclusa (incapsulata) in un documento. Per esempio, unimmagine eps contiene linformazione relativa alle dimensioni del rettangolo circoscritto allimmagine effettiva (il cosiddetto bounding box). Leps il formato delle gure da inserire in un A documento con L TEX.

First In First Out


Il termine (primo a entrare, primo a uscire) esprime la modalit di immagazzinamento di oggetti in cui il primo oggetto introdotto A il primo a uscire. Questo tipo di struttura usata da L TEX nella gestione degli oggetti mobili: se un oggetto come una gura o

xix

una tabella non pu essere posizionato nella pagina corrente, viene accumulato nella relativa coda. Si contrappone alla modalit lifo (Last In First Out, ultimo arrivato, primo a uscire), in cui lultimo oggetto inserito a essere estratto per primo.

Graphics Interchange Format


un formato per immagini di tipo bitmap molto diffuso nel Web, usato anche per le animazioni. Esegue una compressione senza perdita di informazioni (ossia di tipo lossless).

gnus Not Unix


un acronimo ricorsivo che signica gnu non Unix. Il progetto, lanciato nel 1983 da Richard Stallman, si basa su una gestione dei diritti dautore improntata al concetto di software libero.

Graphical User Interface


Nei moderni sistemi operativi, l interfaccia duso graca una modalit di interazione tra lutente e il calcolatore, che permette allutente di interagire con il calcolatore manipolando oggetti graci (come icone e nestre) attraverso un puntatore comandato con un mouse (o con un dispositivo analogo). Si contrappone alla modalit cli (command line interface, interfaccia a linea di comando), nella quale lutente impartisce con la tastiera una serie di comandi testuali. Questo ambiente di lavoro, introdotto per la prima volta nei laboratori Xerox (progetto Alto), venne sviluppato da Apple, che lo applic al mondo dei personal computer e lo commercializz nel 1983 con Lisa e nel 1984 con il Macintosh. In seguito al successo del Macintosh tale sistema stato adottato anche da Microsoft con Windows.

g It u

A Gruppo Utilizzatori Italiani di TEX e L TEX

unassociazione senza ni di lucro che si pregge di aumentaA re la diffusione di TEX e L TEX in Italia attraverso la condivisione di informazioni legate al loro uso, conciliando il vantaggio dellapprendimento con il piacere dellinsegnamento.

Hyper Text Mark-up Language


Il linguaggio di marcatura degli ipertesti usato per descrivere i documenti ipertestuali disponibili sul Web. Sviluppato alla ne degli anni 80 da Tim Berners-Lee al cern di Ginevra, lhtml un linguaggio di pubblico dominio derivato da un altro linguaggio avente scopi pi generici, lsgml.

International Standard Organization


L organizzazione internazionale per le standardizzazioni la pi importante associazione a livello mondiale per la denizione di standard tecnico-scientici. Suoi membri sono gli organismi nazionali di standardizzazione di 157 Paesi del mondo.

Joint Photographic Experts Group


lo standard di compressione delle immagini fotograche pi usato. Esegue una compressione con perdita di informazioni (ovvero di tipo lossy). Insieme con il png, il formato standard delle A immagini bitmap da inserire in un documento con pdfL TEX.

xx

K Desktop Environment
uninterfaccia graca per sistemi operativi Unix/Linux, caratterizzata da un elevato grado di personalizzazione.

Portable Document Format


il formato di le pi versatile per la stampa e la distribuzione elettronica, introdotto da Adobe Systems nel 1993 per rappresentare documenti in modo indipendente dallhardware e dal software usati per generarli o per visualizzarli. Il pdf eredita molte delle funzioni del PostScript, un linguaggio di descrizione della pagina anchesso sviluppato da Adobe. il formato standard delle immagini A vettoriali da inserire in un documento con pdfL TEX.

Portable Network Graphics


Creato nel 1995, un formato di le per comprimere immagini, particolarmente adatto per rappresentare disegni e icone. Esegue una compressione senza perdita di informazioni (ossia di tipo lossless). Insieme con il jpg, il formato standard delle immagini bitmap da A inserire in un documento con pdfL TEX.

PostScript
un linguaggio di descrizione della pagina sviluppato da Adobe. Il PostScript ha costituito la base su cui stato sviluppato il formato pdf.

Red Green Blue


un metodo per denire i colori (detto anche di tricromia), per mezzo dei colori rosso (Red), verde (Green) e blu (Blue): ciascun colore viene rappresentato mediante tre valori numerici che indicano quanto le tre componenti concorrono alla formazione del colore analizzato. Lrgb un modello additivo: unendo i tre colori con la loro intensit massima, si ottiene il bianco (tutta la luce viene riessa). Questo modello viene di solito usato dagli strumenti che emettono luce, come i monitor e i proiettori.

Standard Generalized Mark-up Language


Nato nel 1978 e inuenzato nella sua genesi dal concetto di etiA chetta logica di L TEX, il linguaggio di marcatura generalizzato standard ha costituito la base su cui sono stati sviluppati lhtml e lxml. Lidea centrale del linguaggio di denire (marcare) la struttura logica di un documento, piuttosto che dare informazioni sulla disposizione graca degli elementi che lo compongono (per esempio, specicando che una struttura un paragrafo o un elenco, piuttosto che affermare che essa dovrebbe essere composta con unintestazione in neretto e dello spazio prima e dopo).

Scalable Vector Graphics


un formato di le, derivato dallxml, progettato per memorizzare immagini vettoriali (e dunque scalabili dimensionalmente).

Tagged Image File Format


un formato per immagini di tipo bitmap sviluppato da Microsoft e Aldus, che permette di specicare numerose indicazioni aggiuntive (per esempio informazioni sulla calibratura del colore) tramite apposite etichette (tag). Le speciche del formato tiff permettono

xxi

una notevole essibilit: ci di per s un vantaggio, ma rende difcile scrivere un interprete pienamente conforme alle sue speciche. I le tiff possono usare diversi algoritmi di compressione senza perdita di informazioni (ossia di tipo lossless) oppure possono non essere compressi affatto.

TEX User Group


Indica un gruppo di persone accomunate dalla passione per TEX e A L TEX. Lo scopo di tali associazioni di diffondere luso di questi linguaggi e di fornire supporto alla comunit.

Ente Nazionale Italiano di Unicazione


unassociazione privata senza scopo di lucro che svolge attivit normativa in tutti i principali settori tecnico-scientici. Luni partecipa in rappresentanza dellItalia allattivit normativa dellorganismo internazionale di standardizzazione iso.

Uniform Resource Locator


una sequenza di caratteri che identica univocamente lindirizzo di una risorsa in Internet, come un documento o unimmagine. Ogni url (per esempio http://www.guit.sssup.it/forum/) si compone normalmente di tre parti: il protocollo usato per indirizzare la risorsa (http, nellesempio considerato), il nome dellhost o del server o del dominio (www.guit.sssup.it), e inne il nome del le della risorsa (/forum/).

Unicode Transformation Format


Unicode un sistema di codica che assegna una combinazione di bit a ogni carattere in maniera indipendente dal programma, dalla piattaforma e dalla lingua. La codica utf-8 (Unicode Transformation Format, 8 bit) una realizzazione di Unicode che usa gruppi di byte in numero variabile da uno a quattro per rappresentare i caratteri.

What You See Is What You Get


Lespressione indicata dallacronimo (ci che vedi ci che ottieni) ha sostanzialmente due signicati. Il primo signicato si riferisce al problema di ottenere in stampa testo e immagini che abbiano una disposizione graca uguale a quella visualizzata sullo schermo del calcolatore. I primi software e le prime stampanti nellambito dellutenza domestica non davano risultati pienamente soddisfacenti, e questo problema fu superato con lintroduzione di nuovi dispositivi e software (pionieri furono il sistema di codica dei caratteri TrueType sviluppato dalla Apple e il programma Adobe TypeManager). Con il tempo, il signicato dellacronimo si esteso per analogia anche ad alcune problematiche nella creazione dei documenti. Nei comuni elaboratori di testo (come per esempio Microsoft Word), lautore agisce direttamente sul testo gi composto, cos come appare sullo schermo del suo elaboratore, e ogni sua azione si traduce in unimmediata variazione del testo composto. Programmi di questo tipo vengono detti wysiwyg (in questo secondo signicato), e il tipo di composizione che viene prodotto viene denominato composizione sincrona. Lacronimo che si riferisce al concetto opposto wysiwym.

xxii

What You See Is What You Mean


Lacronimo (ci che vedi ci che intendi) stato coniato speA cicamente per L TEX in contrapposizione allacronimo wysiwyg (nel senso di programma di videoscrittura caratterizzato da una composizione sincrona).
A La caratteristica che pi differenzia L TEX dagli altri elaboratori di testo il fatto che per comporre un documento con questo programma bisogna agire in tempi diversi per introdurre il testo e per comporlo. La composizione asincrona consiste nellintrodurre (con un editor) il testo da comporre in un le, senza badare al suo aspetto graco, ma concentrandosi sulla struttura logica del A testo, e nellelaborarlo successivamente con L TEX, che agisce da impaginatore.

Yet Another Previewer


A un programma che legge i le dvi, generati da L TEX. incluso nella distribuzione MiKTEX per Windows.

eXtensible Mark-up Language


Nato nel 1998 come semplicazione e adattamento dellsgml, il linguaggio di marcatura estensibile un metalinguaggio, ovvero un linguaggio che permette di denire la grammatica di diversi linguaggi specici derivati.

PREFAZIONE
La storia di TEX in Italia lunga: secondo i resoconti del TEX Users Group, il primo convegno su TEX tenuto in Europa stato a Como nel maggio 1985 e ne esiste perno un volume di rendiconti a cura di Dario Lucarella. Per lunghi anni, per, mancato un manuale in italiano che spieA gasse ai possibili utenti di L TEX come cominciare a scrivere documenti con questo sistema. Da pochi anni disponibile la traduzione italiana A della (Not so) short introduction to L TEX 2 , che per ferma a una versione abbastanza antiquata. Si trovano nei meandri di Internet altre guide, alcune scritte n dallinizio in italiano, altre tradotte. Tutte, compresa la (Not so) short, soffrono di un grave difetto: rispecchiano in A gran parte il modo in cui il loro autore ha imparato TEX e L TEX. A Ogni utente di L TEX ha sviluppato le sue tecniche, raccolte qua e l in modo spesso disordinato, e difcilmente si adatta a cambiare anche se ne scopre di nuove e anche pi efcienti. Chiunque abbia provato a raccogliere documenti scritti da diverse persone se ne rende conto a una prima occhiata: molti di questi documenti hanno trovato posto nelle raccolte di orrori. Sia chiaro, nessuno immune dagli orrori, A compreso chi scrive: quando penso a come scrivevo codice L TEX anni AT X la prima cosa fa mi vengono i brividi. Quando leggo una guida a L E che faccio cercare gli orrori e inevitabilmente li trovo, cos come li si trova molto facilmente nei preamboli che circolano fra chi scrive tesi di laurea o di dottorato. Non vorrei dare limpressione di criticare gente che ha speso molto del proprio tempo per mettere a disposizione di tutti le loro conoscenze: ogni guida ha i suoi pregi e i suoi difetti, solo che i difetti hanno la A curiosa tendenza di diffondersi pi dei pregi. Anche nel mondo L TEX evidentemente vale il principio che la moneta cattiva scaccia quella buona. Che dire di questa guida scritta da Lorenzo Pantieri? Che forse lunica che affronta alla radice il problema descritto. Ci che a prima impressione pu apparire pignoleria invece profonda curiosit di andare alla ricerca del modo migliore per risolvere i problemi. Mi riferisco alle innumerevoli domande poste da Lorenzo sul Forum del g It su questioni stilistiche, su come affrontare problemi tipograci o u A pi strettamente riguardanti L TEX. Questa curiosit non pedanteria A ne a s stessa: desiderio di esplorare il linguaggio L TEX per trovare sempre la soluzione pi efcace. Il risultato una guida molto piacevole da leggere, che introduce A al linguaggio L TEX in modo chiaro evitando per quanto possibile le complicazioni che spesso si trovano in altri scritti simili. Certo, non A completa: se pensiamo che il L TEX companion ha pi di mille pagine, siamo molto distanti da questo obiettivo, che lo stesso autore dice di non avere. Nessuna guida potr mai essere completa, visto che A L TEX usato per comporre documenti di generi diversissimi, dalla matematica alla sica, al diritto o alle edizioni critiche di testi classici. In

xxiii

xxiv

A una guida introduttiva, soprattutto a L TEX, importante la chiarezza nella spiegazione dei motivi che impongono allutente certe scelte, con lindicazione di dove trovare le soluzioni ai problemi che nella guida stessa sono solo accennati. Devo menzionare leccellente guida scritta con grande competenza da Claudio Beccari, che per rivolta a un pubblico diverso: sicuA ramente chi avr letto Larte di scrivere con L TEX sar in grado, se lo desidera, di affrontare gli argomenti pi complessi oggetto di quellopera. Questa solo la prima edizione, possiamo essere sicuri che Lorenzo sar sempre pronto ad aggiunte e correzioni in modo che chi la legge trovi facilmente la risposta ai suoi problemi. Sar un piacere provare a dare una mano sul Forum in modo che questa guida diventi ancora migliore e conquisti sempre nuovi lettori contribuendo alla diffusione A di TEX e L TEX in Italia.

Padova, 30 marzo 2008

Enrico Gregorio

INTRODUZIONE

A L TEX un programma di composizione tipograca liberamente disponibile, particolarmente indicato per lelaborazione di documenti scientici, ai pi elevati livelli di qualit. Lo scopo di questo lavoro, riA volto sia ai principianti di L TEX sia a coloro che gi lo conoscono, forAT X di lingua italiana alcuni elementi per comporre nire agli utenti di L E un documento usando questo potentissimo strumento di scrittura. Tale obiettivo perseguito innanzitutto presentando le nozioni fondamentali del programma, con lintento di operare una sintesi di numerosi concetti sparsi in svariati manuali, condensandoli in un unico documento e presentandoli nella maniera pi chiara e organica possibile. Al contempo, viene fornita una vasta gamma di esempi e vengono analizzati alcuni problemi tipici incontrati durante la stesura di una pubblicazione scientica o professionale, specialmente in lingua italiana, indicando le soluzioni che ritengo migliori. La scelta delle soluzioni adottate deriva sia dalla mia esperienza sia dalle numerose discussioni presenti sul forum del Gruppo Utilizzatori A Italiani di TEX e L TEX (http://www.guit.sssup.it/), che resta sempre un eccellente riferimento per tutti i temi trattati in questo documento. Il testo presume che il lettore possieda una certa familiarit con luso del calcolatore e di Internet. La prassi seguita quella di non approfondire i vari temi nei dettagli, ma di indirizzare il lettore alla letteratura specica o ai manuali dei pacchetti suggeriti, quando necessario. Tutte le volte che si cita un pacchetto, non si fornisce una descrizione completa del suo funzionamento, per cui si rimanda alla relativa documentazione, ma si analizzano le opzioni pi importanti e se ne suggerisce luso. Lesposizione del lavoro articolata come segue:

viene offerta una breve visione dinsieme delA la storia di L TEX e ne vengono presentate le idee di fondo. vengono spiegate le operazioni per installare A L TEX sul proprio calcolatore. vengono presentate le nozioni fondamentali che permettono di avere una conoscenza di base del funzionaA mento di L TEX.
A , che estende le conoscenze basilari su L TEX acquisite nel capitolo precedente, vengono fornite le nozioni necessarie per realizzare veri e propri documenti testuali.

vengono presentati i concetti e gli strumenti A fondamentali per comporre e gestire tabelle e gure con L TEX. viene esplorato uno dei principali punti di A forza di L TEX, ovvero la composizione di formule matematiche.

A vengono presentati gli strumenti che L TEX mette a disposizione per realizzare e gestire una bibliograa.

vengono illustrate le nozioni essenziali per geA nerare un indice analitico con L TEX. vengono esposti alcuni suggerimenti su come A fare in modo che L TEX produca risultati diversi da quelli predeniti. vengono descritte sinteticamente le principali norme tipograche della lingua italiana, utili nella composizione di articoli, tesi o libri. , inne, sono raccolti alcuni esempi estratti da alA cune diffuse guide introduttive a L TEX, con lintendimento di A mostrare come non si scrive in L TEX.
A Questo non un manuale su L TEX, quanto piuttosto un tentativo di riordinare in forma scritta appunti accumulatisi nel tempo, man mano che divenivo abituale utente di questo software. Come semplice appassionato, non ho nulla da insegnare; daltra parte ho studiato A L TEX e lho usato intensamente, acquisendo una certa esperienza che mi piacerebbe condividere con gli altri utenti. Se avete idee su argomenti da aggiungere, togliere o modicare in questo documento, o se vi dovesse capitare di notare un errore, sia di battitura sia di sostanza (ed probabile che ce ne siano parecchi, soprattutto del primo tipo, ma anche del secondo), mi fareste un favore comunicandomelo, cos che io possa apportare le opportune correzioni in versioni successive. Mi interessano specialmente i commenti dei A principianti di L TEX su quali parti di questo lavoro risultino di facile comprensione e quali invece potrebbero essere spiegate meglio. con questo spirito che ho scritto questo lavoro: spero che possiate A usare L TEX con il mio stesso piacere.

2
2.1 2.2

STORIA E FILOSOFIA

Storia 3 2.1.1 TEX 3 2.1.2 Etimologia 4 A 2.1.3 L TEX 5 Filosoa 5 2.2.1 Composizione sincrona e asincrona 5 2.2.2 Concentrarsi sul contenuto e non sulla forma 2.2.3 Vantaggi e svantaggi 8 2.2.4 Luoghi comuni 9

A In questo capitolo viene offerta una breve sintesi della storia di L TEX e ne vengono presentate le idee di fondo e le peculiarit.

.
. . TEX

TEX un programma di composizione tipograca distribuito con una licenza di software libero, realizzato da Donald Ervin Knuth, professore di informatica alluniversit di Stanford. Knuth inizi a scrivere il motore di tipocomposizione TEX nel 1977, allo scopo di esplorare le potenzialit degli strumenti digitali di stampa che a quel tempo stavano iniziando a prendere piede nel campo delleditoria, con la speranza di poter far regredire la tendenza al deterioramento della qualit tipograca che constatava afiggere i suoi libri e articoFigura 1: Donald E. Knuth (questa li, in particolare il suo capolavoro immagine tratta dal si- The Art of Computer Programming, to http://www-cs-faculty. in pi volumi, ricchi di formule matematiche. stanford.edu/~knuth/). TEX stato pubblicato nel 1982, e negli anni successivi stato costantemente aggiornato e perfezionato. In particolare, nel 1989 sono stati aggiunti alcuni rilevanti miglio-

La storia di TEX

Figura 2: Una dispensa di matematica degli anni Settanta, dattilografata con aggiunte a mano. A quel tempo gran parte della matematica si componeva con la macchina per scrivere, alzando e abbassando il carrello per indici ed esponenti, e cambiando testina per i simboli.

ramenti per consentire il supporto dei caratteri a 8 bit e di pi lingue. Lultima revisione di TEX del 2008. TEX rinomato per essere estremamente stabile ed eseguibile su diversi tipi di calcolatori. Il numero di versione di TEX converge a e attualmente 3.1415926. The TEXbook, scritto da Donald Knuth, il manuale duso di TEX e uno dei libri pi completi su questo programma. Attualmente, TEX un marchio registrato dalla American Mathematical Society (AMS). . .
Letimologia del nome TEX

Etimologia

Horoxo Horoxo Prova Prova

Knuth ha nascosto un trabocchetto nel nome del suo programma di composizione tipograca: TEX non va letto in alfabeto latino, ma in alfabeto greco (maiuscolo). La lettera X di TEX non una ics latina, ma un chi greco, cos come la lettera E un epsilon. In lettere minuscole, TEX si scriverebbe . la radice della parola greca , che vuol dire arte e tecnica: un binomio perfetto per la scrit tura scientica di alto livello. La radice indoeuropea del nome TEX vive in molte parole italiane: tecnica, politecnico, architetto, contesto, tessuto, testo, sottile, . . . Knuth dice che se TEX ben pronunciato, lo schermo del calcolatore si appanna leggermente. La X di TEX un suono che non esiste in italiano. Si trova tuttavia in moltissime lingue, oltre al greco: nel tedesco Bach, scozzese Loch, spagnolo Juan e Mexico, russo Horoxo, cinese n h o a , ... In un ambiente ascii, il logo TEX si rende con le maiuscole/minuscole: TeX.

. . .
A LTEX

A L TEX un programma di composizione tipograca liberamente disponibile, realizzato da Leslie Lamport, che si serve di TEX come motore di tipocomposizione. Si tratta di un programma progettato per automatizzare tutte le operazioni pi comuni che coinvolgono la realizzazione di un documento, che consente agli autori di impaginare e stampare il proprio lavoro ai pi elevati livelli di qualit tipograca, servendosi di impostazioni di pagina professionali predenite. A Lamport inizi a scrivere L TEX alla ne degli anni Settanta, quando TEX non era ancora stato pubblicato (Lamport era uno dei collaboratori di Knuth nello sviluppo di TEX). La prima verA sione pubblica di L TEX risale al 1985, e da allora il programma stato continuamente aggiornato e migliorato. Per molti anni il numero della versione rimasto ssato a 2.09 e le successive revisioni sono state identicate con le loro date. A Nel 1994, L TEX stato aggiornato da un gruppo di programmatori guidato da Frank Mittelbach, al ne di includere alcuni miglioramenti e di riunire tutte le versioni con estensioFigura 3: Leslie Lamport (questa ni e correzioni che si erano racimmagine tratta dal sito colte dopo la pubblicazione di http://it.wikipedia.org/ A L TEX 2.09. Per distinguere la wiki/Leslie_Lamport). nuova versione da quella preceA dente, essa chiamata L TEX 2 ; A questa documentazione tratta L TEX 2 . A La versione 3 di L TEX appare come un progetto a lungo termine; i A costanti aggiornamenti di L TEX 2 ne costituiscono le tappe di avviciA namento. Lultima versione pubblica di L TEX del 2005.

A La storia di L TEX

.
. . Composizione sincrona e asincrona
Per comporre un A documento con L TEX, bisogna agire in tempi diversi per introdurre il testo e per comporlo.
A La caratteristica che pi differenzia L TEX dagli altri elaboratori di testo il fatto che per comporre un documento con questo programma bisogna agire in tempi diversi per introdurre il testo e per comporlo [Beccari, 2009, p. 1]. Nei comuni elaboratori di testo (come per esempio Microsoft Word), lautore agisce direttamente sul testo gi composto, cos come appare sullo schermo del suo elaboratore, e ogni sua azione si traduce in unimmediata variazione del testo composto. Il tipo di composizione

6
A Tabella 1: Cronologia di TEX e L TEX.

1977 1978 1982 1984 1985 1994 2005 2008

Knuth comincia a scrivere TEX


A Lamport comincia a scrivere il primo nucleo di L TEX

Prima versione pubblica di TEX Knuth pubblica la prima edizione di The TEXbook
A Lamport pubblica L TEX 2.09 e la prima edizione di AT X: a document preparation system L E A L TEX 2 A Ultima revisione di L TEX

Ultima revisione di TEX

La composizione asincrona assicura una migliore qualit di quella sincrona.

che caratterizza questi programmi viene denominato composizione sincrona. Perch il programma sia davvero sincrono e il ritardo fra azione e visualizzazione sia trascurabile, la forza del programma deve essere concentrata nella rapidit della presentazione. Tale caratteristica non pu che andare a discapito della perfezione della composizione, perch questa dipende da unelaborazione molto pi accurata sul testo da comporre. vero che oggi i programmi di videoscrittura sono estremamente rapidi e che ogni anno la qualit della loro composizione migliora vistosamente, tuttavia il compromesso fra velocit e qualit esiste sempre. La composizione asincrona consiste nellintrodurre (con un editor) il testo da comporre in un le, senza badare al suo aspetto graco, ma concentrandosi sulla struttura logica del testo, e nellelaborarlo A successivamente con L TEX, che agisce da impaginatore. Durante questo processo pu accadere, per esempio, di dover modicare una parola di un capoverso. In questo caso lintero capoverso viene ricomposto: ci implica lottimizzazione compositiva di tutto il capoverso, non solo un piccolo aggiustamento del punto in cui si eseguita la modica. Ecco quindi che la composizione avviene in due tempi, lintroduzione del testo e lottimizzazione della composizione, avendo per a disposizione lintero testo da trattare. Va da s che la composizione asincrona assicura una migliore qualit di composizione rispetto a quella sincrona, dal momento che non viene tenuta in nessun conto la velocit di visualizzazione, ma la forza compositiva viene concentrata sulla qualit: poich tratta il testo nel A suo complesso (e non man mano che lo si redige), L TEX pu avere una visione dinsieme e fare scelte di impaginazione migliori. . . Concentrarsi sul contenuto e non sulla forma

A L TEX permette di concentrarsi sulla struttura logica del testo e non su quella stilistica.

Lidea centrale di Lamport era di creare un linguaggio che permettesse ai suoi utenti di concentrarsi sulla struttura logica del testo e non su quella puramente stilistica. A L TEX infatti permette allutente di astrarsi dai dettagli tipograci con cui verr composto il proprio documento, denendone la struttura logica, piuttosto che dando informazioni sulla disposizione graca degli elementi che lo compongono (per esempio, specicando che

. una struttura un paragrafo oppure un elenco, piuttosto che affermare che essa dovrebbe essere composta con unintestazione in neretto e dello spazio prima e dopo). La trasformazione di un testo A sorgente scritto con L TEX in un documento nito viene fatta con laiuto di strumenti (classi, pacchetti, . . . ) che, idealmente, permettono cambiamenti anche radicali dellaspetto, senza modicare il codice sorgente. A Il concetto di etichetta logica (in inglese mark-up) di L TEX ha inuito notevolmente nella genesi dellsgml e dei vari html e xml, cos come lo sono stati i suoi approcci per convertire queste etichette logiche nelle corrispondenti rappresentazioni visuali. A Sebbene abbia divulgato il concetto di etichetta logica, L TEX fornisce per anche degli strumenti per regolare nemente i risultati in sede di revisione nale, accettando il fatto che se si desidera un prodotto nale di alta qualit nessun programma pu, al momento attuale, risolvere automaticamente tutti i problemi relativi alla composizione del documento, evitando di lavorare sulla sua forma denitiva. Le variabili, in tipograa, sono infatti troppe e troppo varie perch si possa tener conto di tutte con un programma. Il le prodotto con leditor contiene dunque non solo il testo in senso A stretto, ma anche le istruzioni di marcatura che permettono a L TEX di sapere che cosa sta componendo, in modo da eseguirne la composizione secondo le direttive dello stile del documento che sta elaborando. Il testo prodotto mediante leditor di testo quindi, in effetti, un codice scritto in un linguaggio di programmazione, che contiene sia il testo da comporre, sia le istruzioni per comporlo. Lutente non deve spaventarsi con le parole linguaggio di programmazione: per lo pi si tratta solo di informazioni di marcatura per specicare titoli, testi speciali, composizione della matematica, e simili. Le istruzioni sono solitamente espresse in inglese (molto semplice, ridotto allessenziale), evitando quasi sempre le abbreviazioni o gli acronimi. Un esempio Per dare unidea di com strutturato un documento elaborato con A L TEX, di seguito riportato un frammento di testo sorgente.
Due matrici $n\times n$ complesse $A$ e $B$ si dicono \emph{simili} se esiste una matrice $n\times n$ invertibile $T$ tale che \begin{equation} B=T^{-1}AT. \end{equation}
A Il testo sorgente con le sue istruzioni viene compilato con L TEX, che (attraverso TEX) produce il documento tipocomposto (in inglese, typeset). Se il risultato non soddisfacente, non si pu modicare direttamente il documento composto, ma si corregge il testo sorgente e si ricompila. Di seguito riportato un esempio di testo sorgente (sulla sinistra) con accanto il relativo documento composto.

Il concetto di etichetta logica (mark-up)

La revisione nale di un documento

Il le prodotto con leditor contiene il testo assieme alle istruzioni di marcatura.

A Con L TEX, non si pu modicare direttamente il documento composto: si corregge il testo sorgente e si ricompila.

Due matrici $n\times n$ complesse $A$ e $B$ si dicono \emph{simili} se esiste una matrice $n\times n$ invertibile $T$ tale che \begin{equation} B=T^{-1}AT. \end{equation}

Due matrici n n complesse A e B si dicono simili se esiste una matrice n n invertibile T tale che B = T 1 AT . (2.1)

Nei capitoli successivi verranno spiegate tutte le istruzioni usate nellesempio. Tuttavia anche il lettore con pochi rudimenti di inglese capisce facilmente quello che il linguaggio di marcatura ha specicato. . .
A I vantaggi di L TEX

Vantaggi e svantaggi

A I vantaggi di L TEX rispetto agli altri elaboratori di testo sono innumerevoli. Di seguito se ne elencano alcuni. A L TEX sommamente professionale, e presenta caratteristiche di qualit e stabilit sconosciute agli altri elaboratori di testo. A Lautore pensa alla logica, L TEX si occupa dellimpaginazione.

Strutture complesse come i riferimenti, gli indici e le bibliograe possono essere generate con grande efcienza e essibilit. La composizione tipograca di formule matematiche gestita in maniera impeccabile.
A A L TEX multilingue, multipiattaforma (un le sorgente di L TEX scritto in ascii puro: ci garantisce la massima compatibilit quando si opera con documenti scambiati tra piattaforme e autori diversi) e gratuito. A L TEX ha una struttura modulare, che permette di estenderne le capacit, per eseguire compiti tipograci non direttamente gestiti dal programma. Sono reperibili per esempio estensioni per comporre bibliograe conformi a precisi standard.

Gli svantaggi di A L TEX

A Innegabilmente, L TEX ha anche alcuni svantaggi: A Con L TEX ci vuole attitudine allastrazione.

La graticazione non istantanea, ma ritardata. Solo gli esperti si possono permettere di uscire dagli stili predeniti. Nellultima fase della composizione di un documento, la caratteA ristica di L TEX di raggiungere unelevata qualit solo per mezzo di cambiamenti dalleffetto non immediato pu rivelarsi un difetto anzich un pregio (almeno se non si considerano i motivi di questo comportamento e se non si adatta di conseguenza il proprio metodo di lavoro). Per esempio, a causa dellottimizzazione globale della suddivisione dei capoversi, la rimozione di una singola parola in un capoverso determina un completo riallestimento dellintero capoverso. Ci potrebbe rendere il capoverso

.
A addirittura di una riga pi lungo, se L TEX decidesse che quella la migliore soluzione possibile. Se ci accadesse durante la correzione dei refusi allultimo minuto, in un documento altrimenti ben composto, potrebbe essere un problema. A Se luso di L TEX sia consigliabile o meno dipende fortemente dal lavoro che si ha sotto mano, e dal contesto. In breve, opportuno A usare L TEX quando uno o pi fattori tra i seguenti giochi un ruolo importante nellambito del proprio lavoro [Mittelbach et al., 2007]:

Quando opportuno A usare L TEX

preferenza dellutente a pensare per strutture logiche; documenti che richiedono consistenza; documenti che non hanno un formato interamente denito o che saranno presentati parallelamente in diverse vesti; documenti che contengono molta matematica; materiale corposo. Daltro canto, i seguenti fattori fanno pendere lago della bilancia verso luso di un sistema visuale (di buona qualit!): preferenza dellutente a pensare per strutture visive; utente non del tutto a suo agio a lavorare con un linguaggio di A programmazione (un buon editor per L TEX aiuta, ma. . . ); documenti che richiedono pi essibilit visuale che consistenza (per esempio volantini, biglietti dinvito, depliant, brochure, . . . ); materiale non corposo. Quello che realmente fa la differenza pu variare in base alle circostanze. . . Luoghi comuni
Quando opportuno A non usare L TEX

A Molte persone che scoprono L TEX dopo anni di combattimento con A altri elaboratori di testo, restano stupiti nello scoprire che L TEX era disponibile da oltre ventanni e loro non ne avevano mai sentito parlare. Non si tratta di una cospirazione, ma solo di un segreto ben conservato e noto solo a pochi milioni di persone [Flynn, 2005]. Knuth e Lamport hanno reso generosamente i loro programmi di pubblico dominio e pertanto per molti anni non vi stato alcun genere A di pubblicit che avesse potuto far notare L TEX al di fuori dellambito accademico. Oggigiorno, tuttavia, dozzine di editori pubblicano docuA menti in formato L TEX, e centinaia di migliaia di utenti scrivono con A L TEX milioni di documenti. A In questi anni, si sono creati diversi luoghi comuni riguardo a L TEX; per evitare possibili incomprensioni, conviene esaminare i pi diffusi. A Leggenda: LTEX ha solo un font A L TEX pu usare, tra gli altri, ogni font di tipo TrueType, OpenType, PostScript e METAFONT. Ci pi di quanto offerto della maggior parte degli altri sistemi di composizione tipograca. Il font standard A di L TEX il Computer Modern, non il Times New Roman, quindi alcuni restano turbati poich appare diverso.

10

A Leggenda: LTEX un software solo per Unix A Si sente anche dire che L TEX un software solo per Windows, o solo A per Mac, eccetera. Al contrario, L TEX funziona sulla maggior parte dei calcolatori attualmente in uso, dai supercomputer ai palmari. Ci comprende i PC con Windows, i Mac e tutti i sistemi Unix/Linux. Se A si sta usando un elaboratore sul quale L TEX non gira, si tratter o di un apparecchio estremamente nuovo oppure molto vecchio o sconosciuto. A Leggenda: LTEX obsoleto

Proprio il contrario. costantemente in via di sviluppo (grazie al lavoro di migliaia di appassionati in tutto il mondo), con nuove caratteristiche che vengono continuamente aggiunte allarchivio CTAN. indiscutibilmente pi aggiornato della maggior parte degli altri sistemi tipograci, e la sua capacit di composizione di capoversi e formule matematiche tuttora ineguagliata, nonostante il programma e i suoi algoritmi siano liberamente disponibili da oltre ventanni.
A Leggenda: LTEX non

Dipende. Se per wysiwyg (What You See Is What You Get, Ci che vedi ci che ottieni) si intende un software in grado di ottenere in stampa testo e immagini che abbiano una disposizione graca A uguale a quella visualizzata sullo schermo del calcolatore, L TEX un programma wysiwyg della migliore qualit. Se invece per wysiwyg si intende un programma di videoscrittura in cui lautore agisce direttamente sul testo gi composto, cos come appare sullo schermo del suo elaboratore, e ogni sua azione si traduce A in unimmediata variazione del testo composto, L TEX non wysiwyg, in quanto caratterizzato da una composizione asincrona (wysiwym).
A Leggenda: LTEX troppo dicile

Questa frase si sentita dire da sici in grado di dividere gli atomi, da matematici che sanno dimostrare la trascendenza di , da uomini daffari che sanno leggere un foglio di bilancio, da storici che hanno compreso la politica bizantina e da linguisti che sanno decifrare la A scrittura lineare B. La maggior parte delle persone comprende L TEX pi o meno in venti minuti. Non una materia spaziale.
A Leggenda: LTEX solo per matematici e scienziati

Nientaffatto. Sebbene sia cresciuto nei campi della matematica e dellinformatica, due delle sue maggiori aree di espansione sono quella umanistica e quella delleconomia, specie da quando ha preso piede lxml, che ha portato nuove esigenze nellambito della tipocomposizione automatica.

3
3.1 3.2 3.3

A I N S T A L L A R E L TEX

3.4

3.5 3.6 3.7

Introduzione 11 Installazione per Windows 12 3.2.1 La distribuzione MiKTEX 12 3.2.2 La distribuzione TEX Live per Windows 13 3.2.3 Editor per Windows 13 Installazione per Mac 15 3.3.1 La distribuzione MacTEX 15 3.3.2 Editor per Mac 15 Installazione per Linux 16 3.4.1 La distribuzione TEX Live per Linux 16 3.4.2 Editor per Linux 16 Editor multipiattaforma 16 Altri programmi utili 17 A A L TEX e pdfL TEX 18

A In questo capitolo vengono spiegate le operazioni per installare L TEX A sul proprio calcolatore. Le distribuzioni di L TEX prese in considerazione sono MiKTEX (per Windows) e TEX Live (multipiattaforma), che sono ottime, diffuse e gratuite. Si distinguono tre casi:

sistema operativo Windows (da Windows 2000 in poi); sistema operativo Mac OS X (dalla versione 10.3 in poi); sistema operativo Linux.

.
Come anticipato nel capitolo precedente, gli elementi essenziali per A scrivere un documento con L TEX sono: un editor di testo con cui creare il le sorgente .tex contenente il testo da comporre;
A L TEX, che elabora il le .tex creato con leditor e produce il documento tipocomposto (in formato .pdf o .dvi);

Non bisogna A confondere L TEX, che un motore di tipocomposizione, con leditor usato per scrivere il sorgente .tex.

un programma per visualizzare il documento (.pdf o .dvi) elaA borato da L TEX. bene sottolineare che nonostante, in teoria, sia possibile usare qualsiasi editor di testo, per gestire al meglio i le sorgente opportuno A servirsi di un editor specico per L TEX. In questo modo, fra laltro, A basta premere un pulsante delleditor per compilare con L TEX e, se
opportuno servirsi di un editor specico A per L TEX.

11

12

La rete di archivi completi per TEX

non ci sono errori, per attivare anche il programma per visualizzare il documento; a ogni successiva compilazione, la nestra del programma impiegato per visualizzare il documento viene di regola aggiornata automaticamente, per cui si ha una compilazione quasi sincrona. EsiA stono numerosi editor specici per L TEX, fra cui possibile scegliere quello pi adatto alle proprie esigenze. A Una distribuzione di L TEX una raccolta di le e programmi che conA tiene quanto serve per comporre un documento con L TEX. GeneralA mente una distribuzione contiene, oltre al sistema L TEX (e ai programmi principali a esso connessi) uno o pi editor e uno o pi programmi A per visualizzare i documenti elaborati da L TEX. Le distribuzioni di A L TEX possono essere installate da dvd oppure da Internet. A Va notato che il Gruppo Utilizzatori di TEX e L TEX (http://www. guit.sssup.it/guit/) invia a tutti i suoi soci il dvd TEX Collection, A che contiene le distribuzioni di L TEX per i principali sistemi operativi; le distribuzioni presentate in questo capitolo possono essere ritrovate in quel disco; ci molto utile se non si dispone di una connessione a Internet veloce. A Per installare una distribuzione di L TEX da Internet, il luogo di riferimento ctan (Comprehensive TEX Archive Network, rete di archivi completi per TEX, http://www.ctan.org/); qui possibile rintracA ciare tantissimo software e materiale che riguarda L TEX, per esempio pacchetti, programmi, stili, font.1

.
Su Windows sono disponibili le distribuzioni MiKTEX e TEX Live: sono entrambe eccellenti, ma mentre MiKTEX specica per Windows e facile da installare e gestire, TEX Live multipiattaforma e pi adatta agli utenti esperti. . .
Su Windows, si consiglia di installare la versione completa di MiKTEX.

La distribuzione MiKTEX

La distribuzione MiKTEX specica per il sistema operativo Windows. La sua installazione, simile a quella di ogni altro programma per Windows, non presenta particolari difcolt (bastano pochi clic del mouse). possibile scaricare MiKTEX dal sito http://miktex.org/. Dalla pagina di download, si scarica il le setup.exe: questo piccolo programma va eseguito una prima volta per scaricare la distribuzione e una seconda volta per effettuare linstallazione vera e propria. sufciente seguire le semplici istruzioni a video. Sono disponibili due versioni di MiKTEX, di base (basic) e completa (complete), che differiscono unicamente per la disponibilit di pacchetti, che con MiKTEX
1 La rete ctan un insieme di siti dislocati in tutto il mondo, tutti uguali fra di loro. Il vantaggio di collegarsi a un server ctan pi vicino, che contiene una copia integrale (mirror, specchio) di un sito ctan originale (che pu essere sovraffollato), di poter disporre, solitamente, di una connessione pi veloce. In Italia esiste, per esempio, il server dellUniversit Tor Vergata di Roma (ftp.uniRoma2.it), cui si viene automaticamente indirizzati quando si scaricano da ctan le distribuzioni MiKTEX o TEX Live. Gli indirizzi dei server ctan disponibili in Rete sono indicati nella pagina Web http://www.ctan.org/tex-archive/CTAN.sites.

. si possono gestire in modo particolarmente semplice (vedi il paragrafo 4.5.4 a pagina 32). La versione completa ovviamente la scelta consigliata. bene tener presente che la distribuzione MiKTEX non A automaticamente predisposta per lavorare con tutte le lingue che L TEX capace di gestire (italiano compreso); per farlo necessario eseguire la semplice procedura descritta nel paragrafo 5.1.1 a pagina 41.2 . . La distribuzione TEX Live per Windows

13

Dal 2008, la distribuzione TEX Live, nata in ambiente Unix/Linux, disponibile anche per Windows. Nonostante si tratti di una distribuzione robusta e afdabile (e, a differenza di MiKTEX, automaticamente A congurata per lavorare con tutte le lingue che L TEX capace di gestire, italiano compreso), le procedure di installazione e di manutenzione della TEX Live per Windows non sono semplici come quelle di MiKTEX, che pensata appositamente per gli utenti di Windows: bisogna studiare la documentazione (in inglese, http://tug.org/texlive/ windows.html) e pu essere necessario servirsi della linea di comando. Allo stato attuale, se ne consiglia luso solo agli utenti esperti. . . Editor per Windows

La distribuzione TEX Live per Windows riservata agli utenti esperti.

A Su Windows sono disponibili numerosi editor specici per L TEX. Fra i pi diffusi vi sono TEXnicCenter, WinEdit e LEd, che sono tutti facili da installare e usare. Quale impiegare , in denitiva, questione di gusti: si consiglia allutente di provarli e di scegliere quello pi adatto alle proprie esigenze.

TEXnicCenter TEXnicCenter un editor per Windows distribuito gratuitamente sotto licenza gnu. abbastanza simile a WinEdt, rispetto al quale presenta uninterfaccia e delle funzioni pi semplici. Prima di iniziare linstallazione di TEXnicCenter, si consiglia di aver installato una delA le distribuzioni di L TEX disponibili per Windows; in caso contrario la congurazione del programma dovr essere posticipata al momento in cui una distribuzione si render disponibile allinterno del sistema. Il programma si scarica dal sito http://www.texniccenter.org/. Al primo avvio delleditor partir la procedura di congurazione automatica, durante la quale necessario specicare se si sta usando MiKTEX oppure unaltra distribuzione. : TEXnicCenter usa lo stesso dizionario di Open Ofce, pertanto possibile scaricare il dizionario dalla pagina dedicata ai download del sito di Open Ofce (http://it.openoffice.org/) o, in alternativa, dal sito di g It u (http://www.guit.sssup.it/installazione/win_editor.php). Dopo
2 disponibile anche la distribuzione proTEXt (presente su http://www.tug.org/protext/ o sul dvd TEX Collection), che basata sulla distribuzione MiKTEX, alla quale sono stati afancati gli editor WinEdt e TEXnicCenter e i programmi accessori GSview e Ghostscript. La procedura di installazione di proTEXt molto semplice e ben documentata. Congurare TEXnicCenter per luso della lingua italiana

14

(a) WinEdt (per Windows).

(b) TEXShop (per Mac).

(c) Kile (per Linux).

(d) Texmaker (multipiattaforma).

A Figura 4: Alcuni editor per L TEX.

aver decompresso larchivio e aver copiato i due le it_IT.aff e it_ IT.dic nella cartella ...\TeXnicCenter\Language\ (la posizione esatta della cartella che contiene il programma dipende dalla scelta fatta dallutente durante linstallazione). A questo punto si avvia TEXnicCenter e, tramite il menu Tools Options Spelling, si abilitano le funzioni language:it, dialect:IT, poi si inserisce in personal dictionary la voce ...\TeXnicCenter\Language\it_IT.dic (anche in questo caso il percorso che individua la cartella contenente il programma dipende dalla scelta specicata durante linstallazione). WinEdt WinEdt un ottimo editor shareware per Windows (che permette di gestire anche altri tipi di le, per esempio .html). La sua installazione non presenta alcuna difcolt. Il programma si scarica dal sito http: //www.winedt.com/.
Congurare WinEdt per luso della lingua italiana

: Per usufruire della funzione di controllo ortograco necessario installare nel programma il dizionario per la lingua italiana. A tal ne, sufciente creare la cartella it\ in C:\Programmi\WinEdt Team\WinEdt\Dict\, scaricare dal sito di g It il dizionario (http://www.guit.sssup.it/installazione/ u win_editor.php) e copiarlo nella cartella appena creata. Dal pannello Dictionaries del menu Options Dictionary Manager di WinEdt, si seleziona la voce Your custom dictionaries e si inserisce nel campo Definitions la voce %B\Dict\it\It.dic. Per abilitare luso del dizio-

. nario sufciente spuntare nella casella relativa la voce Enabled, vericando che nel campo Options siano attivati i comandi Load On Start, Save On Exit, Add New Words e Use for Completions. LEd
A LEd (L TEX Editor) un editor gratuito per Windows, specico per A L TEX (ma che permette di gestire anche altri tipi di le, per esempio .html, Pascal o Perl). Facile da installare e usare, dotato di uninterfaccia graca (disponibile anche in lingua italiana) comodamente congurabile e particolarmente ricca di funzioni. Si scarica dal sito http://www.latexeditor.org/. Per usufruire della funzione di controllo ortograco necessario scaricare, dal menu Configuration Add-ons, il dizionario della lingua italiana; successivamente, dal menu Configuration Options Spellchecking Dictionaries, si abilita la funzione selezionando la voce Italian.

15

.
A Installare L TEX su Mac semplicissimo: la distribuzione TEX Live, che su Mac nota anche come MacTEX, si installa come qualsiasi altro programma per Mac.

. .

La distribuzione MacTEX
A Installare L TEX su Mac semplicissimo. . .

Per installare la distribuzione TEX Live su Mac sufciente scaricare il le MacTeX.dmg da http://www.tug.org/mactex/. Allinterno del le contenuta lintera distribuzione, assieme a svariati programmi utili, come per esempio TEXShop. Una volta scaricato il le, basta aprirlo ed eseguire le semplicissime istruzioni a video. Fin dalla prima installazione, la distribuzione automaticamente A predisposta per lavorare con tutte le lingue che L TEX capace di gestire (italiano compreso). Il sistema operativo gi dotato dei programmi accessori per visualizzare il risultato della composizione e per procedere alla stampa. Anche la gestione dei pacchetti particolarmente semplice (vedi il paragrafo 4.5.4 a pagina 32). . . Editor per Mac

. . . e il sistema operativo gi dotato dei programmi accessori per lavorare A con L TEX.

A Su Mac sono disponibili diversi editor specici per L TEX; TEXShop un classico, semplicissimo da installare e usare.

TEXShop TEXShop un ottimo editor gratuito per Mac, coperto da licenza A gnu. Nella compilazione, TEXShop impiega pdfL TEX (non producendo quindi le dvi) e usa un apposito programma per visualizzare e stampare i documenti compilati, in formato pdf. Leditor gi dotato del dizionario italiano e inglese. Il sito Web del progetto http://www.uoregon.edu/~koch/texshop/.

16

.
A Linstallazione di un sistema L TEX su Linux non presenta, di regola, AT X risulta addirittura gi installato assiedifcolt eccessive. Spesso L E me al sistema operativo. In ogni caso, la distribuzione TEX Live pu venire installata come qualunque altro programma di Linux.

. .
Su Linux, la distribuzione TEX Live si installa come qualunque altro programma.

La distribuzione TEX Live per Linux

Su Linux, la distribuzione TEX Live (http://www.tug.org/texlive/) pu essere installata dalla linea di comando (scelta comune fra gli utenti di questa piattaforma) oppure avvalendosi di interfacce grache, come per esempio kde. Generalmente non c altro da fare, salvo, se si installa una versione di TEX Live precedente alla 2008, eseguire il programma texconfig per congurare il sistema per luso della lingua italiana (vedi il paragrafo 5.1.1 a pagina 41). Neppure la gestione dei pacchetti presenta troppe difcolt (vedi il paragrafo 4.5.4 a pagina 32). Se si usa una distribuzione di Linux basata su Debian (fra cui Ubuntu e le sue varianti), linstallazione di TEX Live 2008 presenta qualche problema; nellattesa che la prossima TEX Live 2009 renda pi semplice linstallazione, per installare TEX Live 2008 nei sistemi Debian possibile seguire la procedura descritta nella pagina Web http://texblog. net/latex-archive/linux/kile-texlive-2008-equivs/ (in lingua inglese); in alternativa, si pu optare per la TEX Live 2007, la cui installazione non presenta difcolt. . . Editor per Linux

La distribuzione TEX Live per Linux contiene anche diversi editor fra cui scegliere quello pi adatto alle proprie esigenze. Si pu usare lonnipresente Emacs con lestensione AUCTeX; in alternativa, se lo si trova troppo complicato, si pu installare Kile, facile da usare. Kile Kile un ottimo editor con licenza gnu per kde. Incluso nella distribuzione TEX Live, si avvale di uninterfaccia graca che include le funzioni a cui si ricorre pi frequentemente durante la scrittura A di un documento in L TEX. Particolare attenzione stata posta alla possibilit di interagire con altri programmi (come Xg e Gnuplot). Le versioni di Kile allegate alla distribuzione TEX Live sono gi dotate del dizionario italiano e inglese. Il sito Internet del progetto http://kile.sourceforge.net/.

.
I seguenti editor sono multipiattaforma (ovvero disponibili per tutti i sistemi operativi pi diffusi, tra cui Windows, Mac OS e Linux) e gratuiti. Essi presentano il vantaggio di poter condividere il progetto di uno stesso documento tra utenti di sistemi operativi diversi.

.
A un editor specico per L TEX dotato di uninterfaccia graca che integra svariati strumenti per semplicare la gestione dei propri documenti. Si scarica da http://www.xm1math.net/ texmaker/.

17

(Vi iMproved) rappresenta unevoluzione delleditor testuale Vi, molto diffuso tra i programmatori in ambiente Unix. disponibile sul sito http://www.vim.org/, oltre a essere incluso in tutte le A principali distribuzioni di Unix/Linux. Lestensione L TEX-Suite A aggiunge a Vim numerose funzioni utili per lavorare con L TEX. un editor di testo libero estremamente potente e versatile, molto popolare fra i programmatori in ambiente Unix. Al pari di Vim, riservato a utenti esperti. Si scarica dal sito http: //www.gnu.org/software/emacs/, oltre a essere incluso in tutte le principali distribuzioni di Unix/Linux. Lestensione AUCTeX agA giunge svariate funzioni utili per lavorare con L TEX. Aquamacs (http://aquamacs.org/) una versione con interfaccia graca in stile Mac di Emacs; su Windows disponibile EmacsW32 (http://ourcomments.org/Emacs/EmacsW32.html).

.
A Lavorando con L TEX, possibile usare un programma specializzato per ciascuna operazione di composizione, in modo da servirsi sempre del prodotto migliore per ciascuna fase di elaborazione del documento. I seguenti sono alcuni utili programmi accessori:

un programma multipiattaforma e gratuito prodotto da Adobe, che consente di visualizzare e stampare i le nel formato pdf. Si scarica da http://www.adobe.com/it/. un programma gratuito per Unix/Linux, che permette di visualizzare le ps, eps e pdf. Permette, fra laltro, di convertire le dal formato eps e ps al formato pdf. Esiste anche un programma simile, GSview, disponibile per Windows e Unix/ Linux. Entrambi i programmi si scaricano dal sito http://pages. cs.wisc.edu/~ghost/ e richiedono Ghostscript (disponibile allo stesso indirizzo Internet). un programma gratuito nato per la piattaforma Linux e ora disponibile anche per le piattaforme Windows e Mac. Consente di modicare le immagini bitmap di svariati formati e di registrarle in uno qualunque dei numerosi formati che in grado di gestire. Si scarica da http://www.gimp.org/. Questi programmi accessori sono utili di per s e quindi possono A essere impiegati anche indipendentemente da L TEX, tuttavia risultano molto utili per svolgere egregiamente certe funzioni che solo un programma specializzato sa fare, certamente meglio di quanto potrebbe fare un programma generico dalle troppe funzioni.

18

.
A Con L TEX si intende anche A pdfL TEX.

I pro e i contro di A A L TEX e pdfL TEX

A bene che il lettore sappia che con L TEX si intende non solo il A programma L TEX vero e proprio, che produce in output le dvi, ma A anche il programma pdfL TEX, il cui formato di uscita direttamente il pdf (senza che siano necessarie conversioni di alcun genere). Entrambi i formati hanno pro e contro e vengono usati con scopi differenti [Mori, 2007, p. 34]. Il formato dvi permette la ricerca diretta (facendo doppio clic sul codice allinterno delleditor, il programma di visualizzazione del dvi trova il rispettivo output) e inversa (facendo doppio clic allinterno del programma di visualizzazione del dvi, il cursore viene posizionato sul rispettivo codice allinterno delleditor), che possono essere utili in fase di elaborazione del documento. Tuttavia la maggioranza dei visualizzatori di dvi non visualizza correttamente gli effetti di alcuni comandi che modicano le gure e inoltre non sfrutta il pacchetto microtype. Il pdf, invece, non offre in generale la ricerca diretta e inversa in realt, su macchine Mac che usano la distribuzione MacTEX e su PC che impiegano SumatraPDF (http: //william.famille-blum.org/software/sumatra/) per visualizzare i pdf, la ricerca eseguibile in entrambi i sensi anche su le pdf. Tuttavia, il pdf visualizza correttamente tutti gli effetti del pacchetto graphicx, sfrutta il pacchetto microtype, un formato molto diffuso anche A tra coloro che non usano L TEX, permette di attivare i riferimenti ipertestuali forniti dal pacchetto hyperref e consente di restringere laccesso al documento per mezzo di password: per esempio, possibile limitare laccesso al le, limitarne la stampa (impedirla, oppure consentirla solo a bassa risoluzione) e limitarne le modiche (estrazione di testo, estrazione o eliminazione di pagine, . . . ). Si noti che la creazione di un pdf pu essere effettuata nei due seguenti modi:

la conversione di un le dvi in pdf (di regola tramite lapplicazione in sequenza dei programmi dvips e ps2pdf o mediante il programma dvipdfmx, operazione per la quale generalmente sufciente cliccare su un apposito pulsante delleditor usato);
A la compilazione diretta del sorgente .tex con pdfL TEX.

Per sfruttare appieno le potenzialit del formato pdf, necessario usare A pdfL TEX e non convertire un dvi in pdf.

Si consiglia di evitare i pacchetti incompatibili con A pdfL TEX.

Tuttavia, per sfruttare appieno le potenzialit del formato pdf necesA sario usare pdfL TEX: per esempio, il formato pdf permette di ottenere i riferimenti ipertestuali (hyperlink), i segnalibri (bookmark) e le immagini in miniatura (thumbnail) che non vengono prodotti nella conversione A a partire da le dvi. Il programma pdfL TEX presente in tutte le pi A importanti distribuzioni di L TEX ed gestito dai principali editor di A testo dedicati a L TEX. A A In generale, i le sorgente elaborabili con L TEX o con pdfL TEX sono identici, o possono essere resi tali. Pertanto quando si parla di un A le sorgente elaborabile con L TEX, si intende che il le elaborabile A indifferentemente anche da pdfL TEX. Tuttavia, esistono casi in cui un le conforme alla grammatica di A A L TEX pu risultare incompatibile con pdfL TEX. Ci succede raramente, e di solito dipende dalluso di pacchetti particolarmente specializzati.

. Se possibile, sarebbe meglio evitare tali pacchetti, ricorrendo eventualmente a pacchetti alternativi, ugualmente adeguati per la particolare funzione per la quale essi vengono invocati [Beccari, 2009, p. 21]. Questa soluzione funziona nella stragrande maggioranza dei casi. (Il pacchetto PSTricks, per esempio, produce codice PostScript che non pu A essere inserito direttamente in un le da compilare con pdfL TEX. Fino a qualche tempo fa era possibile solo la conversione in pdf a partire da dvi, o linserimento di immagini esterne. Ora esistono per anche dei pacchetti, come pst-pdf, che rendono praticamente automatica la A compilazione anche con pdfL TEX di le contenente codice PSTricks.) A A Tipicamente, lincompatibilit fra L TEX e pdfL TEX non dipende dal le sorgente, ma dai le inclusi; ci accade di regola con i le che A contengono delle immagini (L TEX richiede immagini esclusivamente A in formato eps, mentre pdfL TEX accetta immagini in formato pdf, se vettoriali, oppure jpg o png, se bitmap). Nel paragrafo 6.2 a pagina 93 sono spiegate le soluzioni da adottare per risolvere questo problema. In denitiva, si consiglia di usare il formato dvi durante la stesura di un documento, solo se si usa Windows o Linux e si ha la necessit di usare le funzioni di ricerca diretta e inversa. Per tutti gli altri casi, tra cui la stampa e la distribuzione del documento in formato elettronico, si consiglia di usare A pdfL TEX.

19

Si consiglia A pdfL TEXper la stampa e la distribuzione del documento.

4
4.1 4.2

LE BASI

4.3 4.4 4.5

4.6 4.7

4.8

A Il nostro primo documento con L TEX 21 4.1.1 La scrittura del sorgente 22 4.1.2 La compilazione 22 4.1.3 La correzione degli errori 23 4.1.4 La visualizzazione 23 4.1.5 La stampa 23 A I le sorgenti di L TEX 24 4.2.1 Spazi 24 4.2.2 I caratteri speciali 24 4.2.3 I comandi 26 4.2.4 I commenti 27 La struttura del le sorgente 27 Le classi di documento 29 I pacchetti 31 4.5.1 Che cosa sono? 31 4.5.2 Come sapere se se ne ha bisogno? 31 4.5.3 Come scoprire qual il pacchetto giusto? 4.5.4 Come installarli? 32 4.5.5 Come caricarli? 34 4.5.6 Come imparare a usarli al meglio? 35 4.5.7 E i le .ins e .dtx? 35 4.5.8 I pacchetti di uso pi comune 35 Gli stili di pagina 37 I le con cui si ha a che fare 37 4.7.1 I le dellutente 38 4.7.2 File di classi, pacchetti e stili 38 4.7.3 I le ausiliari 38 4.7.4 I le di output 39 Documenti di grandi dimensioni 39

31

In questo capitolo vengono presentate le nozioni fondamentali che permettono di avere una conoscenza di base del funzionamento di A L TEX; procedendo nella lettura, sar possibile estendere e arricchire queste conoscenze con nuove informazioni.

.
A In questo paragrafo realizzeremo con L TEX un semplice documento, imparando come:

scrivere il sorgente del documento; compilarlo; trovare e correggere gli errori che pu contenere;

21

22

visualizzare il documento; stamparlo. . .


Ciao, mondo!

La scrittura del sorgente

Innanzitutto, creiamo una cartella prova nella quale inserire tutti i le del documento. Ci fatto, con leditor di testo prescelto, che di A regola sar un editor specico per L TEX, ma che in teoria pu essere un editor qualunque, scriviamo il seguente testo (le istruzioni in esso contenute verranno spiegate nei paragra successivi):
\documentclass[a4paper]{article} \usepackage[latin1]{inputenc} \usepackage[italian]{babel} \usepackage[T1]{fontenc} \begin{document} Ecco il mio primo documento con \LaTeX. \end{document}

Registriamo il le con il nome primo.tex (per convenzione, i le A sorgente di L TEX hanno lestensione .tex). . . La compilazione

A Se ci siamo serviti di un editor specico per L TEX, per compilare il A sorgente basta premere lapposito pulsante delleditor. L TEX mostra man mano quello che sta facendo, emettendo un messaggio di questo tipo:

This is pdfTeX, Version 3.141592 (Web2C 7.5.6) (primo.tex LaTeX2e <2005/12/01> Babel <v3.8> and hyphenation patterns for english, italian, loaded. (/usr/local/texlive/2007/texmf-dist/tex/latex/base/article.cls Document Class: article v1.4f Standard LaTeX document class (/usr/local/texlive/2007/texmf-dist/tex/latex/base/inputenc.sty (/usr/local/texlive/2007/texmf-dist/tex/latex/base/latin1.def)) (/usr/local/texlive/2007/texmf-dist/tex/generic/babel/babel.sty (/usr/local/texlive/2007/texmf-dist/tex/generic/babel/italian.ldf (/usr/local/texlive/2007/texmf-dist/tex/generic/babel/babel.def))) (/usr/local/texlive/2007/texmf-dist/tex/latex/base/fontenc.sty (/usr/local/texlive/2007/texmf-dist/tex/latex/base/t1enc.def)) [1] (primo.aux) ) Output written on primo.pdf (1 page, 17114 bytes). Transcript written on primo.log.

Va tenuto presente che la pressione del pulsante delleditor equivalente a dare dalla linea di comando (dopo essersi portati nella stessa A cartella del le) listruzione latex primo.tex, se si compila con L TEX, AT X.1 o pdflatex primo.tex, se si compila con pdfL E
1 Come avviare linterfaccia a linea di comando (che si Windows si chiama prompt dei comandi, su Mac Terminale e su Linux Terminale o Console) dipende dal sistema operativo usato. Su Windows essa si raggiunge da Avvio/Programmi/Accessori, su Mac ci si arriva dalla cartella Applicazioni/Utility, mentre su Linux come avviarla dipende dalla distribuzione usata.

.
A A In questo modo, si consapevoli del fatto che L TEX/pdfL TEX (e non leditor) il programma che elabora il sorgente .tex, che emette i messaggi e che produce il .dvi o il .pdf, lavorando dietro le quinte. La compilazione non dunque semplicemente il tempo che bisogna attendere per vedere il .dvi o il .pdf, ma il processo durante il quale il programma comprende la nostra volont e la trasforma per noi in un le (tipo)graco. questo processo che viene avviato dalla pressione del tasto opportuno nelleditor usato.

23

Premendo un opportuno pulsante delleditor si d avvio alla compilazione da A parte di L TEX, che lavora dietro le quinte.

. .

La correzione degli errori

Se il codice sorgente contiene un errore, appare un messaggio di questo tipo:


! Undefined control sequence. l.6 Questo il mio primo documento con \latex ?
A Quando trova un errore, L TEX indica:

la natura dellerrore (in questo caso Undefined control sequence, sequenza di controllo non denita, ovvero comando sconosciuto) ; la riga in cui si trova lerrore (l.6) ; il comando sconosciuto (il comando giusto \LaTeX , non \latex ; bisogna fare attenzione alle maiuscole!). Per interrompere la compilazione sufciente dare x seguito da Invio. Dopo aver corretto il sorgente, si registra il le e si ricompila. . . La visualizzazione

A Se si usa un editor specico per L TEX e se non ci sono errori, il programma per visualizzare il documento (in formato .dvi se si comA A pilato con L TEX, .pdf se si compilato con pdfL TEX) viene attivato automaticamente.2 Si aprir una nestra che mostra il documento cos come verr stampato. Con i pulsanti situati nella nestra del programma possibile:

spostarsi allinterno del documento; modicarne lingrandimento. . . La stampa

Per stampare il documento, per la ragioni esaminate nel paragraA fo 3.7 a pagina 18 opportuno compilare con pdfL TEX; ci fatto, per eseguire la stampa basta premere lapposito pulsante del programma usato per visualizzare il .pdf.
2 In alternativa, se si opera dalla linea di comando, per visualizzare il documento sufciente, dopo essersi portati nella stessa cartella del le, dare listruzione nome del programma primo.dvi oppure nome del programma primo.pdf, dove nome del programma il nome del lettore di .dvi o di .pdf usato.

24

.
A Un le sorgente di L TEX un le di testo in ascii puro. Pu essere creato con qualunque editor di testi e contiene sia il testo del documenA to sia i comandi che comunicano a L TEX come impostare il formato del testo.

. .
Pi spazi sono considerati come uno spazio.

Spazi

Una riga vuota indica la ne di un capoverso.

Nel testo sorgente lo spazio e la tabulazione sono trattati indifferenA temente come spazio da L TEX. Pi spazi consecutivi sono considerati come uno spazio. Lo spazio allinizio di una riga viene ignorato, e una sola interruzione di riga trattata come uno spazio. Una riga vuota tra due righe di testo indica la ne di un capoverso. Pi righe vuote di seguito sono considerate alla stessa maniera di una riga vuota. Il testo che segue un esempio: nella parte sinistra vi il codice sorgente, e a destra visualizzato il risultato in stampa.
Non ha alcuna importanza se si mettono uno o tanti spazi dopo una parola. Una riga vuota fa iniziare un nuovo capoverso.

Non ha alcuna importanza se si mettono uno o tanti spazi dopo una parola. Una riga vuota fa iniziare un nuovo capoverso.

. .

I caratteri speciali

Ogni programma di composizione tipograca riceve dallutente: il testo; i comandi per impostare il formato del testo.
A Con L TEX si inseriscono i comandi assieme al testo.

Caratteri speciali

I programmi di composizione sincrona prendono i comandi da appositi menu: lutente vede leffetto, mentre la codica interna rimane A nascosta. Con L TEX, invece, si inseriscono i comandi insieme con il testo. A Per distinguere i comandi dal testo, L TEX interpreta in modo partiA colare certi caratteri. I caratteri speciali di L TEX sono i seguenti:
\ { } % $ _ & # ^ ~

\
A La barra rovescia (o backslash) inizia i comandi di L TEX.

{ } Le parentesi graffe racchiudono i gruppi. % Il simbolo di percento inizia i commenti. $ Il dollaro delimita le formule matematiche in corpo.

.
Tabella 2: Codici ascii di alcuni caratteri di uso frequente.

25

Simbolo
{ } ~

Codice 96 123 125 126

_ La sottolineatura (o underscore) indica i pedici nelle formule. & La e commerciale (o ampersand) serve da separatore nelle tabulazioni. # Il cancelletto (o diesis, o hash) indica largomento quando si deniscono nuovi comandi. Il cappuccio (o caret) indica lesponente nelle formule matematiche. ~ La tilde produce uno spazio insecabile.
A Ogni utente di L TEX deve imparare a localizzare sulla tastiera i caratteri speciali. Purtroppo la posizione dei caratteri speciali non standardizzata: cambia, fra laltro, con il sistema operativo. A volte pu essere necessario premere pi tasti insieme, o anche digitare codici numerici. Chi scrive con una tastiera italiana pu avere problemi a digitare i quattro caratteri { ~ }, che non compaiono su alcun tasto; bisogna fare attenzione a distinguere il carattere (virgoletta aperta, accento grave) da (usato per inserire lapostrofo, la virgoletta chiusa e laccento acuto).

Inserire i caratteri che non compaiono sulla tastiera italiana

Se si usa una tastiera italiana PC e si adopera Windows, i caratteri { ~ } possono essere ottenuti tenendo premuto il tasto alt e digitando il codice ascii relativo con il tastierino numerico (vedi la tabella 2). Le parentesi graffe aperta e chiusa si ottengono anche premendo rispettivamente alt gr + maiuscole + e alt gr + maiuscole + + (ovvero come se si dovessero fare delle parentesi quadre maiuscole). Se si usa una tastiera italiana Mac, la tilde si ottiene con opzione + 5, la virgoletta aperta con opzione + 9 e le parentesi graffe aperta e chiusa con opzione + maiuscole + e opzione + maiuscole + +, rispettivamente. Su Linux, la tilde si ottiene con alt gr + , la virgoletta aperta con alt gr + e le parentesi graffe aperta e chiusa con alt gr + 7 (oppure alt gr + maiuscole + ) e alt gr + 8 (oppure alt gr + maiuscole + +), rispettivamente.

26

Stampare i caratteri speciali

I caratteri speciali (tranne la barra rovescia, il cappuccio e la tilde) si possono stampare facendoli precedere nel testo sorgente da \.
\{ \} \% \$ \_ \& \#

{}%$_&#

Il carattere di barra rovescia \ non pu essere immesso aggiungendo un altro \ davanti a esso (la sequenza \\ si usa infatti per le interruzioni di riga nei casi che lo prevedono): a tal ne si impiega il comando \textbackslash . Il cappuccio e la tilde si ottengono facendoli precedere da \ e seguire da due parentesi graffe {}, perch \^ e \~ sono comandi per gli accenti (vedi il paragrafo 5.7.3 a pagina 61) e richiedono un argomento. In alternativa, possibile usare i comandi \textasciicircum e \textasciitilde , che producono simboli leggermente diversi.
\^{} \textasciicircum \\ \~{} \textasciitilde

^ ~

. .

I comandi

A In L TEX, i comandi sono composti da una barra rovescia \ pi altri caratteri. Nei comandi, maiuscole e minuscole sono distinte. Ci sono due tipi di comandi:

comandi che iniziano con una barra rovescia \ seguita da un nome fatto di sole lettere alfabetiche; il comando nisce con il primo carattere non alfabetico (esempi: \TeX, \end{document}, \documentclass). comandi che iniziano con una barra rovescia \ seguita da esattamente un carattere non alfabetico (esempi: \{, \}, \%, \$, \_, \&, \#, \~).
A Gli spazi dopo i comandi sono ignorati da L TEX. Se si desidera ottenere uno spazio dopo un comando, si deve scrivere {} e uno spazio, oppure scrivere un comando esplicito di spaziatura, come \ .

\Ars{} la rivista del Gruppo Utilizzatori Italiani di \TeX{} e \LaTeX.

ArsTEXnica la rivista del Gruppo A Utilizzatori Italiani di TEX e L TEX.

Argomenti obbligatori e facoltativi

Per riprodurre il logo di ArsTEXnica serve il comando \Ars del pacchetto guit.3 Alcuni comandi necessitano di un argomento (o parametro) che deve essere fornito tra parentesi graffe { } dopo il nome del comando. Certi comandi accettano parametri opzionali (facoltativi) che si aggiungono dopo il nome del comando tra parentesi quadre [ ]. I prossimi esempi A si servono di alcuni comandi di L TEX.
3 Il pacchetto xspace permette di denire comandi seguiti da uno spazio, a meno che non siano seguiti da determinati segni di punteggiatura (vedi il paragrafo 10.1.2 a pagina 164).

27

Data odierna: \today. Sono qui in \emph{dieci} minuti.

Data odierna: 1 ottobre 2009. Sono qui in dieci minuti.

Il comando \today indica la data odierna nella lingua corrente. Il comando \emph serve per evidenziare il testo (vedi il paragrafo 5.11 a pagina 65). . . I commenti

A Quando, durante lelaborazione di un le sorgente, L TEX incontra un carattere % (eccetto \%), ignora il resto della riga, linterruzione di riga, e tutti gli spazi bianchi allinizio della riga successiva. Il carattere % pu essere dunque impiegato per iniziare un pro memoria che non viene stampato. Talvolta il percento si usa per spezzare parole troppo lunghe, o per dividere righe in cui non sono permessi spazi bianchi o interruzioni di riga.

Pro memoria

Ecco un % semplice, % ma istruttivo <---esempio: Supercal% ifragilist% ichespiralidoso.

Ecco un esempio: Supercalifragilistichespiralidoso.

Per commenti pi lunghi si usa lambiente comment fornito dallomonimo pacchetto.


Ecco un altro \begin{comment} semplice, ma utile \end{comment} esempio per includere commenti nel proprio documento.

Ecco un altro esempio per includere commenti nel proprio documento.

.
A Quando L TEX elabora un le sorgente, si aspetta di seguire una cerA ta struttura. Un testo sorgente di L TEX deve contenere almeno una dichiarazione di classe,

Dichiarazione di classe

\documentclass{ . . . }

e le dichiarazioni di inizio e ne del documento:


\begin{document} ... \end{document}

Tutto ci che compreso tra i comandi \documentclass{ . . . } e \begin{document} si dice preambolo del documento (o semplicemente preambolo) e comprende:

Preambolo

28

Minimalismo
L. Pantieri 24 giugno 2008

Indice 1 Inizio 2 Fine 1 Inizio 1 1

Bene, qui inizia il mio grazioso articolo. 2 Fine

. . . e qui nisce.

A Figura 5: Un breve esempio di documento composto con L TEX.

A il caricamento di pacchetti che estendono le capacit di L TEX: \usepackage{ . . . };

le denizioni dei comandi e degli ambienti personalizzati (che si impostano con i comandi \newcommand e \newenvironment); la scelta delle varie opzioni generali; informazioni come \title{ . . . }, \author{ . . . }, eccetera.
Corpo del documento

Fra \begin{document} ed \end{document} va il testo vero e proprio, o corpo del documento. La gura 5 mostra un esempio di documento di piccola lunghezza, A composto con L TEX. Il documento stato ottenuto compilando (due volte) il codice seguente:
\documentclass[a4paper]{article} \usepackage[italian]{babel} \usepackage[latin1]{inputenc} \usepackage[T1]{fontenc} \author{L.~Pantieri} \title{Minimalismo} \begin{document} \maketitle \tableofcontents \section{Inizio} Bene, qui inizia il mio grazioso articolo. \section{Fine} \dots e qui finisce. \end{document}

Con \begin{document} inizia il corpo del documento. Il comando \maketitle produce il titolo. Il comando \tableofcontents produce
A lindice generale: alla prima compilazione, L TEX prende annotazioni in le ausiliari .aux e .toc, che vengono inserite con la seconda

. compilazione. Il comando \section{ titolo del paragrafo } inizia un paragrafo. Il comando \dots produce i punti ellittici . . .. Il comando \end{document} termina il documento.

29

.
A La prima informazione che L TEX richiede quando elabora un le sorgente il tipo di documento che lautore desidera realizzare; questo si specica con il comando \documentclass :

\documentclass[ opzioni ]{ classe }

Di seguito vengono elencate le principali classi standard di documento. article si usa per scrivere articoli; report serve per comporre relazioni contenenti diversi capitoli ed eventualmente dotate di un sommario; book si usa per scrivere libri o tesi; letter permette di scrivere lettere. Esistono numerose altre classi aggiuntive per comporre svariati documenti, compresi lucidi e presentazioni. Per esempio, questo documento non composto con una classe standard, ma con lo stile ClassicThesis, che si basa sulle classi KOMA-Script, leggermente diverse da quelle standard. Per i dettagli: [Pantieri, 2008a].4 Il parametro opzioni del comando \documentclass adatta il comportamento della classe del documento; le opzioni devono essere separate da virgole. Di seguito vengono descritte le opzioni globali pi comuni per le tre classi principali article, report e book (dal momento che la classe letter fondamentalmente diversa dalle altre tre, per essa si rimanda alla relativa documentazione).
10pt, 11pt, 12pt Queste opzioni impostano la dimensione del font prin-

Le classi standard di A L TEX

Opzioni di classe

cipale nel documento. Il valore predenito di 10 punti.


a4paper, a5paper, . . . Deniscono le dimensioni del foglio. La dimensione predenita il formato americano letterpaper. Oltre a questa possono essere specicate, executivepaper, legalpaper e b5paper. oneside, twoside Specicano se deve essere generato un documento a

doppia o singola facciata. Le classi article e report sono a singola facciata e la classe book a doppia facciata per impostazione predenita.
4 Tra le classi non standard pi diffuse vi sono memoir (che consente di personalizzare qualunque aspetto del documento in modo particolarmente versatile), toptesi (specica per tesi di laurea e dottorato), beamer (per fare presentazioni), examdesign (per scrivere compiti in classe e temi desame). La documentazione di queste classi disponibile su http://www.ctan.org/.

30
A Tabella 3: Le opzioni pi comuni delle classi standard di L TEX.

Opzione
10pt letterpaper oneside twoside openany openright titlepage final

book predenita predenita predenita

report predenita predenita predenita predenita

article predenita predenita predenita indenita indenita

predenita predenita predenita predenita predenita

predenita

openany, openright Lopzione openright, predenita nella classe book,

fa iniziare i capitoli sempre in una pagina destra, mentre lopzione openany, predenita nella classe report, li fa iniziare nella successiva pagina a disposizione. Queste opzioni non sono disponibili con la classe article, che non ha capitoli.
A twocolumn D istruzioni a L TEX di impaginare il documento in due

colonne.

titlepage, notitlepage Queste opzioni specicano se dopo il titolo

del documento debba avere inizio o no una nuova pagina. La classe article non d inizio a una nuova pagina per impostazione predenita, al contrario delle classi report e book.
fleqn Compone le formule visualizzate allineandole a sinistra (rispet-

to a un margine rientrato) invece che centrandole.


leqno Dispone la numerazione delle formule sulla sinistra invece che

sulla destra.
A draft, final Lopzione draft evidenzia le righe che L TEX non riu-

scito a comporre adeguatamente, e che quindi fuoriescono dal margine, con una spessa linea nera sul margine destro, rendendole pi facili da individuare. Ci non accade con lopzione final. Le due opzioni sono caricate anche dagli altri pacchetti e hanno effetto sul loro funzionamento. Per esempio, il pacchetto graphicx non carica le immagini quando specicata lopzione draft: al loro posto viene mostrato un riquadro, di dimensioni corrispondenti, che contiene solo il nome dellimmagine.

A Per esempio, un le sorgente per un documento composto con L TEX potrebbe iniziare con la riga

\documentclass[a4paper,11pt,twoside]{article}
A che ordina a L TEX a impaginare il documento come articolo, con una dimensione dei font di base pari a undici punti, adeguato alla stampa in due facciate in formato A4. Si noti inoltre che nelle classi standard report e article lambiente abstract permette di scrivere il sommario. (I libri generalmente non

. hanno un sommario, ma eventualmente un apposito capitolo introduttivo. questo il motivo per cui la classe book non ha alcun ambiente predenito per il sommario.)

31

.
Scrivendo dei documenti, capita frequentemente di avere alcune esiA genze che L TEX di base non soddisfa. Per esempio, nel linguaggio stanA dard che L TEX usa non possibile gestire direttamente linserimento delle immagini n possibile sillabare testi scritti in lingue diverse dallinglese o disporre di un metodo per modicare i margini di pagina in maniera comoda. In questi casi si sfrutta la struttura modulare di A L TEX, che permette di estenderne le capacit: queste estensioni sono dette pacchetti. . . Che cosa sono?
La struttura A modulare di L TEX

Fondamentalmente, un pacchetto un le di stile (con estensione permettono di svolgere le operazioni pi disparate. . . Come sapere se se ne ha bisogno?
A .sty), scritto in linguaggio L TEX, contenente una serie di istruzioni che

In genere, se per ottenere il risultato sperato si deve faticare troppo, probabilmente qualcuno, trovatosi nella stessa condizione, ha gi provveduto a creare un pacchetto per semplicare il lavoro. A Viceversa, pu capitare che, compilando un le sorgente, L TEX produca un messaggio di errore del tipo Cant find file guit.sty: ci signica che viene caricato un pacchetto (guit, nellesempio consideA rato) che non presente nella distribuzione di L TEX usata. In questo caso bisogna seguire le istruzioni del paragrafo 4.5.4 nella pagina seguente. . . Come scoprire qual il pacchetto giusto?
Capire qual il pacchetto che fa al proprio caso

Questo lunico passaggio in cui valgono gusto, abilit personale e un pizzico di fortuna: cercando sul motore di ricerca del sito di GuIT oppure su CTAN o su Sarovar, si trovano preziosi riferimenti a soluzioni per una vastissima gamma di problemi.5 Nellesempio dellinserimento delle immagini, il pacchetto graphicx permette di farlo facilmente (vedi il paragrafo 6.2.4 a pagina 96). Per quanto riguarda la sillabazione di testi scritti in lingue diverse dallinglese, necessario caricare e congurare opportunamente il pacchetto babel (vedi il paragrafo 5.1.1 a pagina 41). Circa la modica dei margini di pagina, consigliabile rivolgersi ai pacchetti layaureo o geometry, se si usano le classi standard (vedi il paragrafo 5.5.1 a pagina 51).
5 http://www.guit.sssup.it/ricerca/, http://www.ctan.org/, http://texcatalogue. sarovar.org/.

32

. .
Installare un pacchetto

Come installarli?

A Nelle distribuzioni di L TEX pi diffuse sono inclusi numerosi pacchetti, sufcienti per gran parte delle esigenze di scrittura, ma pu essere necessario installarne altri. Le due maggiori distribuzioni, MiKTEX e TEX Live (questultima dalla versione 2008 in poi), permettono di installare e aggiornare i pacchetti tramite appositi programmi (package manager). Se per il pacchetto che si desidera installare non fa parte della distribuzione, bisogna procedere a uninstallazione manuale.

Installare o aggiornare un pacchetto con MiKTEX Se si usa il sistema operativo Windows e si utilizza MiKTEX, possibile installare al volo un pacchetto: quando si compila un documento che fa uso di un pacchetto disponibile con la distribuzione ma non ancora installato, MiKTEX lo aggiunge automaticamente, scaricando i dati dallarchivio locale o da ctan. In alternativa, possibile servirsi del programma MiKTEX Package Manager (vedi la gura 6a a fronte), seguendo questa procedura: Si esegue il programma MiKTEX Package Manager (dal menu Avvio di Windows si seleziona il sottomenu Programmi; da qui si sceglie la voce MiKTEX, da cui si lancia Browse Packages): apparir una nestra con lelenco, in ordine alfabetico, dei pacchetti disponibili nellarchivio (repository); in corrispondenza di ciascuno di essi viene indicato se esso installato e ne viene fatta una breve descrizione. Si evidenzia il nome dei pacchetti che si desiderano installare. Si preme il pulsante + che si evidenzier e si attende che il processo di installazione sia concluso. Si effettua laggiornamento dei cosiddetti le di formato di MiKTEX (Avvio Programmi MiKTEX Settings General Update Formats). Pu capitare che non sia il pacchetto a mancare, ma che la versione che si possiede sia datata. In questo caso si usa il programma MiKTEX Update Wizard (Avvio Programmi MiKTEX Update), che controlla, tramite una semplice interfaccia graca, quali pacchetti tra quelli installati sono disponibili con una nuova versione e propone di aggiornarli. Installare o aggiornare un pacchetto con TEX Live
Il TEX Live Manager

Il MiKTEX Package Manager

Dal 2008, la distribuzione TEX Live, che su Mac nota come MacTEX, contiene il programma TEX Live Manager per installare e aggiornare i pacchetti (http://www.tug.org/texlive/tlmgr.html). Il programma pu essere usato tramite uninterfaccia graca oppure attraverso la linea di comando. In entrambi i casi il programma va avviato dalla linea di comando, con i privilegi di amministratore (come acquisirli dipende dal sistema operativo su cui si lavora), fornendo, se si desidera linterfaccia graca, lopzione --gui. La distribuzione MacTEX fornisce

33

(a) Il MiKTEX Package Manager.

(b) La TEX Live Utility.

Figura 6: La gestione automatica dei pacchetti.

anche uninterfaccia graca nativa per Mac: TEX Live Utility. Se si usa Mac quindi preferibile usare questultima, che evita il ricorso a X11 e alla linea di comando. La TEX Live Utility, inclusa nellarchivio MacTeXtras (http://tug.org/mactex/mactextras.html, vedi la gura 6b), linterfaccia graca consigliata agli utenti Mac per installare e aggiornare i pacchetti (richiede Mac OS X 10.5). Quando viene eseguito la prima volta, il programma aggiorna linstallazione di MacTEX. Per aggiornare tutti i pacchetti basta premere il pulsante Update All della barra degli strumenti; si possono aggiornare singoli pacchetti selezionandoli nel relativo elenco e premendo il pulsante Update. I pacchetti si installano usando la scheda Manage Packages. Se si preferisce usare il programma TEX Live Manager dalla linea di comando (scelta comune fra gli utenti di Linux), queste sono le operazioni pi comuni da compiere: tlmgr list elenca tutti i pacchetti disponibili, contrassegnando con i quelli gi installati; tlmgr install pacchetto installa il pacchetto prescelto; tlmgr update --list elenca i pacchetti aggiornabili; tlmgr update --all aggiorna tutti i pacchetti; tlmgr update pacchetto aggiorna il pacchetto prescelto. Per acquisire i privilegi di amministratore, se si usa Linux (o Mac) necessario premettere a ogni istruzione il comando sudo (super user do) o, in alternativa, dare le istruzioni in qualit di utente root quale alternativa seguire dipende dal tipo di sistema operativo usato. Linterfaccia graca rispecchia fedelmente le operazioni del programma da riga di comando. Dopo averla avviata, con tlmgr --gui, bisogna caricare lelenco dei pacchetti, premendo il tasto Carica, nella parte alta della prima schermata. Anche in questo caso, i pacchetti gi installati verranno visualizzati con una i accanto. Per installare i pacchetti prescelti basta selezionarli e premere il tasto Installa selezionati.
La scelta di gestire i pacchetti dalla linea di comando comune fra gli utenti di Linux.

34

Per effettuare laggiornamento di uno, pi o tutti i pacchetti, bisogna spostarsi nella scheda Aggiornamento e usare i tasti Aggiorna selezionati (dopo aver effettuato una selezione) oppure Aggiorna tutti. Installare manualmente un pacchetto
Per installare un pacchetto basta copiare il le .sty nella sottocartella /tex/latex/ dellalbero personale.

Talvolta (ma un caso che si verica di rado) pu essere necessario installare manualmente un pacchetto non compreso nella propria distribuzione. In questo caso bisogna sapere dove va sistemato il relaA tivo le .sty, in modo che L TEX lo possa trovare. Se si usano MiKTEX o TEX Live, sufciente copiare il le .sty nella sottocartella /tex/ latex/ dellalbero personale (ovvero la cartella in cui il singolo utente pu inserire i pacchetti, le classi e gli stili che usa e che non sono inclusi nella distribuzione), eventualmente creando tale sottocartella, se non ci fosse gi.6 La posizione dellalbero personale dipende dalla particolare distribuzione usata. Su Windows, se si usa la distribuzione MiKTEX lalbero personale la cartella C:\Documents and Settings\ nome dellutente \Dati applicazioni\MiKTeX\2.7\ oppure, equivalentemente, la cartella C:\Documents and Settings\ nome dellutente \Impostazioni locali\Dati applicazioni\MiKTeX\2.7\. Su Mac, lalbero personale $HOME/Library/texmf/. Su Linux, la posizione dellalbero personale dipende dalla particolare distribuzione usata. La radice dellalbero personale in qualsiasi distribuzione pu essere visualizzata dalla linea di comando con kpsexpand $TEXMFHOME. Su una Debian, per esempio, lalbero personale radicato in ~/texmf/. In alternativa, sufciente copiare i le necessari nella stessa cartella in cui si trova il le .tex. . . Come caricarli?

Caricare un pacchetto

I pacchetti si caricano con il comando


\usepackage[ opzioni ]{ pacchetto }

dove pacchetto il nome del pacchetto e opzioni un elenco di voci, separate da virgole, che specicano particolari caratteristiche del pacchetto. Unopzione pu essere costituita da ununica parola o da una voce del tipo chiave = valore .
6 Le distribuzioni MiKTEX e TEX Live prevedono altre due cartelle in cui trovare i le da usare: lalbero principale (ovvero la cartella in cui sono contenuti i le installati con la distribuzione usata, che sono disponibili per tutti gli utenti) e lalbero locale (ovvero la cartella che rende i le disponibili a tutti gli utenti senza dover modicare manualmente lalbero principale). Per i dettagli: http://www.guit.sssup.it/installazione/ pacchetti.php.

. . . Come imparare a usarli al meglio?

35

A Di regola, chi scrive un pacchetto per L TEX scrive anche un documento in cui viene descritto il funzionamento del pacchetto stesso. La documentazione spesso risulta essere di due tipi: il manuale duso, pensato per chi intende solo utilizzare il pacchetto, e la descrizione del codice che costituisce il pacchetto, per chi voglia cimentarsi nel suo sviluppo futuro. A volte i due tipi di documento sono uniti in un documento solo. Non bisogna spaventarsi, quindi, se cercando il manuale duso si trova un documento lungo. La documentazione di un pacchetto solitamente disponibile nello stesso luogo virtuale in cui ci si muniti del pacchetto, oppure viene scaricata automaticamente nel caso si usino sistemi avanzati di gestione dei pacchetti. In ogni caso, tale documentazione pu essere trovata facilmente tramite il motore di ricerca di ctan (http: //www.ctan.org/). Nella maggior parte dei casi, si tratta di un le pdf con lo stesso nome del pacchetto. Altre volte la documentazione inclusa direttamente nel le .sty, sotto forma di commenti.

La documentazione di un pacchetto

. .

E i le .ins e .dtx?

In alcuni casi, i pacchetti che si scaricano da Internet non contengono direttamente il le .sty e la relativa documentazione .pdf, ma un le di estensione .ins e uno di estensione .dtx. Basta procedere in questo modo: Il le .dtx contiene la documentazione del pacchetto. Eseguendo A L TEX su questo le .dtx si ottiene il manuale ben composto, e non un semplice e spoglio le di testo.
A Eseguendo invece L TEX sul le .ins, si ottiene il le .sty desiderato (o anche pi di uno, a seconda dei casi).

A questo punto, per ultimare linstallazione, sufciente spostare i le A .sty ottenuti in una cartella accessibile a L TEX e, se necessario, effettuare laggiornamento della base di dati dei pacchetti, come spiegato pocanzi. . . I pacchetti di uso pi comune

I seguenti pacchetti di uso comune devono essere presenti in tutte le distribuzioni n dallinizio. Lunico di questi che richiede un intervento dellutente babel, per caricare in memoria le regole di sillabazione delle lingue (vedi il paragrafo 5.1.1 a pagina 41). amsmath fornisce svariate estensioni per il miglioramento della gestione di documenti che contengono formule matematiche. amssymb arricchisce la scelta di simboli matematici. amsthm migliora la gestione degli enunciati matematici. array denisce nuove opzioni per lallineamento delle colonne di un ambiente tabular.

36

babel permette luso di lingue diverse dallinglese. backref permette di avere, nelle voci bibliograche, lindicazione delle pagine in cui esse sono citate. booktabs migliora laspetto delle tabelle. caption consente di personalizzare le didascalie. chngpage permette di modicare i margini di una singola pagina. enumitem consente di personalizzare gli elenchi. eurosym introduce il simbolo delleuro. fancyhdr permette di creare stili di pagina personalizzati. oat permette di creare oggetti mobili personalizzati e di forzare il posizionamento di un oggetto. fontenc specica la codica dei font da usare nel documento stampato. footmisc consente di personalizzare le note a pi di pagina. geometry imposta i margini di pagina nelle classi standard. graphicx gestisce linserimento delle immagini. hyperref abilita i riferimenti ipertestuali. indentrst rientra il primo capoverso di ogni unit di sezionamento (rispettando una consuetudine spesso seguita nei documenti italiani). inputenc permette linserimento di caratteri accentati da tastiera nel documento sorgente. listings consente linserimento di codici, permettendo un controllo molto sosticato del loro formato. longtable permette di ripartire una tabella su pi pagine. makeidx fornisce comandi per realizzare lindice analitico. microtype migliora il riempimento delle righe. minitoc genera i miniindici. multicol dispone il testo su pi colonne con bilanciamento. natbib consente di menzionare le voci bibliograche citando lautore e lanno di pubblicazione. showlabels permette di controllare, in fase di revisione, luso dei riferimenti \label , \ref , \cite , eccetera. subg permette di afancare gure e tabelle. tabularx compone tabelle di larghezza impostata dallutente. url imposta linserimento degli indirizzi Internet.

. varioref rende pi essibile la gestione dei riferimenti incrociati. xcolor consente la gestione del colore. wrapg permette di far scorrere del testo attorno a unimmagine.

37

.
A Le classi standard di L TEX accettano tre combinazioni predenite di testatina/pi di pagina (i cosiddetti stili di pagina). Largomento stile del comando

Gli stili di pagina della classi standard A di L TEX

\pagestyle{ stile }

stabilisce quale stile sar usato. Gli stili di pagina predeniti delle classi standard sono i seguenti.
plain Stampa i numeri di pagina al pi di pagina, lasciando vuota

la testatina. Questo lo stile di pagina predenito nelle classi article e report.


empty Imposta la testatina e il pi di pagina in modo che non vi sia

stampato nulla.
headings Il pi di pagina vuoto, mentre la testatina contiene il nu-

mero della pagina vicino al margine esterno, seguito dal titolo del capitolo corrente nella testatina di sinistra e preceduto dal titolo del paragrafo corrente nella testatina di destra. Questo vale per le classi book e report, mentre per la classe article si tratta dei titoli del paragrafo e del sottoparagrafo corrente, rispettivamente. Quando si compone con lopzione oneside (predenita con report e article), nella testatina compare solo il titolo della suddivisione maggiore. Lo stile headings predenito nella classe book.
myheadings simile a headings, con la differenza che il contenuto del-

le testatine deve essere ssato manualmente dal compositore specicando di volta in volta entrambe le testatine oppure solo quella di destra attraverso i comandi \markboth oppure \markright , rispettivamente. possibile cambiare lo stile della pagina corrente con il comando
\thispagestyle{ stile }

Cambiare lo stile della pagina corrente

anche possibile creare stili di pagina personalizzati con il pacchetto fancyhdr (vedi il paragrafo 10.5).

.
A Quando si lavora con L TEX, si ha a che fare con svariati tipi di le. Di seguito riportato un elenco (non esaustivo) delle relative estensioni.

38

. .

I le dellutente

A .tex lestensione del testo sorgente scritto con L TEX dallutente; pu

essere diviso in pi le.

.pdf, .jpg, .png Sono i formati standard delle gure da inserire in un


A documento con pdfL TEX (vedi il capitolo 6). A .eps il formato delle gure da inserire in un documento con L TEX

(vedi il capitolo 6).

. .

File di classi, pacchetti e stili

.cls I le delle classi deniscono il tipo di documento; sono scelti con il comando \documentclass .
A .sty Pacchetto di L TEX. un le che si pu caricare nel documento sorgente mediante il comando \usepackage .

.ins, .dtx File di installazione e documentazione di un pacchetto. EseA guendo L TEX sul le .ins e .dtx si ottengono rispettivamente il corrispondente le .sty e il relativo le .pdf. .bst Stile bibliograco usato dal programma BibTEX (vedi il capito-

lo 8).

.ist File che contiene le istruzioni per personalizzare lindice analitico

(vedi il capitolo 9). . . I le ausiliari

Prodotti dalla compilazione


.log Fornisce un resoconto dettagliato di ci che avvenuto durante

lultima esecuzione del compilatore.


.toc Contiene le informazioni necessarie per produrre lindice geneA rale (table of contents). Viene scritto da L TEX nella prima compilazione ed letto nella successiva esecuzione del compilatore.

.lof simile al .toc ma riguarda lelenco delle gure (list of figures). .lot Analogo di .lot per lelenco delle tabelle (list of tables). .aux Un altro le che trasporta informazioni da unesecuzione allaltra del compilatore; tra le altre cose, il le .aux usato per

conservare le informazioni associate ai riferimenti incrociati. Generati in compilazione da pacchetti e programmi


.bbl Contiene le informazioni per impaginare la bibliograa, se si usa

BibTEX.
.blg File che fornisce un resoconto (logle) su ci che stato compiuto

da BibTEX.

.
.idx presente se il documento contiene un indice analitico. Tutte le
A parole che vanno nellindice analitico sono memorizzate da L TEX in questo le, che deve essere successivamente elaborato con il programma MakeIndex.

39

.ind il risultato dellelaborazione del le .idx fatta da MakeIndex,

pronto per essere incluso nel documento al successivo ciclo di compilazione.


.ilg Fornisce un resoconto su ci che stato compiuto da MakeIndex. .out Raccoglie le informazioni per generare i segnalibri ipertestuali,

se si usa il pacchetto hyperref (vedi il capitolo 5).


.mtc Raccoglie le informazioni per generare i miniindici, se si usa il

pacchetto minitoc (vedi il capitolo 5).


.brf Raccoglie le informazioni per generare i riferimenti bibliograci

nali, se si usa il pacchetto backref (vedi il capitolo 5).


.maf Contiene lelenco dei le ausiliari di minitoc.

. .

I le di output

A .pdf il principale risultato dellesecuzione di pdfL TEX: il formato

pi versatile per la stampa e la distribuzione elettronica. Si visualizza e stampa con Adobe Reader o unapplicazione analoga. zare e stampare con Yap o unapplicazione analoga.

A .dvi il principale risultato dellesecuzione di L TEX. Si pu visualiz-

.
Un fattore molto importante per il successo nella scrittura di un documento di grandi dimensioni (come un libro o una tesi) lorganizzazione del proprio materiale. Si suggerisce di collocare tutti i le del documento in una cartella, strutturandola come segue: La cartella Capitoli contiene il materiale principale, suddiviso in capitoli, come Introduzione.tex, StoriaFilosofia.tex, ecc. La cartella MaterialeInizialeFinale contiene il materiale iniziale e nale, come i ringraziamenti, la dedica, la bibliograa, ecc. La cartella Immagini contiene tutte le gure usate nel lavoro. Se si hanno molte gure, potrebbe essere conveniente organizzare la cartella in sottocartelle, contenenti ciascuna le gure di un capitolo. Bibliografia.bib: la base di dati di BibTEX che contiene tutti i riferimenti bibliograci del documento. nome del documento .tex: il le principale del documento, che richiama tutti gli altri.

40

Il comando \input

Questo piccolo accorgimento permette di semplicare notevolmente il proprio lavoro. Tra \begin{document} e \end{document} si caricano i le del proprio documento con
\input{ le1 } \input{ le2 } ...

Per esempio, i capitoli si caricano con


\input{Capitoli/Introduzione} \input{Capitoli/StoriaFilosofia} ...

Il comando \include pu essere utile se si dispone di un calcolatore vetusto.

Il comando \input include semplicemente il le specicato: niente di pi, niente di meno. Permette lannidamento, ovvero possibile richiamare un le che ne richiama un altro. Se si sta lavorando a un documento di grandi dimensioni su una macchina particolarmente vecchia, pu essere utile servirsi del comando \include , il cui uso analogo a \input :
\include{ le1 } \include{ le2 } ...

Il comando \include non permette lannidamento, ma fa iniziare una nuova pagina prima di elaborare i contenuti del le che contiene e permette di usare il comando
\includeonly{ le1 , le2 , . . . }

Eseguire un veloce controllo sintattico del documento

per inserire soltanto i le elencati tra parentesi. Quando si usa il comando \includeonly{ le1 , le2 , . . . }, vengono compilati solamente i le tra parentesi graffe e i contatori (numeri di pagina, numeri di note, . . . ) non vengono aggiornati. A differenza di \input , che scrive tutte le informazioni sul le .aux principale, il comando \include crea un le .aux per ogni le incluso e poi li richiama dal le .aux principale. (Poich il meccanismo di \include comprende la scrittura di un A le .aux per ogni le incluso e che alcune distribuzioni di L TEX non permettono di scrivere in cartelle che siano al di sopra di quella in cui si trova il le sorgente, \include pu non funzionare se si cerca di includere un le che si trova in un punto proibito. Si pu evitare il problema strutturando il materiale come consigliato in questo paragrafo.) Per evitare problemi, opportuno che il percorso (path) dei le inclusi mediante i comandi \input , \include e \includeonly non contenga spazi. A Per far s che L TEX esegua un veloce controllo sintattico del docuA mento si usa il pacchetto syntonly, che fa s che L TEX scorra il documento controllando solo la sintassi e luso corretto dei comandi, senza A fornire alcun output. Poich L TEX viene eseguito pi velocemente in questa modalit, si pu risparmiare tempo; luso molto semplice:
\usepackage{syntonly} \syntaxonly

Quando si vuole realizzare il documento vero e proprio, basta commentare la seconda riga (facendola precedere da un simbolo di %).

5
5.1 5.2 5.3 5.4

IL TESTO

5.5

5.6

5.7

5.8 5.9 5.10 5.11 5.12

5.13 5.14 5.15

A L TEX multilingue e multipiattaforma 41 5.1.1 Il pacchetto babel 41 5.1.2 Il pacchetto inputenc 44 La codica dei font 44 La struttura del testo 45 La composizione dei capoversi 46 5.4.1 La divisione delle parole in n di riga 48 5.4.2 Lo spazio tra le parole 50 5.4.3 Il pacchetto microtype 50 5.4.4 Il rientro sulla prima riga 51 Le proporzioni di pagina 51 5.5.1 Il tormentone dei margini 51 5.5.2 Linterlinea e il riempimento della pagina 52 Il sezionamento del documento 53 5.6.1 Materiale iniziale, principale e nale 53 5.6.2 Lindice generale 54 5.6.3 I miniindici 56 Caratteri speciali e simboli 56 5.7.1 Virgolette, tratti e punti ellittici 56 5.7.2 Indirizzi Internet e riferimenti ipertestuali 58 5.7.3 Loghi, accenti e caratteri speciali 61 Il titolo del documento e il frontespizio 62 I riferimenti incrociati 63 Note a margine e a pi di pagina 64 Parole evidenziate 65 Ambienti 65 5.12.1 Elenchi puntati, numerati e descrizioni 66 5.12.2 Centrare e allineare i capoversi 68 5.12.3 Citazioni e versi 69 5.12.4 Codici e algoritmi 70 Gli acronimi e i glossari 71 Epigra, capolettera e scritture curiose 72 La revisione nale 73

A In questo capitolo, che estende le conoscenze basilari su L TEX acquisite nel capitolo precedente, vengono fornite le nozioni necessarie per realizzare veri e propri documenti testuali.

.
. . Il pacchetto babel
Scrivere in lingue diverse dallinglese

Se si vogliono scrivere documenti in lingue diverse dallinglese, ci A sono due ambiti per cui L TEX deve essere congurato:

41

42

a. tutte le voci generate automaticamente (Indice, Elenco delle gure, Elenco delle tabelle, Capitolo, . . . ) devono essere adattate alla nuova lingua;
A b. necessario che L TEX conosca le regole di sillabazione per la nuova lingua.

Queste modiche si possono compiere caricando il pacchetto babel con lopzione che specica la lingua (o le lingue) in cui si scrive:
\usepackage[ lingua ]{babel}

Scrivere in lingua italiana

Le lingue che il pacchetto consente di usare sono elencate su [Gregorio, 2008b]. Per adattare alla lingua italiana tutte le voci generate automaticamente e per attivare la sillabazione italiana, necessario caricare il pacchetto babel con lopzione per litaliano per mezzo del comando
\usepackage[italian]{babel}

Per attivare la sillabazione, il caricamento di babel necessario ma in generale non sufciente.

Luso di babel necessario per avere la sillabazione italiana ma in generale non sufciente, in quanto serve anche che il le che contiene le relative regole di sillabazione sia attivato. Se si usa MiKTEX, per attivare la sillabazione italiana bisogna selezionare, dal pannello Languages del menu Settings di MiKTEX, la voce Italian e aggiornare il sistema (Update Formats).1 Se si usa TEX Live su Linux, a seconda della distribuzione pu essere necessario lanciare texconfig-sys dalla linea di comando (occorrono i privilegi di amministratore), scegliere hyphenation e togliere il % davanti a italian nel le che comparir (dalla versione 2008 in poi, questa procedura non pi necessaria). Se si usa la distribuzione TEX Live su Mac, non c bisogno di fare nulla (tutto loccorrente viene abilitato automaticamente durante linstallazione). Per alcune lingue, babel denisce anche nuovi comandi che semplicano limmissione di caratteri speciali. La lingua tedesca, per esempio, contiene molte dieresi (, , ); con babel, si pu immettere una battendo "o invece di \"o. Alcuni comandi predisposti da babel per la lingua italiana sono presentati nel paragrafo 5.7.1 a pagina 56. Scegliere la lingua

Documenti multilingue

Ogni lingua di un documento multilingue si pu sillabare a s. Per esempio, se si carica babel con
\usepackage[english,italian]{babel}

lultima lingua (litaliano) quella predenita. Si passa da una lingua allaltra con
1 Se si usa la versione di base (basic) di MiKTEX, necessario anche selezionare, dal pannello Packages del menu Settings di MiKTEX, la voce Language Support Italian; dopo di ci si effettua laggiornamento dei le di formato e della base di dati di MiKTEX (Update Formats e Refresh FNDB).

43

\selectlanguage{ lingua }

oppure, equivalentemente, con


\begin{otherlanguage}{ lingua } ... \end{otherlanguage}

Le precedenti dichiarazioni fanno cambiare la lingua in modo globale (comprese le voci generate automaticamente): per esempio, dopo \selectlanguage{english}, \chapter produrr Chapter. . . . Lambiente otherlanguage equivalente a \selectlanguage{ lingua }, ma leffetto nisce appunto con \end{otherlanguage}.
\begin{abstract} Versione del sommario in italiano. \dots \end{abstract} \selectlanguage{english} \begin{abstract} English version of the abstract. \dots \end{abstract} \selectlanguage{italian}

Sommario Versione del sommario in italiano. . . . Abstract English version of the abstract. . . .

In alternativa, possibile usare il comando


\foreignlanguage{ lingua }{ testo }

oppure, equivalentemente, lambiente


\begin{otherlanguage*}{ lingua } ... \end{otherlanguage*}

Il testo dato come secondo argomento di \foreignlanguage o come contenuto dellambiente otherlanguage* viene composto secondo le regole tipograche di lingua , ma le voci generate automaticamente non cambiano rispetto alla lingua in vigore. Per esempio, dopo \foreignlanguage{english}, \chapter produrr Capitolo. . . . Per semplicare la scrittura del codice sorgente, pu essere conveniente denire (nel preambolo) un apposito comando
\newcommand{\inglese}[1]{% \begin{otherlanguage*}{english}#1\end{otherlanguage*}}

da usare come segue:


\inglese{We have seen that computer programming is an art.}

We have seen that computer programming is an art.

44 Tabella 4: Le principali codiche di input (la codica utf8x richiede il pacchetto ucs, da caricare prima di inputenc).

Codica iso-8859-1 iso-8859-15 utf-8 Codepage 1252 (Windows) MacRoman (Mac OS) Codepage 850 (OS/2, MS-DOS)

Opzione di inputenc
latin1 latin9 utf8, utf8x ansinew applemac cp850

. .
La codica con cui scritto il codice sorgente

Il pacchetto inputenc

A A causa della vocazione multipiattaforma e multilingue di L TEX, necessario specicare, allinterno del documento, la codica con cui stato scritto il codice sorgente .tex. Tale codica, usata dal calcolatore per consentire di introdurre direttamente da tastiera alcuni caratteri particolari (come le vocali accentate , , . . . ), dipende dalla piattaforma e dalleditor impiegati. A tal ne si usa il pacchetto inputenc (input encoding). Lopzione da passare al pacchetto indica la codica scelta (vedi la tabella 4). Lopzione consigliata latin1, disponibile sulla maggioranza degli editor su piattaforma Windows (tra cui WinEdt e TEXnicCenter), Mac (tra cui TEXShop) e Linux (tra cui Kile):

\usepackage[latin1]{inputenc}

In alternativa, si pu usare anche lopzione utf8. Occorre impostare adeguatamente le preferenze delleditor usato. preferibile usare le codiche latin1 o utf8 in luogo di ansinew, applemac e latin9 (o utf8x, che richiede il pacchetto ucs, da caricare prima di inputenc), diffuse rispettivamente su piattaforma Windows, Mac e Linux, dal momento che latin1 e utf8 consentono di evitare problemi di compatibilit quando si opera con documenti scambiati tra piattaforme diverse.2

.
La codica dei font del documento in stampa

La codica dei font del documento nale stampato una questione diversa dalla codica con cui scritto il codice sorgente. In mancanza A di istruzioni speciche, L TEX impiega i font Computer Modern, che contengono solo i 128 caratteri del vecchio sistema ascii a 7 bit. (Questo documento, composto con lo stile ClassicThesis, usa per altri font.
2 Per trasformare in latin1 o utf8 un le codicato diversamente, possibile usare il programma Charco, multipiattaforma e gratuito (http://www.marblesoftware.com/Charco. html). Su Linux disponibile anche lanalogo iconv (http://www.gnu.org/software/ libiconv/), che opera dalla linea di comando. Su Linux, per capire la codica usata nella propria distribuzione possibile eseguire printenv LANG dalla linea di comando.

. Per i dettagli: [Pantieri, 2008a,b].) Quando sono richiesti caratteri acA centati, L TEX li crea combinando un normale carattere con un accento. Bench il risultato sia perfetto, questo approccio impedisce il funzionamento della sillabazione automatica allinterno di parole contenenti caratteri accentati. A Fortunatamente, la maggior parte delle distribuzioni recenti di L TEX include una copia dei font ec, che hanno lo stesso aspetto dei Computer Modern, ma contengono caratteri speciali per la maggior parte delle lettere accentate usate nelle lingue europee. Impiegando questi font si pu migliorare la sillabazione in documenti scritti in lingue diverse dallinglese, ed quindi decisamente consigliabile farne uso. I font ec sono attivati caricando il pacchetto fontenc, specicando lopzione T1:
\usepackage[T1]{fontenc}

45

La codica T1 dei font

La codica T1 dei font rappresenta il nuovo standard di codica dei A caratteri di L TEX; tale codica non ancora la predenita solo per A A motivi di compatibilit con le versioni di L TEX precedenti a L TEX 2 . In effetti, limpiego di tale codica richiede luso di font con un formato opportuno (vettoriale) per evitare di dar luogo a problemi di resa allo schermo quando si visualizza il documento in formato pdf (con programmi come Adobe Reader, Anteprima o Xpdf): in particolare, se non sono installati i relativi font nel formato opportuno, pu accadere che i font appaiano sgranati [Beccari, 2009, p. 153]. La soluzione di questo problema fornita, per esempio, dalla collezione di font CM-Super, inclusa nelle distribuzioni MiKTEX (installazione completa) e TEX Live, e attivata automaticamente quando si carica il pacchetto fontenc con lopzione T1; i font di tale collezione (visualizzabili anche su dvi, purch il programma usato a tal ne sia congurato correttamente) hanno la stessa forma dei font ec, ma presentano molte migliorie in termini di qualit di resa allo schermo. Per maggiori dettagli su questa famiglia si rimanda alla relativa documentazione. In alternativa ai font CM-Super, possibile usare i font Latin Modern, che forniscono un vasto repertorio di caratteri utili per scrivere nelle lingue neolatine e rappresentano un valido sostituto dei Computer Modern:
\usepackage{lmodern} \usepackage[T1]{fontenc}

I font CM-Super

I font Latin Modern

I font Latin Modern (che, come i CM-Super, sono visualizzabili anche su dvi, purch il programma usato sia congurato correttamente) sono A inclusi in tutte le distribuzioni recenti di L TEX.

.
Il punto essenziale nella scrittura di un testo comunicare idee e conoscenze al lettore, che comprender meglio il testo se queste informazioni sono ben strutturate, e ne apprezzer assai meglio la struttura se la forma tipograca rispecchia la costruzione logica del contenuto [Oetiker et al., 2000, p. 17].
La struttura logica del contenuto

46

I capoversi

I periodi

Capitoli, paragra, sottoparagra e altre strutture

A A differenza degli altri sistemi di composizione, con L TEX sufciente indicare la struttura logica del testo, dalla quale il programma ricava la forma tipograca secondo le regole denite nella classe e nei pacchetti caricati. A La pi importante unit di testo in L TEX (e in tipograa) il capoverso. Un capoverso quel tratto di testo che comincia (di regola con un rientro) con una lettera maiuscola e termina con un punto e a capo. Un capoverso viene denito unit di testo perch esso la forma tipograca che deve riettere un singolo pensiero coerente, o unidea. Quindi, se si apre un nuovo discorso, si deve cominciare un nuovo capoverso. Quando si incerti sulla divisione dei capoversi, si pensi al testo come veicolo di idee e pensieri. Se un periodo continua il pensiero precedente, la divisione deve essere eliminata. Se invece un periodo introduce una linea di pensiero completamente nuova, allora occorre introdurla con un nuovo capoverso. Lunit di testo immediatamente pi piccola il periodo. Nei testi in lingua inglese e, spesso, anche nei testi in lingua italiana, dopo un punto che conclude un periodo c pi spazio di quanto ce ne sia dopo A uno che termina unabbreviazione. Di regola, L TEX capisce quale sia il A punto che si intendeva usare. Se per L TEX sbaglia, bisogna fornirgli lindicazione corretta, come spiegato nel paragrafo seguente. La strutturazione del testo si estende anche alle parti di un periodo. Le lingue hanno generalmente regole di punteggiatura piuttosto complicate, ma per molte (comprese la lingua italiana e inglese) di solito sufciente ricordare che cosa rappresenta la virgola: una breve pausa nel discorso. Se non si sicuri del posizionamento di una virgola, si legga la frase ad alta voce, prendendo un breve respiro a ogni virgola. Se questo in qualche punto d la sensazione di essere inopportuno, probabilmente la virgola va eliminata. Se in qualche altro punto si sente la necessit di prendere ato (o di fare una breve pausa), pu essere opportuno inserire una virgola. In ogni caso, bene ricordare che in italiano la virgola non deve mai essere usata per separare il soggetto dal predicato o questultimo dal complemento oggetto. Inne, i capoversi in un testo devono essere strutturati logicamente a un livello pi alto. Un libro in genere diviso in capitoli (e talvolta in parti); ogni capitolo spesso diviso in sezioni gerarchiche che in italiano si chiamano paragrafo, sottoparagrafo, sotto-sottoparagrafo, capoverso e sottocapoverso; in inglese esse si chiamano rispettivamente section, subsection, subsubsection, paragraph, subparagraph. Si noti la presenza dei falsi amici paragrafo e paragraph. In ogni caso, leffetto tipograco di scrivere per esempio

\section{La struttura del testo}

a tal punto evidente che luso di queste strutture ad alto livello si spiega quasi da s (vedi comunque il paragrafo 5.6 a pagina 53).

.
Scrivere capoversi ben strutturati

La maggior parte delle persone sottovaluta completamente limportanza di documenti ben strutturati. Molti ignorano persino qual il

.
A signicato della suddivisione in capoversi o, specialmente in L TEX, cominciano un nuovo capoverso senza rendersene conto. Questultimo errore particolarmente facile da commettere se nel testo si usano formule [Oetiker et al., 2000, p. 17].

47

A Iniziare un nuovo capoverso in LTEX A Con L TEX, per iniziare un nuovo capoverso si lascia una riga vuota (in alternativa, si pu usare il comando \par ). Osservando gli esempi che seguono, si cerchi di capire perch a volte si lascia una riga vuota (ne capoverso), e altre volte no. (Se non si comprendono ancora tutti i comandi abbastanza bene per capire questi esempi, si leggano interamente questo capitolo e i primi paragra del capitolo 7, e poi si ritorni nuovamente a questo paragrafo.)
A Con L TEX, per iniziare un nuovo capoverso si lascia una riga vuota.

% Esempio 1 \dots quando Einstein propose la definizione \begin{equation} E = mc^2, \end{equation} che allo stesso tempo la pi nota e la meno compresa formula della Fisica.

. . . quando Einstein propose la denizione E = mc2 , (5.1)

che allo stesso tempo la pi nota e la meno compresa formula della Fisica.

% Esempio 2 \dots che, rispetto ai precedenti, presenta alcuni vantaggi. La formula \begin{equation} I_\mathrm{D} = I_\mathrm{F} - I_\mathrm{R} \end{equation} costituisce la parte centrale di un modello molto diverso di transistor. \dots

. . . che, rispetto ai precedenti, presenta alcuni vantaggi. La formula ID = IF IR (5.2)

costituisce la parte centrale di un modello molto diverso di transistor. ...

% Esempio 3 \dots da cui segue la legge di Kirchhoff sulle correnti: \begin{equation} \sum_{k=1}^n I_k = 0. \end{equation} La legge di Kirchhoff sulle tensioni pu essere ricavata\dots

. . . da cui segue la legge di Kirchhoff sulle correnti:


n

Ik = 0.
k=1

(5.3)

La legge di Kirchhoff sulle tensioni pu essere ricavata. . .

Terminare un capoverso con una formula fuori corpo (vedi il paragrafo 7.1 a pagina 112), come nel terzo degli esempi proposti, raro, ma comunque lecito. invece sempre sconsigliabile iniziare un capoverso con una formula, a maggior ragione se fuori corpo.

Non si comincia mai un capoverso con una formula.

48

Capoversi giusticati In genere, le righe di un testo hanno tutte la stessa lunghezza. Le necessarie interruzioni di riga e gli spazi tra le parole sono inserite A automaticamente da L TEX, ottimizzando il contenuto dellintero capoA verso. Inoltre, se necessario, L TEX divide le parole che non stanno agevolmente su una riga. Il modo in cui sono composti i capoversi dipende dalla classe di documento. Di regola la prima riga di un capoverso evidenziata con un rientro, e non c spazio aggiuntivo tra i capoversi.3 Interrompere una riga senza iniziare un nuovo capoverso
I comandi \\ oppure \newline non vanno mai usati per iniziare un nuovo capoverso.
A In casi particolari pu essere necessario ordinare a L TEX di interrompere una riga. I comandi \\ oppure \newline permettono di spezzare una riga e di cominciarne una nuova, senza iniziare un nuovo capoverso, e dunque senza tener conto dello spazio fra capoversi e del rientro, come in questo caso. Per specicare uno spazio aggiuntivo tra due linee dello stesso capoverso si usa il comando \\[ lunghezza ].

. .
Lopzione draft del comando \documentclass

La divisione delle parole in n di riga

Quasi tutte le parole sono divise correttamente in A sillabe da L TEX. . .

. . . e nei casi in cui la sillabazione automatica insoddisfacente, possibile suggerirla.

A In generale, L TEX cerca di produrre sempre le migliori interruzioni di riga possibili; se non riesce a trovare il modo di spezzare le righe secondo i suoi severi criteri, lascia che la riga fuoriesca dal margine destro, avvertendo lutente con un messaggio di overfull hbox. BenA ch L TEX avverta lutente quando ci accade, le righe a cui si riferisce non sempre sono facili da trovare. Usando lopzione draft del comando \documentclass , queste righe saranno evidenziate con una spessa linea nera sul margine destro. A Quasi tutte le parole sono divise correttamente in sillabe da L TEX, tuttavia esistono casi in cui si usano nomi propri oppure parole rare oppure parole per cui si desidera la divisione etimologica invece di quella fonetica (che, almeno per le parole italiane, viene eseguita A benissimo dallalgoritmo di L TEX). Per esempio si possono avere parole come macroistruzione (divisione ordinaria: ma-croi-stru-zio-ne; divisione desiderata: ma-cro-istru-zio-ne) o nitroidrossilamminico (divisione ordinaria: ni-troi-dros-si-lam-mi-ni-co; divisione desiderata: nitro-idrossil-amminico). A In questa eventualit, se la sillabazione compiuta da L TEX non soddisfacente, possibile suggerirla con il comando \hyphenation (va posizionato nel preambolo). Si devono scrivere le parole sillabate tra parentesi graffe, separate da uno spazio, come nel seguente esempio:

3 In casi particolari pu essere utile inserire uno spazio supplementare fra capoversi. I comandi \bigskip , \medskip e \smallskip inseriscono uno spazio verticale pi o meno grande. Sono molto comodi perch la grandezza dello spazio che generano funzione del font utilizzato. Il comando \vspace{ lunghezza } lascia uno spazio verticale pari a lunghezza . Se lo spazio deve essere aggiunto in cima o in fondo alla pagina, va usata la versione con asterisco del comando: \vspace* invece di \vspace .

49

\hyphenation{ma-cro-istru-zio-ne nitro-idrossil-amminico}

Il comando precedente pu anche essere usato quando si vuole che alcune parole non vengano sillabate. sufciente scriverle senza trattini come nel seguente esempio:
\hyphenation{FORTRAN ma-cro-istru-zio-ne}

Lesempio precedente permette che macroistruzione sia divisa in sillabe, come pure Macroistruzione, e impedisce del tutto che le parole fortran, Fortran e fortran siano divise. Nellargomento non sono ammessi caratteri speciali o simboli. Il comando \hyphenation pu anche essere impiegato per forzare una sillabazione particolare; se per esempio si vuole che la parola melograno sia spezzata tra melo e grano e non in altri punti, sufciente scrivere:
\hyphenation{melo-grano}

Se la parola in questione compare una sola volta, possibile suggerirne la sillabazione direttamente nel testo con \-. Avremo, per esempio:
La scoperta dellacido nitro\-idrossil\-amminico avvenne nel 1896.

La scoperta dellacido nitroidrossilamminico avvenne nel 1896.

Va precisato che gli interventi manuali sulla sillabazione dovrebbero sempre essere fatti nella fase di revisione che precede immediatamente la stampa. Spesso preferibile riformulare una frase che d luogo a un errore di overfull hbox piuttosto che imporre particolari sillabazioni. Se si adopera lopzione italian del pacchetto babel, pu essere utile servirsi del comando "/, che consente di andare a capo dopo la barra. Per esempio, la scrittura modulazione"/demodulazione viene composta come modulazione/demodulazione se si trova allinterno di una riga, mentre in n di riga viene spezzata in modulazione/ demodulazione. Pi parole possono essere mantenute insieme sulla stessa riga con il comando
\mbox{ testo }

Mantenere insieme una o pi parole

che fa in modo che il suo argomento sia mantenuto insieme in qualunque caso.
Il numero di fax del nostro dipartimento \mbox{0547 33 38 98}. Largomento \mbox{\emph{nome del file}} deve contenere il nome del file.

Il numero di fax del nostro dipartimento 0547 33 38 98. Largomento nome del le deve contenere il nome del le.

50

. .
Lo spazio in ne di periodo

Lo spazio tra le parole

Lo spazio insecabile

A Per ottenere capoversi giusticati, L TEX inserisce tra le parole spazi di dimensione variabile. Alla ne di un periodo, inserisce uno spazio leggermente maggiore, perch questo rende il testo pi leggibile. A L TEX presuppone che i periodi si chiudano con un punto, un punto interrogativo, o un punto esclamativo. Se un punto segue una lettera maiuscola non viene interpretato come conclusione di un periodo, perch normalmente un punto che viene dopo una lettera maiuscola si trova nelle abbreviazioni. Ogni eccezione a queste regole generali deve essere specicata dallautore. Il comando \ prima di uno spazio produce uno spazio che ignora linterpunzione. Un carattere tilde ~ produce uno spazio che ignora linterpunzione e inoltre impedisce uninterruzione di riga. Si confronti:

Hai letto le dispense del prof.~Beccari? \\ Hai letto le dispense del prof. Beccari?

Hai letto le dispense del prof. Beccari? Hai letto le dispense del prof. Beccari? Il concetto spiegato nel paragrafo 5.4. Il concetto spiegato nel paragrafo 5.4.

Il concetto spiegato nel paragrafo~\ref{sec:par}. \\ Il concetto spiegato nel paragrafo \ref{sec:par}.

Per avere una spaziatura corretta ed evitare che una riga nisca con un punto o inizi con un numero, si usa lo spazio insecabile: le scritture corrette sono prof.~Beccari e paragrafo~\ref{sec:par}. Il comando \@ davanti a un punto specica che quel punto conclude una frase anche se si trova dopo una lettera maiuscola. Si confronti:
CEE\@. Poi CE\@. Ora UE\@. \\ CEE. Poi CE. Ora UE.

CEE. Poi CE. Ora UE. CEE. Poi CE. Ora UE.

La spaziatura corretta si ottiene usando il comando \@ .4 . .


Microtipograa

Il pacchetto microtype

A Si consiglia di caricare il pacchetto microtype (richiede pdfL TEX),

\usepackage{microtype}

che migliora il riempimento delle righe abilitando: lespansione dei font, ovvero espandendo i caratteri secondo lasse orizzontale, per ottenere un riempimento ottimale della riga; la protrusione dei caratteri, ovvero permettendo che certi caratteri sporgano leggermente a ne riga (tipicamente segni di punteggiatura e trattini).
4 Lo spazio aggiuntivo dopo un punto pu essere disabilitato servendosi del comando A \frenchspacing , che dice a L TEX di non inserire dopo un punto pi spazio di quanto sia inserito dopo ogni normale carattere. Questa la regola nella tipograa francese. Se si usa \frenchspacing , il comando \@ non pi necessario.

. . . Il rientro sulla prima riga

51

Per attivare il rientro sulla prima riga di ogni sezione (capitolo, paragrafo, sottoparagrafo, . . . ), rispettando una consuetudine spesso seguita nei documenti italiani, necessario caricare il pacchetto indentrst,
\usepackage{indentfirst}
A in quanto la convenzione anglosassone (predenita su L TEX) non lo prevede.

Il pacchetto indentrst

.
. . Il tormentone dei margini
I margini esterni delle classi standard sono pi grandi di quelli interni per ottime ragioni.

In tipograa, i margini di pagina hanno, fra laltro, il compito di delimitare il corpo del testo, in modo che per il lettore sia facile da vedere e comodo da maneggiare, lasciando spazio nella pagina per appoggiare i pollici [Bringhurst, 1992, p. 172]: questa la ragione principale, considerato anche il fatto che al lettore i margini interni appaiono duplicati in quanto adiacenti, per cui i margini esterni predeniti delle classi standard a doppia facciata sono pi grandi di quelli interni [Wilson, 2004, p. 9]. A Usando le classi standard di L TEX, senza pacchetti particolari o comandi che modicano le proporzioni di pagina, la maggior parte degli utenti europei, che stampa su carta in formato A4, trova che i margiA ni impostati da L TEX siano troppo ampi e che in generale il foglio non sia sufcientemente ben riempito. Prima di buttarsi nella frenesia dellallarghiamo un po questa strettissima pagina per bene riettere. A Uno dei punti di forza di L TEX che consente di disinteressarsi completamente delle questioni tipograche, per dar modo allautore di concentrarsi unicamente sulla struttura e sui contenuti del proprio documento. Questo fatto dovrebbe sempre essere tenuto presente: usando uno stile scritto da altri lutente accetta per buone tutte le impostazioni tipograche scelte per lui dallautore dello stile e non pi tenuto a studiare tipograa per mettere a punto laspetto delle proprie pubblicazioni. Modicare i margini predeniti, di conseguenza, comporta lobbligo di studiare un (bel) po di tipograa per ottenere risultati accettabili. Lesperienza mostra che leggere diventa pi difcile se ci sono troppi caratteri per riga: ci dipende dal fatto che locchio si affatica spostandosi dalla ne di una riga allinizio della successiva (questo il motivo per cui i giornali vengono stampati su pi colonne). Questa esperienza stata codicata da Bringhurst nella celebre regola che considera come ottimale il valore di circa 66 caratteri per riga, contando anche gli spazi, indipendentemente dal font usato [Pantieri, 2008a, p. 21]. Come ampiezza media di un carattere viene assunto il rapporto tra la lunghezza dellalfabeto latino minuscolo abcdefghijklmnopqrstuvwxyz e il numero di lettere che lo compongono (26).

La regola di Bringhurst

52

Il pacchetto layaureo

Bisogna tener conto del fatto che la lunghezza di riga adottata da A L TEX, di suo, gi superiore al limite stabilito dalla regola di Bringhurst per consentire un maggiore riempimento delle pagine in formato A4, su cui si assume avvenire la stampa (come di norma, in Europa, in ambiente universitario o casalingo) [Busdraghi, 2004, p. 5]. Se si usano le classi standard e si desidera comunque avere una maggior copertura della pagina in formato A4 rispetto a quella predenita, disinteressandosi al contempo del problema tipograco della denizione delle proporzioni di pagina, consigliabile caricare il pacchetto layaureo (della cui documentazione si raccomanda la lettura), che mette a disposizione dellutente dimensioni di pagina pronte per luso, fornendo anche, con la chiave binding, un modo semplice per impostare lo spazio destinato alla rilegatura:
\usepackage[binding=5mm]{layaureo}

Il pacchetto geometry

Il pacchetto layaureo facile da usare, ma anche rigido, nel senso che lascia allutente una scarsa possibilit di personalizzare le dimensioni di pagina. Se un utente necessita di proporzioni di pagina differenti da quelle di layaureo, per esempio perch obbligato a seguire delle indicazioni imposte dalla sua universit, possibile usare il pacchetto geometry che completamente congurabile. Se, per esempio, si ha lesigenza di comporre un documento in formato A4 con margini superiore e inferiore di 3 cm, e sinistro e destro (ovvero interno ed esterno, per documenti fronte-retro) di 3.5 cm, lasciando uno spazio per la rilegatura pari a 5 mm, sufciente scrivere nel preambolo:
\usepackage[a4paper,top=3cm,bottom=3cm,left=3.5cm,right=3.5cm,% bindingoffset=5mm]{geometry}

Il pacchetto chngpage Il pacchetto crop

Nella denizione dei margini di pagina, la modica di comandi inA terni di L TEX quali \textwidth , \oddsidemargin , . . . invece sempre sconsigliabile per molte ragioni [Fairbairns, 2007; Trettin e Zannarini, 2005]. Nel caso che siano necessari degli interventi locali a singole pagine, possibile usare il pacchetto chngpage. Per rilegare un libro o una tesi pu talvolta essere conveniente indicare sulle pagine dove tagliare il foglio; questo pu essere realizzato agevolmente usando in coppia i pacchetti geometry e crop. . . Linterlinea e il riempimento della pagina

Linterlinea
Spesso i regolamenti di facolt impongono uninterlinea differente da uno.
A Linterlinea predenita di L TEX garantisce un risultato tipograco ottimale e non andrebbe modicata senza una ragione precisa. Tuttavia, a volte, leditore o i regolamenti di facolt impongono allautore A uninterlinea differente da uno (predenita su L TEX). Per modicare linterlinea del documento consigliabile caricare il pacchetto setspace. Tale pacchetto fornisce tre interlinee predenite richiamate con i comandi \singlespacing (interlinea singola), \onehalfspacing (interlinea 1,5) e \doublespacing (interlinea doppia). Se necessaria uninA terlinea differente, sufciente utilizzare il comando standard di L TEX

.
Tabella 5: I comandi di sezionamento del documento.
\part \chapter \section \subsection \subsubsection \paragraph \subparagraph

53

\linespread{ fattore di scala }: tra parentesi graffe va il numero che

rappresenta il fattore di scala per lavanzamento di riga. In alternativa si pu usare lambiente


\begin{spacing}{ fattore di scala }

...
\end{spacing}

messo a disposizione dal pacchetto setspace. Il riempimento della pagina


A In mancanza di istruzioni speciche, L TEX cerca di coprire interamente laltezza della pagina e, ove necessario, inserisce degli spazi aggiuntivi tra i capoversi, oppure dilata gli spazi tra le voci degli elenchi, e cos via.5

.
Strutturare un documento (suddividerlo in parti, capitoli, paragra, A sottoparagra, . . . ) molto facile da realizzare con L TEX. A tal ne, necessario usare i comandi della tabella 5, che prendono come argomento il relativo titolo (spetta allautore usarli nellordine corretto). Il comando \chapter disponibile nelle classi report e book, ma non nella classe article, che non ha capitoli. Dal momento che la classe article non ha capitoli, molto semplice raggruppare degli articoli come capitoli di un libro. La spaziatura tra unit di sezionamento, la numerazione e il corpo A usato nei titoli sono impostati automaticamente da L TEX. Appendici Il comando \appendix non richiede alcun argomento. Cambia semplicemente la numerazione dei capitoli in lettere (per la classe article cambia la numerazione dei paragra). . . Materiale iniziale, principale e nale
Suddividere un documento in parti, capitoli, paragra, sottoparagra, . . .

Oltre ai comandi di sezionamento appena illustrati, la classe book prevede tre dichiarazioni (\frontmatter , \mainmatter e \backmatter )
5 Se si vuole disattivare questa impostazione e avere dello spazio bianco a pi di pagina quando non si riesce a coprirla tutta (scelta peraltro sconsigliabile), sufciente aggiungere nel preambolo la dichiarazione \raggedbottom .

54

che controllano il formato del numero di pagina e la numerazione dei capitoli. Nel materiale iniziale (frontmatter) le pagine sono numerate con i numeri romani minuscoli (i, ii, iii, . . . ) e i capitoli non sono numerati (come se si usasse il comando asteriscato \chapter*). Nel materiale principale (mainmatter) le pagine sono numerate con numeri arabi (la numerazione riparte da 1) e i capitoli sono numerati con numeri arabi. Nel materiale nale (backmatter) le pagine sono numerate come nel materiale principale (la numerazione prosegue da quella del materiale principale), ma i capitoli non sono numerati.

Sezioni di una tesi di laurea Lorganizzazione di una tesi di laurea argomento di [Mori, 2007], cui si rimanda per ogni approfondimento. Una tesi pu in generale presentarsi con la seguente struttura (il simbolo * contraddistingue le sezioni facoltative, mentre indica che le sezioni non devono essere presenti nellindice). Materiale nale Materiale principale Materiale iniziale

Il frontespizio La dedica* Il sommario* I ringraziamenti* Gli indici Gli acronimi e i glossari* La prefazione* I capitoli interni Le appendici* La bibliograa Lindice analitico

. .

Lindice generale

Il comando
\tableofcontents

produce lindice nel punto in cui inserito. Per ottenere lindice c bisogno di due compilazioni successive: la prima scrive il contenuto dellindice nel le .toc (table of contents) e la seconda lo include nel documento.

. Varianti asterisco Di tutti i comandi di sezionamento elencati esiste anche una variante asterisco. La versione asterisco di un comando costituita da un asterisco * aggiunto alla ne del comando. La variante asterisco dei comandi di sezionamento genera titoli che non sono numerati e non compaiono nellindice. Il titolo precedente, per esempio, stato ottenuto con il comando
\subsection*{Varianti asterisco}

55

Se si desidera far apparire il titolo nellindice, si usa il comando:


\addcontentsline{toc}{ livello }{ titolo }

Il comando \addcontentsline

dove livello il nome del livello di sezionamento (che pu essere part, chapter, section, subsection o subsubsection) e titolo quanto viene scritto nellindice. Per esempio, per includere il titolo di questa sezione nellindice si scrive:
\addcontentsline{toc}{subsection}{Varianti asterisco}

Se si sta scrivendo un libro, una tesi o una relazione e si desidera inserire un capitolo non numerato, come per esempio una prefazione o dei ringraziamenti (mentre consigliabile numerare normalmente leventuale introduzione, che un capitolo come gli altri), decisamente preferibile che nei capitoli non numerati non vi sia alcuna testatina. Se si usano le classi standard, a tal ne sufciente impostare per essi lo stile di pagina plain (vedi il paragrafo 4.6 a pagina 37). Per esempio:
\chapter*{Prefazione} \pagestyle{plain} ... \chapter{Introduzione} \pagestyle{headings} ...

Inserire capitoli non numerati

Se si desiderano comunque le testatine nei capitoli non numerati, va tenuto presente che nelle classi standard il comando \chapter* richiede che i contenuti delle testatine ottenute con lo stile headings vengano forniti manualmente. A tal ne si usa il comando \markboth :
\markboth{\MakeUppercase{ testatina di sinistra }}% {\MakeUppercase{ testatina di destra }}

\markboth

Per esempio:
\chapter*{Prefazione} \markboth{\MakeUppercase{Prefazione}}{\MakeUppercase{Prefazione}}

Questo problema non si presenta se i capitoli non numerati vengono inseriti usando lapposita dichiarazione \frontmatter , messa a disposizione dalla classe book (i capitoli non numerati vanno inseriti con il comando \chapter , senza asterisco, dopo \frontmatter e prima di \mainmatter ), oppure se si usano le classi AMS.

56

Specicare le voci per lindice Normalmente i titoli appaiono nellindice esattamente come sono nel testo. Se si desidera evitare ci (per esempio perch un titolo troppo lungo per trovarvi posto), si pu specicare la voce per lindice come parametro opzionale prima del vero titolo.
\chapter[Leggilo! emozionante!]{Questo un titolo lunghissimo e particolarmente noioso}

. .
Il pacchetto minitoc

I miniindici

Quando i capitoli hanno una struttura particolarmente complessa, pu essere conveniente riportare nella pagina iniziale lindice del capitolo. Questi miniindici possono essere prodotti automaticamente con il pacchetto minitoc:
\usepackage[tight,italian]{minitoc}

Lopzione tight permette di stringere gli spazi tra le voci dei miniindici. Come specicato nella documentazione, devono essere presenti il comando \dominitoc prima di \tableofcontents e i comandi \minitoc\mtcskip subito dopo i vari \chapter . (Se il proprio documento contiene capitoli non numerati, introdotti con \chapter* , i miniindici appaiono nel capitolo sbagliato. Per rimediare sufciente aggiungere \adjustmtc alla ne di ogni capitolo non numerato.)

.
. . Virgolette, tratti e punti ellittici

Virgolette In tipograa esistono tre tipi di virgolette: le basse ( , dette anche francesi, caporali o sergenti), le alte ( , dette anche inglesi) e gli apici ( ). A In L TEX, tutti e tre i tipi di virgolette possono essere inseriti direttaNam dui ligula, sorgente, purch si usi ilsodales, sollicitudin wisi. MorNam dui ligula, fringilla a, euismod sodales, sollicitudin vel, vel, wisi. Mormente nel fringilla a, euismod pacchetto inputenc (con la codica Nam duinon fringilla a, lacus libero, pretium lobortis wisi. Morbi auctor appropriata). justo. Nam a, euismodpretium sollicitudin vel, wisi. Morlorem ligula, Nam lacus libero, sodales, at, at, vel, vitae, Nam justo. bi auctor lorem nondui ligula, fringilla euismod sodales, sollicitudin lobortis vitae, auctor lorem lealiquet, Namnonlacus libero, sollicitudin vel, come erat lacus sodales, pretium at, lobortis bi Per Donec virgolette alteeuismodsed accumsan bibendum, vitae, auctor lorem nonaliquet, tortor accumsan carattere " erat Per inserire le bi tellus. inserire non justo. tortor sed libero, pretium at, lobortis vitae, ultricies tellus. Donec justo. ultricies et, et,Nam dui ligula, fringilla a,Nam bisogna usare il bibendum,wisi. virgolette bisogna ultricies et, et, tellus. una macchina tortor sed accumsan bibendum, erat Morbi si farebbe su Donec aliquet,metus a (cheMorbi aclobortis tellus. ornare odio Nam lacusmi. Morbi ac orci stesso erat Donec aliquet, tortor sed accumsan bibendum, invece auctor lorem non justo.odioper scriveremi.pretium at,lo orci et nisl ligula vitae ornare metus a libero, impiega et nisl ligula aliquetultricies vitae magna, usare gli appositi aliquet magna, et, tellus. Donec aliquet, tortor sed accumsan bibendum, vitae, ultricies le virgolette ornare odio metus a mi. Morbisi devono et nisl carattere per magna, vitae ornare odio di chiusura), ma acac orci nisl di apertura e aliquet a ante. Pellentesque simboli. ligula aliquet Suspendisse hendreritligula gli appositi magna, massa. Cras metusante. Pellentesque mollis. magna, vitae . ornare Cras necmi. scrivereorci et hendrerit mollis. ligula aliquet simboli ut massa. odionec possono Morbi ac orci erat usare Suspendisse ut vitaeIn alternativa, si nec ante. Pellentesque hendrerit mollis. Suspendisse ut ut massa.metus a nec Morbi Pellentesque hendrerit mollis. Suspendisse massa. Cras Cras mi. ante. due a nulla. (il sociis natoquepagina 24 spiega comemassa. Crastastiera italiana) monCum sociis penatibus et farlo con disnec ante. Pelet nisl hendrerit a penatibus et ut magnis parturient mona nulla. Cum nulla. Cumnatoque Suspendissemagnis dis la disparturient mona nulla. Cum 4.2.2 mollis. parturient a paragrafo sociis natoque penatibus et et magnis dis parturient monsociis natoque penatibus magnis lentesque a mus. Aliquam natoque penatibus et magnis dis partunulla. Cum e per ridiculus aperte sociistincidunt urna. Nulla nella nostra tes, nascetur le virgolettemus.mus. dueAliquamnormali apostroullamcorper Aliquam (duetincidunt urna.Nulla ullamcorper tes, nascetur tes, nascetur ridiculus mus. tincidunt urna. Nulla ullamcorper ridiculus ridiculus tes,rient montes, nascetur ridiculus mus. Aliquam tincidunt Nulla ullamcorper nascetur Aliquam tincidunt urna. tastiera) per le virgolette chiuse. Ci vale anche per inserire gli apici, vestibulum turpis. Pellentesque cursus luctus mauris. urna. Nulla vestibulum turpis. Pellentesque cursus Pellentesque mauris. mauris. vestibulum turpis. Pellentesque volta i caratteri emauris. mauris. vestibulum scrivendo solo una luctus luctus turpis. Pellentesque cursus luctus .luctus ullamcorper cursus ovviamente vestibulum turpis. cursus

La La di Dirac Dirac funzione La Delta La Delta diDirac unauna La Delta La Delta di una una funzione di Dirac Dirac una funzione Delta Dirac La Dirac di una una Delta LaDelta di Dirac Dirac funzione Delta didi una una funzione La Delta di La DeltadiDirac una impropria. impropria. impropria. funzione impropria. impropria. funzioneimpropria. funzione impropria. impropria. funzione impropria. funzione impropria.
Nam ligula, fringilla a, a, euismod sodales, sodales, sollicitudin vel, wisi. Nam dui Namauctor loremfringilla euismodlacus libero, sollicitudin lobortis Morligula, fringilla noneuismod sodales, sollicitudin at, vel, wisi. Mora, Nam dui ligula,duidui ligula, euismod sodales, sollicitudin vel, vel, wisi. MorMorbifringilla a, justo.justo. Nam libero, pretium at,wisi. Morpretium lobortis bi auctor lorem non justo. Nam lacus libero, pretium at, lobortis vitae, bi lorem non Nam lacus bi auctorauctor lorem justo. Nam lacus libero, sed accumsan bibendum,vitae, at, vitae, ultricies et, tellus. Donec aliquet, tortor bi auctor lorem non nontellus. Donec aliquet, tortor pretium lobortis vitae, erat justo. Nam lacus libero, pretiumaccumsanlobortis vitae, ultricies tellus. Donec aliquet, tortor sed accumsan bibendum, erat sed at, bibendum, ultricies et, et, erattellus.aliquet magna, vitae tortor odio metus a mi. Morbi ac orci erat ligula Donec aliquet, ornare sed accumsan bibendum, ultricies et, ultricies et, tellus. aliquet magna, vitae ornare odio metus mi. bibendum, orci et nisl ligula Donec mollis. ornare odio metus a Cras Morbi ac erat ligula nisl hendreritaliquet, Suspendisse ut massa. a mi. nec ante. Pel- nisl aliquet magna, vitae tortor sed accumsan Morbi ac orci et et ligula aliquet magna, vitae ornare ut ut massa. a Cras Morbiorci Pellentesque ligula aliquethendrerit amollis. Cum sociis odio metusCras nec ante. ac orci et nisl magna, vitae ornare odio metus a mi. mi. magnis Pellentesque Morbi ante. et nisl hendrerit mollis. Suspendisse natoque penatibus et necac dis partulentesque nulla. Suspendisse massa. hendreritamollis. Cum sociis ut massa. Craset et magnis dis parturient monSuspendisse ut penatibus Cras nec ante. Pellentesque massa.Aliquam tincidunt urna. Nulla monhendrerit mollis. montes,sociis natoque mus. nulla. a nulla. Suspendisse natoque penatibusnec ante. Pellentesque magnis dis parturient rient Cum nascetur ridiculus a nulla. tes, nascetur ridiculus mus. Aliquam tincidunt parturientullamcorper ullamcorper vestibulum penatibus tincidunt urna. mauris. a nulla. Cumnasceturnatoque penatibus et magnis dis urna.parturient monsociis ridiculus mus. Aliquam et magnis luctusNulla montes,Cum sociis natoqueturpis. Pellentesque cursus disNulla ullamcorper vestibulummus. Pellentesque cursus luctusurna. Nulla ullamcorper turpis. Pellentesque tincidunt mauris. ullamcorper cursus urna. Nulla luctus mauris. vestibulum turpis. Aliquam tincidunt tes, tes, nascetur ridiculus mus. Aliquam nascetur ridiculus vestibulum turpis. Pellentesque cursus luctus mauris. vestibulum turpis. Pellentesque cursus luctus mauris.
Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel, wisi.

. Se si usa lopzione italian di babel le virgolette alte aperte possono anche essere inserite con "" (ovvero due volte le normali virgolette nella tastiera italiana), mentre si pu scrivere "< per ottenere i caporali aperti e "> per i caporali chiusi.6 Tratti
A In L TEX, si distinguono quattro tipi di tratto. Tre di questi si ottengono con un diverso numero di trattini consecutivi. Il quarto il segno matematico meno:

57

Stratford-on-Avon, e-mail \\ pag.~13--67 \\ s~---~oppure no? \\ $0$, $1$ e $-1$

Stratford-on-Avon, e-mail pag. 1367 s oppure no? 0, 1 e 1

I loro nomi sono: - trattino breve (hyphen), trattino medio (endash), trattino lungo (em-dash) e meno. Il trattino breve si usa per separare parole (per esempio nei composti) o cifre (come nellindicazione delle pagine di una citazione). Il trattino medio si usa per separare numeri o cifre. Il trattino lungo pu introdurre un discorso diretto (normalmente usandolo solo in apertura, dopo i due punti) o per racchiudere come in questo caso un inciso. Un quarto tipo di tratto pu essere considerato il segno meno delloperazione aritmetica, che si ottiene con un normale trattino breve in ambiente matematico ($-$). Punti ellittici Su una macchina per scrivere, una virgola o un punto occupano lo stesso spazio di ogni altra lettera. Nella stampa, questi caratteri occupano solo un piccolo spazio e sono posti molto vicino alla lettera che li precede. Quindi non si possono inserire dei punti di sospensione battendo semplicemente tre punti, perch la spaziatura sarebbe errata. Va usato lapposito comando: \dots .
Non cos ... ma cos: \\ Londra, Parigi, Berlino, \dots

...

Non cos ... ma cos: Londra, Parigi, Berlino, . . .


Omissis

Se, in una citazione, si usa una parte di periodo, necessario scrivere il segno di omissione [. . .]. A tal ne, opportuno denire nel preambolo un apposito comando \omissis
\newcommand{\omissis}{[\ldots\negthinspace]}

e usarlo sempre (ricordando che gli spazi dopo i comandi come questo sono ignorati; se occorre uno spazio, bisogna scrivere \omissis{} ).
6 Le virgolette di questo paragrafo sono composte usando la famiglia di font Computer Modern e non con i Palatino e i Bera Mono, usati nel resto del documento, perch in questi ultimi font le virgolette aperta e chiusa sono rese con caratteri abbastanza simili, cosa che potrebbe confondere il lettore.

58

. .
Scrivere un indirizzo Internet

Gli indirizzi Internet e i riferimenti ipertestuali

Per scrivere un indirizzo Internet utile il pacchetto url (se si usa hyperref, questo pacchetto caricato automaticamente):
\url{http://profs.sci.univr.% it/~gregorio/} http://profs.sci.univr.it/ ~gregorio/

Il pacchetto hyperref

Per abilitare i riferimenti ipertestuali allinterno del documento si usa il pacchetto hyperref (di regola, va caricato per ultimo):
\usepackage{hyperref}

Con hyperref va A usato pdfL TEX.

Per sfruttare appieno le potenzialit del pacchetto, necessario comA pilare il documento con pdfL TEX (vedi il paragrafo 3.7 a pagina 18). Il pacchetto hyperref ha alcune opzioni che consentono di personalizzarne il comportamento. Le opzioni possono essere date come parametro opzionale del comando \usepackage ,
\usepackage[ chiave = valore , . . . ]{hyperref}

oppure in una linea di codice a s stante, come argomento del comando \hypersetup :
\hypersetup{ chiave = valore , . . . }

Le opzioni di hyperref

Le opzioni principali sono le seguenti: bookmarks=true, bookmarks=false mostra o nasconde la barra dei segnalibri, rispettivamente (il valore predenito true). unicode=true, unicode=false permette di usare caratteri di lingue non latine (il valore predenito false). pdftoolbar=true, pdftoolbar=false mostra o nasconde la barra degli strumenti (il valore predenito true). pdfmenubar=true, pdfmenubar=false mostra o nasconde la barra dei menu (il valore predenito true). pdffitwindow=true, pdffitwindow=false regola lingrandimento iniziale del pdf (il valore predenito true). pdftitle= titolo denisce il titolo che viene mostrato nella nestra delle informazioni del documento, nel programma usato per visualizzare il pdf. pdfauthor= autore imposta il nome dellautore del pdf. pdfnewwindow=true, pdfnewwindow=false stabilisce se aprire una nuova nestra quando un collegamento conduce allesterno del documento corrente (il valore predenito true). colorlinks=true, colorlinks=false circonda i collegamenti con riquadri colorati (false, predenito) o colora il testo dei collegamenti (true). I colori dei collegamenti possono essere congurati usando le seguenti opzioni:

. linkcolor= colore imposta il colore dei collegamenti interni, come sezioni e pagine (il valore predenito red); citecolor= colore denisce il colore dei collegamenti ai riferimenti bibliograci (il valore predenito green); filecolor= colore determina il colore dei collegamenti a le (il valore predenito magenta); urlcolor= colore stabilisce il colore dei collegamenti a siti Web (il valore predenito cyan). Per esempio, per avere i segnalibri e i collegamenti colorati sufciente scrivere
\usepackage[bookmarks,colorlinks]{hyperref}

59

(i valori =true possono essere omessi). Se si desidera semplicemente fornire lindicazione dellautore e del titolo del documento (mostrata nella nestra delle informazioni del documento, nel programma usato per visualizzare il pdf), basta scrivere qualcosa come
\usepackage[pdfauthor={Lorenzo Pantieri},% pdftitle={Larte di scrivere con LaTeX}]{hyperref}

Quando un pdf destinato alla stampa, sconsigliabile far uso dei collegamenti colorati, dal momento che nel documento nale appaiono in grigio, rendendone difcoltosa la lettura. Si possono usare i riquadri colorati, che non vengono stampati,
\usepackage{hyperref} \hypersetup{colorlinks=false}

oppure, in alternativa, si pu usare il nero per i collegamenti:


\usepackage{hyperref} \hypersetup{colorlinks,% citecolor=black,% filecolor=black,% linkcolor=black,% urlcolor=black}

Oltre ai collegamenti automatici per i riferimenti incrociati, possibile realizzare collegamenti espliciti usando
\href{ indirizzo Internet }{ testo del collegamento }

Collegamenti a siti Web

Per esempio:
Visita il sito del \href{http://www.guit.sssup.% it/}{\GuIT*}.

Visita il sito del g It. u

Un clic sulla parola g It conduce al sito del g It. u u Se la destinazione del collegamento non un sito ma un le locale, si usa il comando \href :
Il documento completo \href{manuale.pdf}{qui}.

Collegamenti a le esterni

Il documento completo qui.

60 Tabella 6: Loghi particolari (il logo AMS richiede il pacchetto amsmath; i loghi METAFONT e METAPOST richiedono il pacchetto mogo; i loghi g It, g It e ArsTEXnica richiedono il pacchetto guit). u u Comando
\TeX \LaTeX \LaTeXe \AmS \MF \MP \GuIT , \GuIT* \Ars

Risultato TEX A L TEX


A L TEX 2

Descrizione
A Il motore di L TEX

Il nome del gioco


A Lattuale versione di L TEX

AMS METAFONT METAPOST g It, g It u u ArsTEXnica

American Mathematical Society Programma di Knuth per disegnare font


A Strumento per generare graci con L TEX A Gruppo Utilizzatori Italiani di TEX e L TEX

La rivista del g It u

Un clic sulla parola qui aprir il le manuale.pdf (il percorso del le relativo alla posizione del documento corrente). Per realizzare un collegamento a un indirizzo di posta elettronica, conviene denire nel preambolo un apposito comando \mail ,
\newcommand{\mail}[1]{\href{mailto:#1}{\texttt{#1}}}

da usare come segue:


\mail{sit6113@iperbole.% bologna.it} sit6113@iperbole.bologna.it

I segnalibri Il pacchetto hyperref con lopzione bookmarks genera automaticamente i segnalibri relativi alle voci (capitoli, paragra, sottoparagra, . . . ) che compaiono nellindice generale. Ci comprende anche le voci inserite manualmente nellindice con il comando \addcontentsline . Per aggiungere un segnalibro che non corrisponde a una voce presente nellindice generale, si usa il comando
\pdfbookmark[ livello ]{ testo del segnalibro }{ etichetta }

Aggiungere un segnalibro

Il livello un numero intero che indica il livello di sezionamento (capitolo, paragrafo, . . . ) cui il segnalibro verr posizionato, nella relativa barra. Nelle classi book o report questo numero vale 1 per le parti, 0 per i capitoli, 1 per i paragra, e cos via; nella classe article vale 0 per le parti, 1 per i paragra, 2 per i sottoparagra, e cos via. Il testo del segnalibro il testo del segnalibro vero e proprio. L etichetta permette di riferirsi al segnalibro allinterno del documento: deve essere unica. Un clic su un segnalibro denito con \pdfbookmark conduce al punto esatto in cui si trova il comando. Il segnalibro viene aggiunto, nella barra dei segnalibri, nella posizione in cui si trova il comando, al livello di sezionamento specicato. Per esempio, in questo documento c un segnalibro Sommario, cos denito:
\pdfbookmark[1]{Sommario}{sommario}

.
Tabella 7: Accenti e caratteri speciali.

61

o o o .

\=o \u{o} \d{o} \oe \aa \o \i

o o o

\o \.o \v{o} \b{o} \OE \AA \O \j

o oo

\^o \"o \H{o} \t{oo} \ae

\~o \c{c} \c{o}

\AE

\l !

\L ?

Dal momento che i segnalibri sono semplice testo, per essi sono disponibili molti meno caratteri che per il contenuto di un documenA to scritto con L TEX. Si pu aggirare questa difcolt sostituendo nei segnalibri il testo che d problemi:
\texorpdfstring{ testo del documento }{ testo del segnalibro }

Possibili problemi con i segnalibri

Per esempio,
\section{La funzione \texorpdfstring{$\Gamma$}{Gamma}}

trasforma \section{La funzione $\Gamma$} in La funzione Gamma nellarea del segnalibro. Se si scrive il documento con la codica Unicode e si usa lopzione unicode per il pacchetto hyperref, possibile usare i caratteri Unicode nei segnalibri. Ci consente una maggiore scelta di caratteri quando si usa \texorpdfstring . . . Loghi La tabella 6 nella pagina precedente riporta alcuni semplici comandi per comporre particolari loghi. Accenti e caratteri speciali
A Con L TEX consentito luso degli accenti e dei caratteri speciali usati in molte lingue. La tabella 7 mostra, fra laltro, ogni sorta di accento applicato alla lettera o. Naturalmente, i comandi funzionano anche con le altre lettere.

Loghi, accenti e caratteri speciali

H\^otel, na\"if, lve, Sch\"onbrunner, !Se\~norita!.

Htel, naf, lve, Schnbrunner, Seorita!.

Si consiglia di racchiudere i caratteri speciali tra parentesi graffe:


Sm{\o}rrebr{\o}d, Schlo{\ss}, Stra{\ss}e.

Smrrebrd, Schlo, Strae.

62

e
Il comando \maketitle

Il segno delleuro (e) si ottiene con il comando \euro , messo a disposizione dal pacchetto eurosym.

.
Il comando
\maketitle

crea il titolo del documento. Gli elementi che costituiscono il titolo devono essere deniti dai comandi
\title{ titolo } \author{ autore }

e, opzionalmente,
\date{ data }

prima di chiamare \maketitle . Come argomento di \author sono ammessi pi nomi separati dal comando \and . La data predenita quella della compilazione; il comando \date{} omette la data dal titolo. Esiste anche il comando
\thanks{ ringraziamenti }

che permette di inserire i ringraziamenti . Nelle classi standard (e in quelle KOMA-Script), il comando \thanks , che va dato dentro largomento di \author , \title o \date , funziona come il comando per inserire delle note a pi di pagina, solo che il riferimento di queste note non n un numero n una lettera, ma un simbolo tratto da un elenco che contiene lasterisco, la spada, la spada doppia, eccetera. Collegato ai nomi degli autori il comando permette, per esempio, di specicarne listituzione di appartenenza, mentre dato nel titolo consente, fra laltro, di associargli il nome dellente nanziatore della ricerca.
\author{Lorenzo Pantieri\thanks{Ringrazio i membri del \GuIT.}}

Il pacchetto frontespizio

(Nelle classi AMS il comando \thanks va invece dato in una riga a s stante, fuori da \author , \title e \date .) Nella gura 5 a pagina 28 si pu trovare un esempio di alcuni dei comandi sopra citati. Il titolo generato dal comando \maketitle , bisogna ammetterlo, piuttosto spartano. Se si sta scrivendo una tesi di laurea o di dottorato, per comporre il frontespizio consigliabile usare il pacchetto frontespizio (vedi la gura 7 a fronte), di E. Gregorio, che accompagnato da unesauriente documentazione (in italiano). Il pacchetto fornisce comandi che permettono di specicare luniversit e la divisione (facolt o dipartimento) presso cui si discute la tesi, il candidato, lanno accademico, i relatori e i correlatori. Sono inoltre previste diverse opzioni, fra cui la possibilit di comporre il frontespizio in caratteri senza grazie e di inserire il logo delluniversit o unimmagine in ligrana.

63

Universit` degli Studi di Paperopoli a


` FACOLTA DI PENNUTOLOGIA Corso di Laurea Magistrale in Belle Lettere

Tesi di laurea magistrale

La mia tesi: una lunga serie di risultati dicilissimi e complicatissimi


Alcune considerazioni mutevoli

Candidato:

Relatori:

Paperino Paolino
Matricola PP999999

Giovanni Episcopo Pippo Cluvio


Correlatori:

Ugo Frogio Ubaldo Kutuzu

Anno Accademico 20302031

Figura 7: Un esempio duso del pacchetto frontespizio.

In alternativa, possibile afdarsi alleccellente suite ClassicThesis, che contiene un modello di tesi, completo di frontespizio, pronto per luso [Pantieri, 2008a]. Altrimenti, se nessuna delle precedenti soluzioni soddisfa le proprie esigenze, possibile creare un frontespizio personalizzato grazie allambiente titlepage (deve trovarsi subito dopo \begin{document}), allinterno del quale si completamente padroni dellimpaginazione.

Il frontespizio di ClassicThesis Lambiente titlepage

.
Nei documenti si trovano spesso dei riferimenti incrociati a sezioni, A gure, tabelle, teoremi e particolari porzioni di testo. L TEX fornisce i seguenti comandi per i riferimenti incrociati
\label{ etichetta }

Etichette e riferimenti

\ref{ etichetta }

\pageref{ etichetta }

dove etichetta un identicatore scelto dallutente. Il formato delletichetta libero, ma di solito si usa unabbreviazione come sec (per le sezioni), fig (per le gure), tab (per le tabelle), thm (per i teoremi), . . . seguita da : e da una parola chiave che caratterizza loggetto cui ci A si riferisce. Le etichette devono essere uniche nel documento. L TEX sostituisce a \ref il numero della sezione, gura, tabella o teorema dopo il quale si trova il corrispondente comando \label . Il comando \pageref stampa il numero di pagina del corrispondente comando

64

\label (si noti che questi comandi non sanno a che cosa fanno riferimento: il comando \label si limita a registrare lultimo numero gene-

rato automaticamente). Proprio come per lindice, c bisogno di due compilazioni successive. Per esempio, se si identica questo paragrafo con
\section{Riferimenti incrociati} \label{sec:ref}

possibile riferirsi a esso con


Ecco un riferimento a questo paragrafo: vedi il paragrafo~\ref{sec:ref}.

Ecco un riferimento a questo paragrafo: vedi il paragrafo 5.9.

Riferimenti completi della pagina: il pacchetto varioref

In molti casi, specialmente quando ci sono una o pi pagine tra il riferimento e loggetto, utile avere un riferimento completo della pagina. A tal ne opportuno usare il pacchetto varioref che introduce il comando \vref , da usarsi nello stesso modo di \ref , ma che aggiunge un riferimento addizionale alla pagina, come nella pagina precedente/successiva o a pagina 23 a seconda di dove sia posizionata la corrispondente \label .
Vedi il paragrafo~\vref{sec:titolo}.

Vedi il paragrafo 5.8 a pagina 62.

.
Note a margine
Le note a margine, fra laltro, danno un tocco di vitalit alla pagina.

Una nota a margine si ottiene molto semplicemente con il comando


\marginpar{ nota a margine }

Nei documenti fronte-retro, le note sono poste nel margine destro nelle pagine dispari e nel margine sinistro nelle pagine pari. Nei documenti solo-fronte, le note sono sempre poste nel margine destro. (In alcune situazioni pu accadere che una nota appaia nel margine sbagliato: A per rimediare a questo piccolo difetto di L TEX sufciente caricare il pacchetto mparhack.) Note a pi di pagina Il comando
\footnote{ nota a pi di pagina }

stampa una nota in fondo alla pagina corrente. Le note a pi di pagina (di cui bene non abusare) dovrebbero sempre essere poste alla ne del relativo capoverso, dopo il segno di interpunzione.7
7 Cos.

65

Le note a pi di pagina sono lemblema della meticolosit.\footnote{Questo ne un esempio.}

Le note a pi di pagina sono lemblema della meticolosit.a


a Questo ne un esempio.

(Se si compone il titolo di un documento con \maketitle , le note ai nomi degli autori, al titolo e alla data si impostano con il comando \thanks ; vedi il paragrafo 5.8 a pagina 62.) A Le note prodotte da L TEX sono di alta qualit. tuttavia possibile modicarne il formato, qualora lo si ritenga strettamente necessario. A tal ne utile il pacchetto footmisc, che accompagnato da una dettagliata documentazione.

Il pacchetto footmisc

.
Quando si batte a macchina, le parole importanti sono evidenziate In tipograa, invece, le parole sono evidenziate A stampandole in corsivo. L TEX fornisce il comando
sottolineandole.
\emph{ testo }

per evidenziare il testo . Ci che effettivamente il comando fa al suo argomento dipende dal contesto:
\emph{Se si evidenzia allinterno di un testo evidenziato, \LaTeX{} usa il \emph{font normale} per evidenziare.}

Se si evidenzia allinterno di un testo A evidenziato, L TEX usa il font normale per evidenziare.

importante osservare la differenza tra i due ruoli logici del corsivo e dellevidenziato.
\emph{Sono qui in \textit{dieci} minuti.} \textit{Sono qui in \emph{dieci} minuti.}

Differenza logica tra corsivo ed evidenziato

Sono qui in dieci minuti. Sono qui in dieci minuti.

.
Un generico ambiente si invoca con
\begin{ ambiente } ... \end{ ambiente }

dove ambiente il nome dellambiente. Gli ambienti possono essere chiamati pi volte luno allinterno dellaltro, purch lordine di chiamata venga rispettato.

66

\begin{ aaa } ... \begin{ bbb } ... \end{ bbb } ... \end{ aaa }

Di seguito vengono illustrati alcuni ambienti notevoli. .


Elenchi puntati

Elenchi puntati, numerati e descrizioni

A Gli ambienti che realizzano elenchi sono usati molto spesso in L TEX. Permettono infatti:

di dare respiro al testo; di migliorarne la leggibilit; di strutturare le proprie idee. Lelenco precedente stato ottenuto con lambiente itemize come segue:
Gli ambienti che realizzano elenchi permettono: \begin{itemize} \item di dare respiro al testo; \item di migliorarne la leggibilit; \item di strutturare le proprie idee. \end{itemize}

Elenchi numerati

Ogni elemento dellelenco comincia con il comando \item . Si noti come gli elementi allinterno dellambiente itemize siano rientrati: in questo modo il codice sorgente pi leggibile. Lambiente enumerate si usa come itemize, ma aggiunge un numero a ogni elemento:
\begin{enumerate} \item primo elemento; \item secondo elemento; \item terzo elemento. \end{enumerate}

1. primo elemento; 2. secondo elemento; 3. terzo elemento.

Descrizioni

Lambiente description si usa per le descrizioni, che sono elenchi in cui il segno distintivo non n un simbolo n un numero, ma una parola o una locuzione di cui si fornisce una descrizione o una spiegazione. Lambiente description permette di scegliere il testo che appare prima di ogni elemento dellelenco tramite il parametro opzionale (in realt obbligatorio, in questo caso) del comando \item :

67

\begin{description} \item[itemize] per fare elenchi puntati; \item[enumerate] per fare elenchi numerati; \item[description] per fare elenchi in cui ogni elemento comincia con un testo a piacere. \end{description}

per fare elenchi puntati; per fare elenchi numerati; per fare elenchi in cui ogni elemento comincia con un testo a piacere.

Si noti che il testo del parametro opzionale di \item stato messo A automaticamente in evidenza da L TEX (i dettagli tipograci di questo processo dipendono dalla classe del documento). Si possono annidare gli elenchi, cio mettere degli elenchi dentro altri elenchi:
consigliabile usare gli ambienti per gli elenchi perch: \begin{enumerate} \item sono facili da usare; \item rendono pi chiaro il testo: \begin{itemize} \item[-] spaziandolo; \item[-] facilitandone la lettura; \end{itemize} \item permettono di strutturare meglio le proprie idee. \end{enumerate}

Annidare gli elenchi

consigliabile usare gli ambienti per gli elenchi perch: 1. sono facili da usare; 2. rendono pi chiaro il testo: - spaziandolo; - facilitandone la lettura; 3. permettono di strutturare meglio le proprie idee.

Di seguito sono riportate alcune convenzioni tipograche per gli elenchi: per gli elenchi semplici (i cui elementi contengono una sola frase) ogni elemento deve terminare con un punto e virgola, tranne lultimo, che termina con un punto; per gli elenchi i cui elementi contengono due o pi frasi, ogni elemento termina con un punto. Per personalizzare gli elenchi disponibile il pacchetto enumitem, che accompagnato da una dettagliata documentazione. Per esempio, per produrre un elenco senza le spaziature verticali aggiunte dagli ambienti predeniti si usa lopzione locale noitemsep:
Le voci dellelenco seguente sono prive di spaziature verticali: \begin{itemize}[noitemsep] \item Mane; \item Tekel; \item Fares. \end{itemize}

Convenzioni tipograche per gli elenchi

Personalizzare gli elenchi: il pacchetto enumitem

Le voci dellelenco seguente sono prive di spaziature verticali: Mane; Tekel; Fares.

68

Per produrre un elenco le cui voci non siano rientrate, si usa lopzione locale leftmargin=*:
Le voci dellelenco seguente non sono rientrate: \begin{itemize}[leftmargin=*] \item Mane; \item Tekel; \item Fares. \end{itemize}

Le voci dellelenco seguente non sono rientrate: Mane; Tekel; Fares.

Centrare e allineare i capoversi

Gli ambienti flushleft e flushright generano capoversi che sono allineati rispettivamente a sinistra e a destra. Lambiente center genera testo centrato. Se le linee non vengono esplicitamente interrotte dal A comando \\, L TEX andr a capo automaticamente.
\begin{flushleft} Questo testo allineato a \\ sinistra. \LaTeX{} non cerca di creare righe di uguale lunghezza. \end{flushleft}

Questo testo allineato a A sinistra. L TEX non cerca di creare righe di uguale lunghezza.

\begin{flushright} Questo testo allineato a \\ destra. \LaTeX{} non cerca di creare righe di uguale lunghezza. \end{flushright}

Questo testo allineato a A destra. L TEX non cerca di creare righe di uguale lunghezza.

\begin{center} Al centro \\ della Terra. \end{center}

Al centro della Terra.

La dedica La dedica di un libro o di una tesi, ove presente, pu assumere le pi svariate forme, a seconda dei gusti dellautore. Di solito costituita da una riga centrata,
\begin{center} ... \end{center}

o allineata a destra:
\begin{flushright} ... \end{flushright}

. La posizione verticale della dedica nella pagina pu essere scelta a piacere e per controllarla pu essere conveniente luso di una coppia di comandi \vspace*{\stretch{ . . . }}. In questo modo infatti possibile impostare il rapporto tra lo spazio che precede la dedica e quello che segue. Se per esempio si vuole che lo spazio che segue sia il doppio di quello che precede, possibile usare i comandi
\null\vspace*{\stretch{1}} ... \vspace*{\stretch{2}}\null

69

Citazioni e versi

Esistono due tipi di citazioni: (o in linea) scritta in linea con il corpo del testo (incorporata nel testo), come per esempio quando si cita il motto kantiano il cielo stellato sopra di me, la legge morale dentro di me. (o in display) formata da uno o pi capoversi staccati dal testo precedente e seguente mediante spazi di ampiezza adeguata. Le citazioni in corpo vanno inserite fra virgolette del tipo scelto (vedi il paragrafo 5.7 a pagina 56) e devono essere brevi (un paio di frasi al massimo). Nel caso di citazioni fuori corpo, il corpo dei capoversi citati di regola minore del corpo del testo: questo signica, in particolare, che le dimensioni del carattere e linterlinea devono venire ridotte, e i margini aumentati adeguatamente. A Dal momento che gli ambienti predeniti di L TEX rispondono solo parzialmente alle esigenze tipograche delle citazioni fuori corpo, conviene denire (nel preambolo) un nuovo ambiente citazione in questo modo:
\newenvironment{citazione} {\begin{quotation}\small} {\end{quotation}}

Citazioni in corpo

Citazioni fuori corpo

che permette di ottenere una citazione come la seguente:


A Dal momento che gli ambienti predeniti di L TEX rispondono solo parzialmente alle esigenze tipograche delle citazioni fuori corpo, conviene denire un nuovo ambiente citazione. Con lambiente cos denito possibile racchiudere citazioni fuori corpo tra i comandi \begin{citazione} e \end{citazione}.

Se si scelto di attivare il rientro sulla prima riga di ogni paragrafo, sottoparagrafo, . . . , anche nelle citazioni il periodo iniziale va rientrato: ci risulta automatico se si sta usando il pacchetto indentrst.

70

Una regola pratica per la lunghezza delle righe : \begin{citazione} Nessuna riga dovrebbe contenere pi di 66~caratteri. \end{citazione} Ecco perch le pagine in \LaTeX{} hanno margini predefiniti cos larghi, e nei giornali si usano spesso pi colonne.

Una regola pratica per la lunghezza delle righe :


Nessuna riga dovrebbe contenere pi di 66 caratteri.
A Ecco perch le pagine in L TEX hanno margini predeniti cos larghi, e nei giornali si usano spesso pi colonne.

Intercitazioni

Versi

Le intercitazioni, cio le citazioni dentro unaltra citazione, vanno inserite fra virgolette di tipo diverso; nel caso di citazioni fuori corpo, il problema ovviamente non sussiste. Per le poesie disponibile lambiente verse. Nellambiente verse: i margini sono aumentati come per le citazioni; le linee devono nire con \\ per andare a capo, tranne lultima di ogni strofa; le strofe sono separate da linee bianche.
La seguente poesia La sera di Fabiano Busdraghi. \begin{verse} Il sole gi svanito \\ dietro le colline scure \\ e i chiarori del giorno \\ savvolgono dombra. Tutto si assopisce: \\ le tracce di nubi \\ il volo di una rondine \\ i miei ulivi grigi\dots e la luce \\ si adagia quieta \\ e come saggia \\ sulla campagna \\ silenziosa. \end{verse}

La seguente poesia La sera di Fabiano Busdraghi. Il sole gi svanito dietro le colline scure e i chiarori del giorno savvolgono dombra. Tutto si assopisce: le tracce di nubi il volo di una rondine i miei ulivi grigi. . . e la luce si adagia quieta e come saggia sulla campagna silenziosa.

Un pacchetto particolarmente utile per quanto riguarda la scrittuA ra di versi con L TEX costituito da verse, che accompagnato da unesauriente documentazione. .
Il pacchetto listings

Codici e algoritmi

Se si desidera inserire codici allinterno di un documento, consigliabile caricare il pacchetto listings, che permette di avere un controllo molto preciso del formato del codice e riconosce un elevato numero di linguaggi di programmazione. Per esempio, se si desidera inserire un A codice L TEX allinterno di un documento, sufciente scrivere

71

\begin{lstlisting} Nellambiente lstlisting i comandi di \LaTeX{} e i caratteri speciali (\{}%$_&#^~) non vengono interpretati. \end{lstlisting}

Nellambiente lstlisting i comandi di \LaTeX{} e i caratteri speciali (\{}%$_&#^~) non vengono interpretati.

dopo aver scritto nel preambolo


\usepackage{listings} \lstset{language=[LaTeX]TeX,% basicstyle=\small\ttfamily}

Il testo racchiuso tra \begin{lstlisting} e \end{lstlisting} viene stampato alla lettera, come se fosse battuto a macchina, con tutti gli A spazi e le interruzioni di riga, senza che L TEX interpreti i comandi e i caratteri speciali. Per inserire frammenti di codice in linea con il corpo del testo, si usa il comando \lstinline! testo !:
Il logo \LaTeX si ottiene con il comando \lstinline!\LaTeX!.
A Il logo L TEX si ottiene con il comando \LaTeX.

Il simbolo ! solo un esempio di carattere delimitatore. Si pu usare qualsiasi carattere tranne le lettere o lo spazio. Tutti gli esempi presentati in questo manuale sono realizzati impiegando il pacchetto listings. Lambiente lstlisting e il comando \lstinline non possono essere usati come argomenti di altri comandi. Per maggiori dettagli si rimanda alla ricca documentazione del pacchetto. Per linserimento di algoritmi sono invece consigliabili i pacchetti algorithm e algpseudocode: il primo, a differenza del secondo, genera degli oggetti mobili (vedi a questo proposito il paragrafo 6.4 a pagina 100).

Algoritmi

.
Talvolta opportuno far precedere al testo del documento un glossario, ovvero un elenco degli acronimi, dei termini e delle notazioni usate. Ogni voce di un glossario formata da un nome accompagnato da una descrizione (ed eventualmente da un simbolo associato). A Con L TEX, la gestione degli acronimi pu essere efcacemente realizzata con il pacchetto acronym, alla cui documentazione si rinvia il lettore; tra le altre cose, tale pacchetto genera automaticamente i riferimenti ipertestuali tra acronimi nel testo e la loro denizione allinterno dellelenco degli acronimi. Per gestire la terminologia e le notazioni adottate nel documento utile il pacchetto glossaries, che genera gli elenchi automaticamente per mezzo del programma MakeIndex.

Il pacchetto acronym

Il pacchetto glossaries

72

.
Il tutto maggiore della somma delle parti. Aristotele Metasica

Le epigra
Il pacchetto epigraph

Talvolta si vogliono inserire epigra accanto al titolo di un capitolo o di un paragrafo. Per farlo possibile usare il pacchetto epigraph. Unepigrafe come quella che compare dopo il titolo di questo paragrafo si ottiene con il seguente codice:
\section{Specialit} \epigraph{Il tutto maggiore della somma delle parti}% {Aristotele\\Metafisica}

I capolettera
Capolettera

Il pacchetto lettrine

In tipograa si usa talvolta inserire, allinizio di un capitolo o di un paragrafo, un capolettera, ovvero una lettera di corpo maggiore delle altre, usata come ornamento al testo. Come iniziali, si usano tanto lettere comuni quanto, a volte, caratteri tipograci costruiti appositamente, che si usano quando lopera particolarmente ricercata e nalizzata a una pubblicazione di lusso. Il pacchetto lettrine consente di usare diversi tipi di capolettera. Per funzionare al meglio, lettrine richiede i font CM-Super (vedi il paragrafo 5.2 a pagina 44) e il pacchetto type1ec (che rende i font scalabili a piacimento), da caricare prima di fontenc con lopzione T1:
\usepackage{type1ec} \usepackage[T1]{fontenc} \usepackage{lettrine}

In alternativa, si pu ricorrere ai font Latin Modern (vedi il paragrafo 5.2 a pagina 44):
\usepackage{lmodern} \usepackage[T1]{fontenc} \usepackage{lettrine}

Di seguito riportato un esempio delluso di questo pacchetto.


\lettrine{L}{ui non ha mai saputo} come Cousin Jerry avesse previsto tutto quel che poi successo. Non ha mai capito perch se ne andasse in giro col passaporto sempre in tasca, quasi fosse gi pronto a spiccare il grande salto.

non mai come LuiCousinhaJerry saputo previsto avesse tutto quel che poi successo. Non ha mai capito perch se ne andasse in giro col passaporto sempre in tasca, quasi fosse gi pronto a spiccare il grande salto.

. Si notino i caratteri in maiuscoletto che compaiono dopo il capolettera: questi sono una consuetudine assai usata, anche se non costituiscono una regola ferrea. Per ottenere altri tipi di capolettera si rimanda alla documentazione del pacchetto. Scritture curiose Il pacchetto shapepar permette la disposizione del testo in forme curiose, come per esempio in forma di cuore o romboidale. Luso delle istruzioni \heartpar e \diamondpar veramente semplice: dopo ognuna di queste istruzioni, il testo comandato ad assumere quelle particolari forme va racchiuso tra parentesi graffe, secondo il codice qui in sintesi mostrato per una delle due istruzioni.
\heartpar{Lui non ha mai saputo come Cousin Jerry\dots}

73

Il pacchetto shapepar

Lui non ha mai saputo come Cousin Jerry avesse previsto tutto quel che poi successo. Non ha mai capito perch se ne andasse in giro col passaporto sempre in tasca, quasi fosse gi pronto a spiccare il grande salto. Di una sola cosa certo, che se glielavesse chiesto, il vecchio Jerry avrebbe richiamato in supercie la migliore delle sue espressioni strafottenti, detto una frase da mezzo adulto, tipo: Se stavi attento, Ermanno, capivi tutto anche tu.

Lui non ha mai saputo come Cousin Jerry avesse previsto tutto quel che poi successo. Di una sola cosa certo, che se glielavesse chiesto, il vecchio Jerry avrebbe richiamato in supercie la migliore delle sue espressioni strafottenti, detto una frase da mezzo adulto, tipo: Se stavi attento, Ermanno, capivi tutto anche tu.

.
A Una delle caratteristiche fondamentali di L TEX che permette ai suoi utenti di concentrarsi sulla struttura logica del contenuto e non sulla forma, gestita automaticamente dal programma. Tuttavia, al momento attuale, nessun software pu risolvere automaticamente tutti i problemi tipograci ed evitare di lavorare sulla forma denitiva del documento, se si desidera un prodotto di alta qualit. La revisione nale di un lavoro una fase impegnativa, ma graticante: risolvere grandi problemi di impaginazione con piccole modiche unarte complicata, ma ricca di soddisfazioni. In generale, piuttosto che modicare le impostazioni generali di A L TEX, conveniente provare a effettuare piccole modiche al testo, che spesso sono sufcienti per risolvere i problemi e permettono di ottenere un risultato pi elegante. Supponiamo, per esempio, che lultimo paragrafo di un capitolo di un libro sfori di due righe su una pagina a destra. Si avrebbero due pagine consecutive praticamente bianche. Per evitare questo inesteti-

Piccole modiche al testo sono spesso sufcienti per risolvere grandi problemi di impaginazione.

74

Il comando \looseness

smo, possibile provare a riformulare un paio di capoversi, in modo da accorciarli di una riga ciascuno. In alternativa, si possono usare alcuni strumenti messi a disposizioA ne da L TEX per regolare nemente i risultati, in sede di revisione nale. Per esempio, si pu provare a dare il comando
\looseness=-1
A per dire a L TEX di cercare di comporre un capoverso usando una riga in meno della sua lunghezza naturale (vanno scelti i capoversi che abbiano almeno cinque o sei righe e la cui ultima riga sia breve). Se A il capoverso sufcientemente esteso, L TEX in grado di comporlo adeguatamente, accorciandolo di una riga. Il comando \looseness va dato allinizio del capoverso da modicare, senza lasciare alcuna riga vuota fra il comando e il testo del capoverso, nel modo seguente:

\dots Qui finisce un capoverso. \looseness=-1 Qui ne comincia un altro, che \LaTeX{} cercher di comporre usando una riga in meno della sua lunghezza naturale. \dots

Il comando \enlargethispage

Il valore di \looseness un parametro locale relativo al capoverso in cui compare, quindi leffetto del comando non si propaga ai capoversi successivi (che vengono composti con parametro \looseness=0). Se il precedente stratagemma funziona per un paio di capoversi, si ottiene leffetto voluto di riportare indietro le due righe di troppo. Se lo stratagemma non dovesse funzionare, si pu usare il comando
\enlargethispage{\baselineskip}

(va dato fra due capoversi) che allunga di una riga, rispetto al normale, la pagina in cui compare. Dando il comando precedente in una coppia di pagine afancate (nei documenti fronte-retro), laggiustamento non d nellocchio, se il margine inferiore sufcientemente ampio e se non ci sono note a pi di pagina. Il comando \enlargethispage da sconsigliare se si stampa su carta di bassa grammatura, perch laggiustamento si vedrebbe in trasparenza sfogliando il volume. Su carta di buona qualit il problema non si pone: limportante che non si vedano disparit sulla coppia di pagine afancate. In alternativa, possibile usare la versione asterisco del comando \enlargethispage ,
\enlargethispage*{\baselineskip}

che prima di allungare la pagina di una riga cerca di stringere il pi possibile gli spazi bianchi verticali al ne di non allungare la pagina, ovvero di allungarla il meno possibile. I trucchi precedenti si possono usare anche al contrario. Alcuni problemi di impaginazione possono essere risolti allungando qualche capoverso o accorciando una coppia di pagine afancate. A tal ne si usano il comando
\looseness=1

. che allunga di una riga il relativo capoverso e il comando


\enlargethispage{-\baselineskip}

75

che accorcia di una riga la pagina in cui compare. Se si adopera il comando \looseness=1 consigliabile inserire uno spazio insecabile (~) fra le ultime due parole del capoverso o racchiudere lultima parola in \mbox : questi accorgimenti servono per evitare che lultima riga del capoverso allungato sia troppo corta (per esempio, che sia costituita soltanto da una breve parola o da una sillaba), il che produrrebbe un effetto estetico non molto gradevole. Tutto ci pu funzionare purch il capoverso sia abbastanza lungo, in A modo che L TEX abbia sufciente spazio di manovra. Un capoverso breve, salvo casi fortunati, non idoneo per questi trucchi di impaginazione: di solito servono almeno una decina di righe ed necessario che, nella composizione normale, lultima riga sia quasi piena. Questo capoverso stato composto con \looseness=1 e ha effettivamente una riga in pi rispetto alla composizione ottimale che si avrebbe senza quel comando. Va tenuto presente che il trucco non funziona sempre e bisogna essere pronti a modicare il testo per ottenere leffetto desiderato. Vedove e orfane In tipograa, si usa chiamare orfana una riga solitaria in fondo alla pagina (tipicamente, la prima riga di un capoverso) e vedova una riga solitaria in cima alla pagina seguente (tipicamente, lultima riga di un capoverso). Entrambi questi casi andrebbero evitati, ma le righe vedove sono particolarmente gravi, come testimonia la terminologia tedesca: una riga orfana si chiama Schusterjunge (apprendista ciabattino), mentre una riga vedova Hurenkind (glio di p.). Bisogna fare in modo che ci siano almeno due righe di uno stesso capoverso sia A in cima che in fondo a ogni pagina. L TEX gi programmato per ottenere questo effetto, ma a volte pu essere necessario un intervento manuale dellutente. Oltre agli strumenti presentati in questo paragrafo, per eliminare una riga orfana pu essere utile dare il comando \pagebreak prima del capoverso che d problemi. Il comando \pagebreak consente di interrompere una pagina, lasciando anche (a differenza di \newpage , che A comincia semplicemente una nuova pagina) che L TEX cerchi di giusticarla verticalmente. Se c abbastanza spazio bianco nella pagina, il risultato che si ottiene generalmente buono.

Allungare un capoverso

A L TEX programmato per evitare vedove e orfane, ma a volte necessario un intervento dellutente.

Il comando \pagebreak

6
6.1

TABELLE E FIGURE

6.2

6.3 6.4

Le tabelle 77 6.1.1 Regole generali 78 6.1.2 Lambiente tabular 78 6.1.3 Celle su pi colonne 79 6.1.4 Celle su pi righe 80 6.1.5 Il pacchetto array 80 6.1.6 Il pacchetto tabularx 82 6.1.7 Allineare i numeri alla virgola 83 6.1.8 Tabelle grandi 84 6.1.9 Note dentro a tabelle 89 6.1.10 Tabelle colorate 90 Le gure 93 6.2.1 Immagini vettoriali e bitmap 93 6.2.2 Conversione dei formati 95 6.2.3 Scontornare le immagini 96 6.2.4 Linclusione delle immagini 96 Figure e tabelle in testo e fuori testo 98 Gli oggetti mobili 100 6.4.1 Gli ambienti table e figure 101 6.4.2 Il controllo degli oggetti mobili 103 6.4.3 Personalizzare le didascalie: il pacchetto caption 105 6.4.4 Afancare gure o tabelle: il pacchetto subg 105 6.4.5 Testo che avvolge un oggetto: il pacchetto wrapg 107 6.4.6 Didascalie laterali: il pacchetto sidecap 108

Le tabelle e le gure sono fra gli oggetti che vengono usati pi frequentemente nella composizione dei documenti. Sono anche fra gli argomenti trattati pi estesamente dalle guide. In questo capitolo vengono presentati i concetti e gli strumenti fondamentali per comporre e A gestire tabelle e gure con L TEX.

.
Le tabelle sono uno degli oggetti che vengono usati pi spesso nei A documenti scientici. Oltre ai comandi standard di L TEX, esistono numerosi pacchetti che permettono di personalizzare le tabelle e di superare le limitazioni dei primi. Questo paragrafo, basato su [Mori, 2006], A cui si rimanda per ogni approfondimento, spiega come usare L TEX e i pacchetti disponibili per comporre tabelle, cercando di affrontare gli aspetti principali dellargomento. Da qui in avanti diamo per scontato che sia caricato il pacchetto booktabs.

77

78 Tabella 8: Tabella non composta correttamente secondo le regole generali.

D 5m 10 m 20 m

Pu 269,8 kg 421,0 kg 640,2 kg

uu 0,000674 m 0,001035 m 0,001565 m

1,79 3,59 7,18

Gf 0,04089 Pa m

Tabella 9: Tabella composta correttamente secondo le regole generali.

D (m) 5 10 20

Pu (kg) 269,8 421,0 640,2

uu (m) 0,000674 0,001035 0,001565

Gf (Pa m)

1,79 3,59 7,18

0,04089 0,04089 0,04089

. .
Le regole generali che opportuno seguire nella composizione delle tabelle

Regole generali

La composizione delle tabelle dovrebbe fondarsi sulle seguenti regole [Fear, 2005]: non usare mai linee verticali; evitare linee doppie; inserire le unit di misura nellintestazione della tabella (invece che nel corpo); non usare virgolette per ripetere il contenuto di celle. Cos vuole la tradizione tipograca, che contrasta con la cattiva abitudine, purtroppo oggi molto diffusa, di comporre le tabelle come se fossero parti di un foglio elettronico. Per capire limportanza del rispetto delle regole generali si confrontino le tabelle 8 e 9. . . Lambiente tabular

A Lambiente tabular il principale strumento di base offerto da L TEX 1 per la creazione di tabelle. Cominciamo con un semplice esempio:

\begin{tabular}{lcr} \toprule Apple & Mac~OS~X & 10.5 \\ NeXT & NeXTSTEP & 3.3 \\ Be & BeOS & 5.0 \\ \bottomrule \end{tabular}

Apple NeXT Be

Mac OS X NeXTSTEP BeOS

10.5 3.3 5.0

1 Esiste anche lambiente array, analogo a tabular, che pu essere usato solo in modo matematico.

. Abbiamo assegnato allambiente tabular un argomento (detto anche preambolo della tabella) di tre caratteri: ci signica che la tabella formata da tre colonne. Pi in dettaglio:
l indica che la prima colonna sar allineata a sinistra (left) ; c indica che la seconda colonna sar centrata (center); r indica che la terza colonna sar allineata a destra (right).

79

Il preambolo di una tabella

Allinterno dellambiente tabular, le righe terminano con il comanA do \\ e le colonne sono separate da &. Si noti che L TEX non richiede che le colonne (ovvero i simboli &) siano allineate, tuttavia consigliabile che lo siano per migliorare la leggibilit del sorgente. Le linee orizzontali si ottengono mediante i tre comandi \toprule , \midrule e \bottomrule . In particolare, \toprule e \bottomrule vanno usati rispettivamente per la prima e lultima riga e hanno uno spessore maggiore delle linee per le altre righe ottenute con \midrule . Si noti che non c \\ dopo \toprule , \midrule e \bottomrule .2 Nellambiente tabular una colonna pu essere specicata anche con p{ larghezza }, che indica che la colonna giusticata ed larga larghezza . Si veda per esempio la seguente tabella:
\begin{tabular}{l*{2}{c}} \toprule & Paese & Secolo \\ \midrule Tiziano & Italia & XVI \\ Czanne & Francia & XIX \\ Escher & Olanda & XX \\ \bottomrule \end{tabular}

Linee orizzontali

Paese Tiziano Czanne Escher Italia Francia Olanda

Secolo XVI XIX XX

Il codice *{ n }{ formato }, che equivale a n volte la dichiarazione formato (qui, dunque, cc), utile per migliorare la leggibilit del sorgente nel caso di tabelle con molte colonne. . . Celle su pi colonne
Celle multi-colonna

Per avere una cella che si estende su pi colonne si usa il comando


\multicolumn .
\begin{tabular}{ll} \toprule \multicolumn{2}{c}% {\textbf{Musei}} \\ \midrule Louvre & Parigi \\ Prado & Madrid \\ MoMA & New York \\ \bottomrule \end{tabular}

Musei Louvre Prado MoMA Parigi Madrid New York

2 I comandi \toprule , \midrule e \bottomrule del pacchetto booktabs sostituiscono il A comando \hline offerto da L TEX, che ha una resa tipograca non del tutto soddisfacente a causa del poco spazio tra le linee orizzontali e il testo delle celle.

80

Il comando \multicolumn{ n }{ formato }{ testo } combina le successive n colonne in una singola cella della larghezza delle corrispondenti celle, inclusi gli spazi tra colonne. Largomento formato deve contenere un simbolo di posizionamento l, r o c. . .
Celle multi-riga

Celle su pi righe

Analogamente al comando \multicolumn che permette di avere celle su pi colonne, esiste il comando \multirow per avere celle su pi righe. Tale comando richiede il pacchetto multirow. Il codice
\begin{tabular}{clcc} \toprule \multicolumn{2}{c}{$D$} \multicolumn{2}{c}{(m)} \midrule \multirow{3}*{5} & test \cmidrule(l){2-4} & test \cmidrule(l){2-4} & test \midrule \multirow{3}*{10} & test \cmidrule(l){2-4} & test \cmidrule(l){2-4} & test \bottomrule \end{tabular}

& $P_u$ & $\sigma_N$ \\ & (kg) & (Pa) \\ 1 & 285 2 & 287 3 & 230 1 & 430 2 & 433 3 & 431 & 38,00 \\ & 38,27 \\ & 30,67 \\ & 28,67 \\ & 28,87 \\ & 28,73 \\

Il comando \cmidrule

produce la tabella 10 nella pagina successiva. Il comando \cmidrule{ n - m } disegna una linea orizzontale dalla sinistra della colonna n -esima no alla destra della colonna m esima. La sintassi completa del comando
\cmidrule( troncamento ){ n - m }

Il parametro opzionale troncamento , posto fra parentesi tonde, indica se lestremit destra o sinistra della riga debba essere troncata. I possibili valori di troncamento sono r, l o rl, che troncano lestremit destra, sinistra o entrambi, rispettivamente. . . Il pacchetto array

Il pacchetto array denisce nuove opzioni per lallineamento delle colonne di un ambiente tabular:
m{ larghezza } denisce una colonna giusticata di larghezza larghezza

le cui celle sono centrate verticalmente;


b{ larghezza } denisce una colonna giusticata di larghezza larghezza

le cui celle sono allineate in basso;


>{ dichiarazione } pu essere usato prima di un comando l, r, c, p, m o b e inserisce dichiarazione prima del contenuto della cella;

.
Tabella 10: Esempio duso dei comandi \multicolumn e \multirow .

81

D (m) test 1 5 test 2 test 3 test 1 10 test 2 test 3

Pu (kg) 285 287 230 430 433 431

N (Pa) 38,00 38,27 30,67 28,67 28,87 28,73

<{ dichiarazione } pu essere usato dopo un comando l, r, c, p, m o b

e inserisce dichiarazione dopo il contenuto della cella. Per esempio, se si hanno colonne di sola matematica, pu essere conveniente denirlo nel preambolo della tabella piuttosto che inserire in ogni cella i delimitatori di testo matematico ($. . .$). possibile denire nuove colonne che siano allineate in modo diverso da quelli predeniti con il comando \newcolumntype . Per esempio, i comandi
\newcolumntype{C}{>{$}c<{$}} \newcolumntype{L}{>{$}l<{$}} \newcolumntype{R}{>{$}r<{$}}

Nuovi tipi di colonna

consentono di avere colonne rispettivamente centrate, allineate a sinistra o a destra di testo matematico. Se si vuole avere matematica in formato displaystyle (vedi il paragrafo 7.7 a pagina 129), sufciente aggiungere il relativo comando alla denizione della nuova colonna. Per esempio, il codice
\newcolumntype{L}{>{$\displaystyle}l<{$}} \newcolumntype{C}{>{$}c<{$}} \begin{tabular}{LC} \toprule \int\cos x\,dx & \sin x + c \\ \midrule \int e^x dx & e^x + c \\ \midrule \int \sec^2 x \,dx & \tan x + c \\ \bottomrule \end{tabular}

produce la tabella 11 nella pagina successiva. Per ulteriori dettagli sul pacchetto array si consiglia la lettura di [Gregorio, 2008b]. Specicare il font di una colonna I comandi >{ dichiarazione } e <{ dichiarazione } possono anche essere impiegati per specicare il font di determinate colonne: pos-

82 Tabella 11: Tabella con testo matematico ottenuta con il pacchetto array.

cos x dx ex dx sec2 x dx

sin x + c ex + c tan x + c

Tabella 12: Tabella con formato automatico di una colonna specicato con il pacchetto array.

Forza

Una forza una grandezza sica che si manifesta nellinterazione di due o pi corpi materiali, che cambia lo stato di quiete o di moto dei corpi stessi. Il momento polare di una forza rispetto a una determinata origine denito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza.

Momento polare

sibile usare i comandi \itshape , \slshape , \bfseries , \rmfamily e \ttfamily (vedi il paragrafo 10.2 a pagina 166). Per esempio, il codice
\begin{tabular}{>{\bfseries}l p{6cm}} \toprule Forza & Una forza una grandezza fisica che si manifesta nellinterazione di due o pi corpi materiali, che cambia lo stato di quiete o di moto dei corpi stessi. \\ \midrule Momento polare & Il momento polare di una forza rispetto a una determinata origine definito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza. \\ \bottomrule \end{tabular}

produce la tabella 12. . .


Lutente denisce la larghezza della tabella e il pacchetto tabularx calcola la larghezza delle colonne.

Il pacchetto tabularx

Il pacchetto tabularx modica la larghezza di certe colonne al ne di coprire la larghezza della tabella denita dallutente. Le colonne che possono essere dilatate o compresse sono indicate dal comando di allineamento X; il testo che viene inserito in queste colonne viene mandato a capo automaticamente e, in mancanza di altre specicazioni, viene giusticato. Il pacchetto tabularx richiede il pacchetto array. Per esempio, il codice
\begin{tabularx}{\columnwidth}{>{\bfseries}lX} \toprule Forza & Una forza una grandezza fisica che si manifesta nellinterazione di due o pi corpi materiali, che cambia lo stato

.
Tabella 13: Tabella ottenuta con il pacchetto tabularx.

83

Forza

Una forza una grandezza sica che si manifesta nellinterazione di due o pi corpi materiali, che cambia lo stato di quiete o di moto dei corpi stessi. Il momento polare di una forza rispetto a una determinata origine denito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza.

Momento polare

di quiete o di moto dei corpi stessi. \\ \midrule Momento polare & Il momento polare di una forza rispetto a una determinata origine definito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza. \\ \bottomrule \end{tabularx}

produce la tabella 13. In questa tabella lutente denisce la larghezza dellintera tabella in questo caso pari alla larghezza della colonna di composizione \columnwidth , che per documenti scritti in ununica colonna coincide con la larghezza del corpo del testo \textwidth (vedi il paragrafo 6.3 a pagina 98) e il pacchetto calcola in automatico la larghezza della seconda colonna. Il pacchetto tabularx risulta utile anche quando si vogliono produrre delle tabelle in cui alcune colonne hanno la stessa larghezza, ma non si ha la necessit di denirla a priori. Infatti, se sono presenti pi colonne X, la loro larghezza risulta uguale. Per esempio, la tabella 14 nella pagina seguente ottenuta con il seguente codice:
\newcolumntype{U}{>{\centering\arraybackslash$}X<{$}} \begin{tabularx}{0.9\columnwidth}{*{7}{U}} ... \end{tabularx}

Tabelle con colonne aventi la stessa larghezza

Il comando \arraybackslash dopo \centering permette di terminare le righe della tabella con il solito \\.3 . . Allineare i numeri alla virgola
Il pacchetto dcolumn

Per allineare i numeri alla virgola possibile usare il pacchetto dcolumn, che mette a disposizione un nuovo tipo di colonna:
D{ sep-in }{ sep-out }{ prima.dopo }

3 Se si omette \arraybackslash , per terminare le righe necessario usare il comando \tabularnewline al posto di \\ (questa seconda alternativa utile se si ha la necessit di dare degli a capo espliciti nelle celle dellultima colonna). Lo stesso discorso vale per colonne allineate a sinistra con \raggedright o a destra con \raggedleft . Il motivo per cui necessario usare il comando \arraybackslash o, in alternativa, \tabularnewline che \centering , \raggedright e \raggedleft rideniscono \\.

84 Tabella 14: Tabella ottenuta con il pacchetto tabularx per avere colonne della stessa larghezza. 0 /4 /2 3/4 5/4 3/2 7/4 2 sin 0 2/2 2/2 0 2/2 1 2/2 0 1 cos 1 2/2 0 2/2 1 2/2 2/2 1 0 tan 0 1 1 0 1 1 0 csc 2 1 2 2 1 2 sec 1 2 2 1 2 2 1 cot 1 0 1 1 0 1

Il primo argomento il carattere usato nel documento .tex per indicare la separazione delle cifre decimali (di solito il punto oppure la virgola), il secondo quello che si vuole nel documento composto (in italiano la convenzione la virgola, mentre in inglese viene usato il punto), il terzo il numero di cifre a sinistra (prima) e a destra (dopo) della virgola. I numeri vengono allineati rispetto al separatore e, se il terzo argomento negativo, il separatore sar al centro della colonna. Se le colonne hanno dei titoli, necessario inserirli allinterno di comandi \multicolumn{1}{c}{ . . . }. Per esempio, la tabella 15 nella pagina successiva pu essere ottenuta con il seguente codice:
\begin{tabular}{cD{.}{,}{5.4}} \toprule Espressione & \multicolumn{1}{c}{Valore} \\ \midrule $\pi$ & 3.1416 \\ $\pi^{\pi}$ & 36.46 \\ $\pi^{\pi^{\pi}}$ & 80662.7 \\ \bottomrule \end{tabular}

. .
Di regola, le tabelle vanno trattate come oggetti mobili.

Tabelle grandi

Normalmente le tabelle vanno trattate come oggetti mobili (vedi il paragrafo 6.4 a pagina 100): se una tabella non sta sulla pagina correnA te, possibile chiedere a L TEX di stamparla su una pagina successiva, riempiendo quella attuale con il testo successivo. A tal ne lambiente tabular deve essere inserito nellambiente table che: permette di generare automaticamente lelenco delle tabelle con il comando \listoftables ; permette di creare la didascalia e di assegnare un numero progressivo alla tabella con il comando \caption ;

.
Tabella 15: Esempio di tabella con allineamento alla virgola.

85

Espressione

Valore 3,1416 36,46 80662,7

permette di assegnare alla tabella unetichetta con il comando \label (che deve comparire dopo il corrispondente \caption ) con cui richiamarla nel testo con \ref o \vref . Per centrare una tabella mobile opportuno utilizzare il comando
\centering invece dellambiente center, poich questultimo inserisce

uno spazio verticale supplementare esagerato (vedi il paragrafo 6.4.1 a pagina 101). Per separare la didascalia dalla tabella (di regola, la didascalia si scrive sopra la tabella), se si usano le classi standard conveniente caricare il pacchetto caption e, una volta per tutte, scrivere nel preambolo
\captionsetup[table]{position=top}

In questo modo, per ottenere una tabella come la 15 sufciente scrivere il seguente codice:
\begin{table}[tb] \caption{Esempio di tabella con allineamento alla virgola.} \label{tab:virgola} \centering \begin{tabular}{ . . . } ... \end{tabular} \end{table}

Se si usano le classi KOMA-Script, per separare la didascalia dalla tabella sufciente caricare il pacchetto caption e scrivere, nel preambolo,
\captionsetup[table]{skip=\medskipamount}

dopo aver selezionato lopzione di classe tablecaptionabove.4 Pu capitare che le dimensioni di una tabella siano superiori a quelle dellintera pagina in altezza, in larghezza o in entrambe. Se la tabella troppo lunga possibile: ridurre la dimensione del font; spezzarla su pi pagine. Se la tabella troppo larga possibile: ridurre la dimensione del font; ruotarla;
4 In alternativa, per separare la didascalia dalla tabella, possibile servirsi del comando \medskip (va dato dopo ogni \caption , prima del relativo tabular).

Tabelle troppo lunghe

Tabelle troppo larghe

86 Tabella 16: Tabella con font di dimensione inferiore (footnotesize) rispetto al resto del testo (normalsize).
Forza Una forza una grandezza sica che si manifesta nellinterazione di due o pi corpi materiali, che cambia lo stato di quiete o di moto dei corpi stessi. Il momento polare di una forza rispetto a una determinata origine denito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza.

Momento polare

spezzarla su pi pagine. Ovviamente, per ogni caso possibile applicare pi soluzioni contemporaneamente. Ridurre la dimensione del font Per ridurre la dimensione del font allinterno di una tabella sufciente mettere il comando della dimensione del font dentro lambiente table. Per esempio, il codice
\begin{table}[tb]\footnotesize \caption{ . . . }\label{ . . . }\centering \begin{tabularx}{ . . . } ... \end{tabularx} \end{table}

Ridimensionare le tabelle

produce la tabella 16. Si confronti il risultato con la tabella 13 a pagina 83. Se la tabella non mobile, ovvero se non inserita in un ambiente table, la dichiarazione della dimensione del font deve essere fatta fuori dallambiente tabular e poi alla ne deve essere ripristinato il font usato nel testo. Al contrario, quando la dichiarazione inserita in un ambiente table, vale solo allinterno di tale ambiente e quindi non necessario ripristinare la dimensione normale del font alla ne. In alternativa, il pacchetto graphicx offre due comandi che possono essere usati per ridimensionare le tabelle: \scalebox e \resizebox . Questa soluzione pi essibile della precedente, perch consente di scegliere il fattore di scala praticamente con continuit. Il comando
\scalebox{ scala orizzontale }[ scala verticale ]{ argomento }

ridimensiona il suo argomento (che in questo caso sar una tabella) di scala orizzontale in orizzontale e scala verticale in verticale. Nel caso di tabelle, si vuole usare lo stesso fattore di scala in orizzontale e in verticale: possibile farlo dichiarando uno solo tra scala orizzontale e scala verticale e assegnando ! allaltro. Il comando
\resizebox{ larghezza }{ altezza }{ argomento }

.
Tabella 17: Tabella ridimensionata con \resizebox .
Forza Una forza una grandezza sica che si manifesta nellinterazione di due o pi corpi materiali, che cambia lo stato di quiete o di moto dei corpi stessi. Il momento polare di una forza rispetto a una determinata origine denito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza.

87

Momento polare

ridimensiona il suo argomento (che in questo caso sar una tabella) in modo da ottenere la larghezza e l altezza specicate; anche in questo caso possible assegnare ! per non modicare il rapporto tra altezza e larghezza della tabella. Un uso tipico di questi comandi consiste nel ridimensionare la tabella in modo che occupi tutta la larghezza delle righe; tale effetto pu essere ottenuto per esempio con
\begin{table}[tb] \caption{ . . . }\label{ . . . }\centering \resizebox{\columnwidth}{!}{% \begin{tabular}{ . . . } ... \end{tabular}} \end{table}

Per esempio la tabella 17 realizzata con lo stesso codice della tabella 13 a pagina 83, ma ridimensionata con \resizebox in modo da avere la larghezza pari al 75% della larghezza delle righe:
\resizebox{0.75\columnwidth}{!}{ . . . }

Ruotare tabelle Per ruotare una tabella mobile, il pacchetto rotating mette a disposizione lambiente sidewaystable (che pu essere usato per ruotare ogni altro oggetto mobile). Questo ambiente si va a sostituire allambiente table. La sintassi :
\begin{sidewaystable} \caption{ . . . }\label{ . . . }\centering \begin{tabular} ... \end{tabular} \end{sidewaystable}

Il pacchetto rotating

A differenza degli ambienti precedenti, sidewaystable occupa uninA tera pagina. Dato che tale ambiente mobile, se necessario L TEX riempie la pagina che lo precede con il testo che si trova dopo tale ambiente. Per esempio, il codice
\newcolumntype{W}{>{\centering\arraybackslash}X} \begin{sidewaystable}[p]\small \caption{ . . . }\label{ . . . }\centering \renewcommand{\tabularxcolumn}[1]{>{\arraybackslash}m{#1}} \begin{tabularx}{\textheight}{lccWWWWW}

88

23 Pannello multistrato a piramide reticolare

0,925

0,299

0,285

1,210 1,236 1,217 1,240 0,882 Deessione risultante IN

13,78

27,2

Pannello multistrato a nido dape quadrato

0,939

0,297

0,279

14,0

28,7

Tabella 1: Confronto tra i miglioramenti delle prestazioni di strutture resistenti ad onde durto.

0,931

0,299

0,283

14,0

27,6

1,234

0,398

0,278

28,9

Piastra monolitica

14,0

0,882

0,391

0,391

14,55

100

Unit di misura

kg/m2

(max /L)N

Simbolo

max /L

Densit nucleare relativa

Densit superciale

Figura 8: Un esempio duso dellambiente sidewaystable.

... \end{tabularx} \end{sidewaystable}

produce la tabella riportata nella gura 8. In questo esempio, oltre a sidewaystable, si usa anche il pacchetto tabularx, con il quale si denisce una colonna di tipo W (il cui testo centrato orizzontalmente) e si centra verticalmente il testo, e inoltre si riduce la dimensione del font con il comando \small . Tabelle su pi pagine
Il pacchetto longtable

Una tabella composta con lambiente standard tabular deve sempre essere contenuta in una sola pagina: se pi grande in altezza, le parti che sono allesterno vengono tagliate e si riceve un errore (overfull vbox). Il pacchetto longtable permette di superare questa limitazione e di ripartire una tabella su pi pagine. Il pacchetto offre lomonimo ambiente longtable, che si comporta come il normale tabular, ma controlla le dimensioni in altezza della tabella a ogni riga: se queste dimensioni superano quelle dellintera pagina, vengono inseriti automaticamente il contenuto del piede (foot) e il comando \end{tabular }, e la tabella viene fatta continuare su una nuova pagina inserendo il contenuto dellintestazione (head). Il piede pu essere usato per scrivere alla ne di ogni pagina in cui presente la tabella lindicazione continua nella prossima pagina (o si conclude dalla pagina precedente), mentre lintestazione permette di scrivere lindicazione continua dalla pagina precedente.5
5 Esistono altri due pacchetti simili a longtable: supertabular e il suo sviluppo xtab. Essi per presentano alcune limitazioni (per esempio, non sono del tutto compatibili con array e altri pacchetti), per cui se ne sconsiglia luso.

Impulso trasmesso

Dati sperimentali

Grandezza

Id %

mA

Ii %

nr

40,6

4,0

38,0

4,0

ii

40,2

4,0

iii

37,1

4,1

.
Tabella 18: Tabella con nota che segue la numerazione delle note nel testo e viene posizionata a pi di pagina (pacchetto footnote).

89

Forza

Una forza una grandezza sica che si manifesta nellinterazione di due o pi corpi materiali, che cambia lo stato di quiete o di moto dei corpi stessi. Il momento polare di una forza rispetto a una determinata origine denito come il prodotto vettoriale tra il vettore posizione6 e la forza.

Momento polare

. .

Note dentro a tabelle

A Il comando standard di L TEX per le note a pi di pagina (\footnote ) non funziona nelle tabelle, perch lambiente tabular non permette al comando di posizionare testo a pi di pagina. A Come per la maggior parte delle cose in L TEX, ci sono ottime ragioni per questa limitazione. In generale, per migliorarne la leggibilit preferibile che le eventuali annotazioni siano inserite nella didascalia della tabella, tanto pi se questa inserita in un ambiente table. Una tabella mobile infatti un oggetto a s stante, che non ha relazioni con il testo della pagina; scrivendo note alla tabella nel piede della pagina c il rischio di confondere il lettore. Tuttavia, a volte, leditore o il relatore possono imporre allautore di inserire note in una tabella. A tal ne ci sono diverse soluzioni; di seguito si riportano le migliori. In generale possono presentarsi due casi:

preferibile inserire eventuali annotazioni nella didascalia della tabella.

a. si vuole che la nota segua la numerazione delle altre note presenti nel testo; b. si vuole una numerazione particolare (per esempio con lettere) per le note di una tabella. La soluzione per il caso a fornita dal pacchetto footnote. Tale pacchetto mette a disposizione lambiente savenotes, che permette di inserire note anche nellambiente tabular e le posiziona a pi di pagina. Per esempio, la tabella 18 ottenuta con il seguente codice:
\begin{savenotes} \begin{table}[ . . . ]\caption{ . . . }\label{ . . . }\centering \begin{tabularx}{ . . . } ... Momento polare & Il momento polare di una forza rispetto a una determinata origine definito come il prodotto vettoriale tra il vettore posizione\footnote{Rispetto alla stessa origine.} e la forza. \\ \bottomrule \end{tabularx} \end{table} \end{savenotes}

Il pacchetto footnote

Se si vuole permettere la presenza delle note in tutte le tabelle del documento sufciente inserire nel preambolo il comando
6 Rispetto alla stessa origine.

90 Tabella 19: Tabella con note con una numerazione propria e posizionate subito sotto la tabella (pacchetto ctable).

Forza

Una forza una grandezza sica che si manifesta nellinterazione di due o pi corpi materiali, che cambia lo stato di quiete o di moto dei corpi stessi. Il momento polare di una forza rispetto a una determinata origine denito come il prodotto vettoriale tra il vettore posizionea e la forza.

Momento polare

a Rispetto alla stessa origine.

\makesavenoteenv{tabular}

Il pacchetto ctable

La soluzione per il caso b offerta dal pacchetto ctable. Lambiente


ctable, offerto dallomonimo pacchetto, prevede il comando \tmark ,

che posiziona il simbolo della nota (in questo caso la numerazione predenita con le lettere minuscole), e il comando \tnote{ . . . }, che contiene il testo della nota. Le note sono posizionate subito sotto la tabella e non a pi di pagina. Per esempio, la tabella 19 ottenuta con il seguente codice:
\ctable[caption=...,label=...]{ . . . } {\tnote{Rispetto alla stessa origine.}} {... Momento polare & Il momento polare di una forza rispetto a una determinata origine definito come il prodotto vettoriale tra il vettore posizione\tmark{} e la forza. \\ \bottomrule}

. .
Il pacchetto colortbl

Tabelle colorate

Quando si vuole evidenziare parte di una tabella, pu risultare utile colorarne lo sfondo. Il pacchetto colortbl permette di colorare lo sfondo di celle, righe e colonne di ambienti tabular (permette anche di colorare le linee, ma tale argomento non viene affrontato perch nei documenti scientici non dovrebbero mai essere usate linee colorate). Il pacchetto colortbl richiede la presenza dei pacchetti xcolor e array.7 Colorare le colonne

Il comando \columncolor

Il pacchetto colortbl offre il comando \columncolor , che deve essere usato esclusivamente allinterno del comando >{ . . . } (vedi il paragrafo 6.1.5 a pagina 80). La sintassi
\columncolor[ modello di colore ]{ colore }

dove:
7 Alternativamente al pacchetto xcolor, pu essere usato il pacchetto color.

.
Tabella 20: Tabella con una colonna colorata ottenuta con il pacchetto colortbl.

91

D (m) 5 10 20

Pu (kg) 269,8 421,0 640,2

uu (m) 0,000674 0,001035 0,001565

Gf (Pa m)

1,79 3,59 7,18

0,04089 0,04089 0,04089

modello di colore dichiara il modello di colore da usare; quelli disponibili sono rgb, cmyk, gray e named. colore dichiara il colore da usare; tale denizione dipende dal modello di colore scelto. Il modello rgb (Red Green Blue) richiede un elenco di tre numeri compresi tra 0 e 1 e separati tra loro da una virgola; ognuno di essi d la rispettiva componente del colore (rossa, verde e blu). (Esiste anche il modello RGB, in cui i tre numeri sono compresi tra 0 e 255.) Il modello cmyk (Cyan Magenta Yellow blacK) richiede un elenco di quattro numeri compresi tra 0 e 1 e separati tra loro da una virgola; ognuno di essi d la rispettiva componente del colore (azzurro, magenta, giallo e nero). Il modello gray richiede un solo numero compreso tra 0 e 1, che indica il livello di grigio; nelle tabelle scientiche si preferisce usare i grigi al posto del colore quindi questo comando risulta particolarmente conveniente. Il modello named permette di richiamare i colori in base al nome; tale nome deve essere noto al pacchetto xcolor oppure denito dallutente con il comando
\definecolor{ nome }{ modello di colore }{ colore }

I modelli rgb, cmyk, gray e named

dove nome il nome assegnato dallutente al colore, mentre modello di colore e colore hanno lo stesso signicato che hanno in \columncolor . Si consiglia di usare il comando \newcolumntype per denire nuove colonne che abbiano il colore desiderato. Per esempio, denendo
\newcolumntype{G}{>{\columncolor[gray]{0.8}}c}

possibile ottenere la tabella 20 con il codice


\begin{tabular}{ccccG} \toprule $D$ & $P_u$ & $u_u$ (m) & (kg) & (m) \midrule 5 & 269,8 & 0,000674 10 & 421,0 & 0,001035 20 & 640,2 & 0,001565 \bottomrule \end{tabular}

& $\beta$ & $G_f$ \\ & & (Pa\,\,m) \\ & 1,79 & 3,59 & 7,18 & 0,04089 \\ & 0,04089 \\ & 0,04089 \\

92 Tabella 21: Tabella con una riga colorata ottenuta con il comando \rowcolor .

D (m) 5 10 20

Pu (kg) 269,8 421,0 640,2

uu (m) 0,000674 0,001035 0,001565

Gf (Pa m)

1,79 3,59 7,18

0,04089 0,04089 0,04089

Tabella 22: Tabella con le righe dispari colorate ottenuta con il pacchetto xcolor.

D (m) 5 10 20

Pu (kg) 269,8 421,0 640,2

uu (m) 0,000674 0,001035 0,001565

Gf (Pa m)

1,79 3,59 7,18

0,04089 0,04089 0,04089

Colorare le righe
Il comando \rowcolor

Per colorare le righe, il pacchetto colortbl mette a disposizione il comando \rowcolor , che ha la stessa sintassi di \columncolor e deve essere posizionato allinizio di una riga. Se in una tabella sono contemporaneamente presenti \columncolor e \rowcolor , questultimo ha la precedenza. Per esempio, la tabella 21 ottenuta con lo stesso codice della tabella 9 a pagina 78 con laggiunta del comando
\rowcolor[gray]{0.8}

Usare il colore sullo sfondo per separare le righe

Talvolta il colore sullo sfondo non serve a evidenziare le righe, ma a separarle (si tratta di una funzione analoga a quella delle linee orizzontali). In questo caso risulta particolarmente conveniente il pacchetto xcolor, che offre comandi per colorare in automatico tutte le righe pari o tutte le righe dispari di una tabella. In tal caso deve essere caricata lopzione table del pacchetto, con il comando
\usepackage[table]{xcolor}

Il comando da scrivere subito prima dellambiente tabular


\rowcolors{ riga }{ colore delle righe dispari }{ colore delle righe pari }

dove: riga indica il numero della prima riga da colorare; colore delle righe dispari indica il colore da applicare alle righe dispari (vuoto signica nessun colore); colore delle righe pari indica il colore da applicare alle righe pari (vuoto signica nessun colore).

.
Tabella 23: Tabella con una cella colorata.
Forza Una forza una grandezza sica che si manifesta nellinterazione di due o pi corpi materiali, che cambia lo stato di quiete o di moto dei corpi stessi. Il momento polare di una forza rispetto a una determinata origine denito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza.

93

Momento polare

Per esempio, la tabella 22 a fronte identica alla tabella 9 a pagina 78, ma usa lo sfondo grigio per le righe dispari. Il codice usato :
\rowcolors{2}{gray!35}{} \begin{tabular}{ccccc} ... \end{tabular}

Colorare singole celle Per colorare lo sfondo di singole celle, il pacchetto colortbl offre il comando \cellcolor , che funziona come \columncolor e \rowcolor e che ha precedenza su entrambi; \cellcolor pu essere posizionato ovunque nella cella a cui va applicato. Per esempio, la tabella 23 ottenuta con lo stesso codice della tabella 16 a pagina 86 con la sola aggiunta del comando
\cellcolor[gray]{0.8}

Il comando \cellcolor

.
Le gure sono uno degli argomenti trattati pi estesamente dalle guide; esistono anche guide interamente dedicate allargomento [Caucci e Spadaccini, 2000], cui si rimanda il lettore per ogni approfondimento. A I problemi incontrati dagli utenti di L TEX durante linserimento di gure sono generalmente di due tipi. Una parte dei problemi deriva dalle gure in s, ovvero dai le che si cerca di inserire in un documento (verranno trattati in questo paragrafo), mentre un altro tipo di problemi, totalmente distinto dal precedente, quello del posizionamento delle gure (verranno trattati nei paragra 6.3 a pagina 98 e 6.4 a pagina 100). . . Immagini vettoriali e bitmap

Esistono due grandi classi di gure, le immagini vettoriali e le immagini bitmap. Le prime sono descritte da forme e possono essere scalate e deformate senza perdere denizione; sono soprattutto adatte

94

per i graci e per gli schemi. Le seconde sono matrici di pixel colorati e sono adatte per le fotograe, i disegni e le icone [Mori, 2007, p. 32]. Immagini vettoriali Nonostante vi siano vari strumenti per creare graci e schemi con A L TEX oppure con qualche sua estensione, la maggior parte degli utenti li considera decisamente ostici. Pertanto, questa possibilit non sar pi considerata per il resto di questo lavoro.8 Un metodo di gran lunga pi semplice per inserire graci o schemi in un documento consiste nel prepararli attraverso un software specico e di includere limmagine ottenuta nel documento. Il seguente un elenco di programmi di graca vettoriale. un programma multipiattaforma e gratuito, pubblicato con licenza gnu, particolarmente adatto per disegnare graci qualitativi. un programma gratuito per Unix/Linux, coperto da licenza gnu, che permette di disegnare gure usando cerchi, rettangoli e linee. Per Windows esiste la versione WinFIG. un programma multipiattaforma e gratuito, che permette di realizzare graci di funzioni matematiche in due e tre dimensioni. un eccellente programma di calcolo simbolico e numerico. Il software, disponibile (a pagamento) per le piattaforme pi diffuse, consente, fra laltro, di realizzare graci di funzioni matematiche in due e tre dimensioni (http://www.wolfram.com/ products/mathematica/). un ottimo programma commerciale per Mac, che permette di realizzare schemi e diagrammi di ogni tipo (http://www. omnigroup.com/applications/omnigraffle/). I formati vettoriali pi noti e diffusi sono il formato pdf (Portable Document Format), il formato ps (PostScript) e il suo parente stretto eps (Encapsulated PostScript); oggi diffuso anche il formato svg (Scalable Vector Graphics), usato specialmente per le applicazioni Web. Immagini bitmap I formati di matrici di pixel sono numerosissimi, e vanno dal jpeg (Joint Photographic Experts Group), molto diffuso per rappresentare immagini fotograche, al png (Portable Network Graphics), adatto per rappresentare disegni e icone, al gif (Graphics Interchange Format) al tiff (Tagged Image File Format). Questo solo un piccolo elenco di formati graci bitmap, perch esistono dei formati specici per certi apparecchi fotograci digitali o per particolari codici di colore. Alcuni formati sono compressi in una maniera che sfrutta la ridondanza di informazioni delle immagini.
A 8 Gli strumenti pi diffusi per disegnare graci e schemi con L TEX sono lambiente picture, i pacchetti pgf, PSTricks e Xy-pic, e i programmi METAPOST e Asymptote. Tuttavia, essi richiedono di inserire a mano gli opportuni comandi per costruire il graco di cui si necessita.

Il modo pi semplice per inserire graci in un documento consiste nellusare un software esterno.

. . . Conversione dei formati

95

La prima cosa da fare produrre gure nel formato pi adatto per i propri scopi. inutile registrare una gura in jpeg per poi convertirla in pdf, in quanto la conversione di unimmagine bitmap in pdf include semplicemente il le bitmap in una cornice pdf senza migliorare in alcun modo la qualit. sbagliato anche fare la conversione opposta da le vettoriale a bitmap, perch in questo modo si perdono le informazioni sulla geometria contenuta nella gura e quindi si abbassa la qualit del le. Ci premesso, dal momento che, come anticipato nel paragrafo 3.7 A a pagina 18, L TEX richiede immagini esclusivamente in formato eps, A mentre pdfL TEX accetta immagini in formato pdf (se vettoriali) oppure jpg o png (se bitmap), pu essere necessario convertire un formato in un altro. A tal ne esistono diversi programmi e di seguito se ne elencano alcuni.9 un programma gratuito per Unix/Linux che permette, fra laltro, di convertire le dal formato eps e ps al formato pdf. Esiste anche un programma simile, GSview, disponibile per Windows e Unix/Linux. Entrambi i programmi si scaricano dal sito http://pages.cs.wisc.edu/~ghost/ e richiedono Ghostscript (disponibile allo stesso indirizzo Internet). uninterfaccia graca, disponibile solo per Windows, che trasforma unimmagine eps o ps in pdf. Richiede Ghostscript. Si scarica dal sito http://www.ctan.org/tex-archive/support/ eps2pdf/. Su Windows e Linux disponibile anche un programma analogo, epstopdf, che opera dalla linea di comando (http://www.ctan.org/tex-archive/support/epstopdf/). un programma multipiattaforma e gratuito che consente, fra laltro, di visualizzare le immagini bitmap di svariati formati e di registrarle in uno qualunque dei numerosi formati che in grado di gestire. Non va usato per convertire formati vettoriali in formati a matrici di pixel, limitandosi alle trasformazioni dei formati bitmap. Si scarica da http://www.gimp.org/. un programma di graca bitmap, multipiattaforma e gratuito. Mette a disposizione dellutente il comando convert, che permette di eseguire rapidamente la conversione da un formato graco allaltro (http://www.imagemagick.org/). un applicativo del sistema operativo Mac OS X; permette, fra laltro, di visualizzare e convertire immagini di numerosi formati, sia vettoriali sia bitmap. Su Mac, la conversione di unimmagine eps o ps in pdf viene fatta automaticamente dal sistema operativo: cliccando su un le eps o ps, esso viene aperto con Anteprima, dal quale si pu registrare il le in formato pdf.
A 9 Con pdfL TEX si possono includere anche immagini bmp, gif e tiff, a patto di caricare il pacchetto bmpsize.

Produrre gure nel formato corretto

A L TEX accetta solo immagini eps, A mentre pdfL TEX accetta immagini pdf (se vettoriali), jpg o png (se bitmap).

96

. .
Il bounding box

Scontornare le immagini

Programmi per scontornare le immagini

Uno dei parametri pi importanti di una gura linformazione relativa alle dimensioni del rettangolo circoscritto allimmagine (il cosiddetto bounding box). Questo contorno determina la taglia effettiva A dellimmagine e serve a L TEX per calcolare lo spazio da riservare alla gura. Idealmente, il contorno dovrebbe essere al limite massimo del contenuto dellimmagine, ma talvolta capita di aver a che fare con gure con grandi bordi bianchi attorno allimmagine effettiva. Questo A porta spesso a grandi confusioni, perch di fatto L TEX sta lasciando alla gura lo spazio corretto, ma visivamente parte di questo spazio usato per il bordo bianco, quindi la gura appare troppo piccola, non centrata, con eccessivi margini verticali, eccetera. La prima cosa da vericare quindi che le dimensioni del rettangolo circoscritto allimmagine che si desidera includere nel documento siano corrette. Per farlo, basta aprire la gura con un programma accessorio (come Adobe Reader o Gimp) e attivare la visualizzazione del contorno. Se le dimensioni del contorno non sono corrette, necessaA rio intervenire, ma il problema non ha niente a che vedere con L TEX. Nel caso si abbiano poche gure con contorni errati, questi si possono correggere a mano. Se per il problema riguarda molti le, bisogna cercare di correggerlo allorigine (per esempio congurando correttamente il programma di graca usato per produrre le immagini). Di seguito si elencano alcuni programmi per scontornare le immagini. consente di scontornare e di correggere immagini bitmap di numerosi formati. e permettono di scontornare immagini vettoriali.

un programma per Windows e Mac che permette di eseguire numerose azioni sui le e sulle immagini in formato pdf. Si possono per esempio estrarre delle pagine contenenti immagini da un le pdf e poi si possono ritagliare solo le immagini che interessano, scontornandole con una comoda interfaccia graca. Lunico difetto potrebbe essere il costo, visto che il programma commerciale (http://www.adobe.com/ it/products/acrobatpro/), mentre Adobe Reader, gratuito, non consente di effettuare modiche. permette, fra laltro, di scontornare immagini di numerosi formati, vettoriali e bitmap. . . Linclusione delle immagini

Per inserire le gure necessario caricare il pacchetto graphicx:


\usepackage{graphicx}

Per inserire unimmagine nel documento, si usa il comando


\includegraphics[ opzione = valore , . . . ]{ immagine }

Il parametro opzionale permette linserimento di un elenco di opzioni, separate da virgole, con i relativi valori. Le opzioni possono essere

.
Tabella 24: Opzioni del pacchetto graphicx.
width height angle scale

97

Ridimensiona limmagine alla larghezza specicata Ridimensiona limmagine allaltezza specicata Ruota limmagine in senso antiorario Riassegna le dimensioni dellimmagine

usate per modicare la larghezza, laltezza e lorientamento del graco incluso. La tabella 24 elenca le opzioni pi importanti. Gli esempi che seguono dovrebbero rendere pi chiaro il procedimento. possibile specicare la grandezza che limmagine deve assumere, in larghezza,

\includegraphics[width=% \columnwidth]{Mani}

Limmagine a anco, che riproduce la litograa Mani che disegnano, di M. Escher, tratta da
http://www. mcescher.com/.

o in altezza,

\includegraphics[height=% 0.15\textheight]{Mani}

(\textheight indica laltezza del corpo della pagina, senza contare la testatina e il pi di pagina). Nonostante sia possibile attribuire alle chiavi width e height un valore espresso in punti, millimetri e in qualsiasi unit tipograca ricoA nosciuta da L TEX (per esempio width=87mm), opportuno esprimere questa dimensione con un valore legato alla geometria della pagina (per esempio width=0.5\columnwidth), perch cambiando le dimensioni della pagina la dimensione relativa mantiene le proporzioni, mentre la dimensione assoluta potrebbe dare luogo a inconvenienti di impaginazione. Si pensi per esempio di voler passare da una composizione a piena pagina a una composizione a pi colonne; 87 mm potrebbero andare bene a piena pagina, ma potrebbero essere troppi per una colonna. Il comando \includegraphics permette inoltre di reimpostare le dimensioni dellimmagine:

98

\includegraphics[scale=0.10]% {Mani}

Si pu inne ruotare limmagine in senso antiorario di un angolo espresso in gradi:

\includegraphics[width=0.5% \columnwidth,angle=45]{Mani}

Per mantenere ordine nei le sorgenti, consigliabile raccogliere tutte le gure in una cartella. Se si hanno molte gure, conveniente suddividere la cartella in sottocartelle; se per esempio tali sottocartelle si chiamano grafici e foto, sufciente inserire nel preambolo
\graphicspath{{grafici/},{foto/}}

consigliabile non specicare lestensione dei le graci caricati.

Per evitare problemi, opportuno che il percorso dei le inclusi mediante il comando \graphicspath non contenga spazi. A A Se si prevede di compilare sia con L TEX sia con pdfL TEX, consigliabile non specicare lestensione dei le graci caricati dal comando \includegraphics ; volendo per esempio inserire il le figura.eps, necessario creare il le figura.pdf (per esempio con Ghostview o GSview) e poi scrivere nel testo sorgente
\includegraphics{figura}
A Adottando questo accorgimento, quando si compila con L TEX viene A caricato il le figura.eps, mentre quando si compila con pdfL TEX viene caricato il le figura.pdf.

.
Normalmente, le gure e le tabelle vanno trattate come oggetti mobili. . .

. . . ma possono essere inserite direttamente in un punto ben preciso del documento, senza didascalia.

Normalmente, il comando \includegraphics e lambiente tabular vengono usati rispettivamente allinterno dellambiente figure e table per creare una gura o una tabella mobile, che nel documento naA le sar posizionata da L TEX in accordo con determinate opzioni e regole tipograche, accompagnata da una didascalia (vedi il paragrafo successivo). Essi possono per essere impiegati diversamente, quando si vuole inserire una gura o una tabella in un punto ben preciso del documento e non si ha bisogno di una didascalia. Per esempio, il comando \includegraphics pu essere usato per inserire il sigillo della propria universit o il logo della propria azienda nella copertina di una relazione.

. Il comando \includegraphics (come del resto lambiente tabular) non inizia un nuovo capoverso; esso produce ununit tipograca inA divisibile che viene trattata da L TEX come se fosse un carattere (una A scatola, nel gergo di L TEX), e pu quindi essere utilizzato in linea e senza racchiuderlo nellambiente figure, per inserire una piccola immagine oppure un simbolo in una riga di testo, come nel seguente esempio:

99

\emph{Le Chat noir} \includegraphics[width=% 0.15\columnwidth]{LeChatNoir} (Il Gatto nero) fu un celebre locale di Montmartre (Parigi).

Le Chat noir (Il Gatto nero) fu un celebre locale di Montmartre (Parigi).

In generale, ci sono due tipi di gure (e tabelle): ( ) appartiene al usso del discorso e non pu essere posizionata altrove senza che il discorso ne risenta. ( ) non appartiene al usso del discorso e pu essere spostata per esigenze tipograche. Solo le gure e le tabelle fuori testo ammettono una didascalia e un numero al quale potersi riferire: chi legge deve poter capire che cosa c nella gura o nella tabella (questo lo scopo della didascalia) e deve saperla trovare (con il numero). Le gure e le tabelle in testo, invece, non ammettono una didascalia proprio perch la loro funzione spiegata dal testo che le precede e le segue. Non ci devono essere riferimenti a queste direttamente da altre parti del documento. Devono essere di piccole dimensioni, e devono essere di chiarissima comprensione. Una gura o una tabella complessa devono andare fuori testo. Di solito, le gure e le tabelle in testo sono centrate orizzontalmente rispetto alla giustezza del testo. A tal ne, si utilizza lambiente center:
La figura seguente \begin{center} \includegraphics[width=% 0.5\columnwidth]{Rettili} \end{center} riproduce lincisione su legno \emph{Tassellazione del piano con rettili}, di M.~Escher (limmagine tratta da \url{http://% www.mcescher.com/}).

Solo le gure e le tabelle fuori testo ammettono una didascalia e un numero.

La gura seguente

riproduce lincisione su legno Tassellazione del piano con rettili, di M. Escher (limmagine tratta da http://www.mcescher.com/).

100

La tabella seguente \begin{center} \begin{tabular}{cc} \toprule $p$ & $\lnot p$ \\ \midrule V & F \\ F & V \\ \bottomrule \end{tabular} \end{center} riproduce la tavola di verit della negazione logica.

La tabella seguente p V F p F V

riproduce la tavola di verit della negazione logica.

\columnwidth, \textwidth

\linewidth

Quando si inseriscono tabelle o gure in testo, o fuori testo mediante gli ambienti table o figure, preferibile utilizzare, in luogo del comando \textwidth (che indica la larghezza del corpo del testo), la larghezza della colonna di composizione \columnwidth (che per documenti scritti in ununica colonna coincide con \textwidth ), dal momento che, cos facendo, se si vuole passare da una composizione a piena pagina a una composizione a pi colonne non necessario modicare il codice. Se si inseriscono tabelle o gure in un elenco o in una citazione, pu essere utile servirsi del comando \linewidth , che indica la lunghezza della riga corrente: normalmente essa uguale a \columnwidth , ma in alcuni ambienti, come per lappunto quelli per gli elenchi e per le citazioni, pi corta [Beccari, 2009, p. 88].10

.
Le tabelle e le gure richiedono un trattamento particolare, perch non possono essere spezzate e stampate su pi pagine.11 Un metodo potrebbe essere quello di cominciare una nuova pagina ogni volta che una gura o una tabella troppo grande per stare sulla pagina corrente. Questo approccio lascerebbe alcune pagine parzialmente vuote, e il risultato sarebbe insoddisfacente. La soluzione a questo problema di rendere mobili (in inglese oating, galleggianti) le tabelle o le gure che non stanno sulla pagina corrente e stamparle su una pagina successiva, riempiendo quella corrente con il testo successivo (tabelle e gure di questo genere vengono A dette fuori testo). L TEX offre due ambienti per gli oggetti mobili, uno per le tabelle (table) e uno per le gure (figure).12
10 preferibile evitare di servirsi del comando \linewidth fuori dagli ambienti per gli elenchi e per le citazioni, in quanto il suo valore , in generale, imprevedibile al di fuori di quei contesti. 11 Fanno eccezione le tabelle ripartite su pi pagine denite con longtable. 12 Se si scrive un documento su pi colonne, oltre agli ambienti table e figure, che si usano per tabelle e gure che si estendono per la larghezza di una singola colonna (\columnwidth ), si possono usare anche gli ambienti table* e figure*, per tabelle e gure che si estendono lungo lintera larghezza della pagina (\textwidth ). Se poi si desidera creare oggetti mobili personalizzati, utile il pacchetto oat: si faccia riferimento alla documentazione del pacchetto e ai relativi comandi \newfloat e \listof .

A In L TEX, le tabelle e le gure fuori testo sono oggetti mobili.

.
Tabella 25: Caratteri di trasferimento.

101

Carattere
h t b p !

Permesso di spostare loggetto Qui (here), se possibile In cima (top) alla pagina In fondo (bottom) alla pagina In una pagina di soli oggetti mobili (page of oats)
A Senza considerare molti dei parametri interni di L TEX

Per ottenere il massimo da questi due ambienti importante comA prendere almeno approssimativamente come L TEX tratta internamente gli oggetti mobili. In caso contrario, essi possono diventare una fonte A di frustrazione, perch L TEX non li mette mai dove ci si aspetterebbe. . . Gli ambienti table e figure

Tutto il materiale presente in un ambiente table o figure verr trattato come oggetto mobile. Entrambi gli ambienti prevedono un parametro opzionale
\begin{table}[ posizionamento ]

oppure
\begin{figure}[ posizionamento ]
A chiamato posizionamento . Questo parametro serve a dire a L TEX dove gli oggetti possono essere spostati. Un posizionamento costituito da una sequenza di caratteri di trasferimento (vedi la tabella 25). Una tabella mobile potrebbe per esempio iniziare con la seguente riga:

\begin{table}[tbp]
A In questo esempio, L TEX cercher di posizionare la tabella in cima alla pagina (t). Se questo non possibile, prova a posizionarla in fondo A alla pagina (b). Se neppure questo possibile, L TEX stabilisce se si pu posizionare la tabella in una pagina di soli oggetti mobili (p). Se ci A non possibile, L TEX inizia una nuova pagina, e tratta la tabella come se fosse appena comparsa nel testo. (In generale, se il posizionamento di un oggetto non viene specicato, le classi standard assumono che sia proprio tbp.) A L TEX colloca ogni oggetto mobile che incontra in base al posizionamento specicato dallautore. Se un oggetto non pu essere posizionato nella pagina corrente, viene accumulato nella coda delle tabelle o delle gure (queste code sono di tipo fifo, First In First Out, primo arA rivato, primo servito). Quando viene iniziata una nuova pagina, L TEX controlla innanzitutto se possibile una pagina speciale di soli oggetti mobili con quelli presenti nelle code. Se questo non possibile, il primo oggetto in ciascuna coda trattato come se fosse appena comparso A nel testo: L TEX prova ancora a collocarlo secondo il suo parametro di posizionamento (tranne per h, che non pi possibile). Tutti i nuovi

A L TEX colloca ogni oggetto mobile in base al posizionamento specicato dallautore.

102

oggetti mobili che compaiono nel testo vengono posti nelle rispettive A code. L TEX mantiene strettamente lordine di inserimento originale per ogni tipo di oggetto mobile. Ecco perch un oggetto che non pu essere posizionato spinge tutti gli oggetti successivi alla ne del docuA mento. Se L TEX non mette gli oggetti mobili dove ci si aspettava, talvolta a causa di un solo oggetto che blocca una delle due code. Consideriamo un altro esempio:
\begin{figure}[!hbp]
A In questo caso, L TEX cercher disperatamente (!) di mettere la gura nel punto esatto in cui situato il relativo ambiente (h). Se questo non possibile, prova a posizionare la gura in fondo alla pagina (b). Se neppure questo possibile, stabilisce se possibile posizionare la gura in una pagina di soli oggetti mobili (p). Se non c abbastanza A materiale per una pagina di questo tipo, L TEX inizia una nuova pagina e tratta la gura come se fosse appena comparsa nel testo. Dopo aver spiegato la parte difcile, rimangono alcune altre nozioni da menzionare riguardo gli ambienti table e figure. Con il comando

\caption{ didascalia }
A possibile specicare una didascalia per loggetto mobile. L TEX aggiunge lintestazione Tabella o Figura e un numero progressivo. I due comandi

\listoftables

e
\listoffigures

agiscono analogamente al comando \tableofcontents , stampando lelenco delle tabelle e delle gure, rispettivamente. In questi elenchi, verr ripetuta tutta la didascalia. Se si ha la tendenza a usare didascalie lunghe, consigliabile fornirne una versione pi corta, che comparir negli elenchi. Questo si ottiene specicando la versione breve tra parentesi quadre dopo il comando \caption .
\caption[ didascalia corta ]{ didascalia }

Con i comandi \label, \ref e \vref si possono creare riferimenti a oggetti mobili nel documento.

Con i comandi \label , \ref e \vref (vedi il paragrafo 5.9 a pagina 63), si possono creare riferimenti a oggetti mobili nel documento. Il comando \label , che deve comparire dopo il corrispondente \caption , permette di fare riferimento alla tabella tramite \ref o \vref . Il modo migliore per introdurre un oggetto mobile scrivere il relativo ambiente tra capoversi, cio preceduto e seguito da una riga vuota. Ecco un esempio tipico duso dellambiente table:
\dots Qui finisce un capoverso. \begin{table}[tb] \caption{ . . . } \label{tab:esempio} \centering \begin{tabular}{ . . . } ...

.
\end{tabular} \end{table} La tabella~\vref{tab:esempio} un esempio di tabella mobile.

103

Per centrare una gura mobile opportuno utilizzare il comando


\centering invece dellambiente center, poich lo spazio verticale

supplementare inserito da questultimo che adeguato nellinserimento di gure (e tabelle) in testo risulta invece indesiderato nellinserimento di gure mobili (di regola, la didascalia di una gura si scrive sotto la gura). Ecco un esempio tipico duso dellambiente figure:
\dots Qui finisce un capoverso. \begin{figure}[tb] \centering \includegraphics[ . . . ]{ . . . } \caption{ . . . } \label{fig:esempio} \end{figure} La figura~\vref{fig:esempio} un esempio di figura mobile.

. .

Il controllo degli oggetti mobili

A Spesso gli utenti ritengono che L TEX sposti le gure (e in generale gli oggetti mobili) lontano dal punto in cui vengono inserite. Nella maggioranza dei casi questo dovuto a un uso erroneo delle opzioni di posizionamento degli oggetti mobili. In questo testo si vuole evidenziare che alcune scelte devono essere prese nella fase di stesura del testo mentre altre sono riservate, quando necessarie, alla fase di revisione.

Che cosa fare durante la stesura del testo


A In primo luogo bisogna accettare il fatto che se L TEX sposta un oggetto perch lo spazio sicamente insufciente, o per considerazioni A estetiche. Per esempio, L TEX non metter mai una gura seguita da un titolo di paragrafo e da un cambio pagina, ma preferir stampare il titolo del paragrafo e poi la gura, oppure, se aggiungiamo un oggetA to mobile in fondo a una pagina, L TEX obbligato a spostarlo almeno nella pagina successiva. Se lo spazio insufciente, inutile cercare di A forzare L TEX a mettere loggetto mobile in tale posizione: se lo spazio sico non c, non possiamo inventarlo [Mori, 2007, p. 15]. A Per fortuna, con un minimo di accortezza L TEX fa un ottimo lavoro. Per prima cosa opportuno evitare i posizionamenti fatti a mano: in fase di redazione bisogna solo concentrarsi sui contenuti e non sullimpaginazione. In generale i posizionamenti fatti a mano interferiscono A con il complesso algoritmo di L TEX per il posizionamento degli oggetti mobili e portano a risultati peggiori rispetto a quelli automatici. Seguendo le semplici indicazioni che seguono, gli oggetti mobili vengono mantenuti vicini al punto di inserimento e inoltre si evita che
A Se L TEX sposta un oggetto, perch lo spazio insufciente, o per considerazioni estetiche.

104

consigliabile introdurre gli oggetti mobili con unopzione di posizionamento tb se sono piccoli, e p se sono grandi.

lutente si preoccupi continuamente del posizionamento degli oggetti mobili, lasciando pi tempo per lavorare sui contenuti. Una delle origini dei problemi lamentati luso eccessivo dellopzione h: gli oggetti mobili vengono spesso inseriti con lopzione htbp o peggio !ht. In genere si pensa che questa opzione sia la migliore per mantenere gli oggetti mobili vicino al punto di inserzione. In realt pu funzionare bene solo quando gli oggetti inseriti sono molto piccoli (dove per piccolo si intende con unaltezza molto inferiore rispetto allaltezza del corpo del testo). Il modo migliore per usare le opzioni di posizionamento quello di domandarsi in primo luogo se loggetto mobile sar abbastanza piccolo per stare in una pagina di testo o se avr bisogno di una pagina tutta per s. Nel primo caso lo introdurremo quindi con unopzione di posizionamento tb, nel secondo con p. Se non ci sono oggetti mobili A in sospeso, nel primo caso L TEX potr spostare loggetto subito prima del punto di inserzione, cosa che non pu fare se si usa h prima di t, o nella pagina immediatamente successiva. Usando invece p per i grossi oggetti mobili, questi verranno immediatamente stampati in una pagina dedicata, e non verrano spostati alla ne del capitolo come succede con tbp. Basta sfogliare un qualunque testo ben impaginato per accorgersi che le tabelle e le gure sono introdotte proprio in questo modo: di regola allinizio o alla ne della pagina, in una pagina intera se sono grandi, raramente nel corpo del testo se sono davvero piccole.13 A Inne utile ricordare che L TEX riesce a posizionare tutti gli oggetti in modo corretto solo se il rapporto testo/oggetti sufcientemente alto. Da questo segue che auspicabile (peraltro non solo per ni tipograci) scrivere contenuti interessanti piuttosto che tentare di colmare le lacune con immagini o tabelle. Se tutto ci non fosse sufciente, nella fase precedente la stampa, e solamente allora, pu essere necessario intervenire manualmente come spiegato nel paragrafo seguente.14 Che cosa fare durante la revisione del testo Nella fase che precede la stampa, pu essere necessario intervenire manualmente per correggere il posizionamento degli oggetti mobili. In alcune circostanze potrebbe essere necessario usare i comandi
\clearpage

oppure
\cleardoublepage
A Essi ordinano a L TEX di stampare immediatamente tutti gli oggetti mobili rimasti nelle code e cominciare una nuova pagina. Il comando \cleardoublepage inizia una nuova pagina destra (nel caso di documenti a doppia facciata).

13 Se si scrive un documento su pi colonne, i risultati migliori si ottengono scegliendo lopzione di posizionamento t e poi, in fase di revisione, spostando linserimento degli A oggetti in modo che siano ripartiti su tutte le colonne (altrimenti in alcuni casi L TEX pu metterne due o pi su una colonna e nessuno su unaltra, producendo un effetto non molto gradevole). 14 Talvolta alcune riviste richiedono che nelle bozze tutte le tabelle e gure siano riportate alla ne del documento: per fare questo in automatico possibile usare il pacchetto endoats.

. Possono inoltre essere utili il pacchetto oat, che permette di forzare il posizionamento delloggetto nel punto in cui situato il relativo ambiente per mezzo dellopzione H (Here, esattamente qui, in ogni caso), e il pacchetto placeins, che permette di mettere delle barriere invalicabili per gli oggetti mobili con il comando \FloatBarrier .
\dots Qui finisce un capoverso. \begin{figure}[H] \centering \includegraphics[width=% 0.5\columnwidth]{Formica} \caption{Una figura posizionata manualmente.} \label{fig:float} \end{figure} La figura~\vref{fig:float} un esempio di figura mobile posizionata manualmente.

105

Il pacchetto oat permette di forzare il posizionamento di un oggetto.

. . . Qui nisce un capoverso.


Limmagine a anco, che riproduce la litograa Formica, di M. Escher, tratta da http://www. mcescher.com/.

Figura 9: Una gura posizionata manualmente. La gura 9 un esempio di gura mobile posizionata manualmente.

opportuno non abusare dellopzione H fornita dal pacchetto oat: essa va usata solo in circostanze eccezionali ed esclusivamente in sede di revisione nale, per ottenere un effetto di impaginazione particolare, se si sa davvero che cosa si sta facendo. . . Personalizzare le didascalie: il pacchetto caption

Lopzione H fornita da oat va usata solo in casi eccezionali.

Il formato delle didascalie pu essere convenientemente controllato con il pacchetto caption, che fornisce molti modi per personalizzare le didascalie negli ambienti mobili come figure e table. Per esempio, lopzione font=small consente di avere le didascalie in corpo pi piccolo rispetto al testo. Lopzione format=hang rientra il testo delle didascalie formate da almeno due righe, cos esso sar incolonnato (hang) sotto la prima riga del testo (le didascalie che occupano A una singola riga sono centrate automaticamente da L TEX). Lopzione labelfont={sf,bf} imposta le intestazioni delle didascalie in caratteri senza grazie (sans serif ) e in neretto (boldface). Le didascalie di questo documento sono state composte proprio cos:
\usepackage[font=small,format=hang,labelfont={sf,bf}]{caption}

Il pacchetto caption

. .

Aancare gure o tabelle: il pacchetto subg


Il pacchetto subg

Per afancare pi gure o tabelle si usa il pacchetto subg (il successore di subgure, scritto dallo stesso autore). Il pacchetto permette di dare a ciascuna sottogura o sottotabella una didascalia. Richiede la presenza del pacchetto caption. Il comando \subfloat inserisce una sottogura o sottotabella; i suoi due argomenti opzionali hanno lo stesso ruolo dellargomento opzionale e obbligatorio del comando \caption : il primo, se presente, indica

106

(a) Mano con sfera riettente.

(b) Belvedere.

(c) Cascata.

(d) Salita e discesa.

Figura 10: Un esempio duso del pacchetto subg (le immagini, che riproducono alcune litograe di M. Escher, sono tratte da http://www. mcescher.com/).

. ci che va nellelenco relativo (\listoffigures o \listoftables ), mentre il secondo indica la sottodidascalia da porre nellambiente mobile [Gregorio, 2008b]. Ciascun sottooggetto pu contenere un comando \label per potersi riferire in seguito a esso. Per esempio, la gura 10 nella pagina precedente stata ottenuta con un codice del tipo seguente:
\begin{figure}[p] \centering \subfloat[][\emph{Mano con sfera riflettente}.] {\includegraphics[width=.45\columnwidth]{Sfera}} \quad \subfloat[][\emph{Belvedere}.] {\includegraphics[width=.45\columnwidth]{Belvedere}} \\ \subfloat[][\emph{Cascata}.] {\includegraphics[width=.45\columnwidth]{Cascata}} \quad \subfloat[][\emph{Salita e discesa}.] {\includegraphics[width=.45\columnwidth]{SalitaDiscesa}} \caption{Alcune litografie di M.~Escher.} \label{fig:subfig} \end{figure}

107

. .

Testo che avvolge un oggetto: il pacchetto wrapg


Il pacchetto wrapg

Vi sono circostanze in cui pu essere desiderabile avvolgere con A del testo unimmagine o una tabella. Farlo con L TEX molto semplice; a tal ne, si utilizza il pacchetto wrapg. Il pacchetto (che accompagnato da una sintetica ma esauriente documentazione, contenuta nel relativo le .sty), interagisce correttamente con il pacchetto caption per produrre la didascalia con il formato desiderato. Il pacchetto denisce lapposito ambiente wrapfloat. Questo ambiente va preferibilmente posizionato tra capoversi, cio preceduto e seguito da una riga vuota. Per ragioni estetiche, opporFigura 11: Un esempio duso del pac- tuno che loggetto sia avvolto chetto wrapg (limmagine, solo da testo normale: titoli che riproduce la litogradi paragra, formule ed elenchi a Relativit, di M. Escher, andrebbero evitati. tratta da http://www. Pu rendersi necessario un po mcescher.com/). di lavoro manuale di impaginazione per ottenere un risultato ottimale da un punto di vista tipograco. Per esempio, la gura 11 stata inserita con un codice del tipo seguente:

108 Tabella 26: Le opzioni di posizionamento dellambiente wrapfloat.


r, R l, L i, I o, O

Il lato destro del testo (right) Il lato sinistro del testo (left) Il margine interno (inner) Il margine esterno (outer)

\dots Avvolgere un oggetto con del testo molto semplice. \begin{wrapfloat}{figure}{I}{0pt} \includegraphics[width=0.5\columnwidth]{Relativo} \caption{Un esempio di figura avvolta da un testo.} \end{wrapfloat} Pu rendersi necessario un po di lavoro per ottenere unimpaginazione ottimale. \dots

Lambiente wrapfloat prevede tre argomenti obbligatori:


\begin{wrapfloat}{ oggetto }{ posizionamento }{ larghezza }

Largomento oggetto indica il tipo di oggetto incluso (figure o table). Largomento posizionamento indica come deve essere posizionato loggetto: uno degli otto parametri riportati nella tabella 26 (bisogna specicare un solo parametro, non un elenco). I parametri vengono a coppie: una versione minuscola che mette loggetto nel punto esatto in cui compare nel testo (esattamente qui), mentre la versione maiuscola crea un oggetto mobile. Largomento larghezza specica la larghezza delloggetto; se si specica una larghezza nulla (0pt), viene usata la larghezza della gura specicata dal comando \includegraphics . . .
Il pacchetto sidecap

Didascalie laterali: il pacchetto sidecap

Talvolta si desidera che la didascalia appaia di anco al relativo oggetto mobile, invece che sopra o sotto. A tal ne si usa il pacchetto sidecap. Il pacchetto si carica nel solito modo:
\usepackage[ opzioni ]{sidecap}

Le opzioni fondamentali del pacchetto sono le seguenti:


outercaption La didascalia posta nel margine esterno (a sinistra nel-

le pagine sinistre e a destra nelle pagine destre). lopzione predenita.


innercaption La didascalia posta nel margine interno (a destra nelle

pagine sinistre e a sinistra nelle pagine destre).


leftcaption, rightcaption La didascalia sempre posta a sinistra o

a destra, rispettivamente.
raggedright, raggedleft, ragged Consentono una migliore giustica-

zione delle didascalie corte.

109

Figura 12: Un esempio dutilizzo del pacchetto sidecap (limmagine, che riproduce la litograa di M. Escher Concavo e convesso, tratta da http://www. mcescher.com/).

Il pacchetto sidecap denisce due nuovi ambienti, SCfigure e SCtable, analoghi agli ambienti figure e table, rispettivamente. Gli ambienti SCfigure e SCtable prevedono due argomenti opzionali:
\begin{SCfigure}[ larghezza relativa ][ posizionamento ] \begin{SCtable}[ larghezza relativa ][ posizionamento ]

Largomento larghezza relativa indica il rapporto fra la larghezza della didascalia e la larghezza della gura o della tabella corrispondente. Un valore grande di larghezza relativa (per esempio, 50) imposta per la didascalia la larghezza massima possibile. Il valore predenito \sidecaptionrelwidth (che pari a 1.0). Largomento posizionamento indica il consueto parametro di posizionamento degli oggetti mobili e si usa come negli ambienti figure e table (vedi il paragrafo 6.4 a pagina 100); il suo valore predenito tbp. (Esistono anche gli ambienti SCfigure* e SCtable*, la cui sintassi la stessa di SCfigure e SCtable, che permettono di avere rispettivamente una gura o una tabella mobile con didascalia laterale estesa su tutta la pagina in un documento a pi colonne.) Per esempio, la gura 12 stata inserita con un codice del tipo seguente:
\begin{SCfigure}[][tb] \centering \includegraphics[width=0.5\textwidth]{ConcavoConvesso} \caption{Un esempio di figura con didascalia laterale.} \label{fig:sidecap} \end{SCfigure}

7
7.1 7.2

LA MATEMATICA

Formule in corpo e fuori corpo 112 Nozioni basilari 113 7.2.1 Raggruppamenti 113 7.2.2 Apici, pedici e radici 114 7.2.3 Somme, prodotti e frazioni 114 7.2.4 Limiti, derivate e integrali 115 7.2.5 Insiemi numerici 115 7.2.6 Lettere greche 116 7.2.7 Accostare simboli ad altri simboli 116 7.2.8 Barre e accenti 117 7.2.9 Punti e frecce 118 7.2.10 Spazi in modo matematico 119 7.3 Gli operatori 120 7.4 Le parentesi 122 7.5 Vettori e matrici 124 7.6 Formule fuori corpo 126 7.6.1 Formule spezzate senza allineamento: multline 126 7.6.2 Formule spezzate con allineamento: split 126 7.6.3 Gruppi di formule senza allineamento: gather 127 7.6.4 Gruppi di formule con allineamento: align 127 7.6.5 Gli ambienti gathered e aligned 128 7.6.6 Casi e numerazione subordinata 128 7.7 Modicare lo stile e il corpo dei font 129 7.8 Enunciati e dimostrazioni 131 7.9 Diagrammi commutativi 135 7.10 Fisica e chimica 135 7.11 Evidenziare formule: il pacchetto empheq 136 7.12 Elenco dei simboli matematici 136

In questo capitolo verr esplorato uno dei principali punti di forza A di L TEX: la composizione di formule matematiche. Questo capitolo intacca solamente la supercie dellargomento. Bench gli strumenti che verranno spiegati siano sufcienti per la maggior parte delle esigenze, se non si trova la soluzione per quella particolare necessit di scrittura matematica molto probabile che il problema sia risolvibile con una funzione del pacchetto amsmath o con qualche altro pacchetto. La scrittura della matematica regolata da norme che dipendono dalle tradizioni e dalla cerchia dei lettori cui lo scritto destinato. Queste regole sono esplicitate nel mondo dalla norme emesse dalliso, in Italia dalle norme denite dalluni. Le norme uni hanno valore di legge: se un documento legale, un capitolato dappalto, . . . viene scritto in modo conforme alle norme, mantiene il valore legale che deve avere. Per maggiori dettagli si rimanda alla relativa documentazione.1
1 Purtroppo, nonostante abbiano valore di legge, non possibile consultare liberamente le norme iso-uni, ma occorre abbonarsi a un servizio di consultazione (a pagamento).

Le norme ISO-UNI

111

112

.
I pacchetti amsmath e amssymb

Da qui in avanti, per tutto il capitolo, diamo per scontato che siano caricati i pacchetti amsmath e amssymb:
\usepackage{amsmath,amssymb}
A Con L TEX ci sono due modi per scrivere la matematica:

(o in linea) unespressione matematica A composta da L TEX in linea con il corpo del testo (incorporata 2 1 nel testo), come per esempio limn n k2 = . k=1 6 (o in display) unespressione comA posta da L TEX in linee a s stanti, staccate dal testo precedente e seguente mediante spazi di ampiezza adeguata per mettere in mostra lespressione; per esempio
n n

lim

k=1

2 1 = . 2 6 k

Le formule in corpo si usano solo per espressioni di piccole dimensioni.

A Quando una formula in corpo, L TEX fa il possibile per schiacciarla e non aumentare linterlinea. Se la stessa formula fuori corpo c molta pi libert di manovra. preferibile servirsi delle formule in corpo solo per espressioni di piccole dimensioni: le altre formule vanno messe fuori corpo. Le formule in corpo si inseriscono includendole tra dollari. In alternativa, si possono usare i comandi (\. . .\).

Ci sono voluti secoli per dimostrare che quando $n>2$ \emph{non} ci sono tre interi positivi $a$, $b$, $c$ tali che $a^n+b^n=c^n$.

Ci sono voluti secoli per dimostrare che quando n > 2 non ci sono tre interi positivi a, b, c tali che an + bn = cn .

Formule numerate e non numerate

Il font delle formule il corsivo matematico (diverso dal corsivo del testo). Gli esponenti sono stampati pi piccoli delle basi. Le formule fuori corpo si scrivono usando diversi ambienti, di cui i pi semplici sono equation per le formule numerate e equation*, di solito abbreviato in \[. . .\], per le formule non numerate.2
Se $f$ continua e \[ F(x)=\int_a^x f(t)\,dt, \] allora \begin{equation} F(x)=f(x). \end{equation}

Se f continua e
x

F(x) =
a

f(t) dt,

allora F (x) = f(x). (7.1)

Riferimenti

Si pu avere un riferimento a una formula tramite \label e \eqref :


2 Nellinserimento delle formule fuori corpo, luso del codice $$. . .$$ invece sempre sconsigliabile per molte ragioni [Fairbairns, 2007; Trettin e Zannarini, 2005].

113

\begin{equation} \label{eq:euler} e^{i\pi}+1=0. \end{equation} Dalla formula~\eqref{eq:euler} si deduce che\dots

ei + 1 = 0.

(7.2)

Dalla formula (7.2) si deduce che. . .

Ci sono delle differenze tra il modo con cui si inserisce la matematica (modo matematico) e il modo con cui si inserisce il testo (modo testuale). Per esempio, nel modo matematico: Gli spazi e le interruzioni di riga non hanno signicato, poich A gli spazi sono inseriti automaticamente da L TEX, sulla base della struttura dellespressione matematica: quindi $x+y+z=n$ d lo stesso risultato di $ x + y + z = n $. Se occorre, gli spazi devono essere specicati usando comandi speciali come \, (che produce uno spazio sottile) oppure \quad o \qquad (che danno spazi ampi, detti rispettivamente di un quadrato e di un quadratone; vedi il paragrafo 7.2.10 a pagina 119). Non sono ammesse righe vuote. Ogni lettera considerata come un nome di variabile e viene scritta come tale. Se si vuole inserire un breve testo allinterno di una formula fuori corpo (con font e spaziatura normali), allora bisogna scriverlo usando il comando \text{ . . . }. La spaziatura prima e dopo \text va esplicitata.
$x+y+z=n$ \\ $ x + y + z = n $

Modo matematico e modo testuale

Spazi in modo matematico

Inserire un breve testo in una formula fuori corpo

x+y+z = n x+y+z = n

\[ z^2+1=0 \quad \text{per $z=\pm i$.} \]

z2 + 1 = 0

per z = i.

Il comando \pm d . C anche \mp che d

.
Nastro di Mbius II, incisione su legno di M. Escher (limmagine tratta da http://www. mcescher.com/).

.
In questo paragrafo verranno descritti alcuni comandi che vengono usati di frequente per scrivere formule matematiche. Nel paragrafo 7.12 a pagina 136 riportato un elenco dettagliato dei principali comandi per scrivere simboli matematici. . . Raggruppamenti

La maggior parte dei comandi agiscono solo sul carattere successivo. Se si vuole che un comando abbia effetto su pi caratteri, si deve raggrupparli usando le parentesi graffe: {. . .}.

Graffe di raggruppamento

114

\[ a^x+y \neq a^{x+y} \]

ax + y = ax+y

. .
Apici e pedici

Apici, pedici e radici

Gli apici e i pedici possono essere scritti usando i caratteri ^ e _:


$a_1$ \qquad $x^2$ \qquad $e^{-\alpha t}$ \qquad $a^{3}_{ij}$ \\ $e^{x^2} \neq {e^x}^2$

a1
2

x2

et

a3 ij

ex = ex 2

Non si pu scrivere x_n_k: necessario usare le graffe.


Dalla successione $x_n$ estrarre $x_{n_k}$.

Dalla successione xn estrarre xnk .

Radici

La radice quadrata si scrive come \sqrt , la radice n-esima si ottiene con \sqrt[ n ]{ . . . }. La dimensione della radice determinata A automaticamente da L TEX.
$\sqrt{x}$ \qquad $\sqrt{x^2+\sqrt{y}}$ \qquad $\sqrt[3]{2}$

x2 +

3 2

. .
Somme e prodotti

Somme, prodotti e frazioni

Il simbolo di sommatoria generato con \sum e il simbolo di produttoria con \prod . Gli estremi si scrivono come pedici e apici.
Trovare il massimo valore della funzione \[ f(x_1,\dots,x_n)= \prod_{k=1}^n x_k \] sotto la condizione \[ \sum_{k=1}^n x_k^2=1. \]

Trovare il massimo valore della funzione


n

f(x1 , . . . , xn ) =
k=1

xk

sotto la condizione
n

x2 = 1. k
k=1

Frazioni

Una frazione, anche complessa, si ottiene semplicemente con il comando \frac{ numeratore }{ denominatore }. A volte la forma n/m preferibile, perch pi gradevole a vedersi per piccole quantit di materiale frazionario.
\[ \frac{x^2}{k+1} \qquad x^{\frac{2}{k+1}} \qquad x^{1/2} \]

x2 k+1

x k+1

x1/2

. . . Limiti, derivate e integrali

115

I limiti si fanno con il comando \lim_{ variabile \to valore }.


\[ \lim_{x\to 0} \frac{\sin x}{x}=1 \qquad \lim_{n\to +\infty}f_n=\delta \]

Limiti

x0

lim

sin x =1 x

n+

lim fn =

Il comando \infty d . Le derivate si fanno con il simbolo che produce un segno di primo.
\[ y=x^2, \quad y=2x, \quad y=2. \]

Derivate

y = x2 ,

y = 2x,

y = 2.
Integrali

Il simbolo di integrale generato tramite \int . Gli estremi di integrazione sono come pedici e apici: \int_a^b. Se un pedice o apice formato da pi di una lettera o cifra, va racchiuso tra graffe: \int{a+1}^{b+1}.
\[ \int_a^{a+T}f(x)\,dx= \int_0^T f(x)\,dx \]
a+T T

f(x) dx =
a 0

f(x) dx

Lo spazio sottile \, allontana dx da f(x). Per gli integrali multipli si usano i comandi \iint , \iiint , \iiiint e \idotsint .
\[ \iint_D f(x,y)\,dx\,dy \qquad \iiint g \,dx\,dy\,dz \]

f(x, y) dx dy
D

g dx dy dz

. .

Insiemi numerici
Neretto da lavagna

I simboli degli insiemi numerici si ottengono con \mathbb (blackboard bold, neretto da lavagna).
\[ x^2 \geq 0 \quad \forall x \in \mathbb{R}. \]

x2

x R.

Il comando \in d la relazione di appartenenza (per la non appartenenza si usa \notin ). / Conviene scrivere nel preambolo le seguenti denizioni:
\newcommand{\numberset}{\mathbb} \newcommand{\N}{\numberset{N}} \newcommand{\R}{\numberset{R}}

In questo modo, basta scrivere \N per avere N ed possibile cambiare notazione con ununica modica.

116 Tabella 27: Lettere greche minuscole: forme principali e varianti.


(a) Font AMS Euler.
\epsilon

(b) Font Palatino.


\epsilon

\varepsilon \vartheta \varrho \varsigma \varphi

\varepsilon \vartheta \varrho \varsigma \varphi

\theta \rho \sigma \phi

\theta \rho \sigma \phi

. .

Lettere greche

Le lettere greche minuscole si ottengono con \alpha , \beta , \gamma ,


\delta , . . . (vedi la tabella 30 a pagina 137).

Scrivere le lettere greche minuscole in accordo con il gusto europeo

Alcune lettere greche minuscole hanno delle forme varianti i cui nomi cominciano con labbreviazione var (vedi la tabella 27); esse negli Stati Uniti sono delle varianti, ma in Europa (a eccezione di \varsigma ) sono considerate le forme principali.3 Per scrivere documenti in accordo con il gusto europeo, utile ridenire le lettere greche varianti (a eccezione di \varsigma ) come normali. A tal ne, sufciente scrivere nel preambolo
\renewcommand{\epsilon}{\varepsilon} \renewcommand{\theta}{\vartheta} \renewcommand{\rho}{\varrho} \renewcommand{\phi}{\varphi}

Le lettere greche maiuscole si ottengono con \Gamma , \Delta , . . . (veA di la tabella 31 a pagina 137). Non ci sono e maiuscole in L TEX 2 , perch sono uguali alle normali A e B latine.
$\lambda$, $\mu$, $\xi$, $\pi$, $\Phi$, $\Omega$

, , , , ,

. .

Accostare simboli ad altri simboli

I comandi \overset e \underset

Per posizionare un simbolo sopra o sotto un altro simbolo si usano i comandi \overset e \underset . Il comando \overset{ primo argomento }{ secondo argomento } pone il simbolo indicato nel primo argomento sopra quello specicato nel secondo argomento , scrivendo il primo con dimensioni inferiori (pari a quelle di un apice), mentre il secondo viene mantenuto nella sua posizione usuale (tipicamente, il secondo argomento un simbolo di relazione binaria). Il comando \underset ha un comportamento analogo.
3 Con i font AMS Euler (usati in questo documento), \rho e \varrho producono lo stesso risultato; lo stesso accade per \sigma e \varsigma (vedi la tabella 27). Dal momento che, in un documento, per ciascuna lettera si sceglie in alternativa la forma principale o la sua variante, non c pericolo di confusione.

117

Il simbolo \[ \overset{H}{=} \] indica luguaglianza nel senso del teorema di de lH\^{o}pital.

Il simbolo

= indica luguaglianza nel senso del teorema di de lHpital.

. .

Barre e accenti
Barre orizzontali

Il comando \bar pone un trattino sul carattere seguente: il simbolo x, per esempio, indica un nome di variabile distinto da x. I comandi \overline e \underline rispettivamente sopralineano e sottolineano tutto quanto si trova tra le graffe: il simbolo x indica un operatore (coniugio di numeri complessi, per esempio) applicato alla variabile x.
$\bar{x}$ \qquad$ \bar{X}$ \qquad $\overline{m+n}$

m+n

I comandi \vec e \overrightarrow sono come \bar e \overline con frecce al posto di righe.
$\vec x$ \qquad $\overrightarrow{AB}$

AB
Barre verticali

Ci sono tre tipi di barre verticali, che differiscono per come sono spaziati i simboli che hanno intorno: semplice | (o \vert ); delimitatore sinistro \lvert e destro \rvert ; relazione binaria \mid (per la divisibilit e per il tale che negli insiemi).
$F(x)|_{x=\gamma(t)}$ \qquad $\lvert x\rvert$ \\ Se $p\mid n^2$, allora $p\mid n$.

F(x)|x=(t) |x| Se p | n2 , allora p | n.

Analogamente, per le doppie barre verticali abbiamo: \| (o \Vert ),


\lVert , \rVert e \parallel .

La differenza tra due insiemi si fa con il comando \setminus . Si confronti:


$A\setminus B$ \\ $A\backslash B$

A\B A\B

Scrivendo A\backslash B viene una spaziatura (leggermente) sbagliata. Per il valore assoluto e la norma conveniente caricare il pacchetto mathtools e denire due appositi comandi, scrivendo nel preambolo:

Valore assoluto e norma

118

\DeclarePairedDelimiter{\abs}{\lvert}{\rvert} \DeclarePairedDelimiter{\norma}{\lVert}{\rVert}

I comandi \abs e \norma si usano nel modo seguente:


\[ \sum_{n=0}^{+\infty}z^n= \frac{1}{1-z} \quad \text{per $\abs{z}<1$.} \]

zn =
n=0

1 1z

per |z| < 1.

\[ \norma{x}= \sqrt{x_1^2+\dots+x_n^2} \]

x =

x2 + + x2 n 1

Le varianti asterisco dei comandi appena deniti producono delimitatori ad altezza variabile:
\[ \abs*{\frac{a}{b}} \qquad \norma*{\frac{u}{\lambda}} \]

a b

Si pu anche usare il parametro opzionale dei comandi \abs e \norma per impostare manualmente la grandezza dei delimitatori, nei casi in cui la grandezza automatica non sia ottimale. Si confronti per esempio:
\[ \abs[\bigg]{\sum_{i=1}^{n}x_i} \qquad \abs*{\sum_{i=1}^{n}x_i} \]

xi
i=1 i=1

xi

Accenti matematici

Nel primo caso vengono dei delimitatori (leggermente) migliori. Per aggiungere alle variabili un accento matematico, come un cappello o un segno di tilde, si possono usare i comandi della tabella 32 a pagina 137. I segni di cappello o tilde coprenti diversi caratteri sono prodotti tramite \widehat e \widetilde . . . Punti e frecce

Due punti

Ci sono due tipi di due punti, spaziati diversamente: semplice :, che spaziato come unoperazione binaria (divisione); \colon , che spaziato come uninterpunzione. Si confrontino:
$f\colon\R\to\R$ \\ $f:\R\to\R$

f: R R f:RR

. Se si scrive f:\R\to\R viene una spaziatura (leggermente) sbagliata attorno ai due punti. Per inserire punti ellittici in una formula si usa il comando \dots , che, automaticamente a seconda del contesto, inserisce i punti sulla linea di base del testo o li centra rispetto alla riga:
\[ x_1,\dots,x_n \qquad x_1+\dots+x_n \]

119

Punti ellittici

x1 , . . . , xn

x1 + + xn

Si possono trovare altri esempi nel paragrafo 7.5 nella pagina 125. Oltre alla freccia semplice , che si ottiene con il comando \to , c anche quella col trattino , che si ottiene con \mapsto .
$f\colon\R\to\R$, \\ $x\mapsto x^2$

Frecce

f : R R, x x2

I comandi \xleftarrow e \xrightarrow stampano frecce che si estendono automaticamente per accordarsi con grandezze inusuali di apici e pedici. Questi comandi prendono un argomento facoltativo (il pedice) e un argomento obbligatorio (lapice, che pu anche essere vuoto):
\[ \xleftarrow{n+\mu-1} \quad \xrightarrow[T]{n\pm i-1} \]
n+1 ni1 T

I simboli logici vanno usati solo se si sta scrivendo un lavoro di logica (mentre per il resto preferibile scrivere estesamente se. . . allora, se e solo se, . . . ): il comando \implies d = e \iff d (entrambi con spazi adeguati prima e dopo). I comandi \land , \lor e \lnot producono rispettivamente , e . . . Spazi in modo matematico

Simboli logici

A Se gli spazi scelti da L TEX allinterno delle formule non sono soddisfacenti (ma un caso che si verica di rado), possibile modicarli manualmente, inserendo appositi comandi. Come osservato n qui, i comandi \quad o \qquad danno spazi ampi. La dimensione di un \quad ( ) corrisponde allampiezza del carattere M nel font corrente, mentre \qquad ( ) produce uno spazio pari a due \quad . Lampiezza di un \quad chiamata anche quadrato, mentre quella di un \qquad detta quadratone. Il comando \, produce uno spazio sot3 tile, pari a 18 di \quad ( ), mentre il comando \! produce uno spazio 3 sottile negativo, pari a 18 di \quad (vedi la tabella 28 nella pagina 4 successiva). Lo spazio sottile prodotto dal comando \, molto utile in alcune formule. Si confronti, per esempio,

Se gli spazi scelti da A L TEX allinterno delle formule non sono soddisfacenti, possibile modicarli manualmente.

4 Oltre ai comandi citati ne esistono altri, come per esempio \: o \; (che producono 4 5 uno spazio orizzontale rispettivamente di 18 e di 18 di \quad ), che per, per motivi di uniformit tipograca, non dovrebbero mai essere usati. Anche luso, pure possibile, dei comandi \quad e \qquad fuori dagli ambienti matematici fortemente sconsigliato.

120 Tabella 28: Spazi in modo matematico.


\, \! \quad \qquad

Spazio sottile positivo Spazio sottile negativo Spazio di un quadrato Spazio di un quadratone

\[ \int_a^b f(x)\,dx, \quad \sqrt{2}\,a, \quad \sqrt{\,\log x}. \]

f(x) dx,
a

2 a,

log x.

con
\[ \int_a^b f(x) dx, \quad \sqrt{2} a, \quad \sqrt{\log x}. \]

f(x)dx,
a

2a,

log x.

Gli spazi sottili, inseriti in sede di revisione nale, permettono di migliorare la qualit tipograca delle formule.

Nel secondo caso viene una spaziatura (leggermente) insufciente. Il comando \! pu rivelarsi una nezza importante per compensare spaziature spiacevoli quando ci siano simboli inclinati come una barra di frazione (o un radicale) e i simboli prima o dopo siano particolari (come un esponente prima della barra, o un operatore dopo). Si confronti, per esempio,
\[ x^2\!/2, \quad a/\!\sin b. \]

x2/2,

a/sin b.

con
\[ x^2/2, \quad a/\sin b. \]

x2 /2,

a/ sin b.

Nel secondo caso viene una spaziatura (leggermente) esagerata. Va ricordato che quelli appena presentati sono interventi riservati alla revisione nale: uno spazio sottile (positivo o negativo) ben messo migliora la qualit tipograca, gi alta, del documento.

.
Le funzioni matematiche come sin, cos e log sono (per tradizione conservata dalle norme iso-uni) stampate in tondo per renderne pi immediata la visibilit rispetto alle variabili matematiche, che sono stampate in corsivo matematico.

. Inoltre, le funzioni matematiche richiedono certi spazi alla loro destra e alla loro sinistra; questi spazi dipendono dalla natura degli oggetti matematici che precedono o seguono le funzioni.
\[ \cos2x= \frac{1-\sin^2x}{2}, \]

121

cos 2x =

1 sin2 x , 2

\[ \log\log x, \quad \log(x+y) \]

log log x,

log(x + y)

A In L TEX, i comandi come \sin , \cos e \log sono detti operatori. Si noti che nella formula cos 2x, fra cos e 2 c pi spazio che fra 2 e x. Inoltre, nella formula log log x c uno spazio sottile tra i due log e un altro spazio sottile tra log e x, mentre nella formula log(x + y) non ci sono spazi tra log e (. Se si omette il \ si ha cosx in corsivo e spaziato scorrettamente, A che non pi un operatore. Solo usando gli appositi comandi, L TEX sa che sta usando degli operatori e sa quale font e quali spazi usare. I seguenti sono alcuni operatori predeniti:

Operatori predeniti

$\arccos x$, $\exp x$, $\min_{x\in A} f(x)$, $\det A$, $\log x$, $\tan x$

arccos x, exp x, minxA f(x), det A, log x, tan x

Per quel che riguarda la relazione di congruenza modulo m, ci sono due comandi, \bmod e \pmod :
$a\bmod b$ \qquad $a\equiv b \pmod{m}$

a mod b

a b (mod m)

La tabella 29 nella pagina seguente riporta lelenco degli operatori A predeniti di L TEX. Dal momento che nelle pubblicazioni relative alla matematica si introducono continuamente nuove funzioni, utile disporre di un metodo generale per denire nuovi operatori. A tal ne, si usa il comando \DeclareMathOperator . Per esempio, per denire una funzione matematica arcsinh che denoA ti larcoseno iperbolico (che non denito n da L TEX n da amsmath), si scrive nel preambolo
\DeclareMathOperator{\arcsinh}{arcsinh}

Denire nuovi operatori

Nel seguito, basta scrivere \arcsinh per avere arcsinh nel font corretto e adeguatamente spaziato su entrambi i lati. Loperatore che denota la parte reale di un numero complesso \Re , che produce il simbolo ; se lo si vuole ridenire in modo che esso sia scritto in tondo e non in gotico, si usano i comandi
\let\Re\relax \DeclareMathOperator{\Re}{Re}

Operatore parte reale

122 Tabella 29: Gli operatori predeniti.


\arccos \arcsin \arctan \arg \cos \cosh \cot \coth \csc \deg \det \dim \exp \gcd \hom \inf \ker \lg \lim \liminf \limsup \ln \log \max \min \Pr \sec \sin \sinh \sup \tan \tanh

Denire operatori di tipo limite

La dichiarazione \let\Re\relax necessaria dal momento che loperatore \Re gi denito. Se il nuovo operatore dovesse esser dotato di pedici e apici posizionati alla maniera dei limiti, al di sopra e al di sotto come per lim, sup, o max, si user la forma * del comando \DeclareMathOperator :
\DeclareMathOperator*{\Lim}{Lim}

.
A Per quel che riguarda le parentesi e gli altri delimitatori, L TEX offre un vasto assortimento di simboli. Le parentesi tonde e quadre possono essere scritte normalmente, ossia con i caratteri corrispondenti, mentre le parentesi graffe vanno scritte con \{; tutti gli altri delimitatori vengono generati tramite comandi speciali (come per esempio \updownarrow).

\[ {a,b,c}\neq\{a,b,c\} \]

a, b, c = {a, b, c}

Specicare manualmente le dimensioni di un delimitatore

Per lelenco di tutti i delimitatori disponibili si vedano le tabelle 36 e 37 a pagina 139. In certi casi necessario specicare manualmente la giusta dimensione di un delimitatore matematico: ci si pu fare tramite i comandi \big , \Big , \bigg e \Bigg , usabili come pressi sulla maggior parte dei delimitatori. I comandi \bigl e \bigr ingrandiscono lievemente le parentesi:
\[ \bigl( (x-y)+(x+y) \bigr) \]

(x y) + (x + y)

I comandi \Bigl e \Bigr producono parentesi ancora pi grandi:


\[ \Bigl(1+\frac{1}{n}\Bigr)^n \]

1+

1 n

I comandi \biggl e \biggr le producono ancora pi grandi:

123

\[ \biggl(\sum_n x_n^2\biggr) ^{1/2} \]

1/2

x2 n
n

Se non basta, ci sono anche \Biggl e \Biggr .5


$\bigl(\Bigl(\biggl(\Biggl($ \quad $\bigr\}\Bigr\}\biggr\} \Biggr\}$ \quad $\big\|\Big\|\bigg\|\Bigg\|$

I comandi \overbrace e \underbrace creano delle lunghe graffe orizzontali sopra o sotto unespressione.
\[ \underbrace{1+2+\dots+n}_{{}= \frac{n(n+1)}{2}} +(n+1) \]

Graffe orizzontali

1 + 2 + + n +(n + 1)
= n(n+1) 2

Per scrivere coefcienti binomiali si usa il comando \binom :


\[ (a+b)^n= \sum_{\substack{k\in\N \\ 0\le k\le n}} \binom{n}{k}a^{n-k} b^k \]

Coefcienti binomiali

(a + b)n =
kN 0 k n

n nk k a b k

Il comando \substack{ sopra \\ sotto } serve per produrre un apice o un pedice su pi righe. Gli intervalli della retta reale si possono indicare con le parentesi quadre. Si confronti:
$]a,b[ \times ]b,c[$ \\ $\mathopen{]}a,b\mathclose{[} \times \mathopen{]}c,d\mathclose{[}$

Intervalli

]a, b[]b, c[ ]a, b[ ]c, d[

Se scriviamo ]a,b[ pu venire una spaziatura (lievemente) sbagliata attorno alle parentesi. I comandi \mathopen{]} e \mathclose{[} fanno spaziare le parentesi quadre come aperta e chiusa rispettivamente. Per i sistemi di equazioni conveniente denire un apportuno ambiente nel preambolo:
5 possibile specicare automaticamente le dimensioni di un delimitatore con i comandi \left (davanti a un delimitatore di apertura) e \right (davanti al corrispondente delimitatore di chiusura); si noti che occorre chiudere ogni \left con un corrispondente \right , che la dimensione viene correttamente determinata solo se tutti e due sono sulla stessa riga e che se non si vuole niente sulla destra si usa linvisibile \right. (con punto nale). Tuttavia, la scelta manuale spesso la migliore, poich in molti casi \left e \right inseriscono spaziature non richieste e parentesi pi grandi del necessario.

Sistemi di equazioni

124

\newenvironment{sistema}% {\left\lbrace\begin{array}{@{}l@{}}}% {\end{array}\right.}

da usare come segue:


\[ \begin{sistema} x+y+z=0 \\ 2x-y=1 \\ y-4z=-3 \end{sistema} \]

x + y + z = 0 2x y = 1 y 4z = 3

Insiemi

Per gli insiemi, conveniente caricare il pacchetto braket, che mette a disposizione lapposito comando \Set .
\[ \Set{\frac{1}{n^3} | n\in\N} \]

1 n3

nN

Parentesi ad angolo

Per le parentesi ad angolo, si usano i comandi \Bra , \Ket e \Braket (sempre del pacchetto braket):
\[ \Bra{\psi_n} \quad \Ket{\psi} \quad c_n=\Braket{\psi_n | \psi} \]

n |

cn = n |

.
Vettori

I vettori si scrivono di solito in neretto (corsivo, secondo le norme iso-uni) oppure in semplice corsivo matematico; talvolta, soprattutto nei testi di sica, vengono stampati con una freccia sopra. Per scrivere simboli in neretto si pu usare il comando \mathbf ; per il neretto corsivo c il comando \bm , messo a disposizione dal pacchetto bm (bold math); per comporre simboli con una freccia sopra si usa il comando \vec . Pu essere conveniente ridenire il comando \vec , nel preambolo:
\renewcommand{\vec}{\bm}

Matrici

In questo modo, basta scrivere \vec{v} per avere v ed possibile cambiare notazione con ununica modica (vedi anche il paragrafo 7.7 a pagina 129). Per scrivere matrici si usano gli ambienti pmatrix, bmatrix, Bmatrix, vmatrix e Vmatrix, che hanno come delimitatori rispettivamente parentesi tonde, parentesi quadre (braces), parentesi graffe (curly Braces), barre verticali e doppie barre Verticali; c anche lambiente matrix senza delimitatori. Gli elementi sono centrati automaticamente. Righe e colonne si scrivono come in tabular:

. i vari & separano gli elementi di una riga; il comando \\ serve per terminare una riga (eccetto lultima); gli spazi non espliciti sono ignorati.
\[ \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix} \]

125

1 3

2 4

\[ \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} \]

1 3

2 4

\[ \begin{vmatrix} 1-x & 2 \\ 3 & 4-x \end{vmatrix} \]

1x 3

2 4x

Il seguente un esempio di matrice con punti ellittici:


\[ A= \begin{bmatrix} x11 x12 . . . x_{11} & x_{12} & \dots \\ A = 21 x22 . vel, Nam dui _ligula, fringilla a, euismod sodales, xsollicitudin. . wisi. _{21} & x {22} & \dots \\ x . . .. Morbi auctor lorem\ddots . \vdots & \vdots & non justo. Nam lacus libero, .pretium at, lobortis . . . vitae, ultricies et, tellus. Donec aliquet, tortor sed accumsan bibendum, \end{bmatrix} erat ligula aliquet magna, vitae ornare odio metus a mi. Morbi ac orci \]

Matrici con punti ellittici

et nisl hendrerit mollis. Suspendisse ut massa. Cras nec ante. Pellentesque a \vdots fa sociis natoque penatibus il comando partuIl comando nulla. Cumtre punti ellittici verticali, et magnis dis\ddots rient punti ellittici diagonali. Il comando \hdotsfor{ n urna. Nulla fa tre montes, nascetur ridiculus mus. Aliquam tincidunt } riempie di ullamcorper per n colonne. punti ellittici vestibulum turpis. Pellentesque cursus luctus mauris.
\[ \begin{bmatrix} a_{11} & a_{12} & \dots & a_{1n} \\ a_{21} & a_{22} & \dots & a_{2n} \\ \hdotsfor{4} \\ a_{n1} & a_{n2} & \dots & a_{nn} \end{bmatrix} \]

a11 a12 . . . a1n a21 a22 . . . a2n . . . . . . . . . . . . . . . . . . . . . . . . an1 an2 ... ann

Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel, wisi. Morbi auctor lorem non justo. Nam lacus libero, pretium at, lobortis vitae, ultricies et, tellus. Donec aliquet, tortor sed accumsan bibendum, erat ligula aliquet magna, vitae ornare odio metus a mi. Morbi ac orci et nisl hendrerit mollis. Suspendisse ut massa. Cras nec ante. Pellentesque a nulla. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aliquam tincidunt urna. Nulla ullamcorper vestibulum turpis. Pellentesque cursus luctus mauris.

126

Piccole matrici

Per scrivere una piccola matrice in linea con il corpo del testo disponibile lambiente smallmatrix:
Sia $A=\bigl( \begin{smallmatrix} a & b \\ c & d \end{smallmatrix} \bigr)$ una matrice invertibile.

Sia A = invertibile.

ab c d

una matrice

Le parentesi vanno aggiunte manualmente.

.
Formule lunghe

Le formule lunghe non vengono automaticamente divise in parti da A L TEX. Solo chi ha scritto la formula, infatti, ne conosce il ritmo di lettura e sa dove pi opportuno andare a capo e se allineare o meno le varie righe. In generale, tuttavia, vale la regola per cui si pu andare a capo dopo i simboli di relazione e, subordinatamente, dopo i simboli di relazione e operazione binaria (vedi le tabelle 33 e 34 a pagina 138), mai dopo gli operatori funzionali (tabella 29 a pagina 122), i grandi operatori e i delimitatori di apertura (vedi le tabelle 35, 36 e 37 a pagina 139). Per spezzare le formule fuori corpo, il pacchetto amsmath mette a disposizione (fra laltro) gli ambienti multline, split, gather e align.6 . . Formule spezzate senza allineamento: lambiente multline

Spezzare una singola formula senza allineamento

Per dividere una singola formula in pi righe, senza particolari allineamenti fra le varie righe, si usa lambiente multline.
\begin{multline} f=a+b+c \\ +d+e+g+h \\ +r+s+t. \end{multline}

f = a+b+c +d+e+g+h + r + s + t. (7.3)

In stampa la prima riga allineata a sinistra, lultima allineata a destra, e le altre vengono centrate (a meno che non sia in funzione lopzione fleqn, che compone le formule visualizzate allineandole a sinistra (rispetto a un margine rientrato) invece che centrandole. Il numero della formula stampato a margine destro dellultima riga. Lambiente multline* produce una formula non numerata. . .
Spezzare una singola formula con allineamento

Formule spezzate con allineamento: lambiente split

Per dividere una singola formula in pi righe, con le righe da allineare, si usa lambiente split.
6 Per spezzare formule fuori corpo, luso dellambiente eqnarray invece sempre sconsigliabile per molte ragioni [Fairbairns, 2007; Trettin e Zannarini, 2005].

127

\begin{equation} \begin{split} a &= b+c-d \\ &= e-f \\ &= g+h \\ &= i. \end{split} \end{equation}

a = b+cd = ef = g+h = i. (7.4)

Il simbolo & marca il punto di una riga da incolonnare con i punti corrispondenti delle altre righe. Il numero della formula centrato verticalmente. A differenza di altre strutture per comporre formule, lambiente split non produce numeri, poich progettato per essere usato esclusivamente allinterno di qualche altra struttura per formule fuori corpo (di solito un ambiente equation, align o gather), che fornisce la numerazione. . . Gruppi di formule senza allineamento: lambiente gather
Raggruppare pi formule senza allineamento

Lambiente gather serve per raggruppare pi formule, ognuna centrata in una riga a s, numerata separatamente, senza allineamento luna con laltra; a ciascuna formula pu essere attribuita unetichetta.
\begin{gather} a=b+c, \\ V+F-S=2. \end{gather}

a = b + c, V + F S = 2.

(7.5) (7.6)

Con pi ambienti equation di seguito leffetto sarebbe simile, ma la spaziatura fra le righe sarebbe esagerata. Una formula che nisce con \notag non viene numerata. Lambiente gather* (come equation*) non numera le formule. . . Gruppi di formule con allineamento: lambiente align
Disporre gruppi di formule con allineamento

Lambiente align permette di disporre gruppi di due o pi formule, ciascuna su una riga, numerate singolarmente, da allineare fra loro.
\begin{align} a_1 &= b_1+c_1+d_1, \\ a_2 &= b_2, \notag \\ a_3-1 &= b_3+c_3. \end{align}

a1 = b 1 + c1 + d 1 , a2 = b 2 , a3 1 = b3 + c3 .

(7.7) (7.8)

Il simbolo & marca la posizione di una riga da incolonnare (di solito per gli allineamenti vengono scelti i simboli di relazione). Una formula che nisce con \notag non numerata. Lambiente align* produce formule non numerate. Lambiente align pu anche allineare pi colonne di formule. In tal caso i vari & hanno due signicati diversi: i simboli & di posto dispari (primo, terzo, . . . ) segnano i punti da incolonnare;

128

i simboli & di posto pari (secondo, quarto, . . . ) servono solo per distanziare una colonna di formule dallaltra.

\begin{align} a &= b, & c &=d, u &= v, & w &=x, \end{align}

& e &=f, \\ & y &=z.

a = b, u = v,

c = d, w = x,

e = f, y = z.

(7.9) (7.10)

. .

Gli ambienti gathered e aligned

Come equation, gli ambienti per disporre gruppi di formule gather e align sono progettati per produrre strutture aventi lunghezza complessiva pari alla lunghezza di una riga; questo implica, per esempio, che non facile aggiungere parentesi attorno alle strutture. Vengono allora fornite le varianti gathered e aligned, la cui lunghezza totale pari alla reale lunghezza dei contenuti; le strutture cos ottenute possono quindi essere usate come componenti di unespressione pi complessa. Per esempio:

\[ \left. \begin{aligned} \nabla\cdot E &= 4\pi\rho, \\ \nabla\cdot B &= 0, \end{aligned} \right\} \quad \text{eq.~di Maxwell} \]

E = 4, B = 0,

eq. di Maxwell

. .
Casi

Casi e numerazione subordinata

Lambiente cases serve per le denizioni fatte per casi. La graffa e lallineamento sono automatici; il testo nella seconda colonna va dentro a \text{ . . . }.

\[ f(n):= \begin{cases} 2n+1, & \text{se $n$ dispari,} \\ n/2, & \text{se $n$ pari.} \end{cases} \]

f(n) :=

2n + 1, n/2,

se n dispari, se n pari.

Numerazione subordinata

Per numerare un gruppo di formule con uno schema subordinato disponibile lambiente subequations:

129

\begin{subequations} \label{eqn:schema} \begin{align} a &= b+c, \\ c &= d, \label{eqn:sub} \\ e &= f+g. \end{align} \end{subequations} Le formule~\eqref{eqn:schema}, e in particolare la~\eqref{eqn:sub}, \dots

a = b + c, c = d, e = f + g.

(7.11a) (7.11b) (7.11c)

Le formule (7.11), e in particolare la (7.11b), . . .

.
A In modo matematico, L TEX seleziona automaticamente lo stile e la dimensione dei font in accordo col contesto. Ci nonostante, a volte necessario modicare lo stile e il corpo dei caratteri.

Font matematici

$x+y+2^n M\cos t$ \\ $\mathit{x+y+2^n M\cos $\mathbf{x+y+2^n M\cos $\mathrm{x+y+2^n M\cos $\mathtt{x+y+2^n M\cos $\mathsf{x+y+2^n M\cos

t}$ t}$ t}$ t}$ t}$

\\ \\ \\ \\

x + y + 2n M cos t x + y + 2n M cos t x + y + 2n M cos t x + y + 2n M cos t x + y + 2n M cos t x + y + 2n M cos t

Come si pu constatare, i comandi di cambiamento di stile agiscono sia sulle lettere sia sui numeri. Il comando \mathcal genera delle lettere maiuscole corsive:
Siano $\mathcal{C}$ la circonferenza di centro~$O$ e raggio~$1$, $\mathcal{D}_1$ e $\mathcal{D}_2$ due rette.

Siano C la circonferenza di centro O e raggio 1, D1 e D2 due rette.

Non bisogna abusare, come spesso fanno i compositori amatoriali, della possibilit di inserire simboli in neretto, tipogracamente piuttosto pesante. Ci premesso, il comando \mathbf pu essere usato per ottenere lettere latine in neretto in modo matematico, ma per la maggior parte degli altri tipi di simboli matematici non ha effetto, o i suoi effetti dipendono in maniera non prevedibile dalla serie di font matematici in uso. Per esempio, scrivendo
\[ \mu, M \qquad \mathbf{\mu}, \mathbf{M} \]

Simboli in neretto

, M

, M

si osserva che il comando \mathbf non ha funzionato con la lettera . Inoltre, le lettere restituite dal comando \mathbf sono in tondo, mentre di solito i simboli matematici sono in corsivo. Per comporre simboli matematici in neretto corsivo consigliabile servirsi dellapposito comando \bm , fornito dal pacchetto bm (bold

Per comporre simboli matematici in neretto corsivo si usa \bm.

130

math). Va tenuto presente che \bm funziona se (e solo se) il font matematico in uso in quel momento dispone di una versione in neretto di quel simbolo.
\[ \mu, M \qquad \bm{\mu}, \bm{M} \]

, M

, M

Pedici e apici in tondo

I pedici e gli apici letterali vanno scritti in corsivo matematico se rappresentano quantit variabili (cio se sono dei simboli), o in tondo se rappresentano delle apposizioni di una grandezza sica (cio se sono semplice testo). In questultimo caso si usa il comando \textup .
\[ V_\textup{eff} \qquad \psi_\textup{incidente} \]

Veff

incidente

Si confronti:
$V_\textup{eff}$ \\ $V_{eff}$

Veff Veff

Se si scrive V_{eff}, il font non il tondo ma il corsivo matematico e la spaziatura risulta completamente sbagliata, dal momento che A L TEX interpreta le tre lettere come variabili da moltiplicare: la scrittura corretta V_\textup{eff}. Si confronti anche:
\textit{$V_\textup{eff}\ne V_\text{eff}$} \\ \textbf{$V_\textup{eff}\ne V_\mathrm{eff}$}

Veff = Veff Veff = Veff

Impostare manualmente la dimensione dei font

A differenza di \text , le parole dentro a \textup vengono sempre composte in tondo, e non con il font attuale, cio quello in vigore fuori dalla formula: perci se il contesto in corsivo, il risultato di \textup in tondo. A differenza di \mathrm , il comando \textup permette di usare gli spazi e gli accenti, impiega la famiglia di font corrente (che potrebbe essere diversa da quella scelta da \mathrm ) e, se il contesto in neretto, produce correttamente un risultato in (tondo) neretto. In alternativa, lopzione italian di babel offre i comandi \ap e \ped per scrivere in tondo apici e pedici, rispettivamente.7 In modo matematico la dimensione del font pu essere impostata manualmente con le quattro dichiarazioni \displaystyle , \textstyle , \scriptstyle e \scriptscriptstyle .
7 Entrambi i comandi funzionano anche in modo testo per inserire pedici o apici nel font corrente. Servono per abbreviazioni antiquate come Flli oppure per loghi come WordStar oppure per gli ordinali maschili o femminili 1o , 2a , . . . , che si ottengono rispettivamente con F\ap{lli}, Word\ped{Star} e 1\ap{o}, 2\ap{a}.

131

\[ \sum_{k=1}^n z^k \qquad \textstyle\sum_{k=1}^n z^k \] $\displaystyle\sum_{k=1}^n z^k$ $\sum_{k=1}^n z^k$ $\scriptstyle\sum_{k=1}^n z^k$ $\scriptscriptstyle\sum_{k=1}^ n z^k$

zk
k=1 n

n k k=1 z

zk
k=1

n k k=1 z

n k=1

zk

n k k=1 z

\[ x_G= \frac{\displaystyle\sum_{i=1}^ n m_ix_i} {\displaystyle\sum_{i=1}^n m_i } \]

mi xi xG =
i=1 n

mi
i=1

Il cambiamento di stile inuisce anche sul modo in cui vengono scritti gli apici e i pedici. Esistono anche i comandi \dfrac e \tfrac come convenienti abbreviazioni per {\displaystyle\frac . . . } e {\textstyle\frac . . . }.
$\frac{1}{k}\log_2 c(f)$ \qquad $\dfrac{1}{k}\log_2 c(f)$ \[ \frac{1}{k}\log_2 c(f) \qquad \tfrac{1}{k}\log_2 c(f) \]

1 k

log2 c(f) 1 log2 c(f) k

1 log2 c(f) k
1 k

log2 c(f)

.
In questo paragrafo diamo per scontato che sia caricato il pacchetto amsthm. Componendo documenti matematici, utile disporre di un metodo per introdurre e numerare denizioni, teoremi e strutture simili. I tipi di enunciati non sono predeniti, ma vanno dichiarati dallutente, che deve prendere alcune decisioni globali: quali tipi di enunciati si useranno, per esempio denizioni e teoremi;
A il nome dellambiente L TEX di ogni tipo di enunciato, per esempio definizione e teorema (def non si pu usare perch un comando di base interno di TEX);

Introdurre ed enumerare denizioni, teoremi e strutture simili

quali parole esattamente andranno in stampa come titoli dei vari enunciati, per esempio Denizione e Teorema. Le dichiarazioni globali si fanno con il comando \newtheorem (nel preambolo), che consente due forme di denizione:
Il comando \newtheorem

132

\newtheorem{ nome dellenunciato }{ titolo }[ sezione ]

oppure, in alternativa,
\newtheorem{ nome dellenunciato }[ numerato come ]{ titolo }

Stili di enunciati

Largomento nome dellenunciato una parola chiave usata per identicare successivamente lenunciato. Con largomento titolo invece viene indicato il titolo dellenunciato, che poi verr stampato sul documento. Gli argomenti tra parentesi quadre sono opzionali; entrambi vengono impiegati per specicare la numerazione usata per lenunciato. Largomento numerato come deve specicare il nome di un enunciato precedentemente dichiarato: il nuovo enunciato verr allora numerato con la stessa sequenza numerica. Largomento sezione permette di specicare a quale tipo di unit di sezionamento (di regola chapter o section) collegare la numerazione dellenunciato.8 Un enunciato comincia con \begin{ nome dellenunciato } e nisce con \end{ nome dellenunciato }. Uneventuale specicazione dellenunciato va fra quadre subito dopo \begin{ nome dellenunciato }; in stampa verr fra tonde. Ci sono tre stili predeniti di enunciati (plain, definition e remark). I dettagli tipograci di questi stili dipendono dalla classe del documento, ma tipicamente lo stile plain produce un corpo del testo in corsivo, mentre gli altri due producono un corpo del testo in tondo. Lelenco seguente riporta le strutture normalmente associate ai diversi stili di enunciati: si usa per teoremi, lemmi, corollari, proposizioni, congetture, criteri, leggi, algoritmi; adatto per denizioni, condizioni, problemi, esempi; si usa per osservazioni, note, notazioni. Lo stile predenito plain. Per specicare stili differenti, si usa il comando \theoremstyle , suddividendo gli enunciati per gruppi e scrivendo prima di ogni gruppo lappropriato \theoremstyle . (Qualora i tre stili predeniti non fossero sufcienti, il pacchetto amsthm fornisce il comando \newtheoremstyle , che permette di creare stili personalizzati.) La teoria dovrebbe essere sufciente, i seguenti esempi dovrebbero chiarire quanto appena spiegato. Se scriviamo nel preambolo
\theoremstyle{definition} \newtheorem{definizione}{Definizione} \theoremstyle{plain} \newtheorem{teorema}{Teorema}

Esempi di enunciati

gli ambienti definizione e teorema si usano nel modo seguente:


8 Se al posto di \newtheorem si usa la variante asterisco \newtheorem* , vengono prodotti enunciati non numerati.

133

\begin{definizione}[di Lord Kelvin] Si dice \emph{matematico} colui per il quale ovvio che $\int_{-\infty}^{+\infty} e^{-x^2}\,dx=\sqrt{\pi}$. \end{definizione} \begin{teorema} I matematici, se ce ne sono, sono molto rari. \end{teorema}

Denizione 1 (di Lord Kelvin). Si dice matematico colui per il quale 2 + ovvio che ex dx = . Teorema 1. I matematici, se ce ne sono, sono molto rari.

Il seguente teorema a tutti ben noto. \begin{teorema}[di Pitagora] La somma dei quadrati costruiti sui cateti uguale al quadrato costruito sullipotenusa. \end{teorema} La dimostrazione lasciata per esercizio.

Il seguente teorema a tutti ben noto. Teorema 2 (di Pitagora). La somma dei quadrati costruiti sui cateti uguale al quadrato costruito sullipotenusa. La dimostrazione lasciata per esercizio.

A Come si vede, L TEX numera automaticamente ogni enunciato e lo stacca da ci che precede e da ci che segue. Ogni tipo di enunciato numerato a parte e non c alcun rientro prima del titolo dellenunciato. Il titolo e il numero dellenunciato sono in neretto (con punto nale). Il corpo dellenunciato in tondo per le denizioni e in corsivo per i teoremi. Lambiente proof serve per le dimostrazioni.

Dimostrazioni

\begin{teorema}[Sorpresa] Si ha che $0=1$. \end{teorema} \begin{proof} Da $e^{2n\pi i}=1$ segue che $e^{1+2n\pi i}=e$, poi $(e^{1+2n\pi i})^{1+2n\pi i}= e^{1+2n\pi i}=e$, per cui $e^{1+4n\pi i-4n^2\pi^2}=e$, e infine $e^{4n\pi i4n^2\pi^2}=1$. Mandando $n\to+\infty$ si ha la tesi. \end{proof}

Teorema 3 (Sorpresa). Si ha che 0 = 1. Dimostrazione. Da e2ni = 1 segue che e1+2ni = e, poi (e1+2ni )1+2ni = e1+2ni = e, 2 2 per cui e1+4ni4n = e, e in2 2 ne e4ni4n = 1. Mandando n + si ha la tesi.

Viene un quadratino a ne dimostrazione.9 Con il comando \qedhere possibile spostare il simbolo di ne dimostrazione in modo che sia posizionato correttamente anche se la dimostrazione termina con una formula fuori corpo.
9 Per sostituire la scritta Dimostrazione con unaltra, per esempio Soluzione, sufciente scrivere \begin{proof}[Soluzione].

134

\begin{proof} Basta usare la formula \[ E=mc^2. \] \end{proof}

Dimostrazione. Basta usare la formula E = mc2 .

\begin{proof} Basta usare la formula \[ E=mc^2.\qedhere \] \end{proof}

Dimostrazione. Basta usare la formula E = mc2 .

Enunciati numerati con la stessa sequenza numerica

Vediamo ora un esempio di due enunciati numerati con la stessa sequenza numerica. Se scriviamo nel preambolo
\theoremstyle{plain} \newtheorem{legge}{Legge} \newtheorem{decreto}[legge]{Decreto}

gli ambienti legge e decreto si usano come segue:


\begin{legge} \label{lex:capo} Il capo ha ragione. \end{legge} \begin{decreto}[Aggiornamento alla legge~\ref{lex:capo}] Il capo ha \emph{sempre} ragione. \end{decreto} \begin{legge} Se il capo ha torto, vedere la legge~\ref{lex:capo}. \end{legge}

Legge 1. Il capo ha ragione. Decreto 2 (Aggiornamento alla legge 1). Il capo ha sempre ragione. Legge 3. Se il capo ha torto, vedere la legge 1.

Enunciati numerati secondo il paragrafo corrente

Lenunciato Decreto usa lo stesso contatore dellenunciato Legge, perci ha un numero di identicazione che segue la stessa sequenza numerica usata da questo. Gli enunciati possono essere identicati con unetichetta. Se si desidera introdurre un enunciato Murphy la cui numerazione sia collegata al paragrafo corrente, sufciente scrivere nel preambolo
\newtheorem{murphy}{Murphy}[section]

Lambiente murphy cos denito si usa nel solito modo:


\begin{murphy} Se esistono due o pi modi per fare una cosa, e se uno di questi modi pu creare una catastrofe, allora qualcuno lo sceglier. \end{murphy}

Murphy 7.8.1. Se esistono due o pi modi per fare una cosa, e se uno di questi modi pu creare una catastrofe, allora qualcuno lo sceglier.

135

.
I diagrammi commutativi sono particolari oggetti a met strada fra un insieme di espressioni matematiche e un disegno che le mette in relazione le une con le altre. Il pacchetto amscd denisce un ambiente CD con cui possibile disegnare diagrammi commutativi piani e senza frecce diagonali. Per diagrammi pi complessi il lettore deve rivolgersi a pacchetti pi sosticati, come PSTricks oppure Xy-pic.
\[ \begin{CD} A @>f>> B \\ @V{g}VV @VV{h}V \\ C @>>k> D \\ \end{CD} \]

Con il pacchetto amscd si possono disegnare semplici diagrammi commutativi.

A B g
k

C D

Lambiente CD va usato solo allinterno di un ambiente matematico per formule fuori corpo, come equation oppure uno degli altri appositi ambienti visti in questo capitolo.

.
Per inserire le unit di misura del Sistema Internazionale consigliabile luso del pacchetto siunitx, che permette di avere un controllo molto preciso del formato delle unit di misura e consente, se lo si desidera, di cambiare convenzione tipograca con ununica modica nel preambolo, evitando di modicare una per una le unit di misura.
\SI{23.4}{kg.m.s^{-2}} \\ $r=\SI{0.8768(11)e-15}{m}$ \\ \si{\joule\per\mole% \per\kelvin}

Per inserire le unit di misura del Sistema Internazionale si usa il pacchetto siunitx.

23.4 kg m s2 r = 0.8768(11) 1015 m J mol1 K1

\num[dp=4]{1.23456} \\ \num[dp=4]{9.8}

1.2346 9.8000

\SI{100}{\celsius} \\ \ang{1;2;3} \\ \degree

100 C 12 3

Tutti i precedenti comandi funzionano sia in modo testuale sia in modo matematico. Per inserire i gradi Celsius o sessagesimali consigliabile caricare anche il pacchetto textcomp, che rende possibile la ricerca del simbolo nel documento nale. Per comporre formule chimiche utile il pacchetto mhchem. Per esempio:

Formule chimiche

Se si desidera dare particolare evidenza ad una formula, utile il pacchetto empheq. (Il primo dei seguenti due esempi richiede il 136 pacchetto xcolor.)
\newcommand*\mygraybox[1]{% \ce{H2O} \qquad \colorbox{lightgray}{#1}} + 227 H2 O C6 H CHO a=b \ce{^{227}_{90}Th+} 90Th 5 \begin{empheq}[box=%\qquad a \ce{C6H5-CHO} \\[1ex] \mygraybox]{align*} SO2 + Ba2+ BaSO4 + 2 4 E = mc x dx \ce{SO4^2a &= b \\ + Ba^2+ -> BaSO4 v} a _a^a x\, dx E &= mc^2 + \int Per la composizione delle formule di struttura disponibile il pac\end{empheq}

Il pacchetto empheq

Formule di struttura

chetto XyMTeX:  T \begin{empheq}[box=% T \ryl(5==NH--SO$_{2}$)% NHSO2 = a b \fbox]{align*} TT  {4==\bzdrh{1==(yl)}} T a T  a &= b \\ E = mc2 + x dx E &= mc^2 + \int_a^a x\, dx a In alternativa, si pu usare il pacchetto ppchtex. \end{empheq}
\begin{fmffile}{esempio} \begin{fmfgraph*}(40,25) \fmfleft{em,ep} \fmf{fermion}{em,Zee,ep} \fmf{photon}{Zee,Zff} \fmf{fermion}{fb,Zff,f} \fmfright{fb,f} \fmfdot{Zee,Zff} \end{fmfgraph*} \end{fmffile}

I graci di Feynman

Per disegnare i graci di Feynman disponibile il pacchetto feynmf:

Il pacchetto empheq

Nelle seguenti tabelle si possono trovare tutti i simboli ai quali si Se si desidera dare particolare evidenza a una formula, utile il pu accedere normalmente dallambiente matematico. Queste tabelle pacchetto empheq. (Il primo dei seguenti due esempi richiede xcolor.) sono prese da [?, p. 52-58]. (Per un elenco esauriente dei simboli di A L TEX, vedi [?].) \newcommand*\mygraybox[1]{%
\colorbox{lightgray}{#1}} \begin{empheq}[box=% \mygraybox]{align*} a &= b \\ E &= mc^2 + \int_a^a x\, dx \end{empheq}

..

a=b E = mc2 +
a

x dx
a

\begin{empheq}[box=% \fbox]{align*} a &= b \\ E &= mc^2 + \int_a^a x\, dx \end{empheq}

a=b E = mc2 +
a

x dx
a

.
Nelle seguenti tabelle si possono trovare tutti i simboli ai quali si pu accedere normalmente dallambiente matematico. Queste tabelle sono prese da [Oetiker et al., 2000, p. 52-58]. (Per un elenco esauriente A dei simboli di L TEX, vedi [Pakin, 2008].)

137

Tabella 30: Lettere greche minuscole.

\alpha \beta \gamma \delta \epsilon \varepsilon \zeta \eta \theta \vartheta

\iota \kappa \lambda \mu \nu \xi o \pi \varpi \rho

\varrho \sigma \varsigma \tau \upsilon \phi \varphi \chi \psi \omega

Tabella 31: Lettere greche maiuscole.

\Gamma \Delta \Theta \Lambda

\Xi \Pi \Sigma \Upsilon

\Phi \Psi \Omega

Tabella 32: Accenti in modo matematico.

a a a a

\bar{a} \vec{a} \acute{a} \check{a}

a a a ` A

\hat{a} \dot{a} \grave{a} \widehat{a}

a a a A

\tilde{a} \ddot{a} \breve{a} \widetilde{a}

138

Tabella 33: Relazioni binarie.

<

< \leq o \le \ll \prec \preceq

>

> \geq o \ge \gg \succ \succeq

= . = =

= \equiv \doteq \sim \simeq \approx \cong \Join \bowtie

\subset \subseteq \sqsubset \sqsubseteq

\supset \supseteq \sqsupset \sqsupseteq \ni o \owns \dashv \parallel \frown

| :

\in \vdash \mid \smile :

|= =

\propto \models \perp \asymp \neq o \ne

\notin

Tabella 34: Operazioni binarie.


+
+ \pm \cdot \times \cup \sqcup \vee o \lor \oplus \odot \otimes \bigtriangleup \lhd \unlhd

\mp \div \setminus \cap \sqcap \wedge o \land \ominus \oslash \bigcirc \bigtriangledown \rhd \unrhd \triangleleft \triangleright \star

\ast \circ \bullet \diamond \uplus \amalg

\dagger \ddagger \wr

139

Tabella 35: Grandi operatori.


\sum \int \bigcap \bigoplus \biguplus \prod \oint \bigvee \bigotimes \bigodot \coprod \bigcup \bigwedge

Tabella 36: Delimitatori. ( )


( ) \langle \rangle

[ ]

[ o \lbrack ] o \rbrack \lfloor \rfloor

{ }

\{ o \lbrace \} o \rbrace \lceil \rceil

\uparrow \downarrow \updownarrow / \urcorner

\Uparrow \Downarrow \Updownarrow \backslash \llcorner

| o \vert \| o \Vert . (carattere fantasma) \ulcorner \lrcorner

\lgroup \rgroup \bracevert

Tabella 37: Grandi delimitatori. \lmoustache \rmoustache

\arrowvert \Arrowvert

140

Tabella 38: Frecce.


\leftarrow o \gets \rightarrow o \to \leftrightarrow \Leftarrow \Rightarrow \Leftrightarrow \mapsto \hookleftarrow \uparrow \downarrow \updownarrow \leftharpoonup \leftharpoondown \rightleftharpoons \dashleftarrow \leftleftarrows \leftrightarrows \Lleftarrow \twoheadleftarrow \leftarrowtail \leftrightharpoons \Lsh \looparrowleft \curvearrowleft \circlearrowleft \nearrow \swarrow \leadsto \upuparrows \upharpoonleft \downharpoonleft \rightsquigarrow

= =

\longleftarrow \longrightarrow \longleftrightarrow \Longleftarrow \Longrightarrow \Longleftrightarrow \longmapsto \hookrightarrow \Uparrow \Downarrow \Updownarrow \rightharpoonup \rightharpoondown

\iff (con spazi grandi) \dashrightarrow \rightrightarrows \rightleftarrows \Rrightarrow \twoheadrightarrow \rightarrowtail \rightleftharpoons \Rsh \looparrowright \curvearrowright \circlearrowright \searrow \nwarrow \multimap \downdownarrows \upharpoonright \downharpoonright \leftrightsquigarrow

141

Tabella 39: Simboli misti.


... . . . .. .
\dots \cdots \vdots \ddots \heartsuit \diamondsuit \clubsuit \spadesuit \imath \jmath \Diamond \angle \natural \square \vartriangle \triangledown \Re \Im

\infty \partial \nabla

h h

\forall \exists \neg o \lnot \ell \hbar \hslash \wp \triangle \bot \surd \sharp \blacksquare \blacktriangle \blacktriangledown \blacklozenge \diagup \diagdown \backprime

\emptyset \complement \aleph \prime \mho \Box \top \flat

\Bbbk \circledS \eth \Game \bigstar \nexists \Finv

\lozenge \angle \measuredangle \sphericalangle

\varnothing

Tabella 40: Simboli non matematici (questi simboli possono venire usati anche in modo testuale).

\dag \ddag

\S \P

\copyright \pounds

Tabella 41: Altri caratteri alfabetici.


\digamma \daleth

\varkappa \gimel

\beth

142

Tabella 42: Altre relazioni binarie.


\lessdot \leqslant \eqslantless \leqq \llless o \lll \lesssim \lessapprox \lessgtr \lesseqgtr \lesseqqgtr \preccurlyeq \curlyeqprec \precsim \precapprox \subseteqq \Subset \sqsubset \gtrdot \geqslant \eqslantgtr \geqq \gggtr o \ggg \gtrsim \gtrapprox \gtrless \gtreqless \gtreqqless \succcurlyeq \curlyeqsucc \succsim \succapprox \supseteqq \Supset \sqsupset \because \shortparallel \smallfrown \vartriangleright \trianglerighteq \doteqdot o \Doteq \risingdotseq \fallingdotseq \eqcirc \circeq \triangleq \bumpeq \Bumpeq

\thicksim \thickapprox \approxeq \backsim \backsimeq \vDash \Vdash \Vvdash \backepsilon

\therefore \shortmid \smallsmile \vartriangleleft \trianglelefteq

\varpropto \between \pitchfork \blacktriangleleft \blacktriangleright

Tabella 43: Altre operazioni binarie.


\dotplus \ltimes \Cup o \doublecup \veebar \boxplus \boxtimes \leftthreetimes \curlyvee \intercal \smallsetminus \circleddash \circledast \centerdot \rtimes \Cap o \doublecap \barwedge \boxminus \boxdot \rightthreetimes \curlywedge \divideontimes \doublebarwedge \circledcirc

143

Tabella 44: Negazioni di simboli.


\nless \lneq \nleq \nleqslant \lneqq \lvertneqq \nleqq \lnsim \lnapprox \nprec \npreceq \precneqq \precnsim \precnapprox \subsetneq \varsubsetneq \nsubseteq \subsetneqq \nleftarrow \nLeftarrow \ngtr \gneq \ngeq \ngeqslant \gneqq \gvertneqq \ngeqq \gnsim \gnapprox \nsucc \nsucceq \succneqq \succnsim \succnapprox \supsetneq \varsupsetneq \nsupseteq \supsetneqq \nrightarrow \nRightarrow \varsubsetneqq \varsupsetneqq \nsubseteqq \nsupseteqq \nmid \nparallel \nshortmid \nshortparallel \nsim \ncong \nvdash \nvDash \nVdash \nVDash \ntriangleleft \ntriangleright \ntrianglelefteq \ntrianglerighteq \nleftrightarrow \nLeftrightarrow

Tabella 45: Font matematici.

Esempio ABCdef ABCdef ABCdef


ABCdef

Comando
\mathit{ABCdef} \mathbf{ABCdef} \mathrm{ABCdef} \mathtt{ABCdef} \mathsf{ABCdef} \mathnormal{ABCdef} \mathcal{ABC} \mathscr{ABC} \mathcal{ABC} \mathbb{ABC}

Pacchetto richiesto

ABCdef ABCdef ABC A BC ABC ABC

mathrsfs eucal amssymb

8
8.1 8.2

LA BIBLIOGRAFIA

8.3

Lambiente thebibliography 145 Il programma BibTEX 147 8.2.1 Basi di dati dei riferimenti bibliograci 147 8.2.2 I diversi tipi di record 148 8.2.3 I diversi tipi di campi 150 8.2.4 Alcune precisazioni 151 8.2.5 Generare la bibliograa 152 8.2.6 Stili bibliograci personalizzati 155 8.2.7 Riferimenti autore-anno: il pacchetto natbib 155 8.2.8 Riferimenti nali: il pacchetto backref 157 8.2.9 Riferimenti capitolo per capitolo: bibunits 157 Elenco dei siti Web consultati 157

Realizzare e gestire una bibliograa generalmente piuttosto comA plicato. Con L TEX sono disponibili svariati strumenti per svolgere questo lavoro con grande efcienza e essibilit. Una bibliograa pu essere creata manualmente per mezzo dellambiente thebibliography, oppure in maniera automatizzata mediante il programma BibTEX, che permette di separare il contenuto dei riferimenti bibliograci (archiviati in apposite basi di dati) dalla loro forma (gestita da stili).

Lambiente thebibliography permette di gestire la bibliograa in Realizzare una bibliograa (a differenza di BibTEX, presentato nel modo assai semplice, anche se generalmente piuttosto complicato. Con A L TEX sono disponibili svariati strumenti per gestire questo lavoro un prossimo paragrafo) non molto essibile. Di seguito riportato con grande efcienza e essibilit. esempio di bibliograa realizzata con lambiente thebibliography.
\begin{thebibliography}{9} \bibitem{brighhurst:elementi} R.~Brighurst (2001), \emph{Gli Elementi dello Stile Tipografico}, Sylvestre Bonnard, Milano. \bibitem{mori:tesi} L.~F.~Mori (2007), Scrivere la tesi di laurea con \LaTeXe, \Ars, \url{http://www.guit.sssup.% it/arstexnica/}. \end{thebibliography}

[1] R. Brighurst (2001), Gli Elementi dello Stile Tipograco, Sylvestre Bonnard, Milano. [2] L. F. Mori (2007), Scrivere la A tesi di laurea con L TEX 2 , ArsTEXnica, http://www.guit. sssup.it/arstexnica/.

BIBLIOGRAFIA

Il comando \cite viene usato per fare riferimento ad un elemento della bibliograa, e stampa il numero o letichetta dellopera questa per s che allora stampa il numero o letichetta dellopera questa per 145 s che allora:
Vedi~\cite{mori:tesi} per maggiori dettagli.

Vedi [2] per maggiori dettagli.

Si possono indicare pagine, capitoli, . . . nel riferimento tramite il parametro opzionale di \cite :

146

Aggiungere allindice la voce Bibliograa

dove il logo di ArsTEXnica ottenuto con il comando \Ars del pacchetto guit. Per aggiungere allindice la voce Bibliograa, con le classi book o report sufciente scrivere
\cleardoublepage \addcontentsline{toc}{chapter}{\bibname}

subito prima di \begin{thebibliography}. In alternativa, se si sta usando la classe article, il comando


\addcontentsline{toc}{section}{\refname}

Se si usa thebibliography, gli elementi della bibliograa vanno ordinati a mano.

Assegnare etichette personalizzate

(anchesso da scriversi subito prima di \begin{thebibliography} ed eventualmente preceduto da \clearpage se la bibliograa inizia in una nuova pagina) aggiunge allindice la voce Riferimenti bibliograci. Il secondo argomento del comando \addcontentsline precisa il livello del titolo da aggiungere allindice (toc), chapter per le classi book o report, section per la classe article. IlR A F I A L A B I B L I O G comando \cleardoublepage prima di \addcontentsline nella bibliograa delle classi report o book (come il comando \clearpage nella bibliograa della classe article quando questa inizia in una nuova pagina) necessario: in caso contrario, il numero di pagina bibliograa nellindice non corretto. con questo Realizzare una che compare spesso complicato. Per Realizzare una bibliograa spesso complicato. Per con questo Lambiente thebibliography svariati itemize. per gestire questo pro s che allora sono disponibili simile a strumentiOgnigestire questo pro s che allora sono disponibili svariati strumenti per elemento della bibliograa comincia con e essibilit. lavoro con grande efcienza il comando lavoro con grande efcienza e essibilit.\bibitem , che ha come argomento letichetta che identica (come con \label ) il documento in questione; di seguito si scrivono lautore dellopera, il titolo (in corsivo, \begin{thebibliography}{9} \begin{thebibliography}{9} nel caso considerato), leditore e lanno di pubblicazione. Gli elemen\bibitem{bringhurst:elementi} ti\bibitem{bringhurst:elementi} della bibliograa vanno ordinati a mano, poich thebibliography R.~Bringhurst R.~Bringhurst (2001), (contrariamente(2001), X) non provvede a farlo automaticamente. a BibTE \emph{Gli Elementi dello \emph{Gli Elementi dello BIBLIOGRAFIA In stampa, ogni elemento della bibliograa viene contrassegnato da Stile Tipografico}, Tipografico}, Stile un numero Bonnard, Milano. Sylvestre tra parentesi quadre. possibile assegnare a ciascuna voce Sylvestre Bonnard, Milano. bibliograca unetichetta personalizzata con il parametro opzionale di [1] R. Bringhurst (2001), Gli Ele[1] R. Bringhurst (2001), Gli Ele\bibitem{mori:tesi} \bibitem : \bibitem{mori:tesi} menti dello Stile Tipograco, Syl-

Riferimenti

caso in cui ci siano meno di dieci opere in bibliograa, 99 qualora se ne abbiano almeno dieci ma meno di cento, . . . ; Il comando viene usato per fare riferimento ad un elemento della Il comando viene usato per fare riferimento ad un elemento della bibliograa, e stampa il numero o letichetta dellopera: sono qui belli se si usano etichette personalizzate, si mette letichetta pi lunga. bibliograa, e stampa il numero o letichetta dellopera: sono qui belli non svariati strumenti per gestire per farelavoro con grande efcienza non comando \cite viene gestire questo lavoro con grande efcienza Il svariati strumenti per usato questo riferimento a un elemento e essibilit. essibilit. e della bibliograa, e stampa il numero o letichetta dellopera:
Vedi~\cite{mori:tesi} per Vedi~\cite{mori:tesi} per maggiori dettagli. maggiori dettagli.

menti dello Stile Tipograco, SylL.~F.~Mori (2007), L.~F.~Mori (2007), vestre R.~Bringhurst \bibitem[Bringhurst, 92]{bringhurst:elementi} Bonnard, Milano.... vestre Bonnard, Milano. Scrivere la tesi di laurea la tesi di laurea Scrivere con \LaTeXe, \Ars, [2] L. F. Mori (2007), Scrivere la Ilcon \LaTeXe, \Ars, parametro dellambiente thebibliography precisa la lunghezza mas[2] L. F. Mori (2007), Scrivere la \url{http://www.guit.sssup.% A tesi di laurea con L TEX 2 , \url{http://www.guit.sssup.% A sima di queste etichette: tesi di laurea con L TEX 2 , it/arstexnica.php}. ArsTEXnica, http://www.guit. it/arstexnica.php}. ArsTEXnica, http://www.guit. se non si usano etichette personalizzate, in genere si mette .9 nel \end{thebibliography} sssup.it/arstexnica.php \end{thebibliography} sssup.it/arstexnica.php.

Vedi [2] per maggiori dettagli. Vedi [2] per maggiori dettagli.

Si possono indicare pagine, capitoli, . . nel riferimento tramite il Si possono indicare pagine, capitoli, . . ..nel riferimento tramite il paraSi possono indicare pagine, capitoli, . . . nel riferimento tramite il parametro opzionale di \cite: metro opzionale di \cite: parametro opzionale di \cite :
Vedi~\cite[pag.~27]{mori:tesi} Vedi~\cite[pag.~27]{mori:tesi} per maggiori dettagli. per maggiori dettagli.

Vedi [2, pag. 27] per maggiori Vedi [2, pag. 27] per maggiori dettagli. dettagli.

147

.
Lambiente thebibliography permette di gestire dignitosamente una bibliograa, ma presenta anche alcuni inconvenienti: gli elementi della bibliograa non vengono ordinati automaticamente; bisogna rifare la bibliograa per ogni documento, anche se c solo qualche opera di differenza; in caso di aggiornamento di un documento, bisogna modicare le bibliograe di tutti i documenti in cui citato; se si vuole cambiare lo stile della bibliograa, necessario modicare manualmente tutte le voci, una per una. Per queste ragioni, decisamente preferibile lidea di creare una base di dati delle opere piuttosto che avere una bibliograa indipendente per ogni documento, e di generare automaticamente la bibliograa a partire dalla base di dati, in funzione delle citazioni. . . Basi di dati dei riferimenti bibliograci
Esempi di record bibliograci Generare automaticamente la bibliograa I limiti dellambiente thebibliography

Una base di dati dei riferimenti bibliograci un le, di estensione


.bib, che contiene un certo numero di record, come i seguenti:
@book{bringhurst:elementi, author = {Bringhurst, Robert}, title = {Gli Elementi dello Stile Tipografico}, publisher = {Sylvestre Bonnard}, year = {2001, ed.~or.~1992}, address = {Milano} } @article{mori:tesi, author = {Mori, Lapo Filippo}, title = {Scrivere la tesi di laurea con {\LaTeXe}}, journal = {{\Ars}}, year = {2007}, note = {{\url{http://www.guit.sssup.it/arstexnica/}}} } @manual{gregorio:breveguida, author = {Gregorio, Enrico}, title = {Breve guida ai pacchetti di uso pi comune}, year = {2008}, note = {{\url{http://profs.sci.univr.it/~gregorio/}}} } @mastersthesis{pantieri:distribuzioni, author = {Pantieri, Lorenzo}, title = {Le origini della teoria delle distribuzioni}, school = {Universit degli Studi di Bologna}, year = {2000}, type = {Tesi di laurea in Matematica} }

148

Ogni record corrisponde a unopera il cui tipo indicato per primo, subito dopo il carattere @. Si tratta in questo caso di un libro (contenuto quindi in un record di tipo book), di un articolo (contenuto in un record di tipo article), di un manuale (record di tipo manual) e di una tesi di laurea (record di tipo mastersthesis). Successivamente si indica una chiave che servir a identicare lopera nelle basi di dati e a citarla nei documenti come argomento del comando \cite . Il formato della chiave libero, ma di solito si usa il nome dellautore seguito da : e da una parola che caratterizza lopera. Le chiavi devono essere uniche nelle basi di dati. Poi si riempie una serie di campi che deniscono lopera (autore, titolo, . . . ). Per un dato tipo dopera, alcuni campi sono obbligatori e altri facoltativi. Ogni campo assume la forma
nome del campo = { contenuto del campo }

I campi sono separati tra di loro e dalla chiave con delle virgole. . . I diversi tipi di record

Ogni record contiene uno o pi campi. Un campo pu essere: graa; , ovvero indispensabile afnch BibTEX generi la biblio-

, cio non indispensabile ma usato, se specicato, per completare le informazioni relative allopera in questione; , ovvero inutile, il cui contenuto verr ignorato da BibTEX.
I tipi di record riconosciuti da BibTEX

Di seguito viene riportato lelenco dei tipi di record riconosciuti da BibTEX. Per ogni tipo sono indicati i campi obbligatori e opzionali (tutti gli altri sono ignorati): il loro signicato verr spiegato nel paragrafo successivo. Articolo apparso in un giornale o una rivista. Campi obbligatori: author, title, journal, year. Campi opzionali: volume, number, pages, month, note. Libro regolarmente pubblicato da una casa editrice. Campi obbligatori: author o editor, title, publisher, year. Campi opzionali: volume o number, series, address, edition, month, note. Libro che viene distribuito senza un editore. Campo obbligatorio: title. Campi opzionali: author, howpublished, address, month, year, note, key. Identico a inproceedings.

149

Parte di un libro, generalmente senza titolo: un capitolo, un paragrafo o qualche pagina. Campi obbligatori: author o editor, title, chapter o pages, publisher, year. Campi opzionali: volume o number, series, type, address, edition, month, note. Parte di un libro con un titolo proprio. Campi obbligatori: author, title, booktitle, publisher, year. Campi opzionali: editor, volume o number, series, type, chapter, pages, address, edition, month, note. Articolo nei lavori di una conferenza. Campi obbligatori: author, title, booktitle, year. Campi opzionali: editor, volume o number, series, pages, address, month, organization, publisher, note. Documentazione tecnica. Campo obligatorio: title. Campi opzionali: author, organization, address, edition, month, year, note, key. Tesi di laurea. Campi obbligatori: author, title, school, year. Campi opzionali: type, address, month, note. Tipo da usare quando nessuno degli altri appropriato. Campi obbligatori: nessuno. Campi opzionali: author, title, howpublished, month, year, note, key. Tesi di dottorato. Campi obbligatori: author, title, school, year. Campi opzionali: type, address, month, note. Lavori di una conferenza. Campi obbligatori: title, year. Campi opzionali: editor, volume o number, series, address, month, organization, publisher, note, key. Relazione pubblicata da ununiversit, scuola o altra istituzione. Campi obbligatori: author, title, institution, year. Campi opzionali: type, number, address, month, note. Documento con un autore e un titolo, ma che non stato pubblicato.

150

Campi obbligatori: author, title, note. Campi opzionali: month, year. . .


I tipi di campi di BibTEX

I diversi tipi di campi

Di seguito riportato lelenco dei vari tipi di campi riconosciuti da BibTEX. Indirizzo delleditore (publisher) o dellistituzione (institution). Annotazione. Nome dellautore (o degli autori, nel formato descritto pi avanti). Titolo di una parte di un libro o di una rivista, nei lavori di una conferenza. Numero del capitolo (o di una qualunque parte del documento). Edizione di un libro. Nome del curatore (o dei curatori). Tipo di pubblicazione. Istituzione editrice di una relazione. Nome di un giornale o di una rivista. Campo nascosto che permette di impostare lordinamento alfabetico degli elementi della bibliograa: serve come chiave di ordinamento nei record privi dellindicazione dellautore o del curatore. Mese di pubblicazione dellopera. Informazioni supplementari che possono aiutare il lettore. Numero di un giornale o rivista. Organizzazione di patrocinio della conferenza o che pubblica la rivista.

151

Uno o pi numeri di pagina. Nome delleditore. Nome della scuola o delluniversit nella quale stata realizzato il lavoro o la tesi. Nome di una collezione di volumi. Titolo dellopera. Tipo di relazione tecnica. Volume di una rivista o di un libro. Anno di pubblicazione. . . Alcune precisazioni
Nomi, acronimi e sigle in maiuscolo

Per alcuni tipi di record (articoli, lavori di conferenze, . . . ), BibTEX mette automaticamente in minuscolo il titolo dellopera. Ci pu risultare fastidioso nel caso di nomi, acronimi, sigle, . . . che si vogliono in maiuscolo. In questo caso, sufciente mettere tra parentesi graffe le parole che non si vogliono in minuscolo:
title = {{TCP-IP} e lo {Zen} di {Confucio}}

Altrimenti, se si desidera fare in modo che le maiuscole di un titolo appaiano esattamente come sono scritte, basta racchiudere tutto il titolo dentro unulteriore coppia di parentesi graffe:
title = {{TCP-IP e lo Zen di Confucio}}
A Se un campo contiene un comando di L TEX, opportuno metterlo tra parentesi graffe, per non confondere BibTEX:

title = {Larte di scrivere con {\LaTeX}}

Quando un campo author o editor contiene pi nomi, i nomi devono essere separati tra loro dalla parola and:
author = {Mori, Lapo Filippo and Himmelmann, Maurizio}

Nomi multipli

Se lelenco dei nomi degli autori o dei curatori troppo lungo, pu essere concluso da and others, che di regola viene reso da BibTEX come et al.:
author = {Gregorio, Enrico and Mori, Lapo Filippo and Pantieri, Lorenzo and others}

152

Cognomi multipli

I cognomi multipli si scrivono separando i cognomi e il nome in questordine:


author = {Levi Montalcini, Rita}

Cognomi preceduti da von o van

I cognomi preceduti dalla particella von o van di regola vengono ordinati alfabeticamente da BibTEX comprendendo la particella nel cognome: se lautore , per esempio, Ludwig van Beethoven, ai ni dellordine alfabetico BibTEX considera generalmente il cognome come van Beethoven e non come Beethoven. Questo, tra laltro, lo stile comunemente usato nelle bibliograe in italiano. Tuttavia, con alcuni stili bibliograci pu capitare che BibTEX, ai ni dellordine alfabetico, consideri il cognome come Beethoven e non come van Beethoven. Se si vuole evitarlo, basta scrivere
author = {{van Beethoven}, Ludwig}

Se il cognome preceduto da una particella con iniziale maiuscola, esso viene sempre ordinato alfabeticamente da BibTEX comprendendo la particella nel cognome. Per esempio Alcide De Gasperi viene sempre ordinato automaticamente come De Gasperi:
author = {De Gasperi, Alcide}

. .

Generare la bibliograa

Una volta create le basi di dati, il pi fatto. Ora, quando si vuole fare riferimento a unopera, si usa il comando \cite mettendo come argomento la chiave corrispondente:
Vedi~\cite{bringhurst:elementi} per maggiori dettagli.

Posizionare la bibliograa

A Bisogna inoltre indicare a L TEX dove posizionare la bibliograa. A tal ne si usa il comando \bibliography . Questo comando prende come argomento un elenco di le contenenti le basi di dati (ma senza estensione .bib):

\bibliography{ bibliograa1 , bibliograa2 , . . . }

Gli stili bibliograci di BibTEX

Naturalmente, in questi le dovranno trovarsi tutte le opere citate nel documento. Al solito, opportuno che il percorso dei le inclusi mediante il comando \bibliography non contenga spazi. Bisogna anche indicare a BibTEX lo stile da usare per impaginare la bibliograa. A tal ne si usa il comando \bibliographystyle . Largomento di questo comando lo stile scelto. Gli stili standard di BibTEX sono: Opere in ordine alfabetico, contrassegnate da numeri. Opere in ordine di citazione, contrassegnate da numeri. Opere contrassegnate da etichette del tipo Bri92 formate a partire dal nome dellautore e dallanno di pubblicazione.

153

Come lo stile plain, ma i nomi degli autori, dei mesi e dei giornali sono abbreviati. Anche in questo caso bisogna includere nellindice la voce relativa alla bibliograa con il comando \addcontentsline , perch non viene A fatto automaticamente n da L TEX n da BibTEX:
\cleardoublepage \addcontentsline{toc}{chapter}{\bibname}

per le classi book o report o, in alternativa,


\addcontentsline{toc}{section}{\refname}

per la classe article (con eventualmente \clearpage prima del comando \addcontentsline se la bibliograa inizia in una nuova pagina). Riassumendo, a parte i comandi \cite disseminati nel documento, linclusione della bibliograa si fa cos:
\cleardoublepage \addcontentsline{toc}{chapter}{\bibname} \bibliographystyle{ stile bibliograco } \bibliography{ bibliograa1 , bibliograa2 , . . . }

per le classi book o report o, in alternativa,


\addcontentsline{toc}{section}{\refname} \bibliographystyle{ stile bibliograco } \bibliography{ bibliograa1 , bibliograa2 , . . . }

(con eventualmente \clearpage prima di \addcontentsline se la bibliograa inizia in una nuova pagina) per la classe article. Se si vogliono includere in bibliograa delle opere non citate nel documento si usa il comando \nocite (messo di solito subito prima del comando \bibliographystyle ), con lelenco delle chiavi delle opere, separate da virgole, come argomento:
\nocite{bringhurst:elementi,mori:tesi}

anche possibile includere nella bibliograa tutte le opere contenute nella base di dati mettendo * come argomento di \nocite :
\nocite{*}

Inne, per generare la bibliograa e includerla nel documento, bisogna:


A a. compilare il documento con L TEX;

Generare la bibliograa

b. eseguire BibTEX sul documento;


A c. ricompilare tre volte con L TEX per includere la bibliograa e aggiornare tutti i riferimenti. A La prima volta che si compila con L TEX vengono rese disponibili a BibTEX le chiavi di citazione (ovvero gli argomenti dei comandi \cite ), cui corrispondono gli elementi delle basi di dati che vengono richiesti.

154

[1] R. Bringhurst. Gli Elementi dello Stile Tipograco. Sylvestre Bonnard, Milano, 2001, ed. or. 1992.
A [2] E. Gregorio. LTEX: breve guida ai pacchetti di uso pi comune, 2006. http://profs.sci. univr.it/~gregorio/breveguida.pdf.

BIBLIOGRAFIA

[Bri92] Robert Bringhurst. Gli Elementi dello Stile Tipograco. Sylvestre Bonnard, Milano, 2001, ed. or. 1992.
A [Gre06] Enrico Gregorio. LTEX: breve guida ai pacchetti di uso pi comune, 2006. http://profs.sci.univr.it/ ~gregorio/breveguida.pdf.

BIBLIOGRAFIA

[4] L. Pantieri. Le origini della teoria delle distribuzioni. Tesi di laurea in Matematica, Universit degli Studi di Bologna, 2007.

[3] L. F. Mori. Scrivere la tesi di laurea con A L TEX 2. ArsTEXnica, 2007. http://www. guit.sssup.it/arstexnica/.

[Mor07] Lapo Filippo Mori. Scrivere la teA si di laurea con L TEX 2. ArsTEXnica, 2007. http://www.guit.sssup.it/ arstexnica/. [Pan07] Lorenzo Pantieri. Le origini della teoria delle distribuzioni. Tesi di laurea in Matematica, Universit degli Studi di Bologna, 2007.

(a) Stile abbrv.

(b) Stile alpha.

[1] Robert Bringhurst. Gli Elementi dello Stile Tipograco. Sylvestre Bonnard, Milano, 2001, ed. or. 1992.
A [2] Enrico Gregorio. LTEX: breve guida ai pacchetti di uso pi comune, 2006.

BIBLIOGRAFIA

Bringhurst R. (2001, ed. or. 1992). Gli Elementi dello Stile Tipograco. Sylvestre Bonnard, Milano.
A Gregorio E. (2006). LTEX: breve guida ai pacchetti di uso pi comune. http://profs.sci. univr.it/~gregorio/breveguida.pdf.

BIBLIOGRAFIA

http://profs.sci.univr.it/~gregorio/ breveguida.pdf.

[3] Lapo Filippo Mori. Scrivere la tesi di lauA rea con LTEX 2. ArsTEXnica, 2007. http: //www.guit.sssup.it/arstexnica/. [4] Lorenzo Pantieri. Le origini della teoria delle distribuzioni. Tesi di laurea in Matematica, Universit degli Studi di Bologna, 2007.

Mori L. F. (2007). Scrivere la tesi di laurea A con L TEX 2. ArsTEXnica. http://www.guit. sssup.it/arstexnica/. Pantieri L. (2007). Le origini della teoria delle distribuzioni. Tesi di laurea in Matematica, Universit degli Studi di Bologna.

(c) Stile plain_ita.

(d) Stile natbib_ita.

Figura 13: Esempi di stili bibliograci.

. Il programma BibTEX (che si lancia dalla linea di comando posizionandosi nella cartella di lavoro e scrivendo bibtex nome del documento senza lestensione .tex, oppure cliccando sullapposito pulsante delleditor) associa a ciascuna chiave la voce bibliograca corrispondente e crea un le nome del documento .bbl, che contiene le informazioni per impaginare la bibliograa, secondo lo stile indicato dal comando \bibliographystyle . A Quando si lancia nuovamente L TEX viene composta la bibliograa. Non nita: le chiavi non sono ancora state usate per le citazioni; A bisogna lanciare ancora una volta L TEX in modo che siano risolti i riferimenti incrociati. A Lultima compilazione con L TEX serve per correggere i riferimenti incrociati che potrebbero eventualmente risultare modicati dalluso delle chiavi per le citazioni. . . Stili bibliograci personalizzati

155

Gli stili bibliograci presentati nel paragrafo precedente ipotizzano che la bibliograa sia scritta in inglese. Se si usa uno di questi stili, la bibliograa composta secondo lo stile anglosassone: per esempio nellelenco dei lavori citati si avrebbe qualcosa come Mori, L. F. and Himmelmann, M., oppure, citando una tesi di dottorato, si avrebbe PhD Thesis, e i riferimenti sarebbero del tipo [Mori and Himmelmann, 2007]. Per avere dei riferimenti bibliograci in lingua italiana possibile usare lo stile plain_ita (il le plain_ita scaricabile da http://www. guit.sssup.it/latex/bibliografia.php). _ Opere in ordine alfabetico, contrassegnate da numeri. Stile ottimizzato per la lingua italiana. Una volta opportunamente posizionato plain_ita.bst la posizioA ne dipende dalla distribuzione di L TEX che si usa, ma in genere sufciente collocare il le nella cartella bibtex/bst dellalbero personale (vedi il paragrafo 4.5.4 a pagina 32), eventualmente creando tale cartella, se non ci fosse gi basta specicare
\bibliographystyle{plain_ita}

Stili bibliograci in lingua italiana

Esistono numerosi stili bibliograci.1 Qualora gli stili disponibili non fossero sufcienti, il le makebst permette di creare stili personalizzati. . . Riferimenti autore-anno: il pacchetto natbib

Altri stili bibliograci

Se si desidera menzionare le voci bibliograche citando lautore e lanno di pubblicazione (come accade di regola nei riferimenti letterari), opportuno usare il pacchetto natbib: si tratta di uno strumento particolarmente utile e versatile nella gestione della bibliograa, accompagnato da unesauriente documentazione.
1 Vedi per esempio http://www.cs.stir.ac.uk/~kjt/software/latex/showbst.html.

156

\usepackage[square,sort]{natbib}

Lopzione square serve per avere i riferimenti agli elementi della bibliograa fra parentesi quadre invece che tonde. Lopzione sort permette di avere le citazioni multiple ordinate alfabeticamente:
\citep{mori:tesi,% bringhurst:elementi}

[Bringhurst, 1992; Mori, 2007]

Se si usa natbib, necessario servirsi di uno stile bibliograco compatibile con questo pacchetto. possibile usare, per esempio, lo stile plainnat (per le bibliograe in inglese), natbib_ita o classic (in italiano).2 Opere in ordine alfabetico, nomi degli autori in tondo. In inglese. _ Opere in ordine alfabetico, nomi degli autori in tondo. In italiano. Opere in ordine alfabetico, nomi degli autori in maiuscoletto. In italiano. lo stile usato per comporre la bibliograa di questo documento. Il pacchetto natbib fornisce due comandi fondamentali per i riferimenti bibliograci, \citet e \citep , rispettivamente per citazioni testuali e fra parentesi. (Sono disponibili anche le versioni asteriscate \citet* e \citep* che stampano lelenco completo degli autori, e non solo quello abbreviato con et al..)
\citep{mori:tesi} \\ \citep[p.~27]{mori:tesi} \\ \citet{mori:tesi} \\ \citet[p.~27]{mori:tesi}

[Mori, 2007] [Mori, 2007, p. 27] Mori [2007] Mori [2007, p. 27]

Esistono inoltre i comandi \citeauthor , \citeyear e \citeyearpar , che permettono di riferirsi agli autori senza lanno, o viceversa.
\citeauthor{mori:tesi} \\ \citeyear{mori:tesi} \\ \citeyearpar{mori:tesi}

Mori 2007 [2007]

Citazioni in formato numerico con natbib

Il pacchetto natbib permette anche di avere citazioni in formato numerico. A tal ne sufciente indicare lopzione numbers. In questo caso, per avere citazioni numeriche multiple ordinate e compresse, come per esempio [24, 8] al posto di [4, 2, 8, 3], basta selezionare lopzione sort&compress.
\usepackage[square,numbers,sort&compress]{natbib}

Se si usano riferimenti autore-anno, lopzione sort&compress identica a sort.


2 Il le natbib_ita.bst scaricabile da http://www.guit.sssup.it/latex/bibliografia. php, mentre classic.bst scaricabile da http://www.lorenzopantieri.net/LaTeX. html.

. . . Riferimenti nali: il pacchetto backref

157

Il pacchetto backref permette di avere, nelle voci bibliograche, lindicazione delle pagine in cui esse sono citate (Citato a pagina. . . ). Questo pacchetto va usato insieme a hyperref, e va caricato dopo questultimo:
\usepackage[pagebackref]{hyperref} \usepackage[hyperpageref]{backref} \renewcommand{\backref}[1]{}
A Dopo aver compilato il documento con L TEX e aver eseguito BibTEX, A necessario compilare altre tre volte con L TEX: i riferimenti nali, generati da backref, vengono inclusi nel documento con lultima compilazione. Per avere i riferimenti in italiano anzich in inglese, sufciente scrivere

\renewcommand*{\backreftwosep}{ e~} \renewcommand*{\backreflastsep}{ e~} \renewcommand*{\backrefalt}[4]{% \ifcase #1 % \relax% \or (Citato a pagina~#2.)% \else (Citato alle pagine~#2.) \fi}

dopo aver caricato il pacchetto backref. . . Riferimenti capitolo per capitolo: il pacchetto bibunits

Se si desidera realizzare una bibliograa separata per ogni capitolo, consigliabile usare il pacchetto bibunits. Con questo pacchetto possibile, fra laltro, dare riferimenti locali e globali. Si rimanda alla relativa documentazione, molto dettagliata.

.
A volte pu essere utile inserire nel proprio documento un elenco di indirizzi relativi a siti Web visitati. Se si usa lambiente thebibliography, con le classi report e book basta aggiungere nel preambolo il codice
\makeatletter \let\@orig@endthebibliography\endthebibliography \renewcommand\endthebibliography{% \xdef\@kept@last@number{\the\c@enumiv}% \@orig@endthebibliography} \newenvironment{thesitography}[1] {\def\bibname{Siti consultati}% Classe book o report % {\def\refname{Siti consultati}% Classe article \thebibliography{#1}%

Realizzare una sitograa con thebibliography

158

\setcounter{enumiv}{\@kept@last@number}% } {\@orig@endthebibliography} \makeatother

(con la classe article, si sostituisce nel codice precedente \refname al posto di \bibname ) e usare poi lambiente thesitography allo stesso modo dellambiente thebibliography:
\begin{thebibliography}{9} ... \end{thebibliography} \begin{thesitography}{9} \bibitem{GuIT} \url{http://www.guit.sssup.it/} \bibitem{Wikipedia} \url{http://it.wikipedia.com/wiki/LaTeX} ... \end{thesitography}

Realizzare una sitograa con BibTEX e multibib

(serve il pacchetto url). Se si usa BibTEX, consigliabile creare un le web.bib contenente la base di dati dei siti. A tal ne si usa il record misc:
@misc{guit, title = {Gruppo Utilizzatori di {\TeX} e {\LaTeX}}, note = {\url{http://www.guit.sssup.it/}}, key = {Gruppo Utilizzatori di TeX e LaTeX} } @misc{wiki, title = {{\LaTeX} nella {Wikipedia}}, note = {\url{http://it.wikipedia.com/wiki/LaTeX}}, key = {Wikipedia} }

(serve il pacchetto url). Poi si usa il pacchetto multibib; si scrive nel preambolo
\usepackage[resetlabels]{multibib} \newcites{web}{Siti Web consultati}

e, dopo la bibliograa,
\nociteweb{*} \bibliographystyleweb{plain} \bibliographyweb{web}

necessario eseguire BibTEX sia sul documento principale, sia sul documento secondario. Se web.bib il nome del le contenente lelenco dei siti occorre eseguire bibtex bibliograa e bibtex web.

9
9.1 9.2

LINDICE ANALITICO

Creare lindice analitico 159 Personalizzare lindice analitico

161

Lindice analitico un elenco di voci ordinate alfabeticamente, anche con alcuni livelli di subordinazione, posto di regola alla ne di un documento; vicino a ogni voce viene inserito lelenco dei numeri di pagina dove quella voce viene menzionata. Lindice analitico costituisce, in molti lavori, una caratteristica di grande utilit. Come la bibliograa, anche lindice analitico pu esA sere gestito automaticamente da L TEX. In questo capitolo vengono illustrate le nozioni essenziali, veramente semplici, per generare lindice analitico.

Abilitare la composizione dellindice analitico

A Per abilitare la composizione dellindice analitico da parte di L TEX, si deve richiamare nel preambolo il pacchetto makeidx,

\usepackage{makeidx}

mentre i comandi relativi alla creazione dellindice devono essere attivati dal comando
\makeindex

inserito anchesso nel preambolo del le sorgente. inoltre necessario scrivere il comando
\printindex

Posizionare lindice analitico

nel punto in cui si desidera che compaia lindice analitico (tipicamente, alla ne del documento, subito prima di \end{document}). Il contenuto dellindice analitico viene specicato attraverso il comando
\index{ voce }

dove voce indica la voce dellindice analitico; tale comando va inserito nel punto del testo dove si desidera che si riferisca alla voce presente nellindice analitico. Il codice
La parola arte\index{arte} nellindice analitico.

La parola arte nellindice analitico.

159

160

Tabella 46: Esempi di voci dellindice analitico.

Esempio
Voce primaria

Voce

\index{Arte}
Voce secondaria sotto Arte

Arte, 2 Escher, 3 Gaud, 5 Klimt, 7 Liberty, vedi Modernismo

\index{Arte!Escher}
Voce con forma specicata

\index{Gaud@\textit{Gaud}}
Pagina con forma specicata

\index{Klimt|textbf}
Rimando

\index{Liberty|see{Modernismo}}

genera una voce per arte nellindice analitico. Si pu mettere tutta unespressione nellindice analitico:
possibile mettere tutta unespressione\index{tutta unespressione} nellindice analitico.

possibile mettere tutta unespressione nellindice analitico.

Per generare dei sottolemmi bisogna separare il lemma principale e il sottolemma con il carattere !:
Qui parliamo dei sottolemmi% \index{indice!sottolemmi} dellindice analitico.

Qui parliamo dei sottolemmi dellindice analitico.

Inne si pu mettere del testo alla posizione alfabetica identicata da un altro testo, con il carattere @:
Mettiamo il simbolo $\alpha$% \index{alpha@$\alpha$} nellindice analitico al posto di alpha nellordine alfabetico.

Mettiamo il simbolo nellindice analitico al posto di alpha nellordine alfabetico.

A volte pu rivelarsi utile luso delle graffe di raggruppamento:


possibile inserire una voce in corsivo\index{corsivo@% \textit{corsivo}}.

possibile inserire una voce in corsivo.

Generare lindice analitico

La tabella 46 illustra, per mezzo di alcuni esempi, la sintassi del comando \index . Per un documento con indice analitico, la sequenza di compilazione la seguente:
A a. si compila una prima volta con L TEX il sorgente;

. b. si compila con il programma MakeIndex;


A c. si compila altre due volte con L TEX.

161

A Quando L TEX viene eseguito la prima volta sul le sorgente, ogni comando \index scrive unopportuna voce insieme al numero di pagina corrispondente in un le speciale che ha lo stesso nome del le A sorgente L TEX, ma estensione diversa (.idx). Questo le .idx viene poi elaborato dal programma MakeIndex, che genera un le avente ancora lo stesso nome, ma questa volta estensione .ind, che contiene le voci nella forma giusta, cio in ordine alfabetico, strutturate per lemmi, sottolemmi e sotto-sottolemmi, con gli elenchi di numeri di pagine senza ripetizioni ed eventualmente con intervalli, se necessario composti con caratteri diversi a seconda delluso della voce. Se a questo A punto si compila ancora due volte il sorgente L TEX, questo indice analitico ordinato verr incluso nel documento e verranno aggiornati tutti i riferimenti. In fase di correzione di bozze e controllo dellindice analitico pu essere utile il pacchetto showidx, che stampa le voci dellindice analitico nel margine sinistro della pagina.

Controllare lindice analitico

Lindice analitico che si ottiene con le impostazioni predenite non molto elegante. possibile ricorrere a un apposito le, che chiameremo classic.ist, che contiene le istruzioni per personalizzare lindice analitico, cos denito:
headings_flag 1 heading_prefix heading_suffix symhead_positive symhead_negative numhead_positive numhead_negative "\\goodbreak\\textsc{" "}\\par\\nobreak\\vskip\\smallskipamount\\nobreak" "Simboli" "simboli" "Numeri" "numeri"

Una volta opportunamente posizionato classic.ist la posizione, A al solito, dipende dalla distribuzione di L TEX che si usa, ma in genere sufciente collocare il le nella cartella makeindex dellalbero personale (vedi il paragrafo 4.5.4 a pagina 32), eventualmente creando tale cartella, se non ci fosse gi le istruzioni per la compilazione dellindice analitico sono le seguenti:
A a. si compila una prima volta con L TEX il sorgente;

Istruzioni per generare un indice analitico personalizzato

b. si elabora lindice analitico (dalla linea di comando: makeindex -s classic nome del documento senza lestensione .tex);
A c. si compila altre due volte con L TEX.

Per bilanciare le colonne dellultima pagina dellindice analitico sufciente inserirlo allinterno di un ambiente multicols (deve essere caricato il pacchetto multicol). A questo scopo possibile ridenire lambiente theindex con il seguente codice,

162

\let\orgtheindex\theindex \let\orgendtheindex\endtheindex \def\theindex{% \def\twocolumn{\begin{multicols}{2}}% \def\onecolumn{}% \clearpage \orgtheindex } \def\endtheindex{% \end{multicols}% \orgendtheindex }

da scrivere nel preambolo.

10

A P E R S O N A L I Z Z A R E L TEX

10.1 Comandi, ambienti e pacchetti nuovi 163 10.1.1 Denire nuovi comandi 163 10.1.2 Spazi dopo i comandi 164 10.1.3 Nuovi ambienti 165 10.1.4 Un pacchetto personale 165 10.2 Font 166 10.2.1 Comandi per cambiare lo stile dei font 166 10.2.2 Dichiarazioni per cambiare il corpo dei font 167 10.3 Inserire uno sfondo colorato in unimmagine 168 10.4 Le pagine bianche nei documenti fronte-retro 169 10.5 Testatine personalizzate 169 10.6 Cambiare le voci generate da babel 170

La ricerca di personalizzazioni di particolari oggetti o dellintero documento un processo che presto o tardi tutti si trovano ad affrontare. In questo capitolo vengono esposti alcuni suggerimenti su come fare A in modo che L TEX produca risultati diversi da quelli predeniti.

.
. .

,
Denire nuovi comandi
La distinzione tra la struttura del documento e la sua resa visiva

A Uno degli aspetti pi importanti della losoa di L TEX la distinzione tra la struttura del documento e la sua resa visiva. Si immagini per esempio di dover scrivere un libro di botanica e di volere che tutti i nomi latini delle piante appaiano in corsivo. In teoria, basterebbe metterli come argomento del comando \textit . Se per leditore dovesse chiedere di comporre i nomi latini in neretto e non in corsivo (perch queste sono le sue scelte tipograche), sarebbe necessario sostituire tutti i \textit in \textbf , facendo attenzione, perch probabilmente il corsivo sar stato usato anche per qualcosaltro. Tutto ci non il massimo della praticit. A Conformemente alla sua losoa, L TEX offre una soluzione elegante a questo problema. possibile infatti denire un nuovo comando, \latino , che stampa il suo argomento, cio un nome latino, nello stile specicato. Se i nomi latini devono poi essere in neretto, baster cambiare la denizione di \latino . Il comando \latino , dunque, non descrive il modo in cui il suo argomento deve essere stampato, ma il suo valore, il modo in cui lo si pensato nellambito del testo. Ecco perch non si usano quasi mai dei comandi di cambiamento di stile

163

164

Il comando \newcommand

A in un documento scritto con L TEX: si preferisce denire un insieme di comandi che rispecchiano la logica del testo e servirsi di questi ultimi. Per aggiungere comandi personali, si usa il comando

\newcommand{ nome }[ numero di argomenti ][ predenito ]{ denizione }

I due argomenti obbligatori sono il nome del nuovo comando, e la denizione del comando. Il parametro opzionale numero di argomenti specica il numero di argomenti che il nuovo comando richiede (no a un massimo di nove); se manca, si assume che non vi sia alcun argomento. Il primo degli argomenti del nuovo comando pu essere facoltativo; esso facoltativo se viene espressa anche la seconda opzione di \newcommand (si pu dare anche solo []). Se nelluso di un nuovo comando che accetta un argomento facoltativo questultimo non viene specicato, esso assume il valore predenito . Per esempio, possibile denire un nuovo comando, chiamato \arte , A che labbreviazione di Larte di scrivere con L TEX, nel modo seguente:
\newcommand{\arte}{\emph{Larte di scrivere con \LaTeX}}

Un comando simile potrebbe essere utile se si dovesse scrivere ripetutamente il titolo di questo libro.
Questo lavoro intitolato \arte.

Questo lavoro intitolato Larte di A scrivere con L TEX.

Il prossimo esempio mostra come denire un comando che accetta argomenti. Il parametro #1 viene sostituito dal primo argomento specicato; nel caso di pi argomenti, questi diventano #2, #3, . . . e cos via. Se si scrive nel preambolo
\newcommand{\latino}[1]{\textit{#1}}

il comando \latino si usa nel modo seguente:


\latino{rosa canina}

rosa canina

Il comando \renewcommand

Se si desidera creare nuovi comandi che sovrascrivano quelli gi esistenti, necessario usare il comando \renewcommand ; la sintassi la stessa di \newcommand . . . Spazi dopo i comandi

Il pacchetto xspace

A Gli spazi dopo i comandi sono ignorati da L TEX. Se si desidera ottenere uno spazio dopo un comando, si deve scrivere {} e uno spazio, oppure scrivere un comando esplicito di spaziatura, come \ (vedi il paragrafo 4.2.3 a pagina 26). In alternativa, possibile usare il pacchetto xspace per denire comandi seguiti da uno spazio, a meno che non siano seguiti da determinati segni di punteggiatura. Per esempio, dopo aver denito

\newcommand{\mcescher}{Maurits Cornelis Escher\xspace}

il comando \mcescher determina automaticamente quando inserire uno spazio dopo se stesso e quando no:

,
Maurits Cornelis Escher stato un incisore e graco olandese. Maurits Cornelis Escher, artista olandese, molto apprezzato da logici, matematici e scienziati.

165

\mcescher stato un incisore e grafico olandese. \\ \mcescher, artista olandese, molto apprezzato da logici, matematici e scienziati.

. .

Nuovi ambienti
Il comando \newenvironment

Il comando \newenvironment , corrispondente di \newcommand , permette di creare ambienti personali. La sua sintassi la seguente:
\newenvironment{ nome }[ numero di argomenti ][ predenito ]% { prima }{ dopo }
A Quando L TEX incontra \begin{ nome }, lo sostituisce con quanto specicato nellargomento prima , e quando incontra \end{ nome }, lo sostituisce con quanto specicato nellargomento dopo . Lambiente che viene denito pu ricevere (in apertura) un certo numero di argomenti , il primo dei quali pu essere facoltativo, se viene specicato il valore predenito , e va trattato come il primo argomento facoltativo denito con \newcommand . Il seguente esempio mostra luso del comando \newenvironment . Se scriviamo nel preambolo

\newenvironment{itaitemize}{\begin{itemize}\itshape}{\end{itemize}}

lambiente itaitemize si usa nel modo seguente:


\begin{itaitemize} \item Un elenco con voci\dots \item \dots automaticamente in corsivo. \end{itaitemize}

Un elenco con voci. . . . . . automaticamente in corsivo.

A L TEX si assicura che non venga denito un ambiente gi esistente: se si vuole ridenire un ambiente gi esistente, si usa il comando \renewenvironment , che ha la stessa sintassi di \newenvironment .

Il comando \renewenvironment

. .

Un pacchetto personale

Quando vengono deniti molti nuovi comandi e ambienti, il preambolo del documento pu diventare piuttosto lungo. In questo caso, una buona prassi creare un pacchetto contenente le denizioni dei propri comandi e ambienti; si usa poi il comando \usepackage per caricare il pacchetto nel documento principale.
% Un esempio di pacchetto personale \ProvidesPackage{esempio} \newcommand{\arte}{\emph{Larte di scrivere con \LaTeX}} \newcommand{\latino}[1]{\textit{#1}} \newenvironment{itaitemize}{\begin{itemize}\itshape}{\end{itemize}}

Essenzialmente, per scrivere un pacchetto si copia il contenuto del preambolo del documento in un le a parte, con un nome terminante per .sty. C poi il comando speciale

166 Tabella 47: Comandi per cambiare lo stile dei font.

Comando
\textit \textsc \textbf \textsl \textrm \textsf \texttt

Dichiarazione
\itshape \scshape \bfseries \slshape \rmfamily \sffamily \ttfamily

Stile Corsivo Maiuscoletto Neretto Inclinato Tondo Senza grazie


Macchina per scrivere

\ProvidesPackage{ nome del pacchetto }

da usare allinizio del le contenente pacchetto. Questo comando coA munica a L TEX il nome del pacchetto, permettendogli di fornire messaggi di errore appropriati se si tenta di includere due volte lo stesso pacchetto.

.
In alcuni casi, si pu voler cambiare lo stile e il corpo dei font, manualmente.
A Di regola, L TEX sceglie il font appropriato in base alla struttura logica del documento (capitoli, paragra, testatine, . . . ). In alcuni casi, si potrebbe per voler cambiare lo stile e il corpo dei font, manualmente.

. .

Comandi per cambiare lo stile dei font

Per cambiare lo stile dei font, si usano i comandi elencati nella tabella 47. Questi comandi modicano unicamente lo stile del loro argomento, mentre il testo che segue non viene modicato.
La parola che segue in \textit{corsivo}. Il resto del testo normale.

La parola che segue in corsivo. Il resto del testo normale.

possibile combinare i comandi:


Lespressione che segue \textit{ in \textbf{neretto corsivo}}.

Lespressione che segue in neretto corsivo.

Dichiarazioni per cambiare lo stile dei font

Per ciascuno di questi comandi, esiste una dichiarazione corrispondente, ovvero un comando privo di argomenti, che agisce su tutto il resto del testo. Per limitare leffetto di una dichiarazione bisogna usare delle graffe di raggruppamento.
La parola che segue in {\itshape corsivo}. Il resto del testo normale.

La parola che segue in corsivo. Il resto del testo normale.

.
Tabella 48: Dichiarazioni per cambiare il corpo dei font.

167

Dichiarazione
\tiny \scriptsize \footnotesize \small \normalsize \large \Large \LARGE \huge \Huge

Corpo
Font minuscolo

Font molto piccolo

Font abbastanza piccolo

Font piccolo

Font normale

Font grande

Font pi grande Font molto grande

Font enorme

Il pi grande
Lespressione che segue in neretto corsivo.

Si possono anche combinare pi dichiarazioni:


Lespressione che segue {\itshape in {\bfseries neretto corsivo}}.

Gli spazi che seguono una dichiarazione vengono ignorati. . . Dichiarazioni per cambiare il corpo dei font

Per cambiare il corpo dei font, si usano le dichiarazioni elencate nella tabella 48.
Lettere {\Large grandi e {\footnotesize piccole}}.

Lettere grandi

e piccole.

Il corpo effettivo di ogni font dipende dalla classe del documento e dalle sue opzioni; nella tabella 49 nella pagina seguente sono elencati i corpi, in punti, dei font corrispondenti alle diverse dichiarazioni nelle classi standard, in funzione dellopzione di classe selezionata. Le dichiarazioni per il cambiamento della dimensione cambiano anche linterlinea, ma solo se il capoverso termina entro il raggio dazione del comando. Si confronti la posizione del comando \par nei due seguenti esempi.
{\large Socrate: Platone mentir nella frase seguente.\par}

Socrate: Platone mentir nella frase seguente. Platone: Socrate ha detto il vero nella frase precedente.

{\large Platone: Socrate ha detto il vero nella frase precedente.}\par

168 Tabella 49: I corpi dei font nelle classi standard (il corpo predenito di 10 punti).

Corpo
\tiny \scriptsize \footnotesize \small \normalsize \large \Large \LARGE \huge \Huge

10 pt (predenito) 5 pt 7 pt 8 pt 9 pt 10 pt 12 pt 14 pt 17 pt 20 pt 25 pt

opzione 11 pt 6 pt 8 pt 9 pt 10 pt 11 pt 12 pt 14 pt 17 pt 20 pt 25 pt

opzione 12 pt 6 pt 8 pt 10 pt 11 pt 12 pt 14 pt 17 pt 20 pt 25 pt 25 pt

Nel secondo esempio viene uninterlinea scorretta: il comando \par deve essere presente prima della parentesi graffa chiusa. Per concludere il nostro viaggio nella terra degli stili e dei corpi dei font, ecco un piccolo consiglio:

Ricorda

scegli di usare in un documento, quanto pi leggibile e bello diventa.


font

! Tanti Pi

.
Personalizzare lo sfondo delle immagini

Se si desidera inserire uno sfondo colorato in unimmagine (per esempio del colore Azzurro Alice impiegato come sfondo della gura 14b nella pagina successiva), possibile denire un comando ad hoc nel preambolo,
\definecolor{AzzurroAlice}{RGB}{240,248,255} \newcommand{\myincludegraphics}[2][]{% \begingroup\setlength{\fboxsep}{0pt}% \colorbox{AzzurroAlice}{\includegraphics[#1]{#2}}% \endgroup}

da usare nel modo seguente:


\myincludegraphics[ . . . ]{ immagine }

(servono i pacchetti xcolor e graphicx). Afnch tutto funzioni, fondamentale che limmagine da inserire abbia lo sfondo trasparente. Per sfondi di colore diverso si rimanda alla ricca documentazione di xcolor.

169

o Util

T EX

g It u
u Gr

T EX

g It u
Gr
u

pp

(a) Immagine senza sfondo.

(b) Immagine con sfondo.

Figura 14: Inserire uno sfondo colorato in unimmagine.

.
Se si sta scrivendo un libro o una relazione, lopzione openright, predenita nella classe book, fa iniziare i capitoli sempre in una pagina destra (vedi il paragrafo 4.4 a pagina 29). Se si usano le classi standard, per far s che le eventuali pagine bianche inserite alla ne di un capitolo non abbiano n testatina n pi di pagina (scelta peraltro consigliabile), sufciente caricare il pacchetto emptypage:
\usepackage{emptypage}

pp
Il pacchetto emptypage Il pacchetto fancyhdr

.
Se si usano le classi standard, con il pacchetto fancyhdr possibile personalizzare la testatina e il pi di pagina (ossia lo stile di pagina) del documento. La difcolt nel personalizzare le testatine consiste nel dovervi inserire informazioni come i titoli del capitolo e del paragrafo corrente. A L TEX risolve questo problema con un approccio a due tappe. Nella denizione della testatina si usano i comandi \leftmark e \rightmark per indicare rispettivamente il titolo del capitolo e del paragrafo in corso. I valori di questi comandi vengono aggiornati ogni volta che viene elaborato un comando di inizio capitolo o paragrafo. Per garantire la massima essibilit, i comandi \chapter e \section non modicano direttamente \leftmark e \rightmark , ma richiamano due ulteriori comandi, \chaptermark e \sectionmark , che a loro volta deniscono \leftmark e \rightmark . Cos, se si desidera cambiare il titolo del capitolo o del paragrafo nella testatina, si devono semplicemente ridenire \chaptermark e \sectionmark , rispettivamente. La gura 15 nella pagina successiva illustra un esempio duso del pacchetto fancyhdr ottenuto con il seguente codice:
\documentclass{book} \usepackage{fancyhdr}

o Util

zz a

t tori I

zz a

t tori I

al ia
ni di

al ia
ni di

170

76

Le origini della teoria delle distribuzioni

3.3 La Delta di Dirac


+

77

la trasformata di Laplace L[pH(t)] = 0 pH(t)est dt della funzione impulsiva unitaria, Van der Pol procede nel modo + seguente. Innanzitutto determina L[fn (t)] = 0 fn (t)est dt, dove fn (t) denita dalla relazione (3.4); ottenuto L[fn (t)] = 1es/n dimostra che limn+ L[fn (t)] = 1 e conclude: s/n L[pH(t)] = L
Figura 3.2: Alcuni dei matematici impegnati nellopera di rendere rigoroso il calcolo di Heaviside bandirono le funzioni impulsive trovandole illegittime, mentre altri, fra cui Van der Pol, non si preoccuparono della debolezza dei loro fondamenti e le usarono senza particolari commenti.
n+

lim fn (t) = lim L[fn (t)] = 1.


n+

(3.9)

Alcuni dei matematici impegnati nellopera di rendere rigoroso il calcolo di Heaviside bandirono tali funzioni trovandole illegittime [Doetsch, 1937, p. 57], mentre altri (fra i quali Van der Pol e Niessen) non si preoccuparono della debolezza dei loro fondamenti e le usarono senza curarsi del rigore. Van der Pol [1929] descrive la funzione impulsiva unitaria come segue: pH(t) = 0, se t = 0, +, se t = 0,
+

La debolezza dellimpostazione di Van der Pol e Heaviside dovuta essenzialmente ad una confusione circa le operazioni con i limiti doppi. Va per riconosciuto che la spregiudicatezza del loro modo di procedere coglie, in un certo senso, nel segno: bisogna sottolineare che tutti i risultati precedenti possono essere resi rigorosi nella teoria delle distribuzioni.

3.3

La Delta di Dirac

pH(t) dt = 1.

(3.6)

Aerma che tale oggetto pu essere denito in modo equivalente come limite di una successione di gaussiane: n 2 2 pH(t) = en t , (3.7) dove n un numero naturale molto grande. Egli inoltre d la formula + che dimostra attraverso unintegrazione per parti. Van der Pol illustra i suoi argomenti con la gura 3.2. Per calcolare

f (t) pH(t) dt = f (0),

(3.8)

Il signicatosico delle funzioni impulsive o improprie quello di fornire una rappresentazione di cariche e masse puntiformi. degno di nota come sici e matematici siano stati in grado di aggirare abilmente i problemi connessi con questi oggetti, in ambiti dove a noi, oggi, sembrano giocare un ruolo fondamentale. Nel trattamento delle forze elettriche o gravitazionali, per esempio, la procedura tradizionale consisteva nel trattare per prime le cariche (o le masse) puntiformi e successivamente nel considerare distribuzioni continue di carica (o di massa), mediante lintroduzione di una opportuna funzione densit. In questo modo, per, era impossibile rappresentare in modo rigoroso linee e supercie cariche, come anche le cariche (le masse) puntiformi da cui si era inizialmente partiti. Questa contraddizione logica era il prezzo pagato dai sici per la mancanza di una teoria delle distribuzioni adeguatamente sistemata. La situazione che precedette la scoperta della teoria delle distribuzioni sembra per certi aspetti paradossale. N i sici n

Figura 15: Un esempio duso del pacchetto fancyhdr.

\pagestyle{fancy} \renewcommand{\chaptermark}[1]{\markboth{#1}{}} \renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}} \fancyhf{} \fancyhead[LE,RO]{\bfseries\thepage} \fancyhead[RE]{\bfseries\footnotesize\nouppercase{\leftmark}} \fancyhead[LO]{\bfseries\footnotesize\nouppercase{\rightmark}}

Le istruzioni precedenti impediscono la scrittura in maiuscolo dei titoli dei capitoli e dei paragra nelle testatine. Nella testatina delle pagine pari (Even) viene scritto il titolo del capitolo in corso, sulla destra (Right); nella testatina delle pagine dispari (Odd) viene scritto il titolo del paragrafo in corso, a sinistra (Left). Il numero di pagina viene stampato a sinistra nelle pagine pari e a destra nelle pagine dispari. Per ottenere altri stili di pagina si rimanda alla documentazione del pacchetto fancyhdr, molto dettagliata.

.
Talvolta pu essere necessario modicare le voci generate automaticamente dal pacchetto babel. Per esempio, si pu voler cambiare la voce Capitolo. . . in Unit. . . , oppure Bibliograa con Letture suggerite, e cos via. A tal ne, si usa il codice
\addto\captions lingua { testo }

(nel preambolo, dopo aver caricato babel), che comanda di aggiungere alle denizioni speciche della lingua il testo . Per esempio, volendo sostituire la voce Capitolo con Unit basta scrivere
\addto\captionsitalian{%

.
Tabella 50: Comandi di babel specici per litaliano.
\abstractname \alsoname \appendixname \bibname \ccname \chaptername \contentsname \enclname \figurename \glossaryname \headtoname

171

Sommario vedi anche Appendice Bibliograa e p. c. Capitolo Indice Allegati Figura Glossario Per

\indexname \listfigurename \listtablename \pagename \partname \prefacename \proofname \refname \seename \tablename

Indice analitico Elenco delle gure Elenco delle tabelle Pag. Parte Prefazione Dimostrazione Riferimenti bibliograci vedi Tabella

\renewcommand{\chaptername}{Unit}}

mentre per sostituire Bibliograa con Letture suggerite si pu scrivere


\addto\captionsitalian{% \renewcommand{\bibname}{Letture suggerite}}

Nella tabella 50 sono riportati i comandi per le parole chiave e il loro valore in italiano.

A
a.1 a.2

NORME TIPOGRAFICHE ITALIANE

a.3

a.4

a.5

Laccento e lapostrofo 174 a.1.1 Accento tonico e fonico 174 a.1.2 Apostrofo 175 Punteggiatura e spaziatura 176 a.2.1 Segni di interpunzione e apostrofo 176 a.2.2 Virgolette 176 a.2.3 Parentesi 177 a.2.4 Punti ellittici 178 a.2.5 Trattini 178 a.2.6 Sbarretta e asterisco 178 Stile dei font 178 a.3.1 Corsivo 179 a.3.2 Neretto 179 a.3.3 Maiuscoletto 179 Composizione del testo 179 a.4.1 Capoversi 179 a.4.2 Uso delle maiuscole 180 a.4.3 La d eufonica 180 a.4.4 Parole straniere 180 a.4.5 Numeri 182 a.4.6 Frazioni, percentuali, unit di misura 183 a.4.7 Sigle 184 La bibliograa 184

Questa appendice, basata su [Cevolani, 2006], cui si rimanda per ogni approfondimento, descrive sinteticamente le principali norme tipograche della lingua italiana, utili nella composizione di articoli, tesi A o libri. Per ogni regola discussa, si mostra come applicarla in L TEX.1 La parola norme va qui presa in senso piuttosto ampio: in italiano, come in tutte le altre lingue, non esistono che pochissime regole tipograche realmente universali e vincolanti, mentre molti aspetti del testo dipendono da convenzioni e abitudini, o dal gusto dellautore o delleditore del testo. Per questo motivo, questa appendice non ha la pretesa di fornire un modello generale di scrittura, ma semplicemente di riassumere le convenzioni pi comunemente seguite nella composizione tipograca di un testo in italiano. Ci premesso, va tenuto presente che la scrittura in una qualunque lingua regolata nel mondo dalle norme emesse dalliso, in Italia dalle norme denite dalluni, che (come detto a pagina 111) hanno valore di legge. Per maggiori dettagli sulle norme iso-uni si rimanda alla relativa documentazione e a [Beccari, 2009].
1 Per molti dei temi trattati in questa appendice, il sito dellAccademia della Crusca (http: //www.accademiadellacrusca.it/) un riferimento prezioso.

Non esistono che pochissime regole tipograche realmente universali e vincolanti.

Le norme ISO-UNI

173

174

In questa appendice diamo per scontato che siano caricati correttamente il pacchetto babel con lopzione italian, il pacchetto inputenc con la codica appropriata e il pacchetto fontenc con lopzione T1 (vedi i primi due paragra del capitolo 5 a pagina 41):
\usepackage[italian]{babel} \usepackage[ codica ]{inputenc} \usepackage[T1]{fontenc}

Litaliano ha due tipi di accento che possono venir segnalati gracamente: il tonico e il fonico.2 . .
Accento tonico

Accento tonico e fonico

Accento fonico

Accento grave e acuto

Il primo tipo laccento tonico che segnala, in una parola, la vocale su cui appunto cade laccento. Per esempio, laccento tonico permette di distinguere pssero (uccello) da passer (verbo) o mbito (di ricerca) da ambito (sinonimo di desiderato). Il secondo tipo laccento fonico, che segnala la pronuncia aperta o chiusa di una vocale. Per esempio, laccento fonico permette di distinguere psca (in mare) da psca (il frutto), o btte (di vino) da btte (nel senso di percosse). Si noti che, per la fonetica italiana, solo la e e la o possono venire pronunciate aperte o chiuse (e quindi hanno laccento fonico), mentre la a, la i e la u ammettono una sola pronuncia. Per distinguere questi due casi, laccento fonico assume due forme diverse, chiamate rispettivamente accento grave (da sinistra in alto a destra in basso: `), che segnala un suono aperto della vocale, e accento acuto (da sinistra in basso a destra in alto: ), che segnala un suono chiuso. Bench i due tipi di accento, tonico e fonico, abbiano una funzione del tutto distinta, lo stesso segno graco, cio la forma grave dellaccento fonico, viene usato anche per segnalare laccento tonico. Laccento tonico quindi sempre indicato con un accento grave, a eccezione di quei casi in cui entrambi gli accenti, tonico e fonico (chiuso), cadono sulla stessa vocale: per esempio, in perch e nelle altre parole tronche.3 Si noti che, al contrario delle vecchie macchine per scrivere o di A altri programmi di composizione del testo, L TEX permette di accentare senza problemi le lettere maiuscole (il codice \E produce direttamente ), che spesso vengono erroneamente rese con un apostrofo (E , che signica ei, egli).
2 Un terzo tipo di accento, il circonesso, , usato in passato per distinguere parole omografe, soprattutto nel caso dei plurali in -ii per esempio per distinguere stud (plurale di studio) da studi (voce del verbo studiare) non pi usato: oggi si scrive semplicemente studi. Nei casi in cui lambiguit non risolubile dal contesto si usa la doppia i: assassino assassini e assassinio assassinii. 3 Si noti che il termine accento viene quindi usato in almeno tre sensi: per lintonazione (fenomeno tonico), per la pronuncia della vocale (fenomeno fonico) e per il simbolo graco impiegato per segnalare i primi due.

175

possibile usare il pacchetto inputenc per inserire i caratteri accentati direttamente da tastiera (vedi il paragrafo 5.1.2 a pagina 44). Si noti tuttavia che per alcuni caratteri, per esempio la o chiusa (), assenti dalla tastiera italiana, occorrer comunque usare il codice esplicito. Uso dellaccento Molto spesso, nella scrittura quotidiana, sia laccento tonico sia laccento fonico non vengono segnalati gracamente, lasciando al contesto il compito di distinguere fra parole omografe (si trovano quindi normalmente Il mio ambito di ricerca e Il premio molto ambito, o Alla domenica vado a pesca e Ho mangiato una buona pesca, senza accento alcuno). Lunico caso di uso obbligatorio quello dellaccento tonico sulle parole tronche, come perch, cio, eccetera. Gli accenti obbligatori sono sempre gravi su tutte le vocali tranne sulla e che pu riceverlo sia grave sia acuto a seconda dei casi. I monosillabi che devono essere accentati sono i seguenti: ch (congiunzione causale), chi (onomatopea), ci (pronome), d (indicativo di dare), di (passato remoto di dare), d (giorno), (indicativo di essere), f (fede), gi (avverbio), gi (avverbio), l (avverbio), l (avverbio) n (congiunzione), pi (piede), pi (avverbio), pu (indicativo di potere), s (pronome tonico), sci (titolo nobiliare), s (avverbio), t (bevanda). Per sapere quale accento indicare sulla lettera e bisognerebbe fare riferimento alla pronuncia aperta o chiusa, ma siccome questa molto variabile da persona a persona, le norme uni stabiliscono che: laccento grave su ahim, ohim, caff, canap, cio, coccod, di, , gil, lacch, pi, t; sui francesismi adattati alla graa italiana come beb, cabar, rel, pur, eccetera; sui nomi propri Giosu, Mos, No, Salom, eccetera; laccento acuto su ch e i suoi composti come perch, afnch, eccetera; f e i suoi composti come autodaf; sui composti di re come vicer, e sui composti di tre come ventitr, trentatr; sui passati remoti come cred, tem privi della dittongazione della e (e i); su merc, n, scimpanz, s, test. Se si vogliono mettere accenti non obbligatori, tranne il caso della omograa non corrispondente alla omofonia (psca/psca), questi accenti facoltativi non vanno mai sulle parole piane, anche se la versione piana meno frequente o meno usuale della parola sdrucciola: quindi sguito, seguito, ma non seguto. In altre parole, laccento vietato sulle parole piane (tranne nel suo valore fonico). . . Apostrofo
Spesso si lascia al contesto il compito di distinguere le parole omografe.

Lapostrofo, , segnala normalmente la caduta della parte iniziale, come in sta (per questa), o nale di una parola, come in unaltra, un po, da (imperativo), eccetera. Questa regola non tuttavia ssa e sempre rispettata; fra le eccezioni (in cui luso prevale sulla regola) ci sono per esempio pi (e non pie) e f (sia nel senso di fede che di egli fece), anche se in questo secondo caso luso non costante. Occorre quindi, caso per caso, consultare un dizionario.

176

Aferesi, apocope, elisione

Nel le sorgente, non bisogna mai lasciare uno spazio dopo lapostrofo che sta al posto di una vocale elisa.

Quando una parola perde una lettera o una sillaba iniziale si ha il fenomeno dellaferesi. Per esempio si ha aferesi in sta (per questa). Se una parola perde una lettera o una sillaba nale di fronte ad unaltra parola si parla di apocope (o troncamento); quando questa perdita segnata dallapostrofo, si chiama elisione. Per esempio si ha apocope in un bel cane sia nellarticolo uno sia nellaggettivo bello; si ha elisione in lamico un po stanco sia nellarticolo lo sia nellavverbio poco. Quando cadono lettere o sillabe iniziali lapostrofo preceduto da uno spazio. Quando cadono sillabe nali lapostrofo seguito da uno spazio o da un segno di interpunzione. Quando in una parola cade una vocale nale di fronte a unaltra parola che inizia per vocale (come in unaltra o in quelluomo), lapostrofo sta al posto della vocale elisa; in questultimo caso nel le sorgente non bisogna mai lasciare uno spazio dopo lapostrofo. In questo moA do, L TEX evita automaticamente che resti lapostrofo in n di riga. Per esempio, quelluomo viene diviso in sillabe come una parola unica in quel-luo-mo (occorre lopzione italian di babel). Fra gli usi particolari, lapostrofo indica una riduzione delle cifre di un anno (per esempio: il 68) ed usato come simbolo per i minuti dangolo, mentre non va impiegato per indicare i minuti di tempo.

.
La punteggiatura italiana comprende i segni di interpunzione, lapostrofo, le parentesi, le virgolette, i punti ellittici, i trattini e altri simboli come asterisco e sbarretta. Esistono alcune regole sse relative alluso degli spazi prima e dopo i segni di interpunzione. . . Segni di interpunzione e apostrofo

Tutti i segni di interpunzione (punto, virgola, punto e virgola, due punti, punti interrogativo ed esclamativo, . . . ) vanno attaccati alla parola che precede e separati per mezzo di uno spazio da quella che segue. Quindi, in generale, dopo ogni segno di interpunzione va battuto uno spazio. Lapostrofo segue la regola precedente, a eccezione dei casi (che sono per i pi comuni) come unoca, unaltra, . . . , che non richiedono uno spazio dopo lapostrofo. A volte lapostrofo si scontra con le virgolette, per esempio in lunico. Una soluzione possibile naturalmente usare le virgolette basse; se per si sono scelte le virgolette alte, conviene allora riformulare la frase (per esempio: questo unico. . . ) o, in alternativa, inserire uno spazio sottile \, fra lapostrofo e le virgolette: il codice l\,unico produce la forma, pi leggibile, l unico. . .
Virgolette basse, virgolette alte e apici

Virgolette

In italiano, esistono tre tipi di virgolette: le basse ( , dette anche francesi, caporali o sergenti), le alte ( , dette anche inglesi) e gli apici ( ) (vedi il paragrafo 5.7.1 a pagina 56). La forma alto-basso ( ) non usata in tipograa, ma solo nella scrittura a mano.

. In generale, le virgolette servono a staccare gracamente una parola o unespressione dal resto del testo. Per esempio, sono usate per riportare parole altrui (come nel caso del discorso diretto) o per segnalare che una certa parola o frase usata in un senso speciale differente da quello ordinario. Alcuni usi tipici delle virgolette sono i seguenti: citazioni (e intercitazioni, cio citazioni dentro a citazioni) di pensieri, discorsi e scritti altrui; menzione (invece che uso) di una espressione, come in cane ha quattro lettere, dove la parola cane non viene usata ma solo menzionata; signicato traslato o speciale di unespressione, per evidenziarne luso ironico, dispregiativo o semplicemente scherzoso, come in Questi grandi esperti dicono. . . o in un mago del calcolatore;
A parole insolite o straniere, come in Il guru locale di L TEX;

177

Uso delle virgolette

titoli di opere. Non esistono regole sse o comunemente accettate per luso dei vari tipi di virgolette nei casi sopra elencati (e negli altri possibili). Inoltre, in quasi tutti questi casi luso del corsivo concorre con quello delle virgolette. Limportante, quindi, fare una scelta iniziale ragionevole e attenersi coerentemente a essa nel resto del documento. . . Parentesi
Parentesi tonde, quadre, graffe e uncinate

Le parentesi normalmente impiegate in italiano sono le parentesi tonde ( ) e le parentesi quadre [ ]. Le parentesi graffe { } e uncinate (i comandi per queste ultime sono $\langle$ e $\rangle$) vengono usate solo in ambiti tecnici, tipicamente in matematica. Luso normale delle parentesi quello di inserire un inciso nel discorso (cio una frase relativa a quella principale ma non strettamente necessaria, dal punto di vista logico, al discorso stesso, come in questo caso). Le parentesi quadre vengono usate quasi esclusivamente in due casi: come parentesi interne a parentesi (come [anche se non molto elegante] in questo caso) e nelle citazioni per indicare un commento dello scrivente [come in questo caso] in modo che non sia confuso con parole dellautore. In questultimo caso rientra anche quello dellomissione volontaria (che comunque un commento), segnalata con [. . .] (vedi il paragrafo 5.7.1 a pagina 56). Uso di virgolette e parentesi Sia le virgolette sia le parentesi vanno attaccate alle parole che racchiudono, e separate con uno spazio, sia prima sia dopo, dal resto della frase (a meno che non siano a ne frase, come qui). Quando un segno dinterpunzione ricorre dentro a virgolette o a parentesi, la frase o il periodo nir, come questo, con un punto fuori dalla parentesi stessa (ovviamente!). Si noti che solo punto interrogativo e punto esclamativo stanno di norma dentro alle parentesi.

178

In italiano poco diffuso, ma comunque lecito, luso di racchiudere un intero periodo allinterno delle parentesi, abitudine invece piuttosto comune per esempio in inglese. (In questo caso, la punteggiatura viene anchessa compresa fra parentesi, come qui.) . .
...

Punti ellittici

I punti ellittici sono sempre e solo tre, e, come gli altri segni di interpunzione, sono attaccati alla parola che precede e separati con uno A spazio da quella che segue. . . in questo modo. In L TEX, il comando da usare \dots (non vanno mai inseriti a mano tre punti separati), eventualmente forzando uno spazio, \dots{} , se i punti ellittici non sono a ne periodo (vedi il paragrafo 5.7.1 a pagina 56). Se usati per indicare unomissione in una citazione bene [. . .] inserire i puntini entro parentesi quadre o tonde come in questo caso. . . Trattini

Per il trattino lungo (vedi il paragrafo 5.7.1 a pagina 56), si usa uno spazio sia prima sia dopo come in questo caso. Il trattino breve, invece, non richiede alcuno spazio quando separa cifre, come in pag. 23-29, o quando separa singole parole, come in guerra-lampo; se invece esso separa locuzioni formate da pi parole, come in Trentino - Alto Adige, si usa uno spazio sia prima sia dopo. . .
Sbarretta

Sbarretta e asterisco

Asterisco

La sbarretta, /, si usa, senza spazi n prima n dopo, per indicare unalternativa tra due possibilit. Quindi non dovrebbe essere usata per indicare giustapposizione o composti, per cui si usa il trattino. Per esempio: i passeggeri diretti a Torino/Milano (cio a Torino o a Milano) ma la linea Torino-Milano. (Un uso eccezionale della sbarretta si trova negli indirizzi postali, con c/o, che labbreviazione dellinglese care of, equivalente al nostro allattenzione di.) La sbarretta si usa anche per scrivere le frazioni numeriche, come 3/4. Non si confonda la sbarretta (slash, /), che pu essere inserita direttamente da tastiera, A con la barra rovescia (backslash, \), riservata ai comandi di L TEX. Lasterisco, *, si usa praticamente solo in tre occasioni: come simbolo della nota a pi di pagina, in numero di tre per indicare omissione volontaria (nel paese di * * *, codice: *\,*\,*) e in linguistica per indicare forme non attestate, scorrette o inaccettabili (*che io vadi).

.
Font

In tipograa, la parola font indica un insieme di caratteri accomunati da un certo stile graco [Zannarini e Vavassori, 2005]. I font pi usati in italiano, oltre a quello normale del testo, comprendono lo stile corsivo, neretto e maiuscoletto. poco utilizzato invece lo stile slanted (inclinato). Altri stili possono essere usati per esigenze particolari:

. per esempio, in questo documento si usa il carattere tipo macchina A per scrivere per evidenziare il codice e i pacchetti di L TEX. Lo stile evidenziato o enfatizzato reso normalmente col corsivo, ma riveste un ruolo logico differente, discusso nel paragrafo 5.11 a pagina 65. . . Corsivo

179

Il corsivo si usa nel testo principalmente: per evidenziare le parole importanti del testo; per le parole straniere (anche latine) non entrate nelluso italiano, per esempio guillemet o politically correct; per i titoli di opere citate, per esempio La Divina Commedia o The TEXbook; In bibliograa, si usa per i titoli dei libri e delle collezioni, ma questo dipende dallo stile bibliograco scelto. . . Neretto
Il neretto va usato con moderazione.

A Il neretto si usa, nelle classi standard di L TEX, per i titoli dei capitoli, dei paragra e delle altre suddivisioni del testo. Si tende di norma a non impiegarlo per evidenziare le parole, uso per cui esiste gi il corsivo, o comunque a utilizzarlo con moderazione, per non appesantire laspetto della pagina.

. .

Maiuscoletto

Il maiuscoletto viene usato in italiano, con una certa regolarit, quasi esclusivamente per i nomi degli autori citati in bibliograa, come in questo caso: Bringhurst (1992). Questa convenzione, tuttavia, dipende dallo stile bibliograco usato.

.
. . Capoversi

Un capoverso un blocco di testo, contenente uno o pi periodi, che logicamente individua una parte del discorso autonoma. Si noti che in inglese un capoverso chiamato paragraph, mentre un paragrafo (formato da pi capoversi) chiamato section (vedi il paragrafo 5.4 a pagina 46). Di regola, la prima riga di un capoverso viene rientrata per evidenziare lo stacco da quello precedente. In questo caso, in italiano viene solitamente rientrata anche quella del primo capoverso di un capitolo o di un paragrafo (mentre in inglese solo il secondo capoverso viene

Il rientro nella prima riga di un capoverso

180

rientrato). La stessa regola vale anche nel caso delle citazioni fuori corpo (vedi il paragrafo 5.12 a pagina 65).4 Per avere il rientro anche nel paragrafo iniziale si usa il pacchetto indentrst, richiamandolo nel preambolo con
\usepackage{indentfirst}

. .
In italiano, liniziale maiuscola si usa solo per i nomi propri.

Uso delle maiuscole

Liniziale maiuscola, oltre che allinizio del periodo, si usa solo per i nomi propri. Questo luso italiano, che contrasta con la consuetudine di altre lingue. A parte il tedesco, dove tutti i sostantivi sono scritti con liniziale maiuscola, in inglese c labitudine di usare liniziale maiuscola, per esempio, nei nomi dei mesi e delle stagioni, nei nomi di alcuni settori disciplinari (per esempio Electrical and Electronic Engineering, Information and Communication Technology, . . . ), nei titoli degli enunciati matematici menzionati allinterno di una frase (Theorem 1, Lemma 2, Algorithm 3), negli aggettivi che indicano la nazionalit e nelle parole principali ovvero diverse da articoli, congiunzioni e preposizioni, che (a eccezione della prima parola) rimangono in minuscolo che compongono i titoli di un libro (in italiano scriviamo I promessi sposi, ma in inglese troviamo The Betrothed con due maiuscole iniziali). Allo stesso modo, non si usa la maiuscola nellabbreviazione di gura, tabella, eccetera, come avviene invece regolarmente in inglese; non solo, ma in italiano si fa riferimento a una gura, una tabella, o simili, mediante la preposizione articolata, e quindi si scriver correttamente Come si vede nella gura 14, e non Come si vede in Fig. 14. . . La d eufonica

La d eufonica va usata solo quando necessario.

Nella lingua italiana (parlata e scritta), la d eufonica un fenomeno che implica laggiunta nale della lettera d ad alcune particelle vocaliche, qualora lincontro con parole che iniziano per vocale crei cacofonie o difcolt di pronuncia. Nellitaliano moderno scritto, luso della d eufonica dovrebbe essere limitato alla congiunzione e e alla preposizione a, nei casi in cui precedano parole che iniziano con la stessa vocale (per esempio ed ecco, ad andare, ad ascoltare), e a forme consolidate come ad esempio. . . Parole straniere

Le parole straniere vanno evitate, quando c una valida alternativa in italiano.

Riempire i propri scritti con parole straniere non solo cacofonico, anche provinciale. Non bisogna quindi usare le parole straniere quando c una valida alternativa in italiano. Cos si pu benissimo scrivere scadenza invece di deadline, diagramma invece di chart, competenze al posto di know-how, e cos via. Bisogna tuttavia evitare di cadere nel ridicolo per troppo purismo, come a volte fanno i francesi
4 Se i capoversi non sono rientrati, vengono solitamente spaziati verticalmente luno dallaltro: in questo caso utile il pacchetto parskip.

. con i loro logiciel, ordinateur e page daccueil. Si pu scrivere tranquillamente software, browser, editor, le; valide alternative non ce ne sono. A questo proposito, va stigmatizzata lusanza (pessima, ma sempre pi diffusa) di tradurre le parole straniere in maniera goffa, orecchiando loriginale. Ne risultano termini che non esistono n in una lingua n nellaltra, ma che a forza di essere usati acquistano quasi una patente di credibilit. Qualche esempio: proattivo, dallinglese proactive, impropriamente usato nel senso di propositivo, mentre signica capace di anticipare futuri temi, problemi; monitorare, dallinglese to monitor, ovvero tenere sotto controllo; promozionare, quando c litaliano promuovere; testare, al posto dellitaliano provare, vericare; condenzialit, che in italiano non esiste, ma che diventato sinonimo di riservatezza, dallinglese condential; educazione, impropriamente usato nel senso di formazione, dallinglese education; compagnia, quando azienda o impresa vanno benissimo; approcciare (un tema, un problema), pu essere facilmente sostituito con affrontare, tanto pi che in inglese to approach signica semplicemente avvicinare (qualcuno). Le parole straniere vanno in corsivo, a meno che non vengano esplicitamente quoted (come in questo caso) o che non siano entrate nelluso comune. Quindi, per esempio, si scriver: ho visto un bel lm (comune) ma ho mangiato un pudding (non comune). In realt, dato che molto difcile stabilire che cosa sia entrato o meno nelluso comune, la regola pi corretta quella di scrivere in corsivo le parole straniere che si presumono non di uso corrente per il lettore a cui ci si rivolge. Per esempio, in un libro di informatica software, computer, . . . potranno tutte andare normalmente in tondo. In un documento italiano, le parole straniere entrate nelluso comune non assumono la forma plurale (ho visto due lm), mentre le parole straniere di uso non comune seguono il plurale della lingua originale (ho mangiato due puddings). A proposito del morfema nale -s, che di regola rappresenta la marca del plurale in inglese, francese, spagnolo e portoghese, va sottolineato che la diffusione di questa modalit di formazione del plurale nelle lingue europee presenta il rischio di poter essere intesa, nella coscienza comune, come la modalit tipica per ottenere un plurale straniero e quindi di essere applicata anche a parole che formano il plurale in modo diverso. Si scriver dunque correttamente, per esempio: il gentleman, i gentlemen; il Land, i Lnder. I nomi propri (come San Francisco, Donald, . . . ) o le denominazioni ufciali (come Stanford University, Magna Charta, . . . ) non sono considerati parole straniere, e quindi non vanno in corsivo.

181

I barbarismi vanno evitati sempre.

Le parole straniere non di uso corrente per il lettore vanno in corsivo.

Le parole straniere duso comune non assumono la forma plurale.

182

La sillabazione delle parole straniere

La traduzione straniera di unespressione italiana usata nel testo pu essere semplicemente messa in corsivo e fra parentesi (bracket), come in questo caso. Se invece lespressione tradotta ricorre in una citazione, e si vuole indicare la forma originale, occorre inserirla fra parentesi quadre, come ogni altro commento. Per esempio: La visione del mondo [Weltanschauung]. . . . ovvio che la sillabazione delle altre lingue diversa da quella dellitaliano, ed altrettanto ovvio che scrivendo in lingue diverse dallitaliano possibile che alcune cesure risultino errate. Nel caso di singole parole straniere inserite in una frase italiana ammessa la divisione in n di riga seguendo le regole applicabili per litaliano. Qualora invece sia riprodotto un intero brano in una lingua straniera, occorre attenersi alle regola della lingua in questione (vedi il paragrafo 5.1.1 a pagina 41). . . Numeri

Lettere o cifre? Qualsiasi numero pu venir scritto altrettanto correttamente in cifre o in lettere. La scelta dipende anche dalla natura del testo: quelli umanistici tendono a usare le lettere, quelli tecnico-scientici le cifre. Esistono comunque alcune regole generali: per numeri inferiori o uguali a dieci si tende a usare le lettere, mentre per numeri maggiori di dieci le cifre; se un numero, anche maggiore di dieci, allinizio del periodo lo si scrive in lettere: Trentatr trentini venivano da Trento. . . ; se una quantit meramente indicativa, si usano le lettere o una forma mista: ci saranno state mille persone, costa almeno 2 milioni di euro; se un numero indica una quantit esatta, come in a pagina 5, articolo 3, ho preso 4 in latino, si usano le cifre; se un numero decimale (per esempio 7,5) si usano le cifre (fanno eccezione casi come alto un metro e ottanta). Ordinali Anche gli ordinali (primo, secondo, . . . ) possono venir scritti in cifre o in lettere. Nella scrittura in cifre, lordinale si indica con un circoletto in posizione di apice (esponente): per esempio, 1, che si A ottiene in L TEX semplicemente con 1 (si noti che, bench il circoletto indichi in origine la o nale di primo, il simbolo relativo non una o ma un circolo.) Quando, per indicare un ordinale, si usano i numeri romani al posto dei numeri arabi, non va usato il circoletto in esponente: per esempio, in Carlo V e il XX secolo i due numeri romani vengono letti rispettivamente quinto e ventesimo senza bisogno di altra indicazione.

. Separazione fra cifre Per numeri di cinque o pi cifre, utile inserire uno spazio fra ogni gruppo di tre cifre (partendo da destra), per facilitare la lettura del numero stesso. Lo spazio in questione non dovrebbe essere un normale spazio (come in 1 500 000) ma invece uno spazio sottile (come in 1 500 000. Il pacchetto numprint permette, fra laltro, di inserire tale spazio automaticamente, sia in modo testo sia in modo matematico:
\numprint{1500000}

183

Il pacchetto numprint

1 500 000

bene evitare luso di virgola e punto (diffusi rispettivamente nel mondo anglosassone e in quello europeo continentale) per separare le migliaia, uso che rischia di confondersi con la separazione decimale e di provocare gravi errori di lettura. Luso dello spazio sottile lunico metodo universale corretto. Nei numeri decimali, il separatore fra la parte intera e quella decimale una virgola (23,5), secondo luso europeo continentale (in quello anglosassone un punto). Se il numero inserito in ambiente matematico, necessario racchiudere la virgola tra parentesi graffe, per correggere opportunamente la spaziatura dopo la virgola: in modo maA tematico, infatti, L TEX tratta la virgola come un segno di punteggiatura e aggiunge uno spazio extra dopo di essa. Si confronti:
$23{,}5$ \\ $23,5$

23,5 23, 5

Nel secondo caso si ha una spaziatura (leggermente) sbagliata dopo la virgola. La scrittura corretta $23{,}5$. Se si devono inserire molti numeri decimali nel proprio documento, per evitare di scrivere ogni volta le graffe possibile caricare il pacchetto icomma. Dopo aver caricato il pacchetto, la virgola viene interpretata come segno di punteggiatura se seguita da uno spazio, altrimenti viene trattata come separatore. Cos, per scrivere un numero decimale come 23,5 basta scrivere $23,5$, mentre lespressione matematica (x, y) si ottiene inserendo uno spazio esplicito dopo la virgola: (x, y). . . Frazioni, percentuali, unit di misura

Il pacchetto icomma

Le frazioni si possono esprimere in lettere (tre quarti) a meno che non indichino una quantit numerica precisa. In questo caso si possono scrivere usando la sbarretta, per esempio 3/4, o la forma frazionaria A vera e propria, per esempio 3 (codice L TEX: $\frac{3}{4}$).5 4 Le percentuali si scrivono normalmente in cifre (30%) a meno che il contesto non sia colloquiale, nel qual caso si pu scrivere 30 per A cento. Va ricordato che il simbolo % riservato in L TEX ai commenti, e va quindi inserito con lapposito comando \%. Le quantit misurate sono costituite da numeri seguiti dallunit di misura, espressa tipicamente dal simbolo relativo, come per esempio
5 Una scrittura del tipo 3/4, che si pu ottenere con pacchetti come nicefrac o xfrac, invece sempre sconsigliabile (lunica possibile eccezione se la frazione si trova allinterno di un libro di cucina).

Frazioni

Percentuali

Unit di misura

184

20 cm o 15 kg. Si noti che il simbolo dellunit di misura non vuole A il punto. In L TEX, per inserire le unit di misura del Sistema Internazionale si consiglia luso del pacchetto siunitx (vedi il paragrafo 7.10 a pagina 135). . .
Acronimi

Sigle

Abbreviazioni

Gli acronimi sono espressioni formate dalle lettere o sillabe iniziali di parole componenti unespressione che si vuole abbreviare. Esempi sono g It, html o pdf. Gli acronimi dovrebbero essere composti tutti u da maiuscole, senza spazi n puntini fra di esse, anche se spesso si trovano forme differenti. Quando un acronimo ampiamente entrato nelluso e viene pronunciato come parola, si pu spesso scriverlo come tale: Fiat e radar sono entrambi accettabili. A parte questi casi, sempre consigliabile, per acronimi meno noti, citarli per esteso la prima volta che li si scrive nel testo, mettendo fra parentesi la forma A estesa. Per esempio: g It (Gruppo Utilizzatori Italiani di TEX e L TEX). u Le abbreviazioni si ottengono invece dal troncamento di una parola, che viene indicata dalla sua sola parte iniziale. In casi particolari, come sig.ra o Prof.ssa, comprendono anche la parte nale della parola originale. Il troncamento viene indicato con un punto: se labbreviazione dovesse cadere a ne periodo (caso raro, forse possibile col solo ecc.) il punto di abbreviazione funziona anche da punto fermo (cio, ovviamente, non si trovano due punti successivi).

.
Stile dei riferimenti bibliograci

La bibliograa forse il pi tormentato fra gli aspetti tipograci della composizione di un documento. Se in generale esistono poche regole assolute per la tipograa, nel caso della bibliograa non ne esiste sostanzialmente alcuna. Lo stile dei riferimenti bibliograci dipende dal tipo di pubblicazione, dalleditore, dai gusti dellautore e da altri fattori. Per esempio, lo stile della bibliograa adottato in questo documento, tipico di molti documenti italiani, prevede luso del maiuscoletto sia per i nomi degli autori che dei curatori (editor), il corsivo per i titoli di libri o antologie (collection) e per i nomi delle riviste (journal) e le virgolette basse per i titoli degli articoli o dei contributi in antologie (vedi il paragrafo 8.1 a pagina 145). Vale comunque la pena ripetere che queste sono solo alcune delle tante scelte stilistiche possibili, che solitamente vengono imposte allautore del documento dalleditore o dalla rivista per cui scrive. Anche la scelta fra riferimenti in nota (a pi di pagina) o invece raccolti in unapposita bibliograa dipende spesso dalleditore o dalla rivista. La prima scelta piuttosto diffusa nelle pubblicazioni italiane, ma del tutto sconsigliabile per qualsiasi pubblicazione scientica (in senso lato, comprese le tesi di laurea, per esempio) a causa della maggior difcolt di individuazione e lettura del riferimento. La seconda scelta A quella standard in L TEX: lambiente thebibliography o il programma BibTEX producono appunto una sezione del documento separata, contenente lelenco dei riferimenti bibliograci.

B
b.1 b.2

GALLERIA DEGLI ORRORI

b.3 b.4

b.5

Il testo 185 b.1.1 Linserimento dei caratteri accentati 185 b.1.2 La divisione in sillabe 186 b.1.3 I margini 186 b.1.4 Gli indirizzi Internet 186 b.1.5 Le note a pi di pagina 187 Le tabelle 187 b.2.1 Regole generali 187 b.2.2 Allineare i numeri alla virgola 189 b.2.3 Le tabelle mobili 190 Le gure 191 La matematica 193 b.4.1 Formule fuori corpo 193 b.4.2 Operatori 196 b.4.3 Parentesi 197 b.4.4 Matrici 198 b.4.5 Integrali multipli 198 b.4.6 Insiemi numerici 199 b.4.7 Riferimenti a una formula 200 b.4.8 Punti ellittici 200 Codici sorgente leggibili 200

In questa appendice, ispirata a [Gregorio, 2003], ho raccolto alcuni A esempi estratti da alcune diffuse guide introduttive a L TEX. Presento questa galleria non per svergognare gli autori, naturalmente; piuttosto, A lintendimento di mostrare come non si scrive in L TEX e che con qualche minuto di riessione e il pacchetto giusto si pu spesso ottenere un risultato migliore e pi semplice, evitando di prodursi in acrobazie TEXniche. In ciascun esempio mostrato il testo originale; lo si discute e poi si mostra una versione corretta, con lindicazione di quali pacchetti richiamare e quali comandi denire nel preambolo.

.
. . Linserimento dei caratteri accentati Consideriamo il codice seguente:
Non se ne pu\o pi\u: in realt\a, cos\{\i} facendo il numero di caratteri da battere \e triplo! Perch\e non usare direttamente i caratteri accentati?

Non se ne pu pi: in realt, cos facendo il numero di caratteri da battere triplo! Perch non usare direttamente i caratteri accentati?

185

186

Per inserire i caratteri accentati direttamente da tastiera si usa il pacchetto inputenc.

Dal 1994, possibile usare il pacchetto inputenc per inserire i caratteri accentati direttamente da tastiera (vedi il paragrafo 5.1.2 a pagina 44):
In realt, dal 1994 possibile inserire i caratteri accentati direttamente da tastiera: perch non farlo?

In realt, dal 1994 possibile inserire i caratteri accentati direttamente da tastiera: perch non farlo?

. .

La divisione in sillabe

Si consideri il seguente esempio:


\hyphenation{Sil-la-ba-zio-ne sim-pa-ti-ca-men-te}

Il comando \hyphenation si usa per le eccezioni allalgoritmo di sillabazione.

Questo esempio di \hyphenation infelice, perch le parole indicate vengono trattate correttamente dallalgoritmo di sillabazione; sarebbe meglio esemplicare con nomi propri oppure con parole rare oppure con parole tecniche composte per le quali si vuole la divisione etimologica invece di quella fonetica (che, almeno per le parole A italiane, viene eseguita benissimo dallalgoritmo di L TEX). Per esempio si possono avere parole come macroistruzione (divisione ordinaria: ma-croi-stru-zio-ne; divisione desiderata: ma-cro-istru-zio-ne) o nitroidrossilamminico (divisione ordinaria: ni-troi-dros-si-lam-mini-co; divisione desiderata: nitro-idrossil-amminico) (vedi il paragrafo 5.4.1 a pagina 48). Lesempio proposto va sostituito con un altro del tipo seguente:
\hyphenation{ma-cro-istru-zio-ne nitro-idrossil-amminico}

. .

I margini

Si consideri il seguente codice, proposto per modicare i margini di pagina predeniti:


\addtolength{\textwidth}{1cm} \addtolength{\hoffset}{-0.5cm}

I pacchetti layaureo e geometry

Nella denizione dei margini di pagina, la modica di comandi inA terni di L TEX quali \textwidth , \hoffset , \oddsidemargin , . . . invece sempre sconsigliabile per molte ragioni [Fairbairns, 2007; Trettin e Zannarini, 2005]. Per modicare i margini di pagina, consigliabile rivolgersi ai pacchetti layaureo o geometry, se si usano le classi standard (vedi il paragrafo 5.5.1 a pagina 51). . . Gli indirizzi Internet

Consideriamo il seguente codice:

187

http://profs.sci.univr.% it/\~{}gregorio/ http://profs.sci.univr.% it/$\sim$gregorio/

http://profs.sci.univr.it/gregorio/ http://profs.sci.univr.it/gregorio/

Per scrivere un indirizzo Internet opportuno servirsi del pacchetto url (se si usa hyperref, questo pacchetto caricato automaticamente):
\url{http://profs.sci.univr.% it/~gregorio/} http://profs.sci.univr.it/ ~gregorio/

Per scrivere un indirizzo Internet si usa il pacchetto url.

In questo modo, fra laltro, non occorre fare peripezie per inserire la tilde ~, lindirizzo Internet composto con il font a spaziatura ssa usato e, se necessario, viene automaticamente sillabato. . . Le note a pi di pagina

Si consideri il seguente esempio:


Le note a pi\e di pagina\footnote{Questo ne \e un esempio.} sono spesso usate dagli utenti di \LaTeX.

Le note a pi di paginaa sono A spesso usate dagli utenti di L TEX.


a Questo ne un esempio. bene scrivere le note a pi di pagina alla ne del relativo capoverso, dopo il segno di interpunzione.

Dal momento che le note a pi di pagina (di cui bene non abusare) interrompono il usso del discorso, esse dovrebbero sempre essere poste alla ne del relativo capoverso, dopo il segno di interpunzione.1
Le note a pi di pagina sono usate con moderazione dagli utenti di \LaTeX.\footnote{Questo ne un esempio.}

Le note a pi di pagina sono usate con moderazione dagli utenti di A L TEX.a


a Questo ne un esempio.

.
. . Regole generali

Si considerino le seguenti tabelle:


\begin{tabular}{|l|c|r|} \hline Sparc & SunOS & 4.1.4 \\ \hline HP & HP-UX & 10.20 \\ \hline PC & NetBSD & 1.2 \\ \hline \end{tabular}

Sparc HP PC

SunOS HP-UX NetBSD

4.1.4 10.20 1.2

1 Cos.

188

\begin{tabular}{|r|l|} \hline 7C0 & esadecimale \\ 3700 & ottale \\ 11111000000 & binario \\ \hline \hline 1984 & decimale \\ \hline \end{tabular}

7C0 3700 11111000000 1984

esadecimale ottale binario decimale

Le tabelle vanno composte seguendo le regole generali. . . . . . usando i comandi del pacchetto booktabs per ottenere le linee orizzontali. . .

Le tabelle precedenti sono state composte senza seguire le regole generali, che impongono di non usare linee verticali e di evitare linee doppie (vedi il paragrafo 6.1.1 a pagina 78). Inoltre, per ottenere le linee orizzontali opportuno usare i comandi \toprule , \midrule e \bottomrule del pacchetto booktabs A al posto del comando \hline offerto da L TEX, che ha una resa tipograca non del tutto soddisfacente a causa del poco spazio tra le linee orizzontali e il testo delle celle (vedi il paragrafo 6.1.2 a pagina 78).
A Si noti inne che L TEX non richiede che le colonne (ovvero i simboli &) siano allineate, tuttavia consigliabile che lo siano per migliorare la leggibilit del sorgente.

. . . e allineando le colonne nel sorgente.

Per queste ragioni opportuno riscrivere le tabelle nel modo seguente:


\begin{tabular}{lcr} \toprule Sparc & SunOS & 4.1.4 \\ HP & HP-UX & 10.20 \\ PC & NetBSD & 1.2 \\ \bottomrule \end{tabular}

Sparc HP PC

SunOS HP-UX NetBSD

4.1.4 10.20 1.2

\begin{tabular}{rl} \toprule 7C0 & esadecimale \\ 3700 & ottale \\ 11111000000 & binario \\ \midrule 1984 & decimale \\ \bottomrule \end{tabular}

7C0 3700 11111000000 1984

esadecimale ottale binario decimale

Si consideri la tabella 51 a fronte, ottenuta con il seguente codice:


\begin{tabular}{||p{5cm}||*{2}{c|}|} \hline & Contenuto & Quantit\a \\ \hline \hline \bfseries Heineken & 33 cl & 10 \\ \hline \bfseries Guinness & 66 cl & 5 \\

.
Tabella 51: Tabella non composta correttamente secondo le regole generali.

189

Contenuto Heineken Guinness Kronenbourg 33 cl 66 cl 33 cl

Quantit 10 5 0

Tabella 52: Tabella composta correttamente secondo le regole generali.

Contenuto (cl) Heineken Guinness Kronenbourg 33 66 33

Quantit 10 5 0

\hline \bfseries Kronenbourg & 33 cl & 0 \\ \hline \end{tabular}

Nellesempio considerato, la scelta di specicare la larghezza della prima colonna non appare molto appropriata. Inoltre, per specicare il font di una determinata colonna opportuno usare il comando >{ dichiarazione } del pacchetto array (vedi il paragrafo 6.1.5 a pagina 80). Eliminando le linee verticali, le linee doppie e le linee orizzontali superue, e usando i comandi del pacchetto booktabs per ottenere le linee orizzontali, la tabella 51 si trasforma nella 52, ottenuta con il seguente codice
\begin{tabular}{>{\bfseries}lcc} \toprule & Contenuto (cl) & Quantit \\ \midrule Heineken & 33 & 10 \\ Guinness & 66 & 5 \\ Kronenbourg & 33 & 0 \\ \bottomrule \end{tabular}

Per specicare il font di una colonna di una tabella si usa il pacchetto array.

nel quale, al solito, sono state allineate le colonne per migliorarne la leggibilit. Sono state anche inserite le unit di misura nellintestazione della tabella invece che nel corpo.

. .

Allineare i numeri alla virgola

Consideriamo la seguente tabella:

190 Tabella 53: Esempio di tabella con allineamento alla virgola.

Espressione

Valore 3,1416 36,46 80662,7

\begin{tabular}{c r @{,} l} Espressione & \multicolumn{2}{c}{Valore} \\ \hline $\pi$ & 3&1416 \\ $\pi^{\pi}$ & 36&46 \\ $(\pi^\pi)^\pi$ & 80662&7 \\ \end{tabular}

Espressione ( )

Valore 3,1416 36,46 80662,7

Per allineare i numeri alla virgola si usa il pacchetto dcolumn.

Per allineare i numeri alla virgola preferibile usare il pacchetto dcolumn (vedi il paragrafo 6.1.7 a pagina 83). La tabella precedente si trasforma allora nella 53, ottenuta con il seguente codice:
\begin{tabular}{cD{.}{,}{5.4}} \toprule Espressione & \multicolumn{1}{c}{Valore} \\ \midrule $\pi$ & 3.1416 \\ $\pi^{\pi}$ & 36.46 \\ $\pi^{\pi^{\pi}}$ & 80662.7 \\ \bottomrule \end{tabular}

nel quale, al solito, si sono usati i comandi del pacchetto booktabs per ottenere le linee orizzontali. . . Le tabelle mobili

Consideriamo il seguente codice, spesso usato per introdurre una tabella mobile:
\begin{table}[htbp] \begin{center} \begin{tabular}{|l|l|} \hline table & tabelle \\ \hline figure & disegni \\ \hline \end{tabular} \end{center} \caption{Esempio di tabella mobile} \label{tab:table} \end{table}

Il codice precedente contiene diversi errori:

.
Tabella 54: Un esempio di tabella mobile.
table figure

191

tabelle disegni

Innanzitutto, consigliabile introdurre gli oggetti mobili mediante unopzione di posizionamento tb se sono piccoli, e p se sono grandi (vedi il paragrafo 6.4 a pagina 100). Inoltre, per centrare una tabella mobile opportuno usare il comando \centering invece dellambiente center, poich questultimo inserisce uno spazio verticale supplementare esagerato. Inne, per separare la didascalia dalla tabella (di regola, la didascalia si scrive sopra la tabella e non sotto, come nellesempio considerato), se si usano le classi standard conveniente caricare il pacchetto caption e, una volta per tutte, scrivere nel preambolo
\captionsetup[table]{position=top}

meglio evitare lopzione di posizionamento htbp. Per centrare una tabella mobile va usato \centering invece di center. Per separare la didascalia dalla tabella si pu usare il pacchetto caption.

Eliminando come al solito le linee verticali e usando i comandi del pacchetto booktabs per ottenere le linee orizzontali, la tabella precedente si trasforma nella 54, ottenuta con il seguente codice:
\begin{table}[tb] \caption{Un esempio di tabella mobile.} \label{tab:esempio} \centering \begin{tabular}{ll} \toprule \texttt{table} & tabelle \\ \texttt{figure} & disegni \\ \bottomrule \end{tabular} \end{table}

.
Le gure mobili Consideriamo il seguente codice, spesso usato per introdurre una gura mobile:
\begin{figure}[htbp] \begin{center} \includegraphics[width=10cm]{figura.eps} \end{center} \caption{Disegno} \label{fig:dessin} \end{figure}

Il codice precedente contiene diversi errori:

192

Figura 16: Un esempio di gura mobile (limmagine, che riproduce la litograa Galleria di stampe, di M. Escher, tratta da http://www.mcescher. com/).

meglio evitare lopzione di posizionamento htbp. Per centrare una gura mobile va usato \centering invece di center. opportuno inserire una gura specicandone le dimensioni relative e non assolute.

Innanzitutto, meglio evitare lopzione di posizionamento htbp: invece consigliabile introdurre gli oggetti mobili con unopzione di posizionamento tb se sono piccoli, e p se sono grandi. Inoltre, per centrare una gura mobile opportuno usare il comando \centering invece dellambiente center, poich questultimo inserisce uno spazio verticale supplementare indesiderato (di regola, la didascalia di una gura si scrive sotto la gura). Nonostante sia possibile attribuire alla chiave width un valore espresso in centimetri (o in punti, in millimetri, o in qualsiasi A unit tipograca riconosciuta da L TEX), opportuno esprimere questa dimensione con un valore legato alla geometria della pagina (per esempio width=0.5\columnwidth), perch cambiando le dimensioni della pagina la dimensione relativa mantiene le proporzioni, mentre la dimensione assoluta potrebbe dare luogo a inconvenienti di impaginazione.
A A Inne, se si prevede di compilare sia con L TEX sia con pdfL TEX, consigliabile non specicare lestensione dei le graci caricati dal comando \includegraphics (vedi il paragrafo 6.2.4 a pagina 96).

consigliabile non specicare lestensione dei le graci caricati.

In conclusione, per introdurre una gura mobile opportuno servirsi del seguente codice:
\begin{figure}[tb] \centering \includegraphics[width=0.5\columnwidth]{Galleria} \caption{Un esempio di figura mobile.} \label{fig:galleria} \end{figure}

La gura 16 stata introdotta usando le istruzioni precedenti. Si consideri ora il seguente codice:
Come si vede in Fig.~14 \dots

.
A In L TEX, i riferimenti incrociati si realizzano con i comandi \label , \ref e \vref (vedi il paragrafo 5.9 a pagina 63); nei riferimenti agli oggetti mobili, il comando \label deve comparire dopo il corrispondente \caption . Inoltre, non si usa la maiuscola nellabbreviazione

193

I riferimenti incrociati si fanno con \label, \ref e \vref.

di gura, tabella, eccetera, come avviene invece regolarmente in inglese; non solo, ma in italiano si fa riferimento a una gura, una tabella, o simili, mediante la preposizione articolata, e quindi si scriver correttamente:
Come si vede nella figura~\vref{fig:galleria} \dots

Come si vede nella gura 16 nella pagina precedente . . .

.
. . Formule fuori corpo

Si consideri il seguente esempio:


Ne risulta: $$ x + y + z = n $$

Ne risulta: x+y+z = n

Nellinserimento delle formule matematiche fuori corpo, limpiego dei comandi $$. . .$$ sempre sconsigliabile, perch in alcuni casi si possono presentare problemi con la spaziatura verticale tra le formule; inoltre, con quel codice lopzione di classe fleqn non funziona correttamente [Fairbairns, 2007; Trettin e Zannarini, 2005]. La formula precedente si scrive correttamente cos:
Ne risulta: \[ x + y + z = n. \]

I comandi $$. . .$$ non vanno mai usati.

Ne risulta: x + y + z = n.

Nella formula precedente stata aggiunta la punteggiatura. Esistono due scuole di pensiero sulla punteggiatura esterna, ovvero sulla punteggiatura nelle formule matematiche fuori corpo. Alcuni ritengono che questa non andrebbe mai usata, in quanto superua e causa di possibili ambiguit di lettura [Beccari, 2009, p. 126]. Altri, compreso chi scrive, ritengono invece la punteggiatura esterna utile e opportuna: le formule, sia in corpo sia fuori corpo, fanno parte dellargomentazione e quindi la punteggiatura va usata per aiutare il lettore [Guiggiani e Mori, 2008, p. 8]. Limportante, qualunque dei due metodi si scelga, essere coerenti e usare sempre un unico metodo. Si consideri ora:
$$ f(x) > 1 \mbox{ se } x < 3 $$

In questo documento si usa la punteggiatura nelle formule fuori corpo.

f(x) > 1 se x < 3

194

Se si vuole inserire un breve testo allinterno di una formula fuori corpo (con font e spaziatura normali), allora opportuno scriverlo usando il comando \text{ . . . } (serve il pacchetto amsmath). Il modo corretto di scrivere la formula precedente :
\[ f(x)>1 \text{ se $x < 3$.} \]

f(x) > 1 se x < 3.

Al solito, stata aggiunta la punteggiatura nella formula fuori corpo.

Gruppi di formule con allineamento Si consideri il seguente esempio:


\begin{eqnarray} e^{x+y} & = & e^x \: e^y \\ \ln xy & = & \ln x + \ln y \end{eqnarray}

ex+y ln xy

= =

ex e y

(B.1)

ln x + ln y (B.2)

Gli ambienti eqnarray ed eqnarray* non vanno mai usati.

Per disporre gruppi di formule con allineamento si usa align.

A Per inserire formule fuori corpo, L TEX offre gli ambienti eqnarray (per formule numerate) ed eqnarray* (per formule non numerate). Purtroppo questi ambienti sono nati con un peccato originale: gli spazi a destra e a sinistra dei segni di uguaglianza nelle formule scritte con eqnarray ed eqnarray* sono maggiori che non nelle formule inseA rite con gli altri ambienti matematici. Quando dal vecchio L TEX 2.09 A si passati al nuovo L TEX 2 , questo difetto stato conservato, per mantenere una compatibilit con i le predisposti per essere compilati con la vecchia versione. Oggi gli ambienti eqnarray ed eqnarray* non devono venire pi usati, ma vanno usati solo gli ambienti messi a disposizione dal pacchetto amsmath (vedi il paragrafo 7.6 a pagina 126). Lambiente align di amsmath permette di disporre gruppi di due o pi formule, ciascuna su una riga, numerate singolarmente, da allineare fra loro. Lesempio precedente si scrive:

\begin{align} e^{x+y} &= e^x e^y \\ \ln xy &= \ln x + \ln y \end{align}

ex+y = ex ey ln xy = ln x + ln y

(B.3) (B.4)

Si noti che stata preferita la spaziatura automatica a quella manuale (oltretutto, il comando \: non dovrebbe mai essere usato; vedi il paragrafo 7.2.10 a pagina 119).

Formule spezzate con allineamento Si consideri la seguente formula:

195

\begin{eqnarray} \int_1^2 x^2 dx & = & \left[ \frac{x^3}{3} \right]_1^2 \nonumber \\ & = & \frac{2^3}{3}\frac{1^3}{3} \nonumber \\ & = & \frac{8}{3}\frac{1}{3} \nonumber \\ & = & \frac{7}{3} \end{eqnarray}

2 1

x2 dx

= = = =

x3 3

2 1

23 13 3 3 8 1 3 3 7 (B.5) 3

Per dividere una singola formula in pi righe, con le righe da allineare, si usa lambiente split di amsmath:
\begin{equation} \begin{split} \int_1^2 x^2 dx &= \biggl[ \frac{x^3}{3} \biggr]_1^2 \\ &= \frac{2^3}{3}\frac{1^3}{3} \\ &= \frac{8}{3}-\frac{1}{3} \\ &= \frac{7}{3}. \end{split} \end{equation}

Per spezzare una singola formula con allineamento si usa split.

2 1

x2 dx =

x3 3

2 1

23 13 = 3 3 8 1 = 3 3 7 = . 3

(B.6)

Si noti che, nellesempio proposto, sono stati utilizzati i comandi manuali \biggl e \biggr in luogo di \left e \right per specicare le dimensioni delle parentesi quadre (vedi il paragrafo B.4.3 a pagina 197). Formule spezzate senza allineamento Si consideri la seguente formula:
\begin{eqnarray} \lefteqn{ \cos x = 1 -\frac{x^{2}}{2!} +{} } \nonumber\\ & & {}+\frac{x^{4}}{4!} -\frac{x^{6}}{6!}+{}\cdots \end{eqnarray}

cos x = 1

x2 + 2! 6 4 x x + (B.7) + 4! 6!

Per dividere una singola formula in pi righe, senza particolari allineamenti fra le varie righe, si usa lambiente multline di amsmath:
\begin{multline} \cos x = 1-\frac{x^2}{2!} \\ +\frac{x^4}{4!}-\frac{x^6}{6!} +\dots \end{multline}

Per spezzare una singola formula senza allineamento si usa multline.

cos x = 1

x2 2! x4 x6 + +... 4! 6!

(B.8)

196

Quando si spezza una formula, non bisogna ripetere i segni di operazione.

Quando si spezza una formula, i segni di operazione o relazione, cio quelli che permettono di spezzare una formula, vanno indicati una sola volta, al termine della riga in caso di formule in corpo, e allinizio della riga in caso di formule fuori corpo. La doppia indicazione sconsigliabile, oltre che per ragioni estetiche, anche per evitare ambiguit [Guiggiani e Mori, 2008, p. 6]. Si noti inoltre che, nellesempio precedente, sono state eliminate svariate parentesi graffe superue, in particolare per gli esponenti. Casi Si consideri il seguente esempio:
$$ |x| = \left\{ \begin{array}{rl} x & \mbox{se } x \ge 0 \\ -x & \mbox{se } x < 0 \end{array} \right. $$

|x| =

x x

se x

se x < 0

Per le denizioni fatte per casi si usa cases. Per il valore assoluto si usa mathtools.

Per le denizioni fatte per casi si usa lambiente cases di amsmath. La graffa e lallineamento sono automatici; il testo nella seconda colonna va dentro a \text{ . . . }. Per scrivere il valore assoluto conveniente caricare il pacchetto mathtools (vedi il paragrafo 7.2.8 a pagina 117) e denire un apposito comando, scrivendo nel preambolo:
\DeclarePairedDelimiter{\abs}{\lvert}{\rvert}

La formula precedente si scrive allora:


\[ \abs{x} = \begin{cases} x, & \text{se $x\ge 0$,} \\ -x, & \text{se $x<0$.} \end{cases} \]

|x| =

x, x,

se x

0,

se x < 0.

. .

Operatori

Si consideri il seguente esempio:


\begin{displaymath} \mathop{\mathrm{cov}}(X,Y)= \frac{1}{n}\sum_{i=1}^n (x_i-\overline x) (y_i-\overline y) \end{displaymath}

cov(X, Y) =

1 n

(xi x)(yi y)
i=1

. Per denire un nuovo operatore, disponibile lapposito comando


\DeclareMathOperator , fornito dal pacchetto amsmath (vedi il paragra-

197

fo 7.3 a pagina 120). Per esempio, per denire una funzione matemaA tica cov che denoti la covarianza (che non denita n da L TEX n da amsmath), si scrive nel preambolo
\DeclareMathOperator{\cov}{cov}

Per denire un nuovo operatore si usa lapposito comando di amsmath.

Nel seguito, basta scrivere \cov per avere cov nel font corretto e adeguatamente spaziato su entrambi i lati. Lesempio precedente si scrive allora:
\[ \cov(X,Y)= \frac{1}{n}\sum_{i=1}^n (x_i-\bar x)(y_i-\bar y) \]

cov(X, Y) =

1 n

(xi x)(yi y)
i=1

stato usato il comando \bar al posto di \overline per indicare il valor medio delle variabili aleatorie X e Y: il simbolo x indica un operatore (coniugio di numeri complessi, per esempio) applicato alla variabile x, mentre il simbolo x indica un nome di variabile distinto da x. . . Parentesi

Si consideri la seguente formula:


\begin{displaymath} 1 + \left( \frac{1}{ 1-x^{2} } \right)^3 \end{displaymath}

1+

1 1 x2

Nonostante sia possibile specicare automaticamente le dimensioni di un delimitatore con i comandi \left (davanti a un delimitatore di apertura) e \right (davanti al corrispondente delimitatore di chiusura), la scelta manuale tuttavia spesso la migliore, dal momento che in molti casi i comandi \left e \right inseriscono spaziature non richieste e parentesi pi grandi del necessario. La formula precedente si scrive allora:
\[ 1+\biggl(\frac{1}{1-x^2} \biggr)^3 \]

Per specicare le dimensioni di un delimitatore la scelta manuale spesso la migliore.

1+

1 1 x2

Al solito, sono state eliminate le parentesi graffe superue. Si consideri:


\begin{displaymath} {n \choose k} \end{displaymath}

n k
Per i coefcienti binomiali si usa \binom.

Per scrivere coefcienti binomiali si usa il comando \binom di amsmath:


\[ \binom{n}{k} \]

n k

198

. .

Matrici

Si considerino i seguenti esempi:


$$ \left[ \begin{array}{cc} a_{11} & a_{12} \\ a_{21} & a_{22} \end{array} \right] $$

a11 a21

a12 a22

$$ {\mathcal A} = \left( \begin{array}{ccc} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ a_{31} & a_{32} & a_{33} \end{array} \right) $$

a11 a31

a12 a22 a32

a13

A = a21

a23 a33

Per scrivere matrici vanno usati gli appositi ambienti di amsmath.

Per scrivere matrici opportuno usare gli appositi ambienti messi a disposizione dal pacchetto amsmath (vedi il paragrafo 7.5 a pagina 124). Questi ambienti, oltre a essere facili da usare, permettono di raggiungere un risultato tipograco ottimale. Le matrici precedenti si scrivono allora:
\[ \begin{bmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{bmatrix} \]

a11 a21

a12 a22

\[ \mathcal{A}= \begin{pmatrix} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ a_{31} & a_{32} & a_{33} \end{pmatrix} \]

a11 a31

a12 a22 a32

a13 a33

A = a21

a23

Si noti anche che il comando \mathcal ha un argomento e non una dichiarazione. . . Integrali multipli

Si considerino i seguenti esempi:

199

$$ V = \int \!\! \int \!\! \int_{\Omega} d\tau $$

V=

\newcommand{\ud}{\mathrm{d}} \begin{displaymath} \int\!\!\int_{D} g(x,y) \, \ud x\, \ud y \end{displaymath}

g(x, y) dx dy
D

Per gli integrali multipli si usano gli appositi comandi forniti da amsmath (vedi il paragrafo 7.2.4 a pagina 115):
\[ V=\iiint_\Omega d\tau \]

Per scrivere gli intergali multipli si usano gli appositi comandi di amsmath.

V=

\[ \iint_D g(x,y)\,dx\,dy \]

g(x, y) dx dy
D

Si noti che il simbolo del differenziale nellintegrale stato scritto in corsivo e non in tondo, in accordo con luso dei documenti di matematica pura, che per in contrasto con le norme iso-uni, seguite nei lavori di carattere tecnico-scientico [Guiggiani e Mori, 2008, p. 5]. . . Insiemi numerici

Si consideri il seguente esempio:


\begin{equation} \forall x \in \mathbf{R}: \qquad x^{2} \ge 0 \end{equation}

x R :

x2

(B.9)

Per comporre gli insiemi numerici, conviene caricare il pacchetto amssymb e scrivere nel preambolo le seguenti denizioni:
\newcommand{\numberset}{\mathbb} \newcommand{\N}{\numberset{N}} \newcommand{\R}{\numberset{R}}

Per comporre gli insiemi numerici conviene adottare una scrittura che consenta di cambiare notazione con ununica modica.

In questo modo, basta scrivere \N per avere N ed possibile cambiare notazione con ununica modica. Lesempio precedente si scrive allora:
\begin{equation} \forall x \in \R \quad x^2 \ge 0. \end{equation}

x R x2

0.

(B.10)

200

. .

Riferimenti a una formula

Si consideri il seguente esempio:


\begin{equation} \label{eq:eta} \eta>0 \end{equation} Dalla formula (\ref{eq:eta}) si deduce che \ldots

>0

(B.11)

Dalla formula (B.11) si deduce che ...

Per riferirsi a una formula si usa \eqref.

Per riferirsi a una formula, conveniente usare il comando \eqref del pacchetto amsmath:
\begin{equation} \label{eqn:eta} \eta>0 \end{equation} Dalla formula~\eqref{eqn:eta} si deduce che\dots

>0

(B.12)

Dalla formula (B.12) si deduce che. . .

Si noti anche luso dello spazio insecabile (vedi il paragrafo 5.4.2 a pagina 50). . . Punti ellittici

Si consideri il seguente esempio:


\begin{displaymath} x_{1},\ldots,x_{n} \qquad x_{1}+\cdots+x_{n} \end{displaymath}

x1 , . . . , xn

x1 + + xn

Per inserire punti ellittici si usa \dots di amsmath.

Per inserire punti ellittici in una formula conveniente caricare il pacchetto amsmath e usare il comando \dots , che, automaticamente a seconda del contesto, inserisce i punti sulla linea di base del testo o li centra rispetto alla riga:
\[ x_1,\dots,x_n \qquad x_1+\dots+x_n \]

x1 , . . . , xn

x1 + + xn

.
Limportanza di scrivere codici sorgenti ben strutturati e commentati
A Spesso gli utenti di L TEX sottovalutano limportanza di un codice sorgente ben strutturato (con rientri, incolonnamenti, . . . ) e commentato. Nonostante tutto ci non sia indispensabile, tuttavia consigliabile farlo: un codice sorgente leggibile ne facilita la gestione (specialmente se allo stesso progetto lavorano pi persone). Nella stesura del codice sorgente si consiglia di adottare i seguenti accorgimenti:

. servirsi di commenti opportuni; suddividere con chiarezza il documento, aiutandosi eventualmente con rientri, incolonnamenti, a capo e righe vuote supplementari; limitare i comandi personalizzati a quelli effettivamente utili (un abuso dei comandi personali complica la lettura del codice, soprattutto a distanza di tempo); scrivere le etichette subito dopo i relativi comandi; adottare per le etichette un formato costituito da unabbreviazione come sec (per le sezioni), fig (per le gure), tab (per le tabelle), . . . seguita da : e da una parola chiave che caratterizza loggetto cui ci si riferisce; allineare le colonne delle tabelle; adottare per le chiavi bibliograche un formato costituito dal nome dellautore seguito da : e da una parola che caratterizza lopera; introdurre ciascun oggetto mobile scrivendo il relativo ambiente tra capoversi, cio preceduto e seguito da una riga vuota. Di seguito sono riportati alcuni esempi di codici sorgenti ben scritti.
A Un esempio di articolo composto con L TEX.

201

% Un articolo scritto con LaTeX \documentclass[a4paper,11pt]{article} \usepackage[italian]{babel} % per scrivere in italiano \usepackage[latin1]{inputenc} % lettere accentate da tastiera \usepackage[T1]{fontenc} % imposta la codifica dei font \usepackage{microtype} % microtipografia \usepackage{layaureo} % imposta i margini di pagina \usepackage{lipsum} % genera testo fittizio \usepackage{url} % per scrivere gli indirizzi Internet \begin{document} \title{Il titolo} \author{Lorenzo Pantieri} \maketitle \begin{abstract} \lipsum[1] \end{abstract} \tableofcontents \section{Un paragrafo} \lipsum[1] \subsection{Un sottoparagrafo} \lipsum[1] \subsection{Un sottoparagrafo}

202

\section{Un paragrafo} \label{sec:esempio} \lipsum[1] % Bibliografia \begin{thebibliography}{9} \bibitem{pantieri:arte} \textsc{L.~Pantieri} (2009), \emph{Larte di scrivere con \LaTeX}, \url{http://www.lorenzopantieri.net/LaTeX_files/ArteLaTeX.pdf}. \end{thebibliography} \end{document}

A Un esempio di curriculum vitae composto con L TEX.

% Un CV scritto con LaTeX \documentclass{scrartcl} \usepackage[italian]{babel} \usepackage[latin1]{inputenc} \usepackage[T1]{fontenc} \usepackage[LabelsAligned]{currvita} \usepackage[nochapters]{classicthesis} \usepackage{url}

% % % % % % %

classe article di KOMA per scrivere in italiano la codifica di input la codifica dei font un buon pacchetto per CV stile ClassicThesis per gli indirizzi Internet

\renewcommand{\cvheadingfont}{\LARGE\color{Maroon}} \renewcommand{\cvlistheadingfont}{\large} \renewcommand{\cvlabelfont}{\qquad} \begin{document} \begin{cv}{\spacedallcaps{Curriculum vitae}} \begin{cvlist}{\spacedlowsmallcaps{Dati personali}} \item Lorenzo Pantieri \item Nato a Cesena il 30 gennaio 1973 \item \url{http://www.lorenzopantieri.net/} \end{cvlist} \begin{cvlist}{\spacedlowsmallcaps{Esperienze lavorative}} \item \dots \end{cvlist} \end{cv} \end{document}

BIBLIOGRAFIA
American Mathematical Society (1999), Manuale duso del pacchetto amsmath, http://tug.ctan.org/tex-archive/info/italian/ amsldoc/itamsldoc.pdf. Beccari, C. (2009), Introduzione allarte della composizione tipograA ca con L TEX, http://www.guit.sssup.it/downloads/GuidaGuIT.pdf. (Citato alle pagine 5, 19, 45, 100, 173 e 193.) Bringhurst, R. (2001, ed. or. 1992), Gli Elementi dello Stile Tipograco, Sylvestre Bonnard, Milano. (Citato alle pagine 51, 156 e 205.) Busdraghi, F. (2004), Documentazione del pacchetto layaureo, http:// www.guit.sssup.it/downloads/layaureo.pdf. (Citato a pagina 52.) Caucci, L. e Spadaccini, M. (2000), Gestione di gure e tabelle con A L TEX, http://www.guit.sssup.it/downloads/fig_tut.pdf. (Citato a pagina 93.)
A Cevolani, G. (2006), Norme tipograche per litaliano in L TEX, ArsTEXnica, (1), http://www.guit.sssup.it/arstexnica/. (Citato a pagina 173.)

Fairbairns, R. (2007), The uk TEX faq, http://www.tex.ac.uk/ tex-archive/help/uk-tex-faq/newfaq.pdf. (Citato alle pagine 52, 112, 126, 186 e 193.)
A Fear, S. (2005), Publication quality tables in L TEX, Manuale duso del pacchetto booktabs, http://www.ctan.org/tex-archive/macros/latex/ contrib/booktabs/booktabs.pdf. (Citato a pagina 78.)

Flynn, P. (2005), In my opinion, PracTEX Journal, (1), http://tug. org/pracjourn/2005-1/flynn/. (Citato a pagina 9.)
A Goossens, M., Mittelbach, F. e Braams, J. (2004), The L TEX Companion, Addison-Wesley, Reading (Massachusetts). A Gregorio, E. (2003), Galleria degli orrori: Come maltrattare L TEX e rendere infelice un copy editor, http://profs.sci.univr.it/~gregorio/ orrori.pdf. (Citato a pagina 185.) A Gregorio, E. (2008a), Appunti di programmazione in L TEX e TEX, http: //profs.sci.univr.it/~gregorio/introtex.pdf. A Gregorio, E. (2008b), L TEX: breve guida ai pacchetti di uso pi comune, http://profs.sci.univr.it/~gregorio/breveguida.pdf. (Citato alle pagine 42, 81 e 107.)

Guiggiani, M. e Mori, L. F. (2008), Consigli su come non maltrattare le formule matematiche, ArsTEXnica, (5), http://www.guit.sssup. it/arstexnica/. (Citato alle pagine 193, 196 e 199.)

203

204

Knuth, D. E. (1973), Computer Programming as an Art, vol. 3, AddisonWesley, Reading (Massachusetts). (Citato a pagina vii.) Knuth, D. E. (1984), (Massachusetts). The TEXbook, Addison-Wesley, Reading

A Lamport, L. (1994), L TEX: a document preparation system, AddisonWesley, Reading (Massachusetts).

Mittelbach, F., Pignalberi, G. e Walden, D. (2007), Intervista a Frank Mittelbach, ArsTEXnica, (3), http://www.guit.sssup.it/ arstexnica/. (Citato a pagina 9.)
A Mori, L. F. (2006), Tabelle su L TEX 2 : pacchetti e metodi da utiArsTEXnica, (2), http://www.guit.sssup.it/arstexnica/. lizzare, (Citato a pagina 77.) A Mori, L. F. (2007), Scrivere la tesi di laurea con L TEX 2 , ArsTEXnica, (3), http://www.guit.sssup.it/arstexnica/. (Citato alle pagine 18, 54, 94, 103 e 156.) A Mori, L. F. (2008), Gestire la bibliograa con L TEX, ArsTEXnica, (6), http://www.guit.sssup.it/arstexnica/.

Mori, L. F. e Himmelmann, M. (2007), Scrivere il curriculum vitae, ArsTEXnica, (4), http://www.guit.sssup.it/arstexnica/. Oetiker, T., Partl, H., Hyna, I. e Schlegl, E. (2000), Una (mica tanA to) breve introduzione a L TEX 2 , http://www.ctan.org/tex-archive/ info/italian/lshort/itlshort.pdf ( disponibile anche la versione in inglese, aggiornata al 2008: ftp://tug.ctan.org/ pub/tex-archive/info/lshort/english/lshort.pdf). (Citato alle pagine 45, 47 e 136.)
A Pakin, S. (2008), The Comprehensive L TEX Symbol List, http://www.ctan. org/tex-archive/info/symbols/comprehensive/symbols-a4.pdf. (Citato a pagina 136.)

Pantieri, L. (2008a), Introduzione allo stile ClassicThesis, http://www. lorenzopantieri.net/LaTeX_files/ClassicThesis.pdf. (Citato alle pagine 29, 45, 51 e 63.) Pantieri, L. (2008b), Manuale duso del pacchetto ArsClassica,
http://www.ctan.org/tex-archive/macros/latex/contrib/ arsclassica/Italian/ArsClassica.pdf. (Citato a pagina 45.)

Trettin, M. e Zannarini, E. (2005), Elenco dei peccati degli utenti di A L TEX 2 , ftp://ftp.dante.de/tex-archive/info/l2tabu/italian/ l2tabuit.pdf. (Citato alle pagine 52, 112, 126, 186 e 193.) Wilson, P. (2004), The memoir class, Manuale duso della classe memoir, http://tug.ctan.org/tex-archive/macros/latex/contrib/ memoir/memman.pdf. (Citato a pagina 51.)
A Zannarini, E. e Vavassori, E. G. (2005), L TEX e i font: installazione pratica, http://www.guit.sssup.it/guitmeeting/2005/ articoli/zannarini-vavassori.pdf. (Citato a pagina 178.)

A Questo lavoro stato realizzato con L TEX 2 su Mac OS X usando unoriginale rielaborazione dello stile ClassicThesis, di Andr Miede. Lo stile ClassicThesis, ispirato allopera di Robert Bringhurst Gli Elementi dello Stile Tipograco [1992], disponibile su CTAN. La veste graca di questa guida pu essere riprodotta caricando il pacchetto ArsClassica, anchesso presente su CTAN.

: Il lavoro composto con la famiglia di font Palatino, di Hermann Zapf. Le formule matematiche sono state composte con i font AMS Euler, di Hermann Zapf e Donald Knuth. Il font a larghezza ssa il Bera Mono, originariamente sviluppato da Bitstream Inc. come Bitstream Vera. I font senza grazie sono gli Iwona, di Janusz M. Nowacki. Versione nale: 1 ottobre 2009.

INDICE ANALITICO

A
a4paper, 29 a5paper, 29 \AA, 61 \aa, 61 abbrv, 153, 154 \abs, 118 abstract, 30 \abstractname, 171

center, 68, 85, 99, 103, 191,

192
comment, 27 ctable, 90 description, 66 enumerate, 66 eqnarray, 126, 194 eqnarray*, 194 equation, 112, 127, 128,

Accenti matematici, 117, 118, 137 testuali, 26, 61, 174, 175 Acronimi, 54, 71, 151, 184 acronym, 71 \acute, 137 \addcontentsline, 60, 146, 153 address, 148, 149 \adjustmtc, 56 Adobe Acrobat, 96 Adobe Reader, 17, 39, 45, 96 \AE, 61 \ae, 61 Albero personale, 34, 155, 161 \aleph, 141 algorithm, 71 Algoritmi, 70, 71 algpseudocode, 71 align, 126128, 194 align*, 127 aligned, xiii, 128 \alpha, 116, 137 alpha, 152, 154 \alsoname, 171 \amalg, 138 Ambiente abstract, 30 align, 126128, 194 align*, 127 aligned, xiii, 128 array, 78 Bmatrix, 124 bmatrix, 124 cases, 128, 196 CD, 135

135
equation*, 112, 127 figure, 98103, 105, 109 figure*, 100 flushleft, 68 flushright, 68 gather, 126128 gather*, 127 gathered, xiii, 128 itaitemize, 165 itemize, 66, 146 longtable, 88 lstlisting, 71 matrix, 124 multicols, 161 multline, 126, 195 multline*, 126 otherlanguage, 43 otherlanguage*, 43 picture, 94 pmatrix, 124 proof, 133 savenotes, 89 SCfigure, 109 SCfigure*, 109 SCtable, 109 SCtable*, 109 sidewaystable, 87, 88 smallmatrix, 126 split, 126, 127, 195 subequations, 128 table, 84, 86, 87, 89, 98,

100102, 105, 109


table*, 100 tabular, 35, 7880, 8486,

8890, 92, 98, 99, 124

207

208

thebibliography, 145147,

157, 158, 184 theindex, 161 thesitography, 158 titlepage, 63 verse, 70 Vmatrix, 124 vmatrix, 124 wrapfloat, 107, 108 Ambienti personalizzati, 165 \AmS, 60 AMS Euler, 116 amscd, 135 amsmath, 35, 60, 111, 112, 121, 126, 194200, 203 amssymb, 35, 112, 143, 199 amsthm, 35, 131, 132 \and, 62 \angle, 141 ansinew, 44 Anteprima, 45, 95, 96 \ap, 130 Apici, 56, 114, 115, 119, 122, 131, 176 Apostrofo, 25, 174176 Appendici, 53, 54 \appendix, 53 \appendixname, 171 Apple, inc., xix, xxi applemac, 44 \approx, 138 \approxeq, 142 Aquamacs, 17 \arccos, 122 \arcsin, 122 \arcsinh, 121 \arctan, 122 \arg, 122 array, 35, 8082, 88, 90, 189 array, 78 \arraybackslash, 83 \Arrowvert, 139 \arrowvert, 139 \Ars, 26, 60, 146 ArsClassica, 204, 205 \arte, 164 article, 29, 30, 37, 53, 60, 146, 153, 158 \ast, 138 Asterisco, 55, 62, 176, 178 \asymp, 138 Asymptote, 94

\author, 62 author, 148151

B
\b, 61 b5paper, 29

babel, 31, 35, 36, 41, 42, 49, 57, 130, 170, 171, 174, 176 \backepsilon, 142 \backmatter, 53 \backprime, 141 backref, 36, 39, 157 \backsim, 142 \backsimeq, 142 \backslash, 139 \bar, 117, 137, 197 Barre, 117, 124, 176, 178, 183 \barwedge, 142 \Bbbk, 141 beamer, 29 \because, 142 Bera Mono, 205 Berners-Lee, T., xix \beta, 116, 137 \beth, 141 \between, 142 \bfseries, 82, 166 \bibitem, 146 Bibliograa, 38, 54, 145155, 157, 158, 179, 184 \bibliography, 152 \bibliographystyle, 152, 153, 155 \bibname, 158, 171 BibTEX, 38, 39, 145, 146, 148, 150153, 155, 157, 158, 184 bibunits, 157 \Big, 122 \big, 122 \bigcap, 139 \bigcirc, 138 \bigcup, 139 \Bigg, 122 \bigg, 122 \Biggl, 123 \biggl, 122, 195 \Biggr, 123 \biggr, 122, 195 \Bigl, 122 \bigl, 122 \bigodot, 139

209

\bigoplus, 139 \bigotimes, 139 \Bigr, 122 \bigr, 122 \bigskip, 48 \bigstar, 141 \bigtriangledown, 138 \bigtriangleup, 138 \biguplus, 139 \bigvee, 139 \bigwedge, 139 binding, 52 \binom, 123, 197 \blacklozenge, 141 \blacksquare, 141 \blacktriangle, 141 \blacktriangledown, 141 \blacktriangleleft, 142 \blacktriangleright, 142

C
\c, 61

Campo
address, 148, 149 author, 148151 booktitle, 149 chapter, 149 edition, 148, 149 editor, 148, 149, 151 howpublished, 148, 149 institution, 149, 150 journal, 148 key, 148, 149 month, 148150 note, 148150 number, 148, 149 organization, 149 pages, 148, 149 publisher, 148150 school, 149 series, 148, 149 title, 148150 type, 149 volume, 148, 149 year, 148150 \Cap, 142 \cap, 138

bm, 124, 129


\bm, 124, 129, 130 Bmatrix, 124 bmatrix, 124 \bmod, 121 bmp, 95

bmpsize, 95 book, 2931, 37, 53, 55, 60, 146, 153, 157, 169 booklet, 148 bookmarks, 58, 60 booktabs, 36, 77, 79, 188191, 203 booktitle, 149 \bot, 141 \bottomrule, 79, 188 bounding box, 96 \bowtie, 138 \Box, 141 \boxdot, 142 \boxminus, 142 \boxplus, 142 \boxtimes, 142 \Bra, 124 \bracevert, 139 \Braket, 124 braket, 124 \breve, 137 Bringhurst, R., 51, 52, 205 \bullet, 138 \Bumpeq, 142 \bumpeq, 142

Capolettera, 72, 73 Capoversi, 24, 4648, 75, 179, 180 caption, 36, 85, 105, 107, 191 \caption, 84, 85, 102, 105, 193 Caratteri speciali, 2426 cases, 128, 196 \ccname, 171 CD, 135 \cdot, 138 \cdots, 141 \cellcolor, 93 center, 68, 85, 99, 103, 191, 192 \centerdot, 142 \centering, 83, 85, 103, 191, 192 \chapter, 43, 53, 55, 56, 169 chapter, 149 \chapter*, 55, 56 \chaptermark, 169 \chaptername, 171 \check, 137 \chi, 137 Chiave binding, 52

210

bookmarks, 58, 60 citecolor, 59 colorlinks, 58 filecolor, 59 font, 105 format, 105 height, 97 labelfont, 105 linkcolor, 59 pdfauthor, 58 pdffitwindow, 58 pdfmenubar, 58 pdfnewwindow, 58 pdftitle, 58 pdftoolbar, 58 unicode, 58, 61 urlcolor, 59 width, 97, 192

classic, 156

chngpage, 36, 52
\circ, 138 \circeq, 142 \circlearrowleft, 140 \circlearrowright, 140 \circledast, 142 \circledcirc, 142 \circleddash, 142 \circledS, 141

Citazioni fuori corpo, 69, 70, 180 in corpo, 69 \cite, 36, 146, 148, 152, 153 \citeauthor, 156 citecolor, 59 \citep, 156 \citep*, 156 \citet, 156 \citet*, 156 \citeyear, 156 \citeyearpar, 156 Classe article, 29, 30, 37, 53, 60, 146, 153, 158 beamer, 29 book, 2931, 37, 53, 55, 60, 146, 153, 157, 169 examdesign, 29 KOMA-Script, 29, 62, 85 letter, 29 memoir, 29, 204 report, 29, 30, 37, 53, 60, 146, 153, 157 toptesi, 29

ClassicThesis, vii, 29, 44, 63, 204, 205 \cleardoublepage, 104, 146 \clearpage, 146, 153 \clubsuit, 141 CM-Super, 45, 72 \cmidrule, 80 cmyk, xviii, 91 Codici, 70 Codica dei font, 36, 44, 45, 174 \colon, 118 color, 90 colorlinks, 58 colortbl, 9093 \columncolor, 9093 \columnwidth, 83, 100 Comandi personalizzati, 163, 164 comment, 27 Commenti, 27 \complement, 141 Computer Modern, xviii, 9, 44, 45 conference, 148 \cong, 138 \contentsname, 171 \coprod, 139 \copyright, 141 Corpo dei font, 53, 105, 129, 130, 166168 del documento, 28 del testo, 51, 69, 104, 112 Corsivo matematico, 112, 120, 129, 130 testuale, 65, 112, 166, 177179, 181, 182, 184 \cos, 121, 122 \cosh, 122 \cot, 122 \coth, 122 \cov, 197 cp850, 44 crop, 52 \csc, 122 ctable, 90 ctable, 90 \Cup, 142 \cup, 138 \curlyeqprec, 142

211

\curlyeqsucc, 142 \curlyvee, 142 \curlywedge, 142 \curvearrowleft, 140 \curvearrowright, 140

D
\d, 61 \dag, 141 \dagger, 138 \daleth, 141 \dashleftarrow, 140 \dashrightarrow, 140 \dashv, 138 \date, 62

dcolumn, 83, 190


\ddag, 141 \ddagger, 138 \ddot, 137 \ddots, 125, 141 \DeclareMathOperator, 121, 122,

\dot, 137 \Doteq, 142 \doteq, 138 \doteqdot, 142 \dotplus, 142 \dots, 29, 57, 119, 141, 178, 200 \doublebarwedge, 142 \doublecap, 142 \doublecup, 142 \doublespacing, 52 \Downarrow, 139, 140 \downarrow, 139, 140 \downdownarrows, 140 \downharpoonleft, 140 \downharpoonright, 140 draft, 30, 48 dvi, xviii, xxii, 11, 15, 18, 39, 45 dvipdfmx, 18 dvips, 18

E EC, xviii, 45 edition, 148, 149 Editor Aquamacs, 17 Emacs, 16, 17 EmacsW32, 17 Kile, 16 LEd, 13, 15 Texmaker, 17 TEXnicCenter, 13, 14 TEXShop, 15 Vim, 17 WinEdt, 13, 14 editor, 148, 149, 151 Elenchi numerati, 66 puntati, 66 Elenco dei siti Web consultati, 157 delle gure, 38, 102, 107 delle tabelle, 38, 84, 102, 107 \ell, 141 Emacs, 16, 17 EmacsW32, 17 \emph, 27 empheq, 136 empty, 37 emptypage, 169 \emptyset, 141 \enclname, 171

197 Dedica, 54, 68, 69 definition, 132 \deg, 122 \Delta, 116, 137 \delta, 116, 137 Derivate, 115 description, 66 Descrizioni, 66 \det, 122 \dfrac, 131 \diagdown, 141 Diagrammi commutativi, 135 \diagup, 141 \Diamond, 141 \diamond, 138 \diamondpar, 73 \diamondsuit, 141 Didascalie abbreviate, 102 laterali, 108 personalizzate, 36, 105 \digamma, 141 \dim, 122 Dimostrazioni, 131, 133 \displaystyle, 130 \div, 138 \divideontimes, 142 \documentclass, 29, 38, 48 Documenti corposi, 39 \dominitoc, 56

212

endoats, 104
\enlargethispage, 74 enumerate, 66

enumitem, 36, 67 Enunciati, 35, 131134 Epigra, 72 epigraph, 72 eps, xviii, 17, 19, 38, 94, 95 \epsilon, 137 \eqcirc, 142 eqnarray, 126, 194 eqnarray*, 194 \eqref, 112, 200 \eqslantgtr, 142 \eqslantless, 142 equation, 112, 127, 128, 135 equation*, 112, 127 \equiv, 138 Escher, M. C., ii, 79, 97, 99, 105109, 113, 160, 164, 192 esp2pdf, 95 esptopdf, 95 \eta, 137 \eth, 141 eucal, 143 \euro, 62 eurosym, 36, 62 examdesign, 29 executivepaper, 29 \exists, 141 \exp, 122 F
\fallingdotseq, 142

fancyhdr, 36, 37, 169, 170 feynmf, 136 figure, 98103, 105, 109 figure*, 100 \figurename, 171 filecolor, 59 final, 30 \Finv, 141 \flat, 141 fleqn, 30, 126, 193 oat, 36, 100, 105 \FloatBarrier, 105 flushleft, 68 flushright, 68 Font AMS Euler, 116 Bera Mono, 205

CM-Super, 45, 72 Computer Modern, xviii, 9, 44, 45 EC, xviii, 45 Iwona, 205 Latin Modern, 45, 72 matematici, 112, 129, 130, 143 Palatino, 116, 205 Times New Roman, 9 font, 105 fontenc, 36, 45, 72, 174 footmisc, 36, 65 footnote, 89 \footnote, 89 \footnotesize, 167, 168 \forall, 141 \foreignlanguage, 43 format, 105 Formato bmp, 95 dvi, xviii, xxii, 11, 15, 18, 39, 45 eps, xviii, 17, 19, 38, 94, 95 gif, xix, 94 jpg, xx, 19, 38, 95 pdf, xx, 11, 15, 1719, 35, 38, 39, 45, 9496 png, xix, xx, 19, 38, 94, 95 ps, xviii, xx, 17, 94, 95 tiff, xxi, 94 Formule evidenziate, 136 fuori corpo, 112, 113, 126, 127, 133, 135, 194 in corpo, 24, 112 non numerate, 112, 126, 127 numerate, 112 Formule chimiche, 135 \frac, 114 Frazioni, 114, 178, 183 Frecce, 117119, 135, 140 \frenchspacing, 50 Frontespizio, 54, 62, 63 frontespizio, 62, 63 \frontmatter, 53, 55 \frown, 138

213

G
\Game, 141 \Gamma, 116, 137 \gamma, 116, 137 gather, 126128 gather*, 127 gathered, xiii, 128 \gcd, 122 \ge, 138

geometry, 31, 36, 52, 186


\geq, 138 \geqq, 142 \geqslant, 142 \gets, 140 \gg, 138 \ggg, 142 \gggtr, 142

Ghostscript, 13, 17, 95 Ghostview, 17, 95, 96, 98 gif, xix, 94 \gimel, 141 Gimp, 17, 95, 96 Glossari, 71 glossaries, 71 \glossaryname, 171 \gnapprox, 143 \gneq, 143 \gneqq, 143 \gnsim, 143 Gnuplot, 16, 94 Graci di Feynman, 135 \graphicspath, 98 graphicx, 18, 30, 31, 36, 86, 96, 97, 168 \grave, 137 gray, 91 Gregorio, E., i, vii, xxiv, 62 GSview, 13, 17, 95, 96, 98 \gtrapprox, 142 \gtrdot, 142 \gtreqless, 142 \gtreqqless, 142 \gtrless, 142 \gtrsim, 142 \GuIT, 60 guit, 26, 31, 60, 146 \GuIT*, 60 \gvertneqq, 143 H
\H, 61 \hat, 137

\hbar, 141 \hdotsfor, 125 headings, 37, 55 \headtoname, 171 \heartpar, 73 \heartsuit, 141 height, 97 \hline, 79, 188 \hoffset, 186 \hom, 122 \hookleftarrow, 140 \hookrightarrow, 140 howpublished, 148, 149 \href, 59 \hslash, 141 html, xix, xx, 7 \Huge, 167, 168 \huge, 167, 168

hyperref, 18, 36, 39, 58, 60, 61, 157, 187 \hypersetup, 58 \hyphenation, 48, 49, 186 I
\i, 61

icomma, 183
\idotsint, 115 \iff, 119, 140 \iiiint, 115 \iiint, 115 \iint, 115 \Im, 141

ImageMagick, 95
\imath, 141

Immagini afancate, 105 bitmap, 17, 19, 9396 con sfondo colorato, 168, 169 fuori testo, 98100 in testo, 98, 99 vettoriali, 19, 9396 \implies, 119 \in, 115, 138 inbook, 149 \include, 40 \includegraphics, 9799, 108, 192 \includeonly, 40 incollection, 149 indentrst, 36, 51, 69, 180 \index, 160, 161

214

\indexname, 171

Indice analitico, 36, 38, 39, 54, 159161 Indice generale, 28, 38, 42, 5456, 146, 153 Indirizzi Internet, 36, 58, 157, 187 \inf, 122 \infty, 115, 141 Inkscape, 94 innercaption, 108 inproceedings, 148, 149 \input, 40 inputenc, 36, 44, 56, 174, 175, 186 Insiemi numerici, 115 institution, 149, 150 \int, 115, 139 Integrali, 115, 199 \intercal, 142 Intercitazioni, 70, 177 Interlinea, 52, 69, 112, 167, 168 \iota, 137 itaitemize, 165 italian, 49, 57, 130, 174, 176 \item, 66, 67 itemize, 66, 146 \itshape, 82, 166 Iwona, 205 J
\j, 61 \jmath, 141 \Join, 138 journal, 148 jpg, xx, 19, 38, 95

\Lambda, 137 \lambda, 137

Lamport, L., 5, 6, 9
\land, 119, 138 \langle, 139 \LARGE, 167, 168 \Large, 167, 168 \large, 167, 168 \LaTeX, 23, 60 \latex, 23 \LaTeXe, 60

K
\kappa, 137 \ker, 122 \Ket, 124 key, 148, 149

Kile, 16 Knuth, D. E., vii, 36, 9, 205 KOMA-Script, 29, 62, 85 L


\L, 61 \l, 61 \label, 36, 63, 64, 85, 102, 107,

112, 146, 193


labelfont, 105

Latin Modern, 45, 72 latin1, 44 latin9, 44 \latino, 163, 164 layaureo, 31, 52, 186, 203 \lbrace, 139 \lbrack, 139 \lceil, 139 \le, 138 \leadsto, 140 LEd, 13, 15 \left, 123, 195, 197 \Leftarrow, 140 \leftarrow, 140 \leftarrowtail, 140 leftcaption, 108 \leftharpoondown, 140 \leftharpoonup, 140 \leftleftarrows, 140 \leftmark, 169 \Leftrightarrow, 140 \leftrightarrow, 140 \leftrightarrows, 140 \leftrightharpoons, 140 \leftrightsquigarrow, 140 \leftthreetimes, 142 legalpaper, 29 \leq, 138 leqno, 30 \leqq, 142 \leqslant, 142 \lessapprox, 142 \lessdot, 142 \lesseqgtr, 142 \lesseqqgtr, 142 \lessgtr, 142 \lesssim, 142 letter, 29 Lettere greche, 116, 137 letterpaper, 29, 30 lettrine, 72

215

\lfloor, 139 \lg, 122 \lgroup, 139 \lhd, 138 \lim, 122 \liminf, 122

lstlisting, 71 \ltimes, 142 \lVert, 117 \lvert, 117 \lvertneqq, 143

Limiti, 115, 122


\limsup, 122 \linespread, 53 \linewidth, 100

M
\mail, 60 \mainmatter, 53, 55

MacTEX, xi, 15, 18, 32, 33

Linguaggio html, xix, xx, 7 xml, xx, xxii, 7, 10 sgml, xix, xx, xxii, 7 linkcolor, 59 \listfigurename, 171 listings, 36, 70, 71 \listof, 100 \listoffigures, 107 \listoftables, 84, 107 \listtablename, 171 \ll, 138 \llcorner, 139 \Lleftarrow, 140 \lll, 142 \llless, 142 \lmoustache, 139 \ln, 122 \lnapprox, 143 \lneq, 143 \lneqq, 143 \lnot, 119, 141 \lnsim, 143 \log, 121, 122 Loghi, 60, 61 \Longleftarrow, 140 \longleftarrow, 140 \Longleftrightarrow, 140 \longleftrightarrow, 140 \longmapsto, 140 \Longrightarrow, 140 \longrightarrow, 140 longtable, 36, 88, 100 longtable, 88 \looparrowleft, 140 \looparrowright, 140 \looseness, 74, 75 \lor, 119, 138 \lozenge, 141 \lrcorner, 139 \Lsh, 140 \lstinline, 71

Maiuscoletto, 73, 156, 166, 178, 179, 184 makeidx, 36, 159 MakeIndex, 39, 71, 161 \maketitle, 28, 62, 65 manual, 148, 149 \mapsto, 119, 140 Margini di pagina, 31, 36, 51, 52, 69, 186 \markboth, 37, 55 \markright, 37 mastersthesis, 148, 149 \mathbb, 115, 143 \mathbf, 124, 129, 143 \mathcal, 129, 143, 198 Mathematica, 94 \mathit, 143 \mathnormal, 143 \mathrm, 130, 143 mathrsfs, 143 \mathscr, 143 \mathsf, 143 mathtools, 117, 196 \mathtt, 143 Matrici, 124126 matrix, 124 \max, 122 \mbox, 75 \mcescher, 164 \measuredangle, 141 \medskip, 48, 85 memoir, 29, 204 METAFONT, 9, 60 METAPOST, 60, 94 \MF, 60 mogo, 60 mhchem, 135 \mho, 141 microtype, 18, 36, 50 \mid, 117, 138 \midrule, 79, 188 Miede, A., vii, 205

216

MiKTEX, xi, xxii, 1113, 3234, 42, 45 MiKTEX Package Manager, 32 \min, 122 Miniindici, 36, 39, 56 minitoc, 36, 39, 56 \minitoc, 56 misc, 149, 158 Modello di colore cmyk, xviii, 91 gray, 91 named, 91 RGB, xviii, xx, 91 rgb, xviii, xx, 91 \models, 138 month, 148150 \MP, 60 \mp, 113, 138 mparhack, 64 \mtcskip, 56 \mu, 137 multibib, 158 multicol, 36, 161 multicols, 161 \multicolumn, 7981 \multimap, 140 multirow, 80 \multirow, 80, 81 multline, 126, 195 multline*, 126 myheadings, 37 N
\nabla, 141 named, 91

\newtheoremstyle, 132 \nexists, 141 \ngeq, 143 \ngeqq, 143 \ngeqslant, 143 \ngtr, 143 \ni, 138

nicefrac, 183
\nLeftarrow, 143 \nleftarrow, 143 \nLeftrightarrow, 143 \nleftrightarrow, 143 \nleq, 143 \nleqq, 143 \nleqslant, 143 \nless, 143 \nmid, 143 \nocite, 153

Norma, 117
\norma, 118 \normalsize, 167, 168

natbib, 36, 155, 156


natbib_ita, 154, 156 \natural, 141 \ncong, 143 \ne, 138 \nearrow, 140 \neg, 141 \neq, 138

Neretto, 129, 130, 133, 178, 179


\newcolumntype, 81, 91 \newcommand, 164, 165 \newenvironment, 165 \newfloat, 100 \newline, 48 \newpage, 75 \newtheorem, 131, 132 \newtheorem*, 132

Norme iso-uni, 111, 120, 124, 173, 175 \notag, 127 Note a margine, 64 a pi di pagina, 36, 62, 64, 74, 178, 187 dentro a tabelle, 89 note, 148150 \notin, 115, 138 notitlepage, 30 Nowacki, J. M., 205 \nparallel, 143 \nprec, 143 \npreceq, 143 \nRightarrow, 143 \nrightarrow, 143 \nshortmid, 143 \nshortparallel, 143 \nsim, 143 \nsubseteq, 143 \nsubseteqq, 143 \nsucc, 143 \nsucceq, 143 \nsupseteq, 143 \nsupseteqq, 143 \ntriangleleft, 143 \ntrianglelefteq, 143 \ntriangleright, 143 \ntrianglerighteq, 143 \nu, 137

217

number, 148, 149 numbers, 156

numprint, 183
\nVDash, 143 \nVdash, 143 \nvDash, 143 \nvdash, 143 \nwarrow, 140

O
\O, 61 \o, 61 \oddsidemargin, 52, 186 \odot, 138 \OE, 61 \oe, 61

Oggetti mobili, 36, 71, 84, 98, 100105, 193 \oint, 139 \Omega, 137 \omega, 137 \ominus, 138 Omissis, 57, 177, 178 OmniGrafe, 94 \onehalfspacing, 52 oneside, 29, 30, 37 openany, 30 openright, 30, 169 Operatori, 120122, 126, 139, 197 \oplus, 138 Opzione 10pt, 29, 30, 168 11pt, 29, 168 12pt, 29, 168 a4paper, 29 a5paper, 29 ansinew, 44 applemac, 44 b5paper, 29 cp850, 44 draft, 30, 48 executivepaper, 29 final, 30 fleqn, 30, 126, 193 innercaption, 108 italian, 49, 57, 130, 174, 176 latin1, 44 latin9, 44 leftcaption, 108 legalpaper, 29

leqno, 30 letterpaper, 29, 30 notitlepage, 30 numbers, 156 oneside, 29, 30, 37 openany, 30 openright, 30, 169 outercaption, 108 ragged, 108 raggedleft, 108 raggedright, 108 rightcaption, 108 sort, 156 sort&compress, 156 square, 156 T1, 45, 174 table, 92 tablecaptionabove, 85 tight, 56 titlepage, 30 twocolumn, 30 twoside, 29, 30 utf8, 44 utf8x, 44

Orfane, 75
organization, 149 \oslash, 138 otherlanguage, 43 otherlanguage*, 43 \otimes, 138 outercaption, 108 \overbrace, 123 \overline, 117, 197 \overrightarrow, 117 \overset, 116 \owns, 138

P
\P, 141

Pacchetto acronym, 71 algorithm, 71 algpseudocode, 71 amscd, 135 amsmath, 35, 60, 111, 112, 121, 126, 194200, 203 amssymb, 35, 112, 143, 199 amsthm, 35, 131, 132 array, 35, 8082, 88, 90, 189 ArsClassica, 204, 205

218

babel, 31, 35, 36, 41, 42, 49, 57, 130, 170, 171, 174, 176 backref, 36, 39, 157 bibunits, 157 bm, 124, 129 bmpsize, 95 booktabs, 36, 77, 79, 188 191, 203 braket, 124 caption, 36, 85, 105, 107, 191 chngpage, 36, 52 color, 90 colortbl, 9093 comment, 27 crop, 52 ctable, 90 dcolumn, 83, 190 empheq, 136 emptypage, 169 endoats, 104 enumitem, 36, 67 epigraph, 72 eucal, 143 eurosym, 36, 62 fancyhdr, 36, 37, 169, 170 feynmf, 136 oat, 36, 100, 105 fontenc, 36, 45, 72, 174 footmisc, 36, 65 footnote, 89 frontespizio, 62, 63 geometry, 31, 36, 52, 186 glossaries, 71 graphicx, 18, 30, 31, 36, 86, 96, 97, 168 guit, 26, 31, 60, 146 hyperref, 18, 36, 39, 58, 60, 61, 157, 187 icomma, 183 indentrst, 36, 51, 69, 180 inputenc, 36, 44, 56, 174, 175, 186 layaureo, 31, 52, 186, 203 lettrine, 72 listings, 36, 70, 71 longtable, 36, 88, 100 makeidx, 36, 159 mathrsfs, 143 mathtools, 117, 196 mogo, 60

mhchem, 135 microtype, 18, 36, 50 minitoc, 36, 39, 56 mparhack, 64 multibib, 158 multicol, 36, 161 multirow, 80 natbib, 36, 155, 156 nicefrac, 183 numprint, 183 parskip, 180 pgf, 94 placeins, 105 ppchtex, 136 pst-pdf, 19 PSTricks, 19, 94, 135 rotating, 87 setspace, 52, 53 shapepar, 73 showidx, 161 showlabels, 36 sidecap, 108, 109 siunitx, 135, 184 subg, 36, 105, 106 subgure, 105 supertabular, 88 syntonly, 40 tabularx, 36, 8284, 88 textcomp, 135 type1ec, 72 ucs, 44 url, 36, 58, 158, 187 varioref, 37, 64 verse, 70 wrapg, 37, 107 xcolor, 37, 9092, 136, 168 xfrac, 183 xspace, 26, 164 xtab, 88 Xy-pic, 94, 135 XyMTeX, 136 \pagebreak, 75 \pagename, 171 \pageref, 63 pages, 148, 149 Pagine bianche, 169 Palatino, 116, 205 \par, 47, 167, 168 \paragraph, 53 \parallel, 117, 138 Parentesi, 122124 Parole evidenziate, 65, 179

219

Parole straniere, 177, 179182 parskip, 180 \part, 53 \partial, 141 \partname, 171 pdf, xx, 11, 15, 1719, 35, 38, 39, 45, 9496 pdfauthor, 58 \pdfbookmark, 60 pdffitwindow, 58 pdfmenubar, 58 pdfnewwindow, 58 pdftitle, 58 pdftoolbar, 58 \ped, 130 Pedici, 114, 115, 119, 122, 131 \perp, 138 pgf, 94 phdthesis, 149 \Phi, 137 \phi, 137 \Pi, 137 \pi, 137 Pi di pagina, 37, 97, 169 picture, 94 \pitchfork, 142 placeins, 105 plain, 37, 55, 132, 152, 153 plain_ita, 154, 155 plainnat, 156 \pm, 113, 138 pmatrix, 124 \pmod, 121 png, xix, xx, 19, 38, 94, 95 \pounds, 141 ppchtex, 136 \Pr, 122 Preambolo del documento, 27 di una tabella, 79 \prec, 138 \precapprox, 142 \preccurlyeq, 142 \preceq, 138 \precnapprox, 143 \precneqq, 143 \precnsim, 143 \precsim, 142 \prefacename, 171 \prime, 141 proceedings, 149 \prod, 114, 139

Prodotti, 114 Programma Adobe Acrobat, 96 Adobe Reader, 17, 39, 45, 96 Anteprima, 45, 95, 96 Asymptote, 94 BibTEX, 38, 39, 145, 146, 148, 150153, 155, 157, 158, 184 dvipdfmx, 18 dvips, 18 esp2pdf, 95 esptopdf, 95 Ghostscript, 13, 17, 95 Ghostview, 17, 95, 96, 98 Gimp, 17, 95, 96 Gnuplot, 16, 94 GSview, 13, 17, 95, 96, 98 ImageMagick, 95 Inkscape, 94 MakeIndex, 39, 71, 161 Mathematica, 94 METAFONT, 9, 60 METAPOST, 60, 94 MiKTEX Package Manager, 32 OmniGrafe, 94 ps2pdf, 18 SumatraPDF, 18 TEX Live Manager, 32, 33 TEX Live Utility, 32, 33 WinFIG, 94 Xg, 16, 94 Xpdf, 45 Yap, xxii, 39 proof, 133 \proofname, 171 \propto, 138 proTEXt, 13 ps, xviii, xx, 17, 94, 95 ps2pdf, 18 \Psi, 137 \psi, 137 pst-pdf, 19 PSTricks, 19, 94, 135 publisher, 148150 Punti ellittici, 29, 56, 57, 119, 125, 176, 178, 200

220

Q
\qedhere, 133 \qquad, 113, 119, 120 \quad, 113, 119, 120

R Radici, 114 ragged, 108


\raggedbottom, 53 \raggedleft, 83 raggedleft, 108 \raggedright, 83 raggedright, 108

Raggruppamenti, 113
\rangle, 139 \rbrace, 139 \rbrack, 139 \rceil, 139 \Re, 121, 122, 141

Record
article, 148 book, 148 booklet, 148 conference, 148 inbook, 149 incollection, 149 inproceedings, 148, 149 manual, 148, 149 mastersthesis, 148, 149 misc, 149, 158 phdthesis, 149 proceedings, 149 techreport, 149 unpublished, 149 \ref, 36, 63, 64, 85, 102, 193 \refname, 158, 171 remark, 132 \renewcommand, 164 \renewenvironment, 165

autore-anno, 155, 156 nali, 157 Riferimenti incrociati, 3638, 63, 64 Riferimenti ipertestuali, 18, 36, 5860, 71 \right, 123, 195, 197 \Rightarrow, 140 \rightarrow, 140 \rightarrowtail, 140 rightcaption, 108 \rightharpoondown, 140 \rightharpoonup, 140 \rightleftarrows, 140 \rightleftharpoons, 140 \rightmark, 169 \rightrightarrows, 140 \rightsquigarrow, 140 \rightthreetimes, 142 \risingdotseq, 142 \rmfamily, 82, 166 \rmoustache, 139 rotating, 87 \rowcolor, 92, 93 \Rrightarrow, 140 \Rsh, 140 \rtimes, 142 \rVert, 117 \rvert, 117 S
\S, 141 savenotes, 89 \scalebox, 86 SCfigure, 109 SCfigure*, 109 school, 149 \scriptscriptstyle, 130 \scriptsize, 167, 168 \scriptstyle, 130 \scshape, 166 SCtable, 109 SCtable*, 109 \searrow, 140 \sec, 122 \section, 53, 169 \sectionmark, 169 \seename, 171

report, 29, 30, 37, 53, 60, 146, 153, 157 \resizebox, 86, 87 \rfloor, 139 RGB, xviii, xx, 91 rgb, xviii, xx, 91 \rgroup, 139 \rhd, 138 \rho, 116, 137 Rientro, 30, 36, 46, 48, 51, 66, 68, 69, 105, 126, 133, 179, 180 Riferimenti bibliograci

Segnalibri, 18, 39, 5861 series, 148, 149 \Set, 124 \setminus, 117, 138

221

setspace, 52, 53
\sffamily, 166 sgml, xix, xx, xxii, 7

\sqsupseteq, 138 \square, 141 square, 156

shapepar, 73
\sharp, 141 \shortmid, 142 \shortparallel, 142

Stallman, R., xix


\star, 138

showidx, 161 showlabels, 36 sidecap, 108, 109


\sidecaptionrelwidth, 109 sidewaystable, 87, 88

Sigle, 151, 184


\Sigma, 137 \sigma, 116, 137

Sillabazione, 42, 45, 48, 49


\sim, 138 \simeq, 138 \sin, 121, 122 \singlespacing, 52 \sinh, 122

siunitx, 135, 184


\slshape, 82, 166 \small, 88, 167, 168 \smallfrown, 142 smallmatrix, 126 \smallsetminus, 142 \smallskip, 48 \smallsmile, 142 \smile, 138

Somme, 114 sort, 156


sort&compress, 156 \spadesuit, 141

Spazio di un quadrato, 119, 120 di un quadratone, 119, 120 in ne di periodo, 46, 50 insecabile, 50 sottile, 113, 115, 119121, 176, 183 tra capoversi, 48, 53 tra parole, 48, 50 \sphericalangle, 141 split, 126, 127, 195 \sqcap, 138 \sqcup, 138 \sqrt, 114 \sqsubset, 138, 142 \sqsubseteq, 138 \sqsupset, 138, 142

Stile bibliograco abbrv, 153, 154 alpha, 152, 154 classic, 156 natbib_ita, 154, 156 plain, 152, 153 plain_ita, 154, 155 plainnat, 156 unsrt, 152 Stile dei font, 129, 131, 163, 166, 178 Stile di enunciato definition, 132 plain, 132 remark, 132 Stile di pagina empty, 37 headings, 37, 55 myheadings, 37 plain, 37, 55 subequations, 128 subg, 36, 105, 106 subgure, 105 \subfloat, 105 \subparagraph, 53 \subsection, 53 \Subset, 142 \subset, 138 \subseteq, 138 \subseteqq, 142 \subsetneq, 143 \subsetneqq, 143 \substack, 123 \subsubsection, 53 \succ, 138 \succapprox, 142 \succcurlyeq, 142 \succeq, 138 \succnapprox, 143 \succneqq, 143 \succnsim, 143 \succsim, 142 \sum, 114, 139 SumatraPDF, 18 \sup, 122 supertabular, 88 \Supset, 142

222

\supset, 138 \supseteq, 138 \supseteqq, 142 \supsetneq, 143 \supsetneqq, 143 \surd, 141 \swarrow, 140

syntonly, 40 T
\t, 61 T1, 45, 174

\textsf, 166 \textsl, 166 \textstyle, 130 \texttt, 166 \textup, 130 \textwidth, 52, 83, 100, 186 \tfrac, 131 \thanks, 62, 65 thebibliography, 145147, 157,

158, 184
theindex, 161 \theoremstyle, 132 \therefore, 142 thesitography, 158 \Theta, 137 \theta, 137 \thickapprox, 142 \thicksim, 142 tiff, xxi, 94 tight, 56 \tilde, 137 \times, 138

Tabelle afancate, 105 fuori testo, 98100 in testo, 98, 99 table, 84, 86, 87, 89, 92, 98, 100102, 105, 109 table*, 100 tablecaptionabove, 85 \tablename, 171 \tableofcontents, 28, 56, 102 tabular, 35, 7880, 8486, 8890, 92, 98, 99, 124 \tabularnewline, 83 tabularx, 36, 8284, 88 \tan, 122 \tanh, 122 \tau, 137 techreport, 149 Tesi di laurea, 29, 54, 62, 184, 204 Testatina, 37, 97, 166, 169 \TeX, 60 TEX Live Manager, 32, 33 TEX Live Utility, 32, 33 TEX Live, xi, 1113, 15, 16, 3234, 42, 45 Texmaker, 17 TEXnicCenter, 13, 14 \texorpdfstring, 61 TEXShop, 15 \text, 113, 128, 130, 194, 196 \textasciicircum, 26 \textasciitilde, 26 \textbackslash, 26 \textbf, 163, 166 textcomp, 135 \textheight, 97 \textit, 163, 166 \textrm, 166 \textsc, 166

Times New Roman, 9


\tiny, 167, 168 \title, 62 title, 148150 titlepage, 30, 63

Titolo del documento, 28, 30, 62


\tmark, 90 \to, 119, 140 \today, 27 \top, 141 \toprule, 79, 188

toptesi, 29 Tratti, 50, 56, 57, 176, 178 \triangle, 141 \triangledown, 141 \triangleleft, 138 \trianglelefteq, 142 \triangleq, 142 \triangleright, 138 \trianglerighteq, 142 \ttfamily, 82, 166 twocolumn, 30 \twoheadleftarrow, 140 \twoheadrightarrow, 140 twoside, 29, 30 type, 149 type1ec, 72

223

U \u, 61 ucs, 44
\ulcorner, 139 \underbrace, 123 \underline, 117 \underset, 116

\Vdash, 142 \vDash, 142 \vdash, 138 \vdots, 125, 141 \vec, 117, 124, 137

Vedove, 75
\vee, 138 \veebar, 142

Unicode, xxi, 44 unicode, 58, 61 Unit di misura, 135, 183 \unlhd, 138 unpublished, 149 \unrhd, 138 unsrt, 152 \Uparrow, 139, 140 \uparrow, 139, 140 \Updownarrow, 139, 140 \updownarrow, 139, 140 \upharpoonleft, 140 \upharpoonright, 140 \uplus, 138 \Upsilon, 137 \upsilon, 137 \upuparrows, 140 \urcorner, 139 url, 36, 58, 158, 187 urlcolor, 59 \usepackage, 38, 58, 165 utf8, 44 utf8x, 44 V \v, 61 Valore assoluto, 117 \varepsilon, 137 Variante asterisco, 48, 54, 55 varioref, 37, 64 \varkappa, 141 \varnothing, 141 \varphi, 137 \varpi, 137 \varpropto, 142 \varrho, 116, 137 \varsigma, 116, 137 \varsubsetneq, 143 \varsubsetneqq, 143 \varsupsetneq, 143 \varsupsetneqq, 143 \vartheta, 137 \vartriangle, 141 \vartriangleleft, 142 \vartriangleright, 142

verse, 70
verse, 70

Versi, 69, 70
\Vert, 117, 139 \vert, 117, 139

Vettori, 124 Vim, 17 Virgolette, 25, 56, 69, 70, 176, 177, 184 Vmatrix, 124 vmatrix, 124 volume, 148, 149 \vref, 64, 85, 102, 193 \vspace, 48 \vspace*, 48 \Vvdash, 142 W
\wedge, 138 \widehat, 118, 137 \widetilde, 118, 137 width, 97, 192

WinEdt, 13, 14 WinFIG, 94 \wp, 141 \wr, 138 wrapg, 37, 107 wrapfloat, 107, 108 X xcolor, 37, 9092, 136, 168 Xg, 16, 94 xfrac, 183 \Xi, 137 \xi, 137 \xleftarrow, 119 xml, xx, xxii, 7, 10 Xpdf, 45 \xrightarrow, 119 xspace, 26, 164 xtab, 88 Xy-pic, 94, 135 XyMTeX, 136

224

Y Yap, xxii, 39 year, 148150

Z Zapf, H., 205


\zeta, 137

Você também pode gostar