Sei sulla pagina 1di 233

L

'

Con prefazione di Enrico Gregorio

A Gruppo Utilizzatori Italiani di TEX e LTEX

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

Dicembre 2008

A A Lorenzo Pantieri: Larte di scrivere con L TEX, Unintroduzione a L TEX 2 , dicembre 2008.

:
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, A rivolto sia ai principianti di L TEX sia a coloro che gi lo conoscono, A fornire agli utenti di L TEX di lingua italiana alcuni elementi per comporre un documento utilizzando 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 accademica 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 nel presente 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 an academic 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 the present 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 Daniele Avitabile, Vincenzo A. Balzano, Marco Brunero, Mirko D. Comparetti, Rosaria DAddazio, Matteo Leccardi, Emanuele Pagone, Alessandro Sacco, Giovanni Saponaro e a tutti quelli che hanno discusso con me sul forum del g It, prodighi di preziose osservazioni e di validi u 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 del presente 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, 2 dicembre 2008 L. P.

vii

INDICE
xxi 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 Installazione per Windows 11 3.1.1 La distribuzione MiKTEX 3.1.2 Editor per Windows 12 Installazione per Mac 13 3.2.1 La distribuzione MacTEX 3.2.2 Editor per Mac 13 Installazione per Linux 14 3.3.1 La distribuzione TEX Live 3.3.2 Editor per Linux 14 Editor multipiattaforma 14 Altri programmi utili 15 A A L TEX e pdfL TEX 15

2.2

3 3.1

11

3.2

13

3.3

14

3.4 3.5 3.6 4 4.1

4.2 4.3 4.4

4.5

17 A I le sorgenti di L TEX 17 4.1.1 Spazi 17 4.1.2 I caratteri speciali 18 4.1.3 I comandi 20 4.1.4 I commenti 20 La struttura del le sorgente 21 Le classi di documento 22 I pacchetti 24 4.4.1 Che cosa sono? 24 4.4.2 Come sapere se se ne ha bisogno? 25 4.4.3 Come scoprire qual il pacchetto giusto? 25 4.4.4 Come installarli? 25 4.4.5 Come caricarli? 27 4.4.6 Come imparare a utilizzarli al meglio? 27 4.4.7 E i le .ins e .dtx? 27 4.4.8 I pacchetti di uso pi comune 28 Gli stili di pagina 29

ix

4.6

4.7 5 5.1

I le con cui si ha a che fare 30 4.6.1 I le dellutente 30 4.6.2 File di classi, pacchetti e stili 30 4.6.3 I le ausiliari 30 4.6.4 I le di output 31 Documenti di grandi dimensioni 32 35 A L TEX multilingue e multipiattaforma 35 5.1.1 Il pacchetto babel 35 5.1.2 Il pacchetto inputenc 37 La codica dei font 38 La struttura del testo 39 La composizione dei capoversi 40 5.4.1 La divisione delle parole in n di riga 42 5.4.2 Lo spazio tra le parole 43 5.4.3 Il pacchetto microtype 44 5.4.4 Il rientro sulla prima riga 44 Le proporzioni di pagina 45 5.5.1 Il tormentone dei margini 45 5.5.2 Linterlinea e il riempimento della pagina 46 Il sezionamento del documento 47 5.6.1 Materiale iniziale, principale e nale 47 5.6.2 Lindice generale 48 5.6.3 I miniindici 49 Caratteri speciali e simboli 49 5.7.1 Virgolette, tratti e punti ellittici 49 5.7.2 Indirizzi Internet e riferimenti ipertestuali 51 5.7.3 Loghi, accenti e caratteri speciali 54 Il titolo del documento e il frontespizio 55 I riferimenti incrociati 56 Note a margine e a pi di pagina 57 Parole evidenziate 58 Ambienti 58 5.12.1 Elenchi puntati, numerati e descrizioni 59 5.12.2 Centrare e allineare i capoversi 60 5.12.3 Citazioni e versi 61 5.12.4 Codici e algoritmi 63 Gli acronimi e le notazioni 64 Epigra, capolettera e scritture curiose 64 La revisione nale 66 69 Le tabelle 69 6.1.1 Regole generali 70 6.1.2 Lambiente tabular 70 6.1.3 Celle su pi colonne 71 6.1.4 Celle su pi righe 72 6.1.5 Il pacchetto array 72 6.1.6 Il pacchetto tabularx 74 6.1.7 Allineare i numeri alla virgola 6.1.8 Tabelle grandi 76

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

75

xi

6.2

6.3 6.4

6.1.9 Note dentro a tabelle 81 6.1.10 Tabelle colorate 82 Le gure 85 6.2.1 Immagini vettoriali e bitmap 85 6.2.2 Conversione dei formati 87 6.2.3 Scontornare le immagini 88 6.2.4 Linclusione delle immagini 88 Figure e tabelle in testo e fuori testo 90 Gli oggetti mobili 92 6.4.1 Gli ambienti table e figure 93 6.4.2 Il controllo degli oggetti mobili 95 6.4.3 Personalizzare le didascalie: il pacchetto caption 97 6.4.4 Afancare gure o tabelle: il pacchetto subfig 97 6.4.5 Testo che avvolge un oggetto: il pacchetto wrapfig 99 6.4.6 Didascalie laterali: il pacchetto sidecap 100

7.1 7.2

103 Formule in corpo e fuori corpo 104 Nozioni basilari 105 7.2.1 Raggruppamenti 106 7.2.2 Apici, pedici e radici 106 7.2.3 Somme, prodotti e frazioni 106 7.2.4 Limiti, derivate e integrali 107 7.2.5 Insiemi numerici 107 7.2.6 Lettere greche 108 7.2.7 Accostare simboli ad altri simboli 108 7.2.8 Barre e accenti 109 7.2.9 Punti e frecce 110 7.3 Gli operatori 111 7.4 Le parentesi 112 7.5 Le matrici 115 7.6 Formule fuori corpo 116 7.6.1 Formule spezzate senza allineamento: multline 116 7.6.2 Formule spezzate con allineamento: split 117 7.6.3 Gruppi di formule senza allineamento: gather 117 7.6.4 Gruppi di formule con allineamento: align 118 7.6.5 Gli ambienti gathered e aligned 118 7.6.6 Casi e numerazione subordinata 118 7.7 Modicare lo stile e il corpo dei font 119 7.8 Enunciati e dimostrazioni 121 7.9 Diagrammi commutativi 125 7.10 Fisica e chimica 125 7.11 Evidenziare formule: il pacchetto empheq 126 7.12 Elenco dei simboli matematici 126 135 Lambiente thebibliography 135 Il programma BibTEX 137 8.2.1 Basi di dati dei riferimenti bibliograci 8.2.2 I diversi tipi di record 138 8.2.3 I diversi tipi di campi 140 8.2.4 Alcune precisazioni 141

8 8.1 8.2

137

xii

8.3 9 9.1 9.2

8.2.5 Generare la bibliograa 142 8.2.6 Stili bibliograci personalizzati 145 8.2.7 Riferimenti autore-anno: il pacchetto natbib 145 8.2.8 Riferimenti nali: il pacchetto backref 147 8.2.9 Riferimenti capitolo per capitolo: bibunits 147 Elenco dei siti Web consultati 147 149 Creare lindice analitico 149 Personalizzare lindice analitico

151

10

153 10.1 Comandi, ambienti e pacchetti nuovi 153 10.1.1 Denire nuovi comandi 153 10.1.2 Spazi dopo i comandi 154 10.1.3 Nuovi ambienti 155 10.1.4 Un pacchetto personale 155 10.2 Font 156 10.2.1 Comandi per cambiare lo stile dei font 156 10.2.2 Dichiarazioni per cambiare il corpo dei font 157 10.3 Inserire uno sfondo colorato in unimmagine 158 10.4 Le pagine bianche nei documenti fronte-retro 159 10.5 Testatine personalizzate 159 10.6 Cambiare le voci generate da babel 160 163 a.1 Laccento e lapostrofo 164 a.1.1 Accento tonico e fonico 164 a.1.2 Apostrofo 165 a.2 Punteggiatura e spaziatura 166 a.2.1 Segni di interpunzione e apostrofo 166 a.2.2 Virgolette 166 a.2.3 Parentesi 167 a.2.4 Punti ellittici 168 a.2.5 Trattini 168 a.2.6 Sbarretta e asterisco 168 a.3 Stile dei font 169 a.3.1 Corsivo 169 a.3.2 Neretto 169 a.3.3 Maiuscoletto 169 a.4 Composizione del testo 169 a.4.1 Capoversi 169 a.4.2 Vedove e orfani 170 a.4.3 Parole straniere 170 a.4.4 Numeri 171 a.4.5 Frazioni, percentuali, unit di misura 172 a.4.6 Sigle 173 a.5 La bibliograa 173 175 Il testo 175 b.1.1 Linserimento dei caratteri accentati

b b.1

175

xiii

b.2

b.3 b.4

b.1.2 La divisione in sillabe 176 b.1.3 I margini 176 b.1.4 Gli indirizzi Internet 176 b.1.5 Le note a pi di pagina 177 Le tabelle 177 b.2.1 Regole generali 177 b.2.2 Allineare i numeri alla virgola 179 b.2.3 Le tabelle mobili 180 Le gure 181 b.3.1 Le gure mobili 181 La matematica 183 b.4.1 Formule fuori corpo 183 b.4.2 Operatori 186 b.4.3 Parentesi 187 b.4.4 Matrici 188 b.4.5 Integrali multipli 188 b.4.6 Insiemi numerici 189 b.4.7 Riferimenti a una formula 190 b.4.8 Punti ellittici 190 191 195

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 Donald Knuth 3 Una dispensa di matematica degli anni Settanta 4 Leslie Lamport 5 Un breve documento 22 Un esempio duso del pacchetto frontespizio 56 Tabella ottenuta con sidewaystable 80 Una gura posizionata manualmente 97 Un esempio duso del pacchetto subfig 98 Un esempio duso del pacchetto wrapfig 99 Un esempio duso del pacchetto sidecap 101 Alcuni stili bibliograci 143 Inserire uno sfondo colorato in unimmagine 159 Un esempio duso del pacchetto fancyhdr 160 Un esempio di gura mobile 182

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 Tabella 23 Tabella 24
A Cronologia di TEX e L TEX 6 Alcuni codici ascii 19 Opzioni delle classi standard 24 Le principali codiche di input 38 Comandi di sezionamento del documento 47 Loghi particolari 54 Accenti e caratteri speciali 55 Tabella composta scorrettamente 70 Tabella composta secondo le regole 70 Tabella con \multicolumn e \multirow 73 Tabella ottenuta con il pacchetto array 74 Tabella con formato specico di una colonna 74 Tabella ottenuta con il pacchetto tabularx 75 Tabella con colonne della stessa larghezza 76 Tabella con allineamento alla virgola 77 Tabella con font di dimensione ridotta 78 Tabella ridimensionata con \resizebox 79 Tabella ottenuta con il pacchetto footnote 81 Tabella ottenuta con il pacchetto ctable 82 Tabella con una colonna colorata 83 Tabella con una riga colorata 84 Tabella con le righe dispari colorate 84 Tabella con una cella colorata 85 Opzioni del pacchetto graphicx 89

xiv

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

Caratteri di trasferimento 93 Opzioni di posizionamento di wrapfloat 100 Spazi in modo matematico 105 Lettere greche minuscole 109 Gli operatori predeniti 113 Lettere greche minuscole 127 Lettere greche maiuscole 127 Accenti in modo matematico 127 Relazioni binarie 128 Operazioni binarie 128 Grandi operatori 129 Delimitatori 129 Grandi delimitatori 129 Frecce 130 Simboli misti 131 Simboli non matematici 131 Altri caratteri alfabetici 131 Altre relazioni binarie 132 Altre operazioni binarie 132 Negazioni di simboli 133 Font matematici 133 Esempi di voci dellindice analitico 150 Comandi per cambiare lo stile dei font 156 Comandi per cambiare il corpo dei font 157 I corpi dei font nelle classi standard 158 Comandi di babel specici per litaliano 161 Tabella composta scorrettamente 179 Tabella composta secondo le regole 179 Tabella con allineamento alla virgola 180 Un esempio di tabella mobile 181

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 utilizzato nei calcolatori.

Windows bitmap
un formato di le per la rappresentazione di immagini a mappa di bit nei sistemi operativi Microsoft Windows e OS/2. Fu intro-

xv

xvi

dotto 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


L archivio completo di TEX in Rete il sito 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 utilizzato 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 ad essere inclusa (incapsulata) in un documento. Ad 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 ad entrare, primo ad uscire) esprime la modalit di immagazzinamento di oggetti in cui il primo oggetto introdotA to il primo ad uscire. Questo tipo di struttura utilizzata da L TEX nella gestione degli oggetti mobili: se un oggetto come una gura o 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 ad uscire), in cui lultimo oggetto inserito ad essere estratto per primo.

xvii

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.

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

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 utilizzati per generarli o per visualizzarli. Il pdf eredita molte delle funzionalit del PostScript, un linguaggio di descrizione della pagina anchesso sviluppato da Adobe. il formato standard delle A immagini 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.

xviii

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 utilizzato 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 (ad 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 (ad esempio informazioni sulla calibratura del colore) tramite apposite etichette (tag). Le speciche del formato tiff permettono 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.

xix

Ogni url (ad esempio http://www.guit.sssup.it/forum/) si compone normalmente di tre parti: il protocollo utilizzato per indirizzare la risorsa (http, nellesempio considerato), il nome dellhost o del server o del dominio (www.guit.sssup.it), ed 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 ad esempio Microsoft Word), lautore agisce direttamente sul testo gi composto, cos come appare sullo schermo del suo elaboratore, ed ogni sua azione si traduce in unimmediata variazione del testo composto. Programmi di questo tipo vengono detti wysiwyg (in questo secondo signicato), ed il tipo di composizione che viene prodotto viene denominato composizione sincrona. Lacronimo che si riferisce al concetto opposto wysiwym.

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.

xx

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

xxi

xxii

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, A rivolto sia ai principianti di L TEX sia a coloro che gi lo conoscono, AT X di lingua italiana alcuni elementi per fornire agli utenti di L E comporre un documento utilizzando 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 accademica 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 UtilizA zatori Italiani di TEX e L TEX (http://www.guit.sssup.it/), che resta sempre un eccellente riferimento per tutti i temi trattati nel presente 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 lutilizzo. 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, veramente semA plici, per installare 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 apA passionato, non ho nulla da insegnare; daltra parte ho studiato L TEX e lho utilizzato 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 ed 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, 2008, p. 1]. Nei comuni elaboratori di testo (come ad esempio Microsoft Word), lautore agisce direttamente sul testo gi composto, cos come appare sullo schermo del suo elaboratore, ed 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 utilizzatori 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 (ad esempio, specicando che una strut-

. tura un paragrafo o un elenco, piuttosto che affermare che essa dovrebbe essere composta con unintestazione in neretto e dello spazio A prima e dopo). La trasformazione di un testo 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 sorgente. A Il concetto di etichetta logica (in inglese mark-up) di L TEX ha inuito notevolmente nella genesi dellsgml e dei vari html ed 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}

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

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 L TEX multilingue, multipiattaforma e gratuito. A L TEX ha una struttura modulare, che permette di estenderne le capacit, per eseguire compiti tipograci non direttamente gestiti A da L TEX. Sono reperibili ad 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 la risposta sempre dipendente dal A contesto. In breve, opportuno 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 A di programmazione (un editor di buon livello per L TEX aiuta, ma. . . ); documenti che richiedono pi essibilit visuale che consistenza (ad 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 doA cumenti in formato L TEX, e centinaia di migliaia di utenti utilizzano A L TEX per milioni di documenti. In tutti questi anni, si sono creati diversi luoghi comuni riguardo a A L TEX. Per evitare potenziali incomprensioni, conviene esaminare i pi diffusi. A Leggenda: LTEX ha solo un font A L TEX pu utilizzare, 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 stanA dard 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 estremamente vecchio o decisamente 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, ed 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

Installazione per Windows 11 3.1.1 La distribuzione MiKTEX 3.1.2 Editor per Windows 12 Installazione per Mac 13 3.2.1 La distribuzione MacTEX 3.2.2 Editor per Mac 13 Installazione per Linux 14 3.3.1 La distribuzione TEX Live 3.3.2 Editor per Linux 14 Editor multipiattaforma 14 Altri programmi utili 15 A A L TEX e pdfL TEX 15

11

13

14

In questo capitolo vengono spiegate le operazioni, veramente semA plici, per installare L TEX sul proprio calcolatore. Le distribuzioni di A L TEX prese in considerazione sono MiKTEX (per Windows) e TEX Live (per Mac e Linux), che sono ottime, gratuite e facili da installare e utilizzare. 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.
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; tutte 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).

.
. . La distribuzione MiKTEX
Su Windows, si consiglia di installare la versione completa di MiKTEX.

Linstallazione di MiKTEX non presenta particolari difcolt. possibile scaricare il programma dal sito http://miktex.org/. Dalla pagina di download, si scarica il le setup.exe, un piccolo programma che permette sia di gestire la procedura di scaricamento del programma, sia la successiva installazione. Sono disponibili due versioni di

11

12

MiKTEX, di base (basic) e completa (complete), che differiscono unicamente per la disponibilit di pacchetti. La versione completa ovviamente la scelta consigliata. Una volta scaricato setup.exe, sufciente eseguirlo e seguire le semplici istruzioni consigliate.1 . . Editor per Windows

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 qualsiasi A delle 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 utilizzando MiKTEX oppure una qualsiasi altra distribuzione.
Congurare TEXnicCenter per luso della lingua italiana

: 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 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, ad 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
1 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 ed i programmi accessori GSview e Ghostscript. La procedura di installazione di proTEXt molto semplice e ben documentata.

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

13

LEd
A LEd (L TEX Editor) un editor gratuito per Windows, specico per EX (ma che permette di gestire anche altri tipi di le, ad 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/. Le semplici istruzioni per usufruire della funzione di controllo ortograco in lingua italiana sono riportate sulla guida in linea del programma. A LT

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

Per installare la distribuzione TEX Live, che su Mac nota anche come MacTEX, sufciente scaricare il le MacTeX.dmg da http:// www.tug.org/mactex/. Allinterno del le contenuta lintera distribuzione TEX Live, assieme a svariati programmi utili, come ad 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. Il sistema operativo gi dotato dei programmi accessori per visualizzare il risultato della composizione e per procedere alla stampa. . . Editor per Mac

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

TEXShop TEXShop un ottimo editor gratuito per Mac, coperto da licenza A gnu. Nella compilazione, TEXShop utilizza 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 ed inglese. Il sito Web del progetto http://www.uoregon.edu/~koch/texshop/. Aquamacs Aquamacs una versione con interfaccia graca in stile Mac di Emacs, un editor di testo libero estremamente potente e versatile, mol-

14

to popolare fra i programmatori. Il software si scarica da http:// aquamacs.org/.

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

La distribuzione TEX Live

A Linstallazione di un sistema L TEX su Linux non presenta difcolA t eccessive. Spesso L TEX risulta addirittura gi installato assieme al sistema operativo. In ogni caso, la distribuzione TEX Live (http: //www.tug.org/texlive/) pu venire installata come qualunque altro programma di Linux, avvalendosi eventualmente di interfacce grache, come per esempio kde. Generalmente non c altro da fare, salvo eventualmente eseguire il programma texconfig per congurare il sistema per luso della lingua italiana.

. .

Editor per Linux

La distribuzione TEX Live 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 ed 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.
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/

(Vi iMproved) rappresenta unevoluzione delleditor testuale Vi, molto diffuso tra i programmatori in ambiente Unix. disponibile sul sito http://www.vim.org/, oltre ad 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.

15

.
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 esA sere usati 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.

.
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 utilizzati 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) ed 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 ed inoltre non sfrutta il pacchetto microtype. Il pdf, invece, non offre in generale la ricerca diretta ed inversa (in realt, su macchine Mac che usano la distribuzione MacTEX, 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 molA to diffuso anche tra coloro che non usano L TEX, permette di attivare
A Con L TEX si intende anche A pdfL TEX.

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

16

i riferimenti ipertestuali forniti dal pacchetto hyperref e consente di restringere laccesso al documento per mezzo di password: ad 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 bottone delleditor utilizzato);
A la compilazione diretta del sorgente .tex con pdfL TEX.

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

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

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

Tuttavia, per sfruttare appieno le potenzialit del formato pdf neA cessario utilizzare pdfL TEX: ad esempio, il formato pdf permette di utilizzare i riferimenti ipertestuali (hyperlink), i segnalibri (bookmark) e le immagini in miniatura (thumbnail) che non vengono prodotti nella A conversione a partire da le dvi. Il programma pdfL TEX presente in A tutte le pi importanti distribuzioni di L TEX ed gestito dai principali A editor di 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, 2008, 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 conA tengono delle immagini (L TEX richiede immagini esclusivamente in AT X accetta immagini in formato pdf, se vetformato eps, mentre pdfL E toriali, oppure jpg o png, se bitmap). Nel paragrafo 6.2 nella pagina 85 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.

4
4.1 4.2 4.3 4.4

LE BASI

4.5 4.6

4.7

A I le sorgenti di L TEX 17 4.1.1 Spazi 17 4.1.2 I caratteri speciali 18 4.1.3 I comandi 20 4.1.4 I commenti 20 La struttura del le sorgente 21 Le classi di documento 22 I pacchetti 24 4.4.1 Che cosa sono? 24 4.4.2 Come sapere se se ne ha bisogno? 25 4.4.3 Come scoprire qual il pacchetto giusto? 4.4.4 Come installarli? 25 4.4.5 Come caricarli? 27 4.4.6 Come imparare a utilizzarli al meglio? 27 4.4.7 E i le .ins e .dtx? 27 4.4.8 I pacchetti di uso pi comune 28 Gli stili di pagina 29 I le con cui si ha a che fare 30 4.6.1 I le dellutente 30 4.6.2 File di classi, pacchetti e stili 30 4.6.3 I le ausiliari 30 4.6.4 I le di output 31 Documenti di grandi dimensioni 32

25

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 ed arricchire queste conoscenze con nuove informazioni.

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

. .

Spazi
Pi spazi sono considerati come uno spazio.

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.

17

18

Una riga vuota indica la ne di un capoverso.

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

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

19

Simbolo
{ } ~

Codice 96 123 125 126

~ 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 (lapostrofo) da (virgoletta aperta, accento grave). Se si usa una tastiera italiana PC, 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, laccento grave 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 + , laccento grave 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. I caratteri speciali (ad eccezione della barra rovescia, del cappuccio e della tilde) si possono ottenere in stampa facendoli precedere nel testo sorgente da \.

Inserire i caratteri che non compaiono sulla tastiera italiana

Stampare i caratteri speciali

\{ \} \% \$ \_ \& \#

{}%$_&#

Il carattere di barra rovescia \ non pu essere immesso aggiungendo un altro \ davanti ad esso (la sequenza \\ si usa infatti per le interruzioni di riga nei casi che lo prevedono): a tal ne si utilizza 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 nella pagina 54) e richiedono un argomento. In alternativa, possibile usare i comandi \textasciicircum e \textasciitilde , che producono simboli leggermente diversi.

20

\^{} \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.1 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.
Data odierna: \today. Sono qui in \emph{dieci} minuti.

Data odierna: 2 dicembre 2008. 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 nella pagina 58). . . I commenti

Pro memoria

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

1 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 nella pagina 154).

. parole troppo lunghe, o per dividere righe in cui non sono permessi spazi bianchi o interruzioni di riga.
Ecco un % semplice, % ma istruttivo <---esempio: Supercal% ifragilist% ichespiralidoso.

21

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:
A il caricamento di pacchetti che estendono le capacit di L TEX: \usepackage{ . . . };

Preambolo

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. Fra \begin{document} ed \end{document} va il testo vero e proprio, o corpo del documento. La gura 4 nella pagina successiva mostra un esempio di documenA to di piccola lunghezza, composto con L TEX. Il documento stato ottenuto compilando (due volte) il codice seguente:
Corpo del documento

22

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 4: Un breve esempio di documento composto con L TEX.

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

.
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 una classe progettata per scrivere articoli; report e book servono per comporre relazioni contenenti diversi capi-

23

Le classi standard di A L TEX

toli, tesi e libri.


letter progettata per scrivere lettere.

Esistono numerose altre classi aggiuntive per comporre svariati documenti, compresi lucidi e presentazioni. (Per esempio, il presente 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].) 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-

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

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

Opzione
10pt letterpaper oneside twoside openany openright titlepage final

book

report

article

predenita predenita predenita

predenita predenita predenita predenita

predenita predenita predenita indenita indenita

predenita predenita predenita predenita predenita

predenita

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

.
La struttura A modulare di L TEX

Scrivendo dei documenti, capita frequentemente di avere alcune esiA genze che L TEX di base non soddisfa. Ad esempio, nel linguaggio A standard che L TEX utilizza 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 moduA lare di L TEX, che permette di estenderne le capacit: queste estensioni sono dette pacchetti. . . Che cosa sono?

Fondamentalmente, un pacchetto un le di stile (con estensione permettono di svolgere le operazioni pi disparate.


A .sty), scritto in linguaggio L TEX, contenente una serie di istruzioni che

. . . Come sapere se se ne ha bisogno?

25

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. . . 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.2 Nellesempio dellinserimento delle immagini, il pacchetto graphicx permette di farlo facilmente (vedi il paragrafo 6.2.4 nella pagina 88). 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 nella pagina 35). 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 nella pagina 45). . . Come installarli?

A Nelle distribuzioni di L TEX come MiKTEX o TEX Live sono inclusi numerosi pacchetti, sufcienti per gran parte delle esigenze di scrittura, ma pu essere necessario installarne altri. La procedura di installazioA ne dipende dalla distribuzione di L TEX che si usa.

Installare un pacchetto

Gli alberi principale, personale e locale Le distribuzioni TEX Live (che su Mac nota come MacTEX) e MiKTEX prevedono tre cartelle in cui trovare i le da utilizzare: Albero principale: la cartella in cui sono contenuti i le installati con la distribuzione utilizzata, che sono disponibili per tutti gli utenti. Dal momento che lalbero principale quello che viene gestito da eventuali aggiornamenti, bene non modicarlo manualmente: in caso contrario, si rischia che le proprie aggiunte vengano cancellate. Albero locale: la cartella che rende i le disponibili a tutti gli utenti senza dover modicare manualmente lalbero principale. Albero personale: la cartella in cui il singolo utente pu inserire i pacchetti che utilizza e che non sono inclusi nella distribuzione. La posizione degli alberi dipende dalla particolare distribuzione usata: Su Windows, lalbero principale la cartella C:\Programmi\ MiKTeX 2.7\, lalbero locale radicato in C:\Documents and
2 http://www.guit.sssup.it/ricerca/, http://www.ctan.org/, http://texcatalogue. sarovar.org/.

26

Settings\All Users\Dati applicazioni\MiKTeX\2.7\, mentre lalbero personale si trova in C:\Documents and Settings\ nome dellutente \Dati applicazioni\MiKTeX\2.7\ o, equivalentemente, in C:\Documents and Settings\ nome dellutente \ Impostazioni locali\Dati applicazioni\MiKTeX\2.7\.

Su Mac, lalbero principale si trova in /usr/local/texlive/2007/ texmf-dist/, lalbero locale radicato in /usr/local/texlive/ texmf-local/ e lalbero personale $HOME/Library/texmf/. Su Linux, la posizione degli alberi dipende dalla particolare distribuzione usata. La radice dellalbero personale in qualsiasi distribuzione pu essere controllata con la variabile $TEXMFHOME: il suo valore pu essere visualizzato dalla linea di comando con kpsexpand $TEXMFHOME. Allo stesso modo si possono controllare le radici degli alberi principale e locale; le variabili rilevanti sono $TEXMFDIST e $TEXMFLOCAL, il cui valore viene visualizzato lanciando rispettivamente i comandi kpsexpand $TEXMFDIST e kpsexpand $TEXMFLOCAL. Su una Debian, per esempio, lalbero principale radicato in /usr/share/texmf-texlive/, lalbero locale in /usr/share/texmf/ e lalbero personale in ~/texmf/. Per installare un pacchetto sufciente: a. copiare il relativo le .sty nella sotto-cartella /tex/latex/ di uno dei tre alberi (eventualmente creando tale sotto-cartella, se non ci fosse gi); b. per i primi due alberi necessario aggiornare la base di dati dei pacchetti: a tal ne, se si usa la distribuzione MiKTEX ci si avvale dellinterfaccia graca (come spiegato di seguito), mentre se si usa TEX Live si lancia dalla linea di comando sudo mktexlsr ( necessario disporre dei privilegi di amministratore). In alternativa, sufciente copiare i le necessari nella stessa cartella in cui si trova il le .tex. Installare o aggiornare un pacchetto con MiKTEX Se si usa il sistema operativo Windows e si utilizza MiKTEX, per installare un pacchetto sufciente seguire 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 desidera 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 utilizza il programma MiKTEX Update Wizard, che controlla, tramite una semplice interfaccia graca, quali pacchetti tra quelli installati sono disponibili con una nuova versione e propone di aggiornarli. . . Come caricarli?

27

I pacchetti si caricano con il comando


\usepackage[ opzioni ]{ pacchetto }

Caricare un 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 . . . Come imparare a utilizzarli al meglio?
La documentazione di un pacchetto

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

. .

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

28

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 nella pagina 35).
amsmath fornisce svariate estensioni per il miglioramento della gestio-

ne 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. babel permette luso di lingue diverse dallinglese. backref permette di avere, nelle voci bibliograche, lindicazione del-

le pagine in cui esse sono citate.


booktabs migliora laspetto delle tabelle. caption permette di personalizzare le didascalie. chngpage permette di modicare i margini di una singola pagina. enumitem permette di personalizzare gli elenchi. eurosym introduce il simbolo delleuro. fancyhdr permette di creare stili di pagina personalizzati. float permette di creare oggetti mobili personalizzati e di forzare il

posizionamento di un oggetto.
fontenc specica la codica dei font da usare nel documento stampa-

to.
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. indentfirst rientra il primo capoverso di ogni unit di sezionamen-

to (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

29

molto sosticato del loro formato.


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.
showkeys permette di controllare, in fase di revisione, lutilizzo dei riferimenti \label , \ref , \cite , eccetera. subfig 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. xtab gestisce tabelle che occupano pi pagine. wrapfig permette di far scorrere del testo attorno ad unimmagine.

.
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 utilizzato. 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 nume-

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

30

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.
Cambiare lo stile della pagina corrente

possibile cambiare lo stile della pagina corrente con il comando


\thispagestyle{ stile }

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.

. .

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 ed il relativo le .pdf. .bst Stile bibliograco utilizzato dal programma BibTEX (vedi il capi-

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

31

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

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

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

zare e stampare con yap o unapplicazione analoga.

32

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

Il comando \input

Ad 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 ad un documento di grandi dimensioni su una macchina particolarmente vecchia, pu essere utile luso 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 utilizzare il comando
\includeonly{ le1 , le2 , . . . }

. per inserire soltanto i le elencati tra parentesi. Quando si usa il comando \includeonly{ le1 , le2 , . . . }, vengono compilati solamente i le tra parentesi graffe ed 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. (Dal momento che il meccanismo di \include comprende la scrittura di un le .aux per ogni le incluso e che alcune distribuzioA ni 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 questo problema strutturando il materiale come consigliato nel presente 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

33

Eseguire un veloce controllo sintattico del documento

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

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 35 5.1.1 Il pacchetto babel 35 5.1.2 Il pacchetto inputenc 37 La codica dei font 38 La struttura del testo 39 La composizione dei capoversi 40 5.4.1 La divisione delle parole in n di riga 42 5.4.2 Lo spazio tra le parole 43 5.4.3 Il pacchetto microtype 44 5.4.4 Il rientro sulla prima riga 44 Le proporzioni di pagina 45 5.5.1 Il tormentone dei margini 45 5.5.2 Linterlinea e il riempimento della pagina 46 Il sezionamento del documento 47 5.6.1 Materiale iniziale, principale e nale 47 5.6.2 Lindice generale 48 5.6.3 I miniindici 49 Caratteri speciali e simboli 49 5.7.1 Virgolette, tratti e punti ellittici 49 5.7.2 Indirizzi Internet e riferimenti ipertestuali 51 5.7.3 Loghi, accenti e caratteri speciali 54 Il titolo del documento e il frontespizio 55 I riferimenti incrociati 56 Note a margine e a pi di pagina 57 Parole evidenziate 58 Ambienti 58 5.12.1 Elenchi puntati, numerati e descrizioni 59 5.12.2 Centrare e allineare i capoversi 60 5.12.3 Citazioni e versi 61 5.12.4 Codici e algoritmi 63 Gli acronimi e le notazioni 64 Epigra, capolettera e scritture curiose 64 La revisione nale 66

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:

35

36

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, 2007]. 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 non sufciente.

Lutilizzo 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 necessario 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 sudo texconfig-sys dalla linea di comando, scegliere hyphenation e togliere il % davanti a italian nel le che comparir. 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 nella pagina 49. Scegliere la lingua

Documenti multilingue

Ogni lingua di un documento multilingue si pu sillabare a s. Ad esempio, se si carica babel con


\usepackage[english,italian]{babel}

lultima lingua (litaliano) quella predenita. Si passa da una lingua allaltra con
\selectlanguage{ lingua }

oppure, equivalentemente, 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).

37

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

. .

Il pacchetto inputenc
La codica con cui scritto il codice sorgente

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

38 Tabella 4: Le principali codiche di input (la codica utf8x richiede il pacchetto ucs).

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

particolari (come le vocali accentate , , . . . ), dipende dalla piattaforma e dalleditor utilizzati. A tal ne si usa il pacchetto inputenc (input encoding). Lopzione da passare al pacchetto indica la codica utilizzata (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 utilizzato. preferibile usare le codiche latin1 o utf8 in luogo di ansinew, applemac e latin9 (o utf8x, che richiede il pacchetto ucs), 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 T1 dei font

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. (Il presente documento, composto con lo stile ClassicThesis, usa per altri font. Per i dettagli: [Pantieri, 2008a,b].) Quando sono richiesti caratA teri accentati, 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 Compu2 Per trasformare in latin1 o utf8 un le codicato diversamente, possibile utilizzare 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 utilizzata nella propria distribuzione possibile eseguire printenv LANG dalla linea di comando.

. ter 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}

39

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, lutilizzo di tale codica richiede luso di font con un formato opportuno (vettoriale) per evitare di dar luogo a problemi di resa allo schermo con versioni non aggiornate di programmi per visualizzare le pdf (come ad esempio 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, 2008, 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 utilizzato 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 utilizzato sia congurato correttamente) A sono 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]. 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.
La struttura logica del contenuto

I capoversi

40

I periodi

Capitoli, paragra, sottoparagra ed altre strutture

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 A sia dopo uno che termina unabbreviazione. Di regola, L TEX capisce AT X sbaglia, quale sia il punto che si intendeva utilizzare. Se per L E 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 ad 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 ad 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 nella pagina 47).

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

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

41

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 nella pagina 104), 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. 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

Non si comincia mai un capoverso con una formula.

42

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. Bench A L TEX avverta lutente quando ci accade, le righe a cui si riferisce non sempre sono facili da trovare. Utilizzando 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 utilizzano 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:

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

Il comando precedente pu anche essere utilizzato quando si vuole che alcune parole non vengano sillabate. sufciente scriverle senza trattini 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 .

43

\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 ad 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, ad 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 ad un errore di overfull hbox piuttosto che imporre particolari sillabazioni. Se si usa 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.

. .

Lo spazio tra le parole


Lo spazio in ne di periodo

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.

44

Lo spazio insecabile

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 preso le dispense del prof.~Beccari? \\ Hai preso le dispense del prof. Beccari?

Hai preso le dispense del prof. Beccari? Hai preso 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 utilizzare 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). . .
Il pacchetto indentrst

Il rientro sulla prima riga

Per attivare il rientro sulla prima riga di ogni sezione (capitolo,


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.

. paragrafo, sottoparagrafo, . . . ), rispettando una consuetudine spesso seguita nei documenti italiani, necessario caricare il pacchetto indentfirst,
\usepackage{indentfirst}
A in quanto la convenzione anglosassone (predenita su L TEX) non lo prevede.

45

.
. . Il tormentone dei margini
I margini di pagina devono, fra laltro, lasciare spazio per appoggiare i pollici del lettore.

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 Utilizzando le classi standard di L TEX, senza pacchetti particolari o comandi che modicano le proporzioni di pagina, la maggior parte degli utilizzatori europei, che stampa su carta in formato A4, trova che A i margini utilizzati 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: utilizzando 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 ed il numero di lettere che lo compongono (26). 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

La regola di Bringhurst

46

Il pacchetto layaureo

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 utilizzare 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 di facile utilizzo, 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 utilizzare il pacchetto geometry che completamente congurabile. Se, per esempio, si ha lesigenza di comporre un documento in formato A4 con margini superiore ed 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 utilizzare 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 utilizzando 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 allauA tore 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 uninterlinea differente, sufciente utilizzare il comando standard di A L TEX \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

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

47

\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
I comandi \frontmatter, \mainmatter e \backmatter Suddividere un documento in parti, capitoli, paragra, sottoparagra, . . .

Oltre ai comandi di sezionamento appena illustrati, la classe book prevede tre comandi (\frontmatter , \mainmatter e \backmatter ) che controllano il formato del numero di pagina e la numerazione dei capitoli.
5 Se si vuole disattivare questa impostazione ed avere dello spazio bianco a pi di pagina quando non si riesce a coprirla tutta (scelta peraltro sconsigliabile), sufciente aggiungere nel preambolo il comando \raggedbottom .

48

Nel materiale iniziale (frontmatter) le pagine sono numerate con i numeri romani minuscoli (i, ii, iii, . . . ) ed i capitoli non sono numerati (come se si utilizzasse 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). Il frontespizio La dedica* Il sommario* I ringraziamenti* Gli indici Gli acronimi e le notazioni* La prefazione* I capitoli interni Le appendici* La bibliograa Lindice analitico . . Lindice generale Materiale nale Materiale principale Materiale iniziale

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}

49

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 della presente sezione nellindice si scrive:
\addcontentsline{toc}{subsection}{Varianti asterisco}

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}

. .

I miniindici
Il pacchetto minitoc

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 ed 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 ( ).

50

Le virgolette basse

Le virgolette alte

A In L TEX, tutti e tre i tipi di virgolette possono essere inserite direttamente nel sorgente, purch si utilizzi il pacchetto inputenc (con la codica appropriata). Per inserire le virgolette alte non bisogna usare il carattere " come invece si farebbe su una macchina per scrivere, ma si devono usare gli appositi simboli . In alternativa, si possono scrivere due come virgolette di apertura e due come virgolette di chiusura.

La Delta di Dirac una funzione impropria.

La Delta di Dirac una funzione impropria.

Gli apici

Se si usa lopzione italian di babel le virgolette alte aperte possono anche essere inserite con "", mentre si pu scrivere "< per ottenere i caporali aperti e "> per i caporali chiusi. Inne, gli apici si possono introdurre con il codice . Tratti

I quattro tipi di A tratto di L TEX

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:

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

Stratford-on-Avon, e-mail 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 si usa per separare parole (per esempio nei composti) o cifre (come nellindicazione delle pagine di una citazione). Il trattino medio, usato in inglese per separare numeri o cifre, non in realt usato nella tipograa italiana. 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, . . .

. 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]}

51

Omissis

e usarlo sempre (ricordando che gli spazi dopo i comandi come questo sono ignorati; se occorre uno spazio, bisogna scrivere \omissis{} ). . . Gli indirizzi Internet e i riferimenti ipertestuali
Scrivere un indirizzo Internet

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/

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

Il pacchetto hyperref

Per sfruttare appieno le potenzialit del pacchetto, necessario comA pilare il documento con pdfL TEX (vedi il paragrafo 3.6 nella pagina 15). 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}

Con hyperref va A usato pdfL TEX.

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

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 utilizzato per visualizzare il pdf. pdfauthor= autore imposta il nome dellautore del pdf.

Le opzioni di hyperref

52

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}

(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 utilizzato 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}

Collegamenti a siti Web

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

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

53

Collegamenti a le esterni

Il documento completo qui.

Un clic sulla parola qui aprir il le manuale.pdf (il percorso del le relativo alla posizione del documento corrente). Per realizzare un collegamento ad 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 ad 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, nel presente documento c un segnalibro Sommario, cos denito:
\pdfbookmark[1]{Sommario}{sommario}

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,

54 Tabella 6: Loghi particolari (il logo AMS richiede il pacchetto amsmath; i loghi METAFONT e METAPOST richiedono il pacchetto mflogo; 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

\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 da utilizzare quando si usa \texorpdfstring . . . Loghi La tabella 6 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 nella pagina successiva 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.

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

.
Tabella 7: Accenti e caratteri speciali.

55

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 ?

.
Il comando
\maketitle

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 pu essere collegato sia ai nomi degli autori (per esempio per specicarne listituzione di appartenenza), sia al titolo (per esempio per associargli il nome dellente nanziatore della ricerca), sia al testo specicato con \date . Esso 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. Nella gura 4 nella pagina 22 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 5 nella pagina successiva), 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

Il pacchetto frontespizio

56

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 5: Un esempio duso del pacchetto frontespizio.

Il frontespizio di ClassicThesis Lambiente titlepage

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

.
Etichette e riferimenti

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 } \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 coman-

. do \label (si noti che questi comandi non sanno a che cosa fanno riferimento: il comando \label si limita a registrare lultimo numero generato automaticamente). Proprio come per lindice, c bisogno di due compilazioni successive. Per esempio, se si identica il presente paragrafo con
\section{Riferimenti incrociati} \label{sec:ref}

57

possibile riferirsi ad 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 utilizzare 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 nella pagina 55.

.
Note a margine Una nota a margine si ottiene molto semplicemente con il comando
\marginpar{ nota a margine }

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

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

58

Il pacchetto footmisc

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.

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

Differenza logica tra corsivo ed evidenziato

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

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.
\begin{ aaa } ... \begin{ bbb } ... \end{ bbb } ... \end{ aaa }

Di seguito vengono illustrati alcuni ambienti notevoli.


6 Cos.

. . . Elenchi puntati, numerati e descrizioni

59

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

Elenchi puntati

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}

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 utilizza come itemize, ma aggiunge un numero ad ogni elemento:
\begin{enumerate} \item primo elemento; \item secondo elemento; \item terzo elemento. \end{enumerate}

Elenchi numerati

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 :
\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 nidicare gli elenchi, cio mettere degli elenchi dentro altri elenchi:

Nidicare gli elenchi

60

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}

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.

Convenzioni tipograche per gli elenchi

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.

Personalizzare gli elenchi: il pacchetto enumitem

Per personalizzare gli elenchi disponibile il pacchetto enumitem, che accompagnato da una dettagliata documentazione. Ad 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}

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

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 gene-

. ra 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}

61

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 ad 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

Citazioni e versi

Esistono due tipi di citazioni:

62

(o in linea) scritta in linea con il corpo del testo (incorporata nel testo), come ad 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.
Citazioni in corpo

Citazioni fuori corpo

Le citazioni in corpo vanno inserite fra virgolette del tipo scelto (vedi il paragrafo 5.7 nella pagina 49) 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, ed 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}}

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 indentfirst.
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}

63

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. . . Codici e algoritmi
Il pacchetto listings

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 desideA ra inserire un codice L TEX allinterno di un documento, sufciente scrivere
\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.

64

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.

Algoritmi

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 utilizzando 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 nella pagina 92).

.
Talvolta opportuno far precedere al testo del documento un elenco degli acronimi e delle notazioni utilizzate. 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 le notazioni adottate nel documento utile il pacchetto nomencl, che genera lelenco automaticamente per mezzo del programma MakeIndex.

Il pacchetto acronym

Il pacchetto nomencl

.
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 utilizzare il pacchetto epigraph. Unepigrafe come quella che compare dopo il titolo del presente paragrafo si ottiene con il seguente codice:
\section{Specialit} \epigraph{Il tutto maggiore della somma delle parti}% {Aristotele\\Metafisica}

. I capolettera

65

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 nella pagina 38) 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}

Capolettera

Il pacchetto lettrine

In alternativa, si pu ricorrere ai font Latin Modern (vedi il paragrafo 5.2 nella pagina 38):
\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 ad 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}

Il pacchetto shapepar

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

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.

.
A Una delle caratteristiche fondamentali di L TEX che permette ai suoi utilizzatori 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 ad 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 inestetismo, 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

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

Il comando \looseness

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

67

Il valore di \looseness un parametro locale relativo al capoverso in cui compare, quindi leffetto del comando non si propaga. 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}

Il comando \enlargethispage

(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 utilizzare 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}

che accorcia di una riga la pagina in cui compare.

6
6.1

TABELLE E FIGURE

6.2

6.3 6.4

Le tabelle 69 6.1.1 Regole generali 70 6.1.2 Lambiente tabular 70 6.1.3 Celle su pi colonne 71 6.1.4 Celle su pi righe 72 6.1.5 Il pacchetto array 72 6.1.6 Il pacchetto tabularx 74 6.1.7 Allineare i numeri alla virgola 75 6.1.8 Tabelle grandi 76 6.1.9 Note dentro a tabelle 81 6.1.10 Tabelle colorate 82 Le gure 85 6.2.1 Immagini vettoriali e bitmap 85 6.2.2 Conversione dei formati 87 6.2.3 Scontornare le immagini 88 6.2.4 Linclusione delle immagini 88 Figure e tabelle in testo e fuori testo 90 Gli oggetti mobili 92 6.4.1 Gli ambienti table e figure 93 6.4.2 Il controllo degli oggetti mobili 95 6.4.3 Personalizzare le didascalie: il pacchetto caption 97 6.4.4 Afancare gure o tabelle: il pacchetto subfig 97 6.4.5 Testo che avvolge un oggetto: il pacchetto wrapfig 99 6.4.6 Didascalie laterali: il pacchetto sidecap 100

Le tabelle e le gure sono fra gli oggetti che vengono utilizzati 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], cui si rimanda per ogni approfondimento, spiega come utilizA zare L TEX ed 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.

69

70 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. Per capire limportanza del rispetto di queste regole 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

Il preambolo di una tabella

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:
1 Esiste anche lambiente array, analogo a tabular, che pu essere usato solo in modo matematico.

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

71

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 ed 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 ad 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.

72

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 ed inserisce dichiarazione prima del contenuto della cella;

.
Tabella 10: Esempio di utilizzo dei comandi \multicolumn e \multirow .

73

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

ed inserisce dichiarazione dopo il contenuto della cella. Ad 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 . Ad 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 nella pagina 119), sufciente aggiungere il relativo comando alla denizione della nuova colonna. Ad 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, 2007]. Specicare il font di una colonna I comandi >{ dichiarazione } e <{ dichiarazione } possono anche essere impiegati per specicare il font di determinate colonne: possi-

74 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 ad una determinata origine denito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza.

Momento polare

bile utilizzare i comandi \itshape , \slshape , \bfseries , \rmfamily e \ttfamily (vedi il paragrafo 10.2 nella pagina 156). Ad 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 ad 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. Ad esempio, il codice
\begin{tabularx}{\columnwidth}{>{\bfseries}lX} \toprule Forza & Una forza una grandezza fisica che si manifesta

.
Tabella 13: Tabella ottenuta con il pacchetto tabularx.

75

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 ad una determinata origine denito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza.

Momento polare

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 ad 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 nella pagina 90) e il pacchetto calcola in automatico la larghezza della seconda colonna. Il pacchetto tabularx risulta anche utile 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. Ad 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 utilizzare 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 utilizzare il comando \arraybackslash o, in alternativa, \tabularnewline che \centering , \raggedright e \raggedleft rideniscono \\.

76 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 o 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}{ . . . }. Ad esempio, la tabella 53 nella pagina 180 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 nella pagina 92): se una tabella non sta sulla pagina A corrente, 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.

77

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 nella pagina 93). 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 53 nella pagina 180 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

78 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 ad 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. Ad 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 nella pagina 75. 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 utilizzati 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 ed 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 ad una determinata origine denito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza.

79

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 utilizzo tipico di questi comandi consiste nel ridimensionare la tabella in modo che occupi tutta la larghezza delle righe; tale effetto pu essere ottenuto ad esempio con
\begin{table}[tb] \caption{ . . . }\label{ . . . }\centering \resizebox{\columnwidth}{!}{% \begin{tabular}{ . . . } ... \end{tabular}} \end{table}

Ad esempio la tabella 17 realizzata con lo stesso codice della tabella 13 nella pagina 75, 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. Ad 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}

80

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 6: Un esempio duso dellambiente sidewaystable.

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

produce la tabella riportata nella gura 6. In questo esempio, oltre a sidewaystable, si utilizza 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, ed inoltre si riduce la dimensione del font con il comando \small .

Tabelle su pi pagine
Il pacchetto xtab

Lambiente tabular deve sempre essere contenuto in una pagina: se pi grande in altezza, le parti che sono allesterno vengono tagliate e si riceve un errore (overfull vbox). Il pacchetto xtab permette di superare questa limitazione e di ripartire una tabella su pi pagine. Il pacchetto offre lambiente xtabular, che si comporta come il normale tabular, ma controlla le dimensioni in altezza della tabella ad ogni riga: se queste dimensioni superano quelle dellintera pagina, vengono inseriti automaticamente largomento opzionale tabletail e il comando \end{tabular}, e la tabella viene fatta continuare su una nuova pagina inserendo largomento opzionale tablehead. Largomento tabletail pu essere usato per scrivere alla ne di ogni pagina in cui presente la tabella lindicazione continua sulla pagina successiva, mentre tablehead permette di scrivere lindicazione continua dalla pagina precedente. (Si noti che il pacchetto xtab tratta la parte di tabella che si trova su una pagina come un oggetto a s stante e dunque la larghezza delle colonne pu variare tra le diverse pagine, a meno che non si usino colonne di larghezza ssa.)

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

81

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 ad una determinata origine denito come il prodotto vettoriale tra il vettore posizione5 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 (ad 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. Ad 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 ad 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
5 Rispetto alla stessa origine.

82 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 ad 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. Ad 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 ad 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.6 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 nella pagina 72). La sintassi
\columncolor[ modello di colore ]{ colore }

6 Alternativamente al pacchetto xcolor, pu essere usato il pacchetto color.

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

83

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

dove: modello di colore dichiara il modello di colore da utilizzare; quelli disponibili sono rgb, cmyk, gray e named. colore dichiara il colore da utilizzare; tale denizione dipende dal modello di colore scelto. Il modello rgb (Red Green Blue) richiede un elenco di tre numeri compresi tra 0 ed 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 ed 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 ed 1, che indica il livello di grigio; nelle tabelle scientiche si preferisce utilizzare 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 utilizzare il comando \newcolumntype per denire nuove colonne che abbiano il colore desiderato. Ad 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 \\

84 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. Ad esempio, la tabella 21 ottenuta con lo stesso codice della tabella 9 nella pagina 70 con laggiunta del comando
\rowcolor[gray]{0.8}

Usare il colore sullo sfondo per separare le righe

Talvolta il colore sullo sfondo non serve ad 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 utilizzare 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 spari (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 ad una determinata origine denito come il prodotto vettoriale tra il vettore posizione (rispetto alla stessa origine) e la forza.

85

Momento polare

Ad esempio, la tabella 22 a fronte identica alla tabella 9 nella pagina 70, ma utilizza lo sfondo grigio per le righe dispari. Il codice utilizzato :
\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. Ad esempio, la tabella 23 ottenuta con lo stesso codice della tabella 16 nella pagina 78 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 nel presente paragrafo), mentre un altro tipo di problemi, totalmente distinto dal precedente, quello del posizionamento delle gure (verranno trattati nei paragra 6.3 nella pagina 90 e 6.4 nella pagina 92). . . 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

86

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. Per questo motivo, questa possibilit non sar pi considerata per il resto del presente lavoro.7 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. omnigropup.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 7 Gli strumenti pi diffusi per disegnare graci e schemi con L TEX sono lambiente picture, i pacchetti pgf, PSTricks e xypic, 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 nellutilizzare un software esterno.

. . . Conversione dei formati

87

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.6 A nella pagina 15, L TEX richiede immagini esclusivamente in formato A eps, 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.8 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 8 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).

88

. .
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 utilizzato 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 utilizzato 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/ 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 utilizza 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

89

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 (ad esempio width=87mm), opportuno esprimere questa dimensione con un valore legato alla geometria della pagina (ad 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 ad 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:

90

\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 ad 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 ad 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 utilizzati rispettivamente allinterno dellambiente figure e table per creare una gura o una tabella mobile, che nel documento A nale 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 utilizzati 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. Ad 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:

91

\textit{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/).

92

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 ad 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, 2008, p. 88].9

.
Le tabelle e le gure richiedono un trattamento particolare, perch non possono essere spezzate e stampate su pi pagine.10 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).11
9 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. 10 Fanno eccezione le tabelle ripartite su pi pagine denite con xtab. 11 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 utilizzare 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 float: 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.

93

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 ad esempio iniziare con la seguente linea:

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

94

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 nella pagina 56), 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 di utilizzo 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.

95

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 di utilizzo 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 ad un utilizzo erroneo delle opzioni di posizionamento degli oggetti mobili. Nel presente 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 oggetto A mobile in fondo ad 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 ed inoltre si evita che
A Se L TEX sposta un oggetto, perch lo spazio insufciente, o per considerazioni estetiche.

96

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 lutilizzo 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 utilizzare 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.12 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.13 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).

12 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). 13 Talvolta alcune riviste richiedono che nelle bozze tutte le tabelle e gure siano riportate alla ne del documento: per fare questo in automatico possibile utilizzare il pacchetto endfloats.

. Possono inoltre essere utili il pacchetto float, che permette di forzare il posizionamento delloggetto nel punto in cui situato il relativo ambiente per mezzo dellopzione H (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.

97

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 7: Una gura posizionata manualmente. La gura 7 un esempio di gura mobile posizionata manualmente.

opportuno non abusare dellopzione H fornita dal pacchetto float: 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 linea del testo (le didascalie che A occupano 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 del presente documento sono state composte proprio in questo modo:
\usepackage[font=small,format=hang,labelfont={sf,bf}]{caption}

Il pacchetto caption

. .

Aancare gure o tabelle: il pacchetto subfig


Il pacchetto subg

Per afancare pi gure o tabelle si usa il pacchetto subfig (il successore di subfigure, 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 opzio-

98

(a) Mano con sfera riettente.

(b) Belvedere.

(c) Cascata.

(d) Salita e discesa.

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

. nale e obbligatorio del comando \caption : il primo, se presente, indica ci che va nellelenco relativo (\listoffigures o \listoftables ), mentre il secondo indica la sottodidascalia da porre nellambiente mobile [Gregorio, 2007]. Ciascun sottooggetto pu contenere un comando \label per potersi riferire in seguito a esso. Ad esempio, la gura 8 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}

99

. .

Testo che avvolge un oggetto: il pacchetto wrapfig


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 wrapfig. 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 9: Un esempio duso del pac- tuno che loggetto sia avvolto chetto wrapfig (limmagine, solo da testo normale: titoli che riproduce la litograa Re- di paragra, formule ed elenchi lativit, di M. Escher, trat- andrebbero evitati. ta da http://www.mcescher. Pu rendersi necessario un po com/). di lavoro manuale di impaginazione per ottenere un risultato ottimale da un punto di vista tipograco. Ad esempio, la gura 9 stata inserita con un codice del tipo seguente:

100 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 utilizza 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.

101

Figura 10: 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 nella pagina 92); il suo valore predenito tbp. Ad esempio, la gura 10 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 104 Nozioni basilari 105 7.2.1 Raggruppamenti 106 7.2.2 Apici, pedici e radici 106 7.2.3 Somme, prodotti e frazioni 106 7.2.4 Limiti, derivate e integrali 107 7.2.5 Insiemi numerici 107 7.2.6 Lettere greche 108 7.2.7 Accostare simboli ad altri simboli 108 7.2.8 Barre e accenti 109 7.2.9 Punti e frecce 110 7.3 Gli operatori 111 7.4 Le parentesi 112 7.5 Le matrici 115 7.6 Formule fuori corpo 116 7.6.1 Formule spezzate senza allineamento: multline 116 7.6.2 Formule spezzate con allineamento: split 117 7.6.3 Gruppi di formule senza allineamento: gather 117 7.6.4 Gruppi di formule con allineamento: align 118 7.6.5 Gli ambienti gathered e aligned 118 7.6.6 Casi e numerazione subordinata 118 7.7 Modicare lo stile e il corpo dei font 119 7.8 Enunciati e dimostrazioni 121 7.9 Diagrammi commutativi 125 7.10 Fisica e chimica 125 7.11 Evidenziare formule: il pacchetto empheq 126 7.12 Elenco dei simboli matematici 126

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 prima di tutto 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 sulle norme iso-uni si rimanda alla relativa documentazione e a [Beccari, 2008].1
1 Purtroppo, nonostante abbiano valore di legge, non possibile consultare liberamente le norme iso-uni, ma occorre abbonarsi ad un servizio di consultazione (a pagamento).

Le norme ISO-UNI

103

104

.
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 testo (incorporata nel 2 1 testo), come ad 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 utilizzando 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(x)\,dx, \] allora \begin{equation} F(x)=f(x). \end{equation}

Se f continua e
x

F(x) =
a

f(x) dx,

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

.
Tabella 27: Spazi in modo matematico.
\, \quad \qquad

105

Spazio sottile Spazio di un quadrato Spazio di un quadratone

\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) o \quad o \qquad (che danno spazi ampi). La dimensione di un \quad ( ) corrisponde allampiezza del carattere M nel font corrente, lo spazio sottile \, ( ) pari 3 a 18 di \quad , mentre \qquad ( ) produce uno spazio pari a due \quad . Lampiezza di un \quad chiamata anche quadrato, mentre quella di un \qquad detta quadratone. Non sono ammesse linee 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

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

x2 + 1 = 0

per x = 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 paragra-

106

fo 7.12 nella pagina 126 riportato un elenco dettagliato dei principali comandi per scrivere simboli matematici. . .
Graffe di raggruppamento

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: {. . .}.
\[ 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

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

107

Frazioni

x2 k+1

x k+1

x1/2

. .

Limiti, derivate e integrali


Limiti

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

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.

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

Integrali

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

108

\[ 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. . . Lettere greche

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


\delta , . . . (vedi la tabella 30 nella pagina 127).

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 28 a fronte); esse negli Stati Uniti sono delle varianti, ma in Europa (ad eccezione di \varsigma ) sono considerate le forme principali.3 Per scrivere documenti in accordo con il gusto europeo, utile ridenire le lettere greche varianti (ad 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 , . . . (vedi la tabella 31 nella pagina 127). Non ci sono e maiuscole in A 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
3 Con i font AMS Euler (usati nel presente documento), \rho e \varrho producono lo stesso risultato; lo stesso accade per \sigma e \varsigma (vedi la tabella 28 nella pagina successiva). 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.

.
Tabella 28: Lettere greche minuscole: forme principali e varianti.
(a) Font AMS Euler.
\epsilon

109

(b) Font Palatino.


\epsilon

\varepsilon \vartheta \varrho \varsigma \varphi

\varepsilon \vartheta \varrho \varsigma \varphi

\theta \rho \sigma \phi

\theta \rho \sigma \phi

sua posizione usuale (tipicamente, il secondo argomento un simbolo di relazione binaria). Il comando \underset ha un comportamento analogo.
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.

110

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

Valore assoluto e norma

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

Accenti matematici

Per aggiungere alle variabili un accento matematico, come un cappello o un segno di tilde, si possono usare i comandi della tabella 32 nella pagina 127. 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

Punti ellittici

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:

111

\[ x_1,\dots,x_n \qquad x_1+\dots+x_n \]

x1 , . . . , xn

x1 + + xn

Si possono trovare altri esempi nel paragrafo 7.5 nella pagina 116. 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

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 .

Simboli logici

.
Le funzioni matematiche come sin, cos e log sono (per tradizione conservata dalle norme 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}, \]

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 ed un altro

112

Operatori predeniti

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:
$\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)

Denire nuovi operatori

La tabella 29 a fronte riporta lelenco degli operatori predeniti di A 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}

Operatore parte reale

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}

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 ad esempio \updownarrow).

.
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

113

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

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

Per lelenco di tutti i delimitatori disponibili si vedano le tabelle 36 e 37 nella pagina 129. 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 , utilizzabili come pressi sulla maggior parte dei delimitatori. I comandi \bigl e \bigr ingrandiscono lievemente le parentesi:
\[ \bigl( (x-y)+(x+y) \bigr) \]

Specicare manualmente le dimensioni di un delimitatore

(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:


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

x2 n
n

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


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

I comandi \overbrace e \underbrace creano delle lunghe graffe


4 possibile specicare automaticamente le dimensioni di un delimitatore con i comandi \left (davanti ad 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 pu usare linvisibile \right. (con punto nale). Tuttavia, la scelta manuale spesso la migliore, dal momento che in molti casi i comandi \left e \right inseriscono spaziature non richieste e parentesi pi grandi del necessario.

Graffe orizzontali

114

orizzontali sopra o sotto unespressione.


\[ \underbrace{1+2+\dots+n}_{{}= \frac{n(n+1)}{2}} +(n+1) \]

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

Coefcienti binomiali

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

(a + b)n =
kN 0 k n

n nk k a b k

Intervalli

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{[}$

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

Sistemi di equazioni

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:
\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):

115

\[ \Bra{\psi_n} \quad \Ket{\psi} \quad c_n=\Braket{\psi_n | \psi} \]

n |

cn = n |

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

Matrici

1 3

2 4

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

1 3

2 4

1x 3

2 4x

Il seguente un esempio di matrice con punti ellittici:


\[ A= \begin{bmatrix} x_{11} & x_{12} & \dots \\ x_{21} & x_{22} & \dots \\ \vdots & \vdots & \ddots \end{bmatrix} \]

Matrici con punti ellittici

x11

x12 x22 . . .

...

A = x21 . . .

. . . .. .

Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel, wisi. Morbi auctor lorem non justo. Nam lacus libero, pretium at, lobortis 116 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. PelIl comando nulla. Cumtre punti ellittici verticali, et magnis dis\ddots lentesque a \vdots fa sociis natoque penatibus il comando partufa tre montes, nascetur ridiculus mus. Aliquam tincidunt } riempie di rient punti ellittici diagonali. Il comando \hdotsfor{ n urna. Nulla punti ellittici vestibulum turpis. Pellentesque cursus luctus mauris. ullamcorper per n colonne.
\[ \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} \]

a21 a22 . . . a2n . . . . . . . . . . . . . . . . . . . . . . . . an1 an2 ... ann

a11

a12

...

a1n

Piccole matrici

Nam dui ligula, piccola a, euismod sodales, il corpo del testo Per scrivere una fringilla matrice in linea con sollicitudin vel, wisi. Morbi auctor lorem non justo. Nam lacus libero, pretium at, lobortis disponibile lambiente smallmatrix: vitae, ultricies et, tellus. Donec aliquet, tortor sed accumsan bibendum, erat ligula aliquet magna, vitae ornare odio metus a mi. Morbi ac orci Sia et nisl hendrerit mollis. Suspendisse ut massa. Cras nec ante. Pel$A=\bigl( lentesque a nulla. Cum sociis natoque penatibus et magnis dis partu\begin{smallmatrix} rient b \\ montes, nascetur ridiculus mus. Aliquam tincidunt urna. Nulla ab a & Sia A = una matrice c d ullamcorper vestibulum turpis. Pellentesque cursus luctus mauris. c & d invertibile.
\end{smallmatrix} \bigr)$ una matrice invertibile.

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 nella pagina 128), mai dopo gli operatori funzionali (tabella 29 nella pagina 113), i grandi operatori e i delimitatori di apertura (vedi le tabelle 35, 36 e 37 nella pagina 129). Per spezzare le formule fuori corpo, il pacchetto amsmath mette a disposizione (fra laltro) gli ambienti multline, split, gather e align.5 . . 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.
5 Per spezzare formule fuori corpo, luso dellambiente eqnarray invece sempre sconsigliabile per molte ragioni [Fairbairns, 2007; Trettin e Zannarini, 2005].

117

\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. . . Formule spezzate con allineamento: lambiente split
Spezzare una singola formula con allineamento

Per dividere una singola formula in pi righe, con le righe da allineare, si usa lambiente split.
\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.

118

. .
Disporre gruppi di formule con allineamento

Gruppi di formule con allineamento: lambiente align

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 = b1 + c1 + d1 , a2 = b2 , 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; 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, ad 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. Ad 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 graf-

. fa 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} \]

119

f(n) :=

2n + 1, n/2,

se n dispari, se n pari.

Per numerare un gruppo di formule con uno schema subordinato disponibile lambiente subequations:
\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

Numerazione subordinata

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 usato comunemente per ottenere lettere latine in neretto in modo matematico, ma per la

Simboli in neretto

120

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} \]

, 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. Con i simboli matematici sui quali il comando \mathbf non ha effetto si usa il comando \boldsymbol , che 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 \boldsymbol{\mu}, \boldsymbol{M} \]

, M

, M

Apici e pedici in tondo

Talvolta, soprattutto in ingegneria e nelle scienze, si usa scrivere apici e pedici di simboli matematici in tondo e non in corsivo. A tal ne, si usa il comando \mathrm . bene usare \mathrm solo su brevi parti: allinterno di \mathrm gli spazi non espliciti non sono attivi, e non si pu andare a capo.
\[ V_\mathrm{eff} \qquad \psi_\mathrm{incidente} \]

Veff

incidente

Si confronti:
$V_\mathrm{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_\mathrm{eff}. Si confronti anche:
\textit{$V_\mathrm{eff}\ne V_\text{eff}$}

Veff = Veff

A differenza di \mathrm , le parole dentro a \text vengono composte con il font attuale, cio quello in vigore fuori dalla formula: perci se il contesto in tondo, il risultato di \text in tondo, mentre se il contesto in corsivo, il risultato in corsivo. Afnch il simbolo abbia sempre la stessa forma, indipendentemente dal contesto, quindi opportuno usare \mathrm e non \text .

. In alternativa, lopzione italian di babel offre i comandi \ap e \ped per scrivere in tondo apici e pedici, rispettivamente.6 In modo matematico la dimensione del font pu essere impostata manualmente con le quattro dichiarazioni \displaystyle , \textstyle , \scriptstyle e \scriptscriptstyle .
\[ \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$

121

Impostare manualmente la dimensione dei font

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;
6 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}.

Introdurre ed enumerare denizioni, teoremi e strutture simili

122
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);

quali parole esattamente andranno in stampa come titoli dei vari enunciati, per esempio Denizione e Teorema.
Il comando \newtheorem

Le dichiarazioni globali si fanno con il comando \newtheorem (nel preambolo), che consente due forme di denizione:
\newtheorem{ nome dellenunciato }{ titolo }[ sezione ] \newtheorem{ nome dellenunciato }[ numerato come ]{ titolo }

Stili di enunciati

Largomento nome dellenunciato una parola chiave utilizzata 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 utilizzata 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. 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:


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

123

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 i -4n^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 in4ni4n2 2 = 1. Mandando ne e n + si ha la tesi.

Viene un quadratino a ne dimostrazione. 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.

124

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

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.

Lenunciato Decreto utilizza lo stesso contatore dellenunciato Legge, perci ha un numero di identicazione che segue la stessa sequenza numerica utilizzata 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.

125

.
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 xypic oppure kuvio.
\[ \begin{CD} S^{\mathcal{W}_\mu}\otimes T @>j>> T \\ @VVV @VV{\hom P}V \\ (S\otimes T)/I @=(Z\otimes T)/J \end{CD} \]

SW T (S T )/I

hom P

(Z T )/J

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 lutilizzo 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_p= \SI{0.8768(11)e-15}{m}$ \\ $r_p= \SI[seperr]{0.8768(11)e-15}% {m}$ \\ \si{\joule\per\mole% \per\kelvin} \\ \num[dp=4]{1.23456} \\ \num[dp=4]{9.8} \\ \ang{1;2;3}

Unit di misura

23.4 kg m s2 rp = 0.8768(11) 1015 m rp = (0.8768 0.0011) 1015 m J mol1 K1 1.2346 9.8000 12 3

Per comporre formule chimiche utile il pacchetto mhchem. Ad esempio:


\ce{H2O} \qquad \ce{^{227}_{90}Th+} \qquad \ce{C6H5-CHO} \\[1ex] \ce{SO4^2- + Ba^2+ -> BaSO4 v}

Formule chimiche

H2 O

SO2 + Ba 4

+ 227 90Th 2+

C6 H CHO 5

BaSO4
Formule di struttura

Per la composizione delle formule di struttura disponibile il pacchetto XyMTeX:

126

Se si desidera dare particolare evidenza ad una formula, utile il pacchetto empheq. (Il primo dei seguenti due esempi richiede il pacchetto xcolor.)
\newcommand*\mygraybox[1]{% \colorbox{lightgray}{#1}} \begin{empheq}[box=% \mygraybox]{align*} \bzdrh{1==F;4== a &= b \\ \bzdrh{1==(yl);3==Cl}} E &= mc^2 + \int_a^a x\, dx \end{empheq}

Il pacchetto empheq

a=b
F

Cl

  a E = mc2 + x dx T T  T  T a TT TT   T  T  T  T 

I graci di Feynman

\begin{empheq}[box=% \fbox]{align*} _{2}$)% \ryl(5==NH--SO$ a &= b \\ {4==\bzdrh{1==(yl)}} E &= mc^2 + \int_a^a x\, dx \end{empheq}

 T a=b T NHSO2  TT 2  a x dx T E = mc +  T
a

Per disegnare i graci di Feynman disponibile il pacchetto feynmf:

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

Il pacchetto empheq

Nelle seguenti tabelle si possono trovare tutti i simboli ai quali si Se si desidera dare particolare evidenza ad 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].)

127

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}

128

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

129

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

130

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

131

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 utilizzati anche in modo testuale).

\dag \ddag

\S \P

\copyright \pounds

Tabella 41: Altri caratteri alfabetici.


\digamma \daleth

\varkappa \gimel

\beth

132

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

133

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 135 Il programma BibTEX 137 8.2.1 Basi di dati dei riferimenti bibliograci 137 8.2.2 I diversi tipi di record 138 8.2.3 I diversi tipi di campi 140 8.2.4 Alcune precisazioni 141 8.2.5 Generare la bibliograa 142 8.2.6 Stili bibliograci personalizzati 145 8.2.7 Riferimenti autore-anno: il pacchetto natbib 145 8.2.8 Riferimenti nali: il pacchetto backref 147 8.2.9 Riferimenti capitolo per capitolo: bibunits 147 Elenco dei siti Web consultati 147

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). B I B L I O G R A F I A LA

1
.

Realizzare una bibliograa spesso complicato. Per con questo pro s che allora sono disponibili svariati strumenti per gestire questo Di seguito riportato un esempio di bibliograa realizzata con lamlavoro con grande efcienza e essibilit. biente thebibliography.
\begin{thebibliography}{9} \bibitem{bringhurst:elementi} R.~Bringhurst (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.php}. \end{thebibliography}

[1] R. Bringhurst (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.php.

BIBLIOGRAFIA

Il comando viene usato per fare riferimento ad un elemento della bibliograa, e stampa il numero o letichetta dellopera: sono qui belli 135 non svariati strumenti per gestire questo lavoro con grande efcienza e essibilit.
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:

136

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}

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 L A per la classe G R A F o report, section B I B L I O article. I A Il 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 nuovaRealizzare una bibliograa spesso complicato. Per pagina che pagina) necessario: in caso contrario, il numero di con questo pro s che allora sono disponibili svariati strumenti per gestire questo compare nellindice non corretto. lavoro con grande efcienza e essibilit. allambiente itemize. Ogni Lambiente thebibliography simile elemento della bibliograa comincia con il comando \bibitem , che ha come argomento letichetta che identica (come con \label ) il docu\begin{thebibliography}{9} mento in questione. Di seguito si scrivono lautore dellopera, il titolo \bibitem{bringhurst:elementi} (in corsivo, nel caso considerato), leditore e lanno di pubblicazione. R.~Bringhurst (2001), In stampa, ogni elemento \emph{Gli Elementi dello della bibliograa vieneG R A F I A da B I B L I O contrassegnato Stile Tipografico}, un numero tra parentesi quadre. possibile assegnare a ciascuna voce Sylvestre Bonnard, Milano. bibliograca unetichetta personalizzata con il parametro opzionale di \bibitem : [1] R. Bringhurst (2001), Gli Ele-

\bibitem{mori:tesi} menti dello Stile Tipograco, Syl\bibitem[Bringhurst, 92]{bringhurst:elementi} R.~Bringhurst ... L.~F.~Mori (2007), vestre Bonnard, Milano. Scrivere la tesi di laurea Ilcon \LaTeXe, \Ars, parametro dellambiente thebibliography precisa la lunghezza mas[2] L. F. Mori (2007), Scrivere la sima di queste etichette: A \url{http://www.guit.sssup.% tesi di laurea con L TEX 2 , it/arstexnica.php}. etichette personalizzate, nica, ArsTEXin genere si mette 9 nel http://www.guit. se non si usano \end{thebibliography} sssup.it/arstexnica.php.

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 se si usano etichette personalizzate, si mette letichetta pi lunga. bibliograa, e stampa il numero o letichetta dellopera: sono qui belli non comando \cite viene gestireper fare lavoro con grande efcienza Il svariati strumenti per usato questo riferimento ad un elemento e essibilit. della bibliograa, e stampa il numero o letichetta dellopera:
Vedi~\cite{mori:tesi} 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 parametro opzionale di \cite: parametro opzionale di \cite :
Vedi~\cite[pag.~27]{mori:tesi} per maggiori dettagli.

Vedi [2, pag. 27] per maggiori dettagli.

137

.
Lambiente thebibliography permette di gestire dignitosamente una bibliograa, ma presenta anche alcuni inconvenienti: obbliga a 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.php}}} } @manual{gregorio:breveguida, author = {Gregorio, Enrico}, title = {Breve guida ai pacchetti di uso pi comune}, year = {2006}, 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} }

138

Ogni record corrisponde ad 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 ed 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 utilizzato, 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.

139

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

140

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 redattore. Tipo di pubblicazione. Istituzione editrice di una relazione. Nome di un giornale. Campo nascosto che permette di modicare lordinamento alfabetico degli elementi della bibliograa (serve come chiave di ordinamento nei record privi dellindicazione dellautore). 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 il giornale.

141

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 un giornale 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 redattori 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}

142

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

Per i cognomi preceduti dalla particella von o van c una peculiarit: se lautore , per esempio, Ludwig van Beethoven, BibTEX, ai ni dellordine alfabetico, considera il cognome come Beethoven e non come van Beethoven. Se si vuole evitarlo, basta scrivere
author = {{van Beethoven}, Ludwig}

Questo comportamento non si presenta se il cognome preceduto da una particella con iniziale maiuscola. Per esempio Alcide De Gasperi viene 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 ad 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 utilizzare per impaginare la bibliograa. A tal ne si usa il comando \bibliographystyle . Largomento di questo comando lo stile da utilizzare. 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. Come lo stile plain, ma i nomi degli autori, dei mesi e dei giornali sono abbreviati.

143

[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.php.

[Mor07] Lapo Filippo Mori. Scrivere la teA si di laurea con L TEX 2. ArsTEXnica, 2007. http://www.guit.sssup.it/ arstexnica.php. [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.php. [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.php. 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 11: Esempi di stili bibliograci.

144

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 utilizza 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{*}

Generare la bibliograa

Inne, per generare la bibliograa ed includerla nel documento, bisogna:


A a. compilare il documento con L TEX;

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

145

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 posizione A 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.4.4 nella pagina 25), 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 utilizzare il pacchetto natbib: si tratta di uno strumento particolarmente utile e versatile nella gestione della bibliograa, accompagnato da unesauriente documentazione.
\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:
1 Vedi per esempio http://www.cs.stir.ac.uk/~kjt/software/latex/showbst.html.

146

\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. lo stile usato per comporre la bibliograa del presente 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 ad 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

147

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 ad hyperref, e va caricato dopo questultimo:
\usepackage[pagebackref]{hyperref} \usepackage[hyperpageref]{backref} \renewcommand{\backref}[1]{}
A Dopo aver compilato il documento con L TEX ed 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

148

\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 149 Personalizzare lindice analitico

151

Lindice analitico un elenco di voci ordinate alfabeticamente, anche con alcuni livelli di subordinazione, posto di regola alla ne di un documento; vicino ad 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.

149

150

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.

151

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 "\n \\item \\textsc{" heading_suffix "}" symhead_positive "Simboli" symhead_negative "simboli" numhead_positive "Numeri" numhead_negative "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.4.4 nella pagina 25), 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,

152

\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 153 10.1.1 Denire nuovi comandi 153 10.1.2 Spazi dopo i comandi 154 10.1.3 Nuovi ambienti 155 10.1.4 Un pacchetto personale 155 10.2 Font 156 10.2.1 Comandi per cambiare lo stile dei font 156 10.2.2 Dichiarazioni per cambiare il corpo dei font 157 10.3 Inserire uno sfondo colorato in unimmagine 158 10.4 Le pagine bianche nei documenti fronte-retro 159 10.5 Testatine personalizzate 159 10.6 Cambiare le voci generate da babel 160

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 ad 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 utilizzato 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

153

154

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 utilizzare 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 ad 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 . Ad 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.
Il presente lavoro intitolato \arte.

Il presente lavoro intitolato Larte A di 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.1.3 nella pagina 20). 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.

155

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

156 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 utilizzare 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.

157

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 successiva 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

158 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 utilizzato come sfondo della gura 12b a fronte), 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.

159

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 12: 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.3 nella pagina 22). 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 ridenire il comando \cleardoublepage , aggiungendo nel preambolo il seguente codice:
\makeatletter \def\cleardoublepage{\clearpage \if@twoside \ifodd\c@page \else \null\thispagestyle{empty}\clearpage \fi \fi} \makeatother

.
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 nomi 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 \rightmark e \leftmark per indicare rispettivamente la testatina del capitolo e quella 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 \rightmark e \leftmark , ma richiamano due
Il pacchetto fancyhdr

pp

o Util

zz a

t tori I

zz a

t tori I

al ia
ni di

al ia
ni di

160

48

Le origini della teoria delle distribuzioni

3.3 La Delta di Dirac

49

la cui rappresentazione graca data nella gura 3.1 nella pagina precedente. geometricamente evidente che quando n + laltezza della regione rettangolare rappresentata in gura cresce indenitamente mentre la larghezza diminuisce in modo tale che larea della regione sia sempre uguale a 1, cio + f (t) dt = 1. Si pu quindi immaginare, continua Heaviside, una funzione n limite cui tende fn (t) quando n +. Questa funzione limite, detta funzione impulsiva unitaria, coincide con la derivata simbolica pH(t) della funzione di Heaviside. Lingegnere inglese non entr in maggiori dettagli in questi esempi. comunque signicativo osservare che le sue intuizioni possono essere rese rigorose: le espressioni d Q0 H(t) = Q0 (t) dt e
n+

lim fn (t) = (t)

(3.5)
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.

sono corrette nel senso distribuzionale.1 Negli anni Venti e Trenta diversi matematici, da N. Wiener (1926) e P. Lvy (1926) a B. Van der Pol (1929) e F. K. Niessen (1932), contribuirono a dare una sistemazione teorica al calcolo operazionale di Heaviside; nel 1937 G. Doetsch diede un assetto rigoroso alla teoria della trasformata di Laplace (per funzioni ordinarie), nel cui contesto si collocava anche il calcolo dellingegnere inglese. I tentativi di rendere rigoroso il calcolo operazionale si concentrarono per principalmente nella spiegazione della sua manipolazione algebrica di operatori dierenziali, mentre i problemi connessi con le funzioni impulsive vennero per lo pi trascurati. Poich nella maggior parte delle applicazioni le funzioni impulsive entravano come pH(t) e scomparivano nel risultato, non veniva generalmente loro attribuito alcun particolare signicato. In eetti le dierenti sistemazioni del calcolo operazionale potevano spiegare il successo dei procedimenti di Heaviside solo nei casi in cui le funzioni impulsive non intervenivano. 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,
+

Per calcolare la trasformata di Laplace L[pH(t)] = 0 pH(t)est dt della funzione impulsiva unitaria, Van der Pol procede come segue. Innanzitutto + determina L[fn (t)] = 0 fn (t)est dt, dove fn (t) denita dalla relazione (3.4); ottenuto L[fn (t)] =
1es/n s/n

mostra che limn+ L[fn (t)] = 1 e conclude:


n+

L[pH(t)] = L

lim fn (t) = lim L[fn (t)] = 1.


n+

(3.9)

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.

pH(t) dt = 1.

(3.6)

3.3

La Delta di Dirac

Aerma che tale oggetto pu essere denito in modo equivalente come limite di una successione di gaussiane:
2 2 n pH(t) = en t ,

(3.7)

dove n un numero naturale molto grande. Egli inoltre d la formula


+

f (t) pH(t) dt = f (0),

(3.8)

che dimostra attraverso unintegrazione per parti. Van der Pol illustra i suoi argomenti con la gura 3.2 a fronte.
nozioni e i procedimenti euristici usati da Heaviside sollevarono un grande scandalo fra i matematici, ed egli fu addirittura espulso dalla Royal Society di Londra per indegnit teorica.
1 Le

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 i matematici riconoscevano le funzioni improprie come parte della propria disciplina; i matematici, se le usavano,

Figura 13: Un esempio duso del pacchetto fancyhdr.

ulteriori comandi, \chaptermark e \sectionmark , che a loro volta deniscono \rightmark e \leftmark . Cos, se si desidera cambiare il nome del capitolo o del paragrafo nella testatina, si deve semplicemente ridenire \chaptermark e \sectionmark , rispettivamente. La gura 13 illustra un esempio duso del pacchetto fancyhdr ottenuta con il seguente codice:
\documentclass{book} \usepackage{fancyhdr} \pagestyle{fancy} % I comandi seguenti impediscono la scrittura in maiuscolo % dei nomi dei capitoli e dei paragrafi nelle testatine \renewcommand{\chaptermark}[1]{\markboth{#1}{}} \renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}} \fancyhf{} % Rimuove lattuale contenuto della testatina % e del pi di pagina \fancyhead[LE,RO]{\bfseries\thepage} \fancyhead[LO]{\bfseries\rightmark} \fancyhead[RE]{\bfseries\leftmark} \renewcommand{\headrulewidth}{0.5pt} \renewcommand{\footrulewidth}{0pt} \addtolength{\headheight}{0.5pt} % Riserva spazio per la linea \fancypagestyle{plain}{% \fancyhead{} % Ignora, nello stile plain, le testatine e la linea \renewcommand{\headrulewidth}{0pt}}

.
Talvolta pu essere necessario modicare le voci generate automaticamente dal pacchetto babel. Per esempio, si pu voler cambiare la

.
Tabella 50: Comandi di babel specici per litaliano.
\abstractname \alsoname \appendixname \bibname \ccname \chaptername \contentsname \enclname \figurename \glossaryname \headtoname

babel

161

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

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 . Ad esempio, volendo sostituire la voce Capitolo con Unit basta scrivere
\addto\captionsitalian{% \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 164 a.1.1 Accento tonico e fonico 164 a.1.2 Apostrofo 165 Punteggiatura e spaziatura 166 a.2.1 Segni di interpunzione e apostrofo 166 a.2.2 Virgolette 166 a.2.3 Parentesi 167 a.2.4 Punti ellittici 168 a.2.5 Trattini 168 a.2.6 Sbarretta e asterisco 168 Stile dei font 169 a.3.1 Corsivo 169 a.3.2 Neretto 169 a.3.3 Maiuscoletto 169 Composizione del testo 169 a.4.1 Capoversi 169 a.4.2 Vedove e orfani 170 a.4.3 Parole straniere 170 a.4.4 Numeri 171 a.4.5 Frazioni, percentuali, unit di misura 172 a.4.6 Sigle 173 La bibliograa 173

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, la presente 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 103) hanno valore di legge. Per maggiori dettagli sulle norme iso-uni si rimanda alla relativa documentazione e a [Beccari, 2008]. In questa appendice diamo per scontato che siano caricati correttamente il pacchetto babel con lopzione italian, il pacchetto inputenc
1 Per molti dei temi trattati nella presente 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

163

164

con la codica appropriata ed il pacchetto fontenc con lopzione T1 (vedi i primi due paragra del capitolo 5 nella pagina 35):
\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, ad 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). possibile usare il pacchetto inputenc per inserire i caratteri accentati direttamente da tastiera (vedi il paragrafo 5.1.2 nella pagina 37).
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.

165

Si noti tuttavia che per alcuni caratteri, ad 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 ad 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.

166

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 ad 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, ad 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 (ad 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 nella pagina 49). La forma altobasso ( ) 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;

167

Uso delle virgolette

titoli di opere. Non esistono regole sse o comunemente accettate per luso dei vari tipi di virgolette nei vari casi sopra elencati (e negli altri tanti possibili). Inoltre, in quasi tutti questi casi luso del corsivo concorre con quello delle virgolette. La cosa fondamentale, quindi, fare una scelta iniziale ragionevole ed attenersi coerentemente ad essa nel resto del documento. . . Parentesi

Le parentesi normalmente utilizzate 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 nella pagina 49). 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

Parentesi graffe e uncinate

Parentesi quadre

168

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. 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 A uno 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 nella pagina 49). 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 nella pagina 49), 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 utilizza anche per scrivere le frazioni numeriche, come 3/4. Non si confonda la sbarretta (slash, /), che pu essere inserita direttamente da tastiera, con la barra rovescia (backslash, \), riservata A ai comandi di L TEX (vedi il paragrafo 4.1 nella pagina 17). 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).

169

.
In tipograa, la parola font indica un insieme di caratteri accomunati da un certo stile graco [Zannarini e Vavassori, 2005]. I font pi utilizzati 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 utilizzati per esigenze particolari: per esempio, nel presente documento si usa il carattere tipo macchina per scrivere per evidenziare il codice e i pacchetti di A L TEX. Lo stile evidenziato o enfatizzato reso normalmente col corsivo, ma riveste un ruolo logico differente, discusso nel paragrafo 5.11 nella pagina 58. . . Corsivo
Font

Il corsivo si usa nel testo principalmente: per evidenziare le parole importanti del testo; per le parole straniere (anche latine) non entrate nelluso italiano, ad esempio guillemet o politically correct; per i titoli di opere citate, ad 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 utilizzato. . . 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 usarlo 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 utilizzato.

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

170

Il rientro nella prima riga di un capoverso

(formato da pi capoversi) chiamato section (vedi il paragrafo 5.4 nella pagina 40). 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 rientrato). La stessa regola vale anche nel caso delle citazioni fuori corpo (vedi il paragrafo 5.12 nella pagina 58).4 Per avere il rientro anche nel paragrafo iniziale si usa il pacchetto indentfirst, richiamandolo nel preambolo con:
\usepackage{indentfirst}

. .

Vedove e orfani

In tipograa, si usa chiamare orfano 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, facendo in modo che ci siano almeno due righe di uno stesso capoverso sia in A cima che in fondo a ogni pagina. L TEX gi programmato per ottenere questo effetto. . .
Le parole straniere non di uso corrente per il lettore vanno in corsivo.

Parole straniere

Le parole straniere duso comune non assumono la forma plurale.

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. Ad 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, ad 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.
4 Se i capoversi non sono rientrati, vengono solitamente spaziati verticalmente luno dallaltro: in questo caso utile il pacchetto parskip.

. 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]. . . . . . Numeri

171

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}

Il pacchetto numprint

1 500 000

172

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, che si scrivono quasi sempre in cifre, 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 spaA ziatura dopo la virgola: in modo matematico, 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

Il pacchetto icomma

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

Frazioni

Percentuali

Unit di misura

Le frazioni si possono esprimere in lettere (tre quarti) a meno che non indichino una quantit numerica precisa. In questo caso si possono scrivere utilizzando la sbarretta, per esempio 3/4, o la forma fra3 A zionaria vera e propria, per esempio 4 (codice L TEX: $\frac{3}{4}$). Per una migliore resa tipograca di frazioni di questo tipo, soprattutto se inserite nel testo, si usa il pacchetto xfrac: per esempio, il codice $\sfrac{3}{4}$ produce la scrittura 3/4, che pi compatta ed elegante.5 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, 20 cm o 15 kg. Si noti che il simbolo dellunit di misura non A vuole il punto. In L TEX, per inserire le unit di misura del Sistema Internazionale consigliabile lutilizzo del pacchetto siunitx (vedi il paragrafo 7.10 nella pagina 125).
5 Il pacchetto xfrac richiede le versioni aggiornate dei pacchetti xparse, template e xtools.

. . . Sigle

173

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 utilizza 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).

Acronimi

Abbreviazioni

.
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 essenzialmente dal tipo di pubblicazione, dalleditore, dai gusti dellautore e da altri fattori. Per esempio, lo stile della bibliograa adottato nel presente documento, abbastanza 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 nella pagina 135). 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.
Stile dei riferimenti bibliograci

B
b.1 b.2

GALLERIA DEGLI ORRORI

b.3 b.4

Il testo 175 b.1.1 Linserimento dei caratteri accentati 175 b.1.2 La divisione in sillabe 176 b.1.3 I margini 176 b.1.4 Gli indirizzi Internet 176 b.1.5 Le note a pi di pagina 177 Le tabelle 177 b.2.1 Regole generali 177 b.2.2 Allineare i numeri alla virgola 179 b.2.3 Le tabelle mobili 180 Le gure 181 b.3.1 Le gure mobili 181 La matematica 183 b.4.1 Formule fuori corpo 183 b.4.2 Operatori 186 b.4.3 Parentesi 187 b.4.4 Matrici 188 b.4.5 Integrali multipli 188 b.4.6 Insiemi numerici 189 b.4.7 Riferimenti a una formula 190 b.4.8 Punti ellittici 190

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?

175

176

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 nella pagina 37):
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 italiane, viene A eseguita benissimo dallalgoritmo di L TEX). Per esempio si possono avere parole come macroistruzione (divisione ordinaria: ma-croistru-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) (vedi il paragrafo 5.4.1 nella pagina 42). 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 nella pagina 45). . . Gli indirizzi Internet

Consideriamo il seguente codice:

177

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

178

\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 nella pagina 70). 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 nella pagina 70).
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 nella pagina successiva, ottenuta con il seguente codice:


\begin{tabular}{||p{5cm}||*{2}{c|}|} \hline & Contenuto & Quantit\a \\ \hline \hline \bfseries Heineken & 33 cl & 10 \\ \hline

.
Tabella 51: Tabella non composta correttamente secondo le regole generali.

179

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

\bfseries Guinness & 66 cl & 5 \\ \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 nella pagina 72). 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:

180 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 utilizzare il pacchetto


dcolumn. 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 utilizzato 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

181

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 nella pagina 92). Inoltre, per centrare una tabella mobile opportuno utilizzare 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 utilizzato 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:

182

Figura 14: 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 utilizzare 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 (ad 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 nella pagina 88).

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 14 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 nella pagina 56); nei riferimenti agli oggetti mobili, il comando \label deve comparire dopo il corrispondente \caption . Inoltre, non si usa la maiuscola nellabbreviazione

183

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 ad 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 14 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 usati mai.

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 [Beccari, 2008, p. 126], altri ritengono tale punteggiatura necessaria ed essenziale [Guiggiani e Mori, 2008, p. 8]. Limportante, qualunque dei due metodi si scelga, essere coerenti e usare sempre un unico metodo. Lautore del presente documento ritiene che le formule, sia in corpo sia fuori corpo, facciano parte dellargomentazione e che, quindi, la punteggiatura vada usata per aiutare il lettore. Si consideri ora:
$$ f(x) > 1 \mbox{ se } x < 3 $$

Nel presente documento si usa la punteggiatura nelle formule fuori corpo.

f(x) > 1 se x < 3

184

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 usati mai.

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 AT X 2 , questo difetto stato conservato, per si passati al nuovo L E mantenere una compatibilit con i le predisposti per essere composti con la vecchia versione. Oggi gli ambienti eqnarray ed eqnarray* non devono venire pi usati, ma vanno usati solo gli ambienti predisposti dal pacchetto amsmath (vedi il paragrafo 7.6 nella pagina 116). 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: il comando \: nella formula (B.1) dellesempio considerato produce 4 un piccolo spazio di 18 quad (vedi il paragrafo 7.1 nella pagina 104).

Formule spezzate con allineamento Si consideri la seguente formula:

185

\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 nella pagina 187). 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)

186

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 nella pagina 109) 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-

187

fo 7.3 nella pagina 111). Per esempio, per denire una funzione mateA matica 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 ad 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

188

. .

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 nella pagina 115). 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:

189

$$ 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

3 (Il comando \! produce uno spazio negativo di 18 quad.) Per gli integrali multipli si usano gli appositi comandi forniti da amsmath (vedi il paragrafo 7.2.4 nella pagina 107):

Per scrivere gli intergali multipli si usano gli appositi comandi di amsmath.

\[ V=\iiint_\Omega d\tau \]

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)

190

. .

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 ad una formula si usa \eqref.

Per riferirsi ad 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 nella pagina 43). . . 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

BIBLIOGRAFIA
American Mathematical Society (1999), Manuale duso del pacchetto amsmath, http://tug.ctan.org/tex-archive/info/italian/ amsldoc/itamsldoc.pdf. Beccari, C. (2008), Introduzione allarte della composizione tipograA ca con L TEX, http://www.guit.sssup.it/downloads/GuidaGuIT.pdf. (Citato alle pagine 5, 16, 39, 92, 103, 163 e 183.) Bringhurst, R. (2001, ed. or. 1992), Gli Elementi dello Stile Tipograco, Sylvestre Bonnard, Milano. (Citato alle pagine 45, 146 e 193.) Busdraghi, F. (2004), Documentazione del pacchetto layaureo, http:// www.guit.sssup.it/downloads/layaureo.pdf. (Citato a pagina 46.) 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 85.)
A Cevolani, G. (2006), Norme tipograche per litaliano in L TEX, ArsTEXnica, (1), http://www.guit.sssup.it/arstexnica.php. (Citato a pagina 163.)

Fairbairns, R. (2007), The uk TEX faq, http://www.tex.ac.uk/ tex-archive/help/uk-tex-faq/newfaq.pdf. (Citato alle pagine 46, 104, 116, 176 e 183.)
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 70.)

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 175.) A Gregorio, E. (2007), L TEX: breve guida ai pacchetti di uso pi comune, http://profs.sci.univr.it/~gregorio/breveguida.pdf. (Citato alle pagine 36, 73 e 99.) A Gregorio, E. (2008), Appunti di programmazione in L TEX e TEX, http: //profs.sci.univr.it/~gregorio/introtex.pdf.

Guiggiani, M. e Mori, L. F. (2008), Consigli su come non maltrattare le formule matematiche, ArsTEXnica, (5), http://www.guit.sssup. it/arstexnica.php. (Citato alle pagine 183, 186 e 189.)

191

192

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.php. (Citato a pagina 9.)
A Mori, L. F. (2006), Tabelle su L TEX 2 : pacchetti e metodi da utilizArsTEXnica, (2), http://www.guit.sssup.it/arstexnica.php. zare, (Citato a pagina 69.) A Mori, L. F. (2007), Scrivere la tesi di laurea con L TEX 2 , ArsTEXnica, (3), http://www.guit.sssup.it/arstexnica.php. (Citato alle pagine 15, 48, 86, 95 e 146.) A Mori, L. F. (2008), Gestire la bibliograa con L TEX, ArsTEXnica, (6), http://www.guit.sssup.it/arstexnica.php.

Mori, L. F. e Himmelmann, M. (2007), Scrivere il curriculum vitae, ArsTEXnica, (4), http://www.guit.sssup.it/arstexnica.php. 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 39, 40 e 126.)
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 126.)

Pantieri, L. (2008a), Introduzione allo stile ClassicThesis, http://www. lorenzopantieri.net/LaTeX_files/ClassicThesis.pdf. (Citato alle pagine 23, 38, 45 e 56.) Pantieri, L. (2008b), Manuale duso del pacchetto ArsClassica, http://www.ctan.org/tex-archive/macros/latex/contrib/ arsclassica/ArsClassica.pdf. (Citato a pagina 38.)

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 46, 104, 116, 176 e 183.) 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 45.)
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 169.)

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 della presente 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: 2 dicembre 2008.

INDICE ANALITICO

A
a4paper, 23 a5paper, 23 \AA, 55 \aa, 55 abbrv, 142, 143 \abs, 110 \abstractname, 161

CD, 125 center, 60, 77, 91, 95, 181,

182
comment, 21 ctable, 82 description, 59 enumerate, 59 eqnarray, 116, 184 eqnarray*, 184 equation, 104, 117, 118,

Accenti matematici, 109, 110, 127 testuali, 19, 54, 55, 164, 165 Acronimi, 48, 64, 141, 173 acronym, 64 \acute, 127 \addcontentsline, 53, 136, 144 address, 138, 139 \adjustmtc, 49 Adobe Acrobat, 88 Adobe Reader, 15, 31, 39, 88 Adobe, inc., xvixix, 15, 88 \AE, 55 \ae, 55 Albero locale, 25, 26 personale, 25, 26, 145, 151 principale, 25, 26 \aleph, 131 algorithm, 64 Algoritmi, 63, 64 algpseudocode, 64 align, 116118, 184 align*, 118 aligned, xi, 118 \alpha, 108, 127 alpha, 142, 143 \alsoname, 161 \amalg, 128 Ambiente align, 116118, 184 align*, 118 aligned, xi, 118 array, 70 Bmatrix, 115 bmatrix, 115 cases, 118, 186

125
equation*, 104, 117 figure, 9095, 97, 101 figure*, 92 flushleft, 60 flushright, 60 gather, 116118 gather*, 117 gathered, xi, 118 itaitemize, 155 itemize, 59, 136 lstlisting, 64 matrix, 115 multicols, 151 multline, 116, 185 multline*, 117 otherlanguage, 37 otherlanguage*, 37 picture, 86 pmatrix, 115 proof, 123 savenotes, 81 SCfigure, 101 SCtable, 101 sidewaystable, 79, 80 smallmatrix, 116 split, 116, 117, 185 subequations, 119 table, 76, 78, 79, 81, 90,

9294, 97, 101


table*, 92 tabular, 28, 7072, 7678,

8082, 84, 90, 91, 115


thebibliography, 135137,

147, 148, 173

195

196

theindex, 151 thesitography, 148 titlepage, 56 verse, 62 Vmatrix, 115 vmatrix, 115 wrapfloat, 99, 100 xtabular, 80

B
\b, 55 b5paper, 23 babel, 25, 28, 35, 36, 43, 50, 121,

160, 161, 163, 166


\backepsilon, 132 \backmatter, 47 \backprime, 131 backref, 28, 31, 147 \backsim, 132 \backsimeq, 132 \backslash, 129 \bar, 109, 127, 187

Ambienti personalizzati, 155


\AmS, 54

AMS Euler, 108, 109 amscd, 125 amsmath, 28, 54, 103, 104, 112, 116, 184191 amssymb, 28, 104, 133, 189 amsthm, 28, 121, 122 \and, 55 \angle, 131 ansinew, 38 Anteprima, 39, 87, 88 \ap, 121 Apici, 49, 50, 106, 107, 111, 112, 120, 121, 166 Apostrofo, 19, 164166 Appendici, 47, 48 \appendix, 47 \appendixname, 161 Apple, inc., xix applemac, 38 \approx, 128 \approxeq, 132 Aquamacs, 13 \arccos, 113 \arcsin, 113 \arcsinh, 112 \arctan, 113 \arg, 113 array, 28, 70, 7274, 82, 179 \arraybackslash, 75 \Arrowvert, 129 \arrowvert, 129 \Ars, 20, 54, 136 ArsClassica, 192, 193 \arte, 154 article, 23, 24, 29, 47, 53, 136, 144, 148 \ast, 128 Asterisco, 49, 55, 166, 168 \asymp, 128 Asymptote, 86 \author, 55 author, 138141

Barre, 109, 110, 115, 166, 168, 172 \barwedge, 132 \Bbbk, 131 \because, 132 Bera Mono, 193 Berners-Lee, T., xvii \beta, 108, 127 \beth, 131 \between, 132 \bfseries, 74, 156 \bibitem, 136 Bibliograa, 31, 48, 135145, 147, 148, 169, 173 \bibliography, 142 \bibliographystyle, 142, 144, 145 \bibname, 148, 161 BibTEX, 3032, 135, 138, 140 142, 144, 147, 148, 173 bibunits, 147 \Big, 113 \big, 113 \bigcap, 129 \bigcirc, 128 \bigcup, 129 \Bigg, 113 \bigg, 113 \Biggl, 113 \biggl, 113, 185 \Biggr, 113 \biggr, 113, 185 \Bigl, 113 \bigl, 113 \bigodot, 129 \bigoplus, 129 \bigotimes, 129 \Bigr, 113

197

\bigr, 113 \bigskip, 42 \bigstar, 131 \bigtriangledown, 128 \bigtriangleup, 128 \biguplus, 129 \bigvee, 129 \bigwedge, 129 binding, 46 \binom, 114, 187 \blacklozenge, 131 \blacksquare, 131 \blacktriangle, 131 \blacktriangledown, 131 \blacktriangleleft, 132 \blacktriangleright, 132 Bmatrix, 115 bmatrix, 115 \bmod, 112 bmp, 87 bmpsize, 87 \boldsymbol, 120 book, 23, 24, 29, 47, 53, 136, 144,

author, 138141 booktitle, 139 chapter, 139 edition, 138, 139 editor, 138, 139, 141 howpublished, 138, 139 institution, 139, 140 journal, 138 key, 138, 139 month, 138140 note, 138140 number, 138, 139 organization, 139 pages, 138, 139 publisher, 138140 school, 139 series, 138, 139 title, 138140 type, 139 volume, 138, 139 year, 138140 \Cap, 132 \cap, 128

147, 159
booklet, 138 bookmarks, 51, 53 booktabs, 28, 69, 71, 178181,

191
booktitle, 139 \bot, 131 \bottomrule, 71, 178

bounding box, 88 \bowtie, 128 \Box, 131 \boxdot, 132 \boxminus, 132 \boxplus, 132 \boxtimes, 132 \Bra, 114 \bracevert, 129 \Braket, 114 braket, 114 \breve, 127 Bringhurst, R., 45, 193 \bullet, 128 \Bumpeq, 132 \bumpeq, 132 C
\c, 55

Campo
address, 138, 139

Capolettera, 64, 65 Capoversi, 18, 3942, 169, 170 \caption, 76, 77, 94, 99, 183 caption, 28, 77, 97, 99, 181 Caratteri speciali, 18, 19 cases, 118, 186 \ccname, 161 CD, 125 \cdot, 128 \cdots, 131 \cellcolor, 85 center, 60, 77, 91, 95, 181, 182 \centerdot, 132 \centering, 75, 77, 95, 181, 182 \chapter, 37, 47, 49, 159 chapter, 139 \chapter*, 49 \chaptermark, 160 \chaptername, 161 \check, 127 \chi, 127 Chiave binding, 46 bookmarks, 51, 53 citecolor, 52 colorlinks, 52 filecolor, 52 font, 97 format, 97

198

height, 89 labelfont, 97 linkcolor, 52 pdfauthor, 51 pdffitwindow, 51 pdfmenubar, 51 pdfnewwindow, 52 pdftitle, 51 pdftoolbar, 51 tablehead, 80 tabletail, 80 unicode, 51, 54 urlcolor, 52 width, 89, 182 chngpage, 28, 46 \circ, 128 \circeq, 132 \circlearrowleft, 130 \circlearrowright, 130 \circledast, 132 \circledcirc, 132 \circleddash, 132 \circledS, 131

\cmidrule, 72 cmyk, xvi, 83

Citazioni fuori corpo, 62, 170 in corpo, 62 \cite, 29, 136, 138, 142, 144 \citeauthor, 146 citecolor, 52 \citep, 146 \citep*, 146 \citet, 146 \citet*, 146 \citeyear, 146 \citeyearpar, 146 Classe article, 23, 29, 47, 53, 136, 144, 148 book, 23, 24, 29, 47, 53, 136, 144, 147, 159 KOMA-Script, 23, 77 letter, 23 memoir, 192 report, 23, 24, 29, 47, 53, 136, 144, 147 classic, 146 ClassicThesis, vii, 23, 38, 56, 192, 193 \cleardoublepage, 96, 136, 159 \clearpage, 136, 144 \clubsuit, 131 CM-Super, 39, 65

Codici, 63 Codica dei font, 28, 38, 39, 164 \colon, 110 color, 82 colorlinks, 52 colortbl, 8285 \columncolor, 8285 \columnwidth, 75, 92 Comandi personalizzati, 153, 154 comment, 21 Commenti, 20, 21 \complement, 131 Computer Modern, xvi, 9, 38, 39 conference, 138 \cong, 128 \contentsname, 161 \coprod, 129 \copyright, 131 Corpo dei font, 47, 97, 119, 121, 156158 del documento, 21, 22 del testo, 45, 62, 96, 104 Corsivo matematico, 104, 111, 120 testuale, 58, 104, 156, 167, 169171, 173 \cos, 111, 113 \cosh, 113 \cot, 113 \coth, 113 \cov, 187 cp850, 38 crop, 46 \csc, 113 ctable, 82 \Cup, 132 \cup, 128 \curlyeqprec, 132 \curlyeqsucc, 132 \curlyvee, 132 \curlywedge, 132 \curvearrowleft, 130 \curvearrowright, 130 D
\d, 55 \dag, 131

199

\dagger, 128 \daleth, 131 \dashleftarrow, 130 \dashrightarrow, 130 \dashv, 128 \date, 55 dcolumn, 75, 180 \ddag, 131 \ddagger, 128 \ddot, 127 \ddots, 116, 131 \DeclareMathOperator, 112, 187

\Downarrow, 129, 130 \downarrow, 129, 130 \downdownarrows, 130 \downharpoonleft, 130 \downharpoonright, 130 draft, 24, 42 dvi, xvi, xix, 13, 15, 31, 39 dvipdfmx, 16 dvips, 16

Dedica, 48, 61
definition, 122 \deg, 113 \Delta, 108, 127 \delta, 108, 127

Derivate, 107 description, 59 Descrizioni, 59 \det, 113 \dfrac, 121 \diagdown, 131 Diagrammi commutativi, 125 \diagup, 131 \Diamond, 131 \diamond, 128 \diamondpar, 65 \diamondsuit, 131 Didascalie abbreviate, 94 laterali, 100 personalizzate, 28, 97 \digamma, 131 \dim, 113 Dimostrazioni, 121, 123 \displaystyle, 121 \div, 128 \divideontimes, 132 \documentclass, 22, 23, 30, 42 Documenti corposi, 32 \dominitoc, 49 \dot, 127 \Doteq, 132 \doteq, 128 \doteqdot, 132 \dotplus, 132 \dots, 22, 50, 110, 131, 168, 190 \doublebarwedge, 132 \doublecap, 132 \doublecup, 132 \doublespacing, 46

E EC, xvi, 38, 39 edition, 138, 139 Editor Aquamacs, 13 Emacs, 13, 14 Kile, 14 LEd, 13 TEXmaker, 14 TEXnicCenter, 12 TEXShop, 13 Vim, 14 WinEdt, 12 editor, 138, 139, 141 Elenchi numerati, 59 puntati, 59 Elenco dei siti Web consultati, 147 delle gure, 31, 94, 99 delle tabelle, 31, 76, 94, 99 \ell, 131 Emacs, 13, 14 \emph, 20 empheq, 126 empty, 29 \emptyset, 131 \enclname, 161 endfloats, 96 \enlargethispage, 67 enumerate, 59 enumitem, 28, 60 Enunciati, 28, 121124 Epigra, 64 epigraph, 64 eps, xvi, 15, 16, 30, 86, 87 \epsilon, 127 \eqcirc, 132 eqnarray, 116, 184 eqnarray*, 184 \eqref, 104, 190 \eqslantgtr, 132

200

\eqslantless, 132 equation, 104, 117, 118, 125 equation*, 104, 117 \equiv, 128

\footnotesize, 157, 158 \forall, 131 \foreignlanguage, 37 format, 97

Escher, M. C., ii, 71, 89, 91, 97101, 105, 150, 154, 182 esp2pdf, 87 esptopdf, 87 \eta, 127 \eth, 131 eucal, 133 \euro, 54 eurosym, 28, 54 executivepaper, 23 \exists, 131 \exp, 113 F
\fallingdotseq, 132 fancyhdr, 28, 30, 159, 160 feynmf, 126 figure, 9095, 97, 101 figure*, 92 \figurename, 161 filecolor, 52 final, 24 \Finv, 131 \flat, 131 fleqn, 23, 117, 183 float, 28, 92, 97 \FloatBarrier, 97 flushleft, 60 flushright, 60

Formato bmp, 87 dvi, xvi, xix, 13, 15, 31, 39 eps, xvi, 15, 16, 30, 86, 87 gif, xvii, 86 jpg, xvii, 16, 30, 87 pdf, xvii, xviii, 13, 15, 16, 27, 30, 31, 39, 8688 png, xvii, 16, 30, 86, 87 ps, xvi, xviii, 15, 86, 87 tiff, xviii, 86 Formule evidenziate, 126 fuori corpo, 104, 105, 116, 117, 123, 125, 184 in corpo, 18, 104 non numerate, 104, 117, 118 numerate, 104 Formule chimiche, 125 \frac, 107 Frazioni, 106, 107, 168, 172 Frecce, 109111, 125, 130 \frenchspacing, 44 Frontespizio, 48, 55, 56 frontespizio, 55, 56 \frontmatter, 47 \frown, 128 G
\Game, 131 \Gamma, 108, 127 \gamma, 108, 127 gather, 116118 gather*, 117 gathered, xi, 118 \gcd, 113 \ge, 128 geometry, 25, 28, 46, 176 \geq, 128 \geqq, 132 \geqslant, 132 \gets, 130 \gg, 128 \ggg, 132 \gggtr, 132

Font AMS Euler, 108, 109 Bera Mono, 193 CM-Super, 39, 65 Computer Modern, xvi, 9, 38, 39 EC, xvi, 38, 39 Iwona, 193 Latin Modern, 39, 65 matematici, 104, 119121, 133 Palatino, 109, 193 Times New Roman, 9 font, 97 fontenc, 28, 39, 65, 164 footmisc, 28, 58 \footnote, 81 footnote, 81

Ghostscript, 12, 15, 87 Ghostview, 15, 87, 88, 90

201

gif, xvii, 86 \gimel, 131

\hyphenation, 42, 43, 176

Gimp, 15, 87, 88


\glossaryname, 161 \gnapprox, 133 \gneq, 133 \gneqq, 133 \gnsim, 133

I
\i, 55 icomma, 172 \idotsint, 107 \iff, 111, 130 \iiiint, 107 \iiint, 107 \iint, 107 \Im, 131

Gnuplot, 14, 86 Graci di Feynman, 125 \graphicspath, 90 graphicx, 15, 24, 25, 28, 78, 88, 89, 158 \grave, 127 gray, 83 Gregorio, E., i, vii, xxii, 55 GSview, 12, 15, 87, 88, 90 \gtrapprox, 132 \gtrdot, 132 \gtreqless, 132 \gtreqqless, 132 \gtrless, 132 \gtrsim, 132 \GuIT, 54 guit, 20, 54, 136 \GuIT*, 54 \gvertneqq, 133 H
\H, 55 \hat, 127 \hbar, 131 \hdotsfor, 116 headings, 29 \headtoname, 161 \heartpar, 65 \heartsuit, 131 height, 89 \hline, 71, 178 \hoffset, 176 \hom, 113 \hookleftarrow, 130 \hookrightarrow, 130 howpublished, 138, 139 \href, 53 \hslash, 131 html, xvii, xviii, 7 \Huge, 157, 158 \huge, 157, 158 hyperref, 16, 28, 31, 51, 53, 54,

ImageMagick, 87
\imath, 131

147, 177
\hypersetup, 51

Immagini afancate, 97 bitmap, 15, 16, 8588 con sfondo colorato, 158, 159 fuori testo, 9092 in testo, 90, 91 vettoriali, 16, 8588 \implies, 111 \in, 108, 128 inbook, 139 \include, 32, 33 \includegraphics, 8991, 100, 182 \includeonly, 33 incollection, 139 indentfirst, 28, 45, 62, 170 \index, 150, 151 \indexname, 161 Indice analitico, 2931, 48, 149151 Indice generale, 22, 31, 36, 48, 49, 136, 144 Indirizzi Internet, 29, 51, 147, 177 \inf, 113 \infty, 107, 131 Inkscape, 86 innercaption, 100 inproceedings, 138, 139 \input, 32, 33 inputenc, 28, 37, 38, 50, 163, 164, 176 Insiemi numerici, 107 institution, 139, 140 \int, 107, 129 Integrali, 107, 189 \intercal, 132 Intercitazioni, 62, 167

202

Interlinea, 46, 62, 104, 157, 158


\iota, 127 itaitemize, 155 italian, 43, 50, 121, 163, 166 \item, 59 itemize, 59, 136 \itshape, 74, 156

LEd, 13
\left, 113, 185, 187 \Leftarrow, 130 \leftarrow, 130 \leftarrowtail, 130 leftcaption, 100 \leftharpoondown, 130 \leftharpoonup, 130 \leftleftarrows, 130 \leftmark, 159, 160 \Leftrightarrow, 130 \leftrightarrow, 130 \leftrightarrows, 130 \leftrightharpoons, 130 \leftrightsquigarrow, 130 \leftthreetimes, 132 legalpaper, 23 \leq, 128 leqno, 23 \leqq, 132 \leqslant, 132 \lessapprox, 132 \lessdot, 132 \lesseqgtr, 132 \lesseqqgtr, 132 \lessgtr, 132 \lesssim, 132 letter, 23

Iwona, 193 J
\j, 55 \jmath, 131 \Join, 128 journal, 138 jpg, xvii, 16, 30, 87

K
\kappa, 127 \ker, 113 \Ket, 114 key, 138, 139

Kile, 14 Knuth, D. E., vii, 36, 9, 193 KOMA-Script, 23, 77 kuvio, 125 L
\L, 55 \l, 55 \label, 29, 56, 57, 77, 94, 99, 104,

136, 183
labelfont, 97 \Lambda, 127 \lambda, 127

Lamport, L., 5, 6, 9
\land, 111, 128 \langle, 129 \LARGE, 157, 158 \Large, 157, 158 \large, 157, 158 \LaTeX, 54 \LaTeXe, 54

Latin Modern, 39, 65 latin1, 38 latin9, 38 \latino, 153, 154 layaureo, 25, 46, 176, 191 \lbrace, 129 \lbrack, 129 \lceil, 129 \le, 128 \leadsto, 130

Lettere greche, 108, 109, 127 letterpaper, 23, 24 lettrine, 65 \lfloor, 129 \lg, 113 \lgroup, 129 \lhd, 128 \lim, 113 \liminf, 113 Limiti, 107, 112 \limsup, 113 \linespread, 46 \linewidth, 92 Linguaggio html, xvii, xviii, 7 xml, xviii, xx, 7, 10 sgml, xvii, xviii, xx, 7 linkcolor, 52 \listfigurename, 161 listings, 29, 63, 64 \listof, 92 \listoffigures, 99 \listoftables, 76, 99 \listtablename, 161

203

\ll, 128 \llcorner, 129 \Lleftarrow, 130 \lll, 132 \llless, 132 \lmoustache, 129 \ln, 113 \lnapprox, 133 \lneq, 133 \lneqq, 133 \lnot, 111, 131 \lnsim, 133 \log, 111, 113

\mathcal, 119, 133, 188

Mathematica, 86
\mathit, 133 \mathnormal, 133 \mathrm, 120, 133 mathrsfs, 133 \mathscr, 133 \mathsf, 133 mathtools, 110, 186 \mathtt, 133

Loghi, 54
\Longleftarrow, 130 \longleftarrow, 130 \Longleftrightarrow, 130 \longleftrightarrow, 130 \longmapsto, 130 \Longrightarrow, 130 \longrightarrow, 130 \looparrowleft, 130 \looparrowright, 130 \looseness, 66, 67 \lor, 111, 128 \lozenge, 131 \lrcorner, 129 \Lsh, 130 \lstinline, 64 lstlisting, 64 \ltimes, 132 \lVert, 110 \lvert, 109 \lvertneqq, 133

M MacTEX, ix, 13, 15, 25 \mainmatter, 47 Maiuscoletto, 65, 146, 156, 169, 173 makeidx, 29, 149 MakeIndex, 31, 64, 151 \maketitle, 22, 55 manual, 138, 139 \mapsto, 111, 130 Margini di pagina, 24, 25, 28, 45, 46, 62, 176 \markboth, 30 \markright, 30 mastersthesis, 138, 139 \mathbb, 107, 133 \mathbf, 119, 120, 133

Matrici, 115, 116 matrix, 115 \max, 113 \mcescher, 154 \measuredangle, 131 \medskip, 42, 77 memoir, 192 METAFONT, 9, 54 METAPOST, 54, 86 \MF, 54 mflogo, 54 mhchem, 125 \mho, 131 microtype, 15, 29, 44 \mid, 109, 128 \midrule, 71, 178 Miede, A., vii, 193 MiKTEX, ix, xix, 11, 12, 2527, 36, 39 \min, 113 Miniindici, 29, 31, 49 \minitoc, 49 minitoc, 29, 31, 49 misc, 139, 148 Modello di colore cmyk, xvi, 83 gray, 83 named, 83 RGB, xvi, xviii, 83 rgb, xvi, xviii, 83 \models, 128 month, 138140 \MP, 54 \mp, 105, 128 \mtcskip, 49 \mu, 127 multibib, 148 multicol, 29, 151 multicols, 151 \multicolumn, 7173 \multimap, 130 \multirow, 72, 73

204

multirow, 72 multline, 116, 185 multline*, 117 myheadings, 30

notitlepage, 23

Nowacki, J. M., 193


\nparallel, 133 \nprec, 133 \npreceq, 133 \nRightarrow, 133 \nrightarrow, 133 \nshortmid, 133 \nshortparallel, 133 \nsim, 133 \nsubseteq, 133 \nsubseteqq, 133 \nsucc, 133 \nsucceq, 133 \nsupseteq, 133 \nsupseteqq, 133 \ntriangleleft, 133 \ntrianglelefteq, 133 \ntriangleright, 133 \ntrianglerighteq, 133 \nu, 127 number, 138, 139 numbers, 146 numprint, 171 \nVDash, 133 \nVdash, 133 \nvDash, 133 \nvdash, 133 \nwarrow, 130

N
\nabla, 131 named, 83 natbib, 29, 145, 146 natbib_ita, 143, 146 \natural, 131 \ncong, 133 \ne, 128 \nearrow, 130 \neg, 131 \neq, 128

Neretto, 119, 120, 123, 169


\newcolumntype, 73, 83 \newcommand, 154, 155 \newenvironment, 155 \newfloat, 92 \newline, 42 \newtheorem, 122 \newtheoremstyle, 122 \nexists, 131 \ngeq, 133 \ngeqq, 133 \ngeqslant, 133 \ngtr, 133 \ni, 128 \nLeftarrow, 133 \nleftarrow, 133 \nLeftrightarrow, 133 \nleftrightarrow, 133 \nleq, 133 \nleqq, 133 \nleqslant, 133 \nless, 133 \nmid, 133 \nocite, 144 nomencl, 64 \norma, 110 \normalsize, 157, 158

O
\O, 55 \o, 55 \oddsidemargin, 46, 176 \odot, 128 \OE, 55 \oe, 55

Norme iso-uni, 103, 163, 165


\notag, 117, 118

Note a margine, 57 a pi di pagina, 28, 55, 57, 67, 168, 177 dentro a tabelle, 81 note, 138140 \notin, 108, 128

Oggetti mobili, 28, 64, 76, 90, 9297, 183 \oint, 129 \Omega, 127 \omega, 127 \ominus, 128 Omissis, 51, 167, 168 OmniGrafe, 86 \onehalfspacing, 46 oneside, 23, 24, 29 openany, 23, 24 openright, 23, 24, 159 Operatori, 111113, 116, 129, 187 \oplus, 128

205

Opzione
10pt, 23, 24, 158 11pt, 23, 158 12pt, 23, 158 a4paper, 23 a5paper, 23 ansinew, 38 applemac, 38 article, 24 b5paper, 23 cp850, 38 draft, 24, 42 executivepaper, 23 final, 24 fleqn, 23, 117, 183 innercaption, 100 italian, 43, 50, 121, 163,

outercaption, 100 \overbrace, 113 \overline, 109, 187 \overrightarrow, 109 \overset, 108 \owns, 128

P
\P, 131

Pacchetto
acronym, 64 algorithm, 64 algpseudocode, 64 amscd, 125 amsmath, 28, 54, 103, 104,

112, 116, 184191


amssymb, 28, 104, 133, 189 amsthm, 28, 121, 122 array, 28, 7274, 82, 179 ArsClassica, 192, 193 babel, 25, 28, 35, 36, 43, 50,

166
latin1, 38 latin9, 38 leftcaption, 100 legalpaper, 23 leqno, 23 letterpaper, 23, 24 notitlepage, 23 numbers, 146 oneside, 23, 24, 29 openany, 23, 24 openright, 23, 24, 159 outercaption, 100 ragged, 100 raggedleft, 100 raggedright, 100 rightcaption, 100 sort, 145, 146 sort&compress, 146 square, 145 T1, 39, 164 table, 84 tablecaptionabove, 77 tight, 49 titlepage, 23, 24 twocolumn, 23 twoside, 23, 24 utf8, 38 utf8x, 38

121, 160, 161, 163, 166


backref, 28, 31, 147 bibunits, 147 bmpsize, 87 booktabs, 28, 69, 71, 178

181, 191
braket, 114 caption, 28, 77, 97, 99, 181 chngpage, 28, 46 color, 82 colortbl, 8285 comment, 21 crop, 46 ctable, 82 dcolumn, 75, 180 empheq, 126 endfloats, 96 enumitem, 28, 60 epigraph, 64 eucal, 133 eurosym, 28, 54 fancyhdr, 28, 30, 159, 160 feynmf, 126 float, 28, 92, 97 fontenc, 28, 39, 65, 164 footmisc, 28, 58 footnote, 81 frontespizio, 55, 56 geometry, 25, 28, 46, 176 graphicx, 15, 24, 25, 28, 78,

Orfani, 170
organization, 139 \oslash, 128 otherlanguage, 37 otherlanguage*, 37 \otimes, 128

88, 89, 158

206

guit, 20, 54, 136 hyperref, 16, 28, 31, 51, 53,

54, 147, 177


icomma, 172 indentfirst, 28, 45, 62,

170
inputenc, 28, 37, 38, 50,

xtab, 29, 80, 92 xtools, 172 XyMTeX, 125 xypic, 86, 125 \pagename, 161 \pageref, 56 pages, 138, 139

163, 164, 176


kuvio, 125 layaureo, 25, 46, 176, 191 lettrine, 65 listings, 29, 63, 64 makeidx, 29, 149 mathrsfs, 133 mathtools, 110, 186 mflogo, 54 mhchem, 125 microtype, 15, 29, 44 minitoc, 29, 31, 49 multibib, 148 multicol, 29, 151 multirow, 72 natbib, 29, 145, 146 nomencl, 64 numprint, 171 parskip, 170 pgf, 86 placeins, 97 pst-pdf, 16 PSTricks, 16, 86 rotating, 79 setspace, 46, 47 shapepar, 65 showidx, 151 showkeys, 29 sidecap, 100, 101 siunitx, 125, 172 subfig, 29, 97, 98 subfigure, 97 syntonly, 33 tabularx, 29, 7476, 80 template, 172 type1ec, 65 ucs, 38 url, 29, 51, 148, 177 varioref, 29, 57 verse, 63 wrapfig, 29, 99 xcolor, 29, 8284, 126, 158 xfrac, 172 xparse, 172 xspace, 20, 154

Palatino, 109, 193


\par, 41, 157, 158 \paragraph, 47 \parallel, 110, 128

Parentesi, 112114 Parole evidenziate, 58, 169 Parole straniere, 167, 169171 parskip, 170 \part, 47 \partial, 131 \partname, 161 pdf, xvii, xviii, 13, 15, 16, 27, 30, 31, 39, 8688 pdfauthor, 51 \pdfbookmark, 53 pdffitwindow, 51 pdfmenubar, 51 pdfnewwindow, 52 pdftitle, 51 pdftoolbar, 51 \ped, 121 Pedici, 106, 107, 111, 112, 120, 121 \perp, 128 pgf, 86 phdthesis, 139 \Phi, 127 \phi, 127 \Pi, 127 \pi, 127 Pi di pagina, 29, 89, 159, 160 picture, 86 \pitchfork, 132 placeins, 97 plain, 29, 122, 142 plain_ita, 143, 145 plainnat, 146 \pm, 105, 128 pmatrix, 115 \pmod, 112 png, xvii, 16, 30, 86, 87 \pounds, 131 \Pr, 113 Preambolo del documento, 21

207

di una tabella, 70
\prec, 128 \precapprox, 132 \preccurlyeq, 132 \preceq, 128 \precnapprox, 133 \precneqq, 133 \precnsim, 133 \precsim, 132 \prefacename, 161 \prime, 131 proceedings, 139 \prod, 106, 129

PSTricks, 16, 86 publisher, 138140

Punti ellittici, 22, 49, 50, 110, 115, 116, 166, 168, 190 Q
\qedhere, 123 \qquad, 105 \quad, 105

R Radici, 106 ragged, 100


\raggedbottom, 47 \raggedleft, 75 raggedleft, 100 \raggedright, 75 raggedright, 100

Prodotti, 106 Programma Adobe Acrobat, 88 Adobe Reader, 15, 31, 39, 88 Anteprima, 39, 87, 88 Asymptote, 86 BibTEX, 3032, 135, 138, 140142, 144, 147, 148, 173 dvipdfmx, 16 dvips, 16 esp2pdf, 87 esptopdf, 87 Ghostscript, 12, 15, 87 Ghostview, 15, 87, 88, 90 Gimp, 15, 87, 88 Gnuplot, 14, 86 GSview, 12, 15, 87, 88, 90 ImageMagick, 87 Inkscape, 86 MakeIndex, 31, 64, 151 Mathematica, 86 METAFONT, 9, 54 METAPOST, 54, 86 OmniGrafe, 86 ps2pdf, 16 WinFIG, 86 Xg, 14, 86 Xpdf, 39 proof, 123 \proofname, 161 \propto, 128 proTEXt, 12 ps, xvi, xviii, 15, 86, 87 ps2pdf, 16 \Psi, 127 \psi, 127 pst-pdf, 16

Raggruppamenti, 106
\rangle, 129 \rbrace, 129 \rbrack, 129 \rceil, 129 \Re, 112, 131

Record
article, 138 book, 138 booklet, 138 conference, 138 inbook, 139 incollection, 139 inproceedings, 138, 139 manual, 138, 139 mastersthesis, 138, 139 misc, 139, 148 phdthesis, 139 proceedings, 139 techreport, 139 unpublished, 139 \ref, 29, 56, 57, 77, 94, 183 \refname, 148, 161 remark, 122 \renewcommand, 154 \renewenvironment, 155 report, 23, 24, 29, 47, 53, 136,

144, 147
\resizebox, 78, 79 \rfloor, 129 RGB, xvi, xviii, 83 rgb, xvi, xviii, 83 \rgroup, 129 \rhd, 128 \rho, 108, 127

208

Rientro, 23, 28, 39, 42, 44, 59, 60, 62, 97, 117, 123, 170 Riferimenti bibliograci autore-anno, 145, 146 nali, 147 Riferimenti incrociati, 29, 31, 56, 57 Riferimenti ipertestuali, 16, 28, 5153, 64 \right, 113, 185, 187 \Rightarrow, 130 \rightarrow, 130 \rightarrowtail, 130 rightcaption, 100 \rightharpoondown, 130 \rightharpoonup, 130 \rightleftarrows, 130 \rightleftharpoons, 130 \rightmark, 159, 160 \rightrightarrows, 130 \rightsquigarrow, 130 \rightthreetimes, 132 \risingdotseq, 132 \rmfamily, 74, 156 \rmoustache, 129 rotating, 79 \rowcolor, 84, 85 \Rrightarrow, 130 \Rsh, 130 \rtimes, 132 \rVert, 110 \rvert, 109 S
\S, 131 savenotes, 81 \scalebox, 78 SCfigure, 101 school, 139 \scriptscriptstyle, 121 \scriptsize, 157, 158 \scriptstyle, 121 \scshape, 156 SCtable, 101 \searrow, 130 \sec, 113 \section, 47, 159 \sectionmark, 160 \seename, 161

\setminus, 110, 128 setspace, 46, 47 \sffamily, 156 sgml, xvii, xviii, xx, 7 shapepar, 65 \sharp, 131 \shortmid, 132 \shortparallel, 132 showidx, 151 showkeys, 29 sidecap, 100, 101 \sidecaptionrelwidth, 101 sidewaystable, 79, 80

Sigle, 141, 173


\Sigma, 127 \sigma, 108, 127

Sillabazione, 36, 38, 39, 42, 43


\sim, 128 \simeq, 128 \sin, 111, 113 \singlespacing, 46 \sinh, 113 siunitx, 125, 172 \slshape, 74, 156 \small, 80, 157, 158 \smallfrown, 132 smallmatrix, 116 \smallsetminus, 132 \smallskip, 42 \smallsmile, 132 \smile, 128

Somme, 106 sort, 145, 146


sort&compress, 146 \spadesuit, 131

Segnalibri, 16, 31, 5154 series, 138, 139 \Set, 114

Spazio di un quadrato, 105 di un quadratone, 105 in ne di periodo, 40, 43, 44 insecabile, 44 sottile, 105, 107, 111, 112, 166, 171, 172 tra capoversi, 42, 47 tra parole, 41, 43 \sphericalangle, 131 split, 116, 117, 185 \sqcap, 128 \sqcup, 128 \sqrt, 106 \sqsubset, 128, 132 \sqsubseteq, 128

209

\sqsupset, 128, 132 \sqsupseteq, 128 \square, 131 square, 145

Stallman, R., xvii


\star, 128

Stile bibliograco abbrv, 142, 143 alpha, 142, 143 classic, 146 natbib_ita, 143, 146 personalizzato, 145 plain, 142 plain_ita, 143, 145 plainnat, 146 unsrt, 142 Stile dei font, 119, 121, 153, 156, 169 Stile di enunciato definition, 122 plain, 122 remark, 122 Stile di pagina empty, 29 headings, 29 myheadings, 30 plain, 29 subequations, 119 subfig, 29, 97, 98 subfigure, 97 \subfloat, 97 \subparagraph, 47 \subsection, 47 \Subset, 132 \subset, 128 \subseteq, 128 \subseteqq, 132 \subsetneq, 133 \subsetneqq, 133 \substack, 114 \subsubsection, 47 \succ, 128 \succapprox, 132 \succcurlyeq, 132 \succeq, 128 \succnapprox, 133 \succneqq, 133 \succnsim, 133 \succsim, 132 \sum, 106, 129 \sup, 113 \Supset, 132

\supset, 128 \supseteq, 128 \supseteqq, 132 \supsetneq, 133 \supsetneqq, 133 \surd, 131 \swarrow, 130 syntonly, 33

T
\t, 55 T1, 39, 164

Tabelle afancate, 97 colorate, 8285 fuori testo, 9092 grandi, 76 in testo, 90, 91 table, 76, 78, 79, 81, 84, 90, 9294, 97, 101 table*, 92 tablecaptionabove, 77 tablehead, 80 \tablename, 161 \tableofcontents, 22, 49, 94 tabletail, 80 tabular, 28, 7072, 7678, 8082, 84, 90, 91, 115 \tabularnewline, 75 tabularx, 29, 7476, 80 \tan, 113 \tanh, 113 \tau, 127 techreport, 139 template, 172 Tesi di laurea, 48, 55, 173, 192 Testatina, 29, 30, 89, 156, 159, 160 \TeX, 54 TEX Live, ix, 11, 13, 14, 25, 26, 36, 39 TEXmaker, 14 TEXnicCenter, 12 \texorpdfstring, 54 TEXShop, 13 \text, 105, 119, 120, 184, 186 \textasciicircum, 19 \textasciitilde, 19 \textbackslash, 19 \textbf, 153, 156 \textheight, 89 \textit, 153, 156

210

\textrm, 156 \textsc, 156 \textsf, 156 \textsl, 156 \textstyle, 121 \texttt, 156 \textwidth, 46, 75, 92, 176 \tfrac, 121 thebibliography, 135137, 147,

\underbrace, 113 \underline, 109 \underset, 108, 109

148, 173
theindex, 151 \theoremstyle, 122 \therefore, 132 thesitography, 148 \Theta, 127 \theta, 127 \thickapprox, 132 \thicksim, 132 tiff, xviii, 86 tight, 49 \tilde, 127 \times, 128

Times New Roman, 9


\tiny, 157, 158 title, 138140 titlepage, 23, 24, 56

Unicode, xix, 38 unicode, 51, 54 Unit di misura, 125, 172 \unlhd, 128 unpublished, 139 \unrhd, 128 unsrt, 142 \Uparrow, 129, 130 \uparrow, 129, 130 \Updownarrow, 129, 130 \updownarrow, 129, 130 \upharpoonleft, 130 \upharpoonright, 130 \uplus, 128 \Upsilon, 127 \upsilon, 127 \upuparrows, 130 \urcorner, 129 url, 29, 51, 148, 177 urlcolor, 52 \usepackage, 30, 51, 155 utf8, 38 utf8x, 38 V
\v, 55 \varepsilon, 127

Titolo del documento, 22, 23, 55


\tmark, 82 \to, 111, 130 \today, 20 \top, 131 \toprule, 71, 178

Tratti, 44, 49, 50, 166, 168


\triangle, 131 \triangledown, 131 \triangleleft, 128 \trianglelefteq, 132 \triangleq, 132 \triangleright, 128 \trianglerighteq, 132 \ttfamily, 74, 156 twocolumn, 23 \twoheadleftarrow, 130 \twoheadrightarrow, 130 twoside, 23, 24 type, 139 type1ec, 65

U
\u, 55 ucs, 38 \ulcorner, 129

Variante asterisco, 42, 48, 49 varioref, 29, 57 \varkappa, 131 \varnothing, 131 \varphi, 127 \varpi, 127 \varpropto, 132 \varrho, 108, 127 \varsigma, 108, 127 \varsubsetneq, 133 \varsubsetneqq, 133 \varsupsetneq, 133 \varsupsetneqq, 133 \vartheta, 127 \vartriangle, 131 \vartriangleleft, 132 \vartriangleright, 132 \Vdash, 132 \vDash, 132 \vdash, 128 \vdots, 116, 131 \vec, 109, 127

211

Vedove, 170
\vee, 128 \veebar, 132 verse, 62, 63

wrapfig, 29, 99 wrapfloat, 99, 100

X
xcolor, 29, 8284, 126, 158 Xg, 14, 86 xfrac, 172 \Xi, 127 \xi, 127 \xleftarrow, 111 xml, xviii, xx, 7, 10 xparse, 172 Xpdf, 39 \xrightarrow, 111 xspace, 20, 154 xtab, 29, 80, 92 xtabular, 80 xtools, 172 XyMTeX, 125 xypic, 86, 125

Versi, 61, 63 \Vert, 110, 129 \vert, 109, 129 Vim, 14 Virgolette, 19, 49, 50, 166168, 173 Vmatrix, 115 vmatrix, 115 volume, 138, 139 \vref, 57, 77, 94, 183 \vspace, 42 \vspace*, 42 \Vvdash, 132 W
\wedge, 128 \widehat, 110, 127 \widetilde, 110, 127 width, 89, 182

62,

Y
year, 138140

WinEdt, 12 WinFIG, 86 \wp, 131 \wr, 128

Z Zapf, H., 193 \zeta, 127

Potrebbero piacerti anche