L'arte di scrivere con LaTeX _ Pantieri

241
2 ε Prefazione di Enrico Gregorio Gruppo Utilizzatori Italiani di T E XeL A T E X http://www.guit.sssup.it/ Giugno 2009

Transcript of L'arte di scrivere con LaTeX _ Pantieri

Page 1: L'arte di scrivere con LaTeX _ Pantieri

LORENZO PANTIERI

L'

ARTE DI SCRIVERE CON LATEX

UN’INTRODUZIONE A LATEX 2εPrefazione di Enrico Gregorio

Gruppo Utilizzatori Italiani di TEX e LATEXhttp://www.guit.sssup.it/

Giugno 2009

Page 2: L'arte di scrivere con LaTeX _ Pantieri

Lorenzo Pantieri: L’arte di scrivere con LATEX, Un’introduzione a LATEX 2ε,© giugno 2009.

SITO WEB:http://www.lorenzopantieri.net/

E-MAIL:[email protected]

Nel frontespizio sono riprodotte una litografia e un’incisione di Mau-rits C. Escher, dal titolo Mano con sfera riflettente e Tassellazione del pianocon Uccelli (le immagini sono tratte da http://www.mcescher.com/).

Page 3: L'arte di scrivere con LaTeX _ Pantieri

La citazione è un utile sostituto dell’arguzia.

— Oscar Wilde

Dedicato a Monia e alla sua dolce bellezza.

Page 4: L'arte di scrivere con LaTeX _ Pantieri
Page 5: L'arte di scrivere con LaTeX _ Pantieri

S O M M A R I O

LATEX è un programma di composizione tipografica liberamente di-sponibile, particolarmente indicato per l’elaborazione di documentiscientifici, ai più elevati livelli di qualità. Lo scopo di questo lavoro, ri-volto sia ai principianti di LATEX sia a coloro che già lo conoscono, è for-nire agli utenti di LATEX di lingua italiana alcuni elementi per comporreun documento usando questo potentissimo strumento di scrittura.

Tale obiettivo è perseguito innanzitutto presentando le nozioni fon-damentali del programma, con l’intento di operare una sintesi di nu-merosi concetti sparsi in svariati manuali, condensandoli in un unicodocumento e presentandoli nella maniera più chiara e organica possi-bile. Al contempo, viene fornita una vasta gamma di esempi e ven-gono analizzati alcuni problemi tipici incontrati durante la stesura diuna pubblicazione scientifica o professionale, specialmente in linguaitaliana, indicando le soluzioni che ritengo migliori.

La scelta delle soluzioni adottate deriva principalmente dalle nu-merose discussioni presenti sul forum del Gruppo Utilizzatori Italia-ni di TEX e LATEX (http://www.guit.sssup.it/), che resta sempre uneccellente riferimento per tutti i temi trattati in questo documento.

A B S T R A C T

LATEX is a free typesetting system, particularly useful to elaborate sci-entifical documents, at the highest standards of quality. The purposeof this work, devoted both to the beginners of LATEX and to those whoalready know it, is to provide Italian LATEX users some tools to create adocument using this powerful writing tool.

This aim is pursued by introducing the fundamental notions of theprogram, in order to make a synthesis of several concepts scattered inmany different guides, condensing them all into one single documentand presenting them in the most organic and clearest way. At the sametime, this work shows many examples and analyzes the typical prob-lems faced during the writing of a scientific or professional publication,especially in Italian, indicating the solutions I consider best.

The choice of the solutions mainly stems from the several topics onthe forum of the Italian TEX User Group (http://www.guit.sssup.it/),which is always an excellent reference for all the themes dealt with inthis document.

v

Page 6: L'arte di scrivere con LaTeX _ Pantieri
Page 7: L'arte di scrivere con LaTeX _ Pantieri

Abbiamo visto che la programmazione è un’arte,perché richiede conoscenza, applicazione, abilità e ingegno,

ma soprattutto per la bellezza degli oggetti che produce.

— Donald E. Knuth [1973]

R I N G R A Z I A M E N T I

Desidero ringraziare in primo luogo i membri dello Staff del GruppoUtilizzatori Italiani di TEX e LATEX (guIt, http://www.guit.sssup.it/),in particolare il Prof. Claudio Beccari, Fabiano Busdraghi, Gustavo Ce-volani, Agostino De Marco, Massimiliano Dominici, Gloria Faccano-ni, Daniele Ferone, il Prof. Enrico Gregorio, Maurizio Himmelmann,Jerónimo Leal, Lapo F. Mori, Ottavio Rizzo, Luigi Scarso, Andrea To-nelli, Emiliano G. Vavassori ed Emanuele Vicentini, per l’impagabileaiuto fornito nella redazione di questo lavoro, le spiegazioni dettaglia-te, la pazienza e la precisione nei suggerimenti, le soluzioni fornite,la competenza e la disponibilità: grazie mille, ragazzi! Grazie anchea Francesco Agosti, Daniele Avitabile, Vincenzo A. Balzano, France-sco Biccari, Marco Brunero, Mirko D. Comparetti, Rosaria D’Addazio,Marco Di Bello, Roberto Giacomelli, Matteo Leccardi, Antonio Ledda,Emanuele Pagone, Alessandro Sacco, Giovanni Saponaro e a tutti quel-li che hanno discusso con me sul forum del guIt, prodighi di prezioseosservazioni e di validi consigli.

Rivolgo un ringraziamento davvero particolare al Prof. Enrico Gre-gorio, per i suoi impagabili insegnamenti, per le squisite parole diapprezzamento che ha espresso nei confronti del mio lavoro e peravermi concesso l’onore di scriverne la prefazione. La sua alta pro-fessionalità ed esperienza, unite alla gentilezza e disponibilità, sonostate indispensabili per la riuscita di questo studio.

Esprimo un ringraziamento altrettanto speciale al Prof. Claudio Bec-cari e ad Andrea Tonelli, per i consigli che mi hanno fornito durantela stesura e la revisione di questo documento: senza il loro eccellentecontributo questo lavoro non avrebbe mai raggiunto la forma attuale.

Ringrazio in modo particolare anche Gustavo Cevolani e Lapo F. Mo-ri, per la disponibilità che hanno dimostrato dandomi la possibilitàdi rielaborare i loro articoli (indicati nella bibliografia di questo docu-mento) sulle norme tipografiche dell’italiano e sulla realizzazione delletabelle con LATEX, rispettivamente.

Ringrazio infine André Miede, per aver realizzato lo splendido stileClassicThesis (con cui è composto questo lavoro), e Daniel Gottschlag,che mi ha dato lo spunto per realizzarne un’originale rielaborazione.

Cesena, 1 giugno 2009 L. P.

vii

Page 8: L'arte di scrivere con LaTeX _ Pantieri
Page 9: L'arte di scrivere con LaTeX _ Pantieri

I N D I C E

PREFAZIONE xxi

1 INTRODUZIONE 1

2 STORIA E FILOSOFIA 3

2.1 Storia 3

2.1.1 TEX 3

2.1.2 Etimologia 4

2.1.3 LATEX 5

2.2 Filosofia 5

2.2.1 Composizione sincrona e asincrona 5

2.2.2 Concentrarsi sul contenuto e non sulla forma 6

2.2.3 Vantaggi e svantaggi 8

2.2.4 Luoghi comuni 9

3 INSTALLARE LATEX 11

3.1 Introduzione 11

3.2 Installazione per Windows 12

3.2.1 La distribuzione MiKTEX 12

3.2.2 La distribuzione TEX Live per Windows 13

3.2.3 Editor per Windows 13

3.3 Installazione per Mac 15

3.3.1 La distribuzione MacTEX 15

3.3.2 Editor per Mac 15

3.4 Installazione per Linux 16

3.4.1 La distribuzione TEX Live per Linux 16

3.4.2 Editor per Linux 16

3.5 Editor multipiattaforma 16

3.6 Altri programmi utili 17

3.7 LATEX e pdfLATEX 17

4 LE BASI 21

4.1 I file sorgenti di LATEX 21

4.1.1 Spazi 21

4.1.2 I caratteri speciali 22

4.1.3 I comandi 24

4.1.4 I commenti 24

4.2 La struttura del file sorgente 25

4.3 Le classi di documento 26

4.4 I pacchetti 28

4.4.1 Che cosa sono? 28

4.4.2 Come sapere se se ne ha bisogno? 29

4.4.3 Come scoprire qual è il pacchetto “giusto”? 29

4.4.4 Come installarli? 29

4.4.5 Come caricarli? 32

4.4.6 Come imparare a usarli al meglio? 32

4.4.7 E i file .ins e .dtx? 32

ix

Page 10: L'arte di scrivere con LaTeX _ Pantieri

x INDICE

4.4.8 I pacchetti di uso più comune 33

4.5 Gli stili di pagina 34

4.6 I file con cui si ha a che fare 35

4.6.1 I file dell’utente 35

4.6.2 File di classi, pacchetti e stili 35

4.6.3 I file ausiliari 36

4.6.4 I file di output 37

4.7 Documenti di grandi dimensioni 37

5 IL TESTO 39

5.1 LATEX multilingue e multipiattaforma 39

5.1.1 Il pacchetto babel 39

5.1.2 Il pacchetto inputenc 42

5.2 La codifica dei font 42

5.3 La struttura del testo 43

5.4 La composizione dei capoversi 44

5.4.1 La divisione delle parole in fin di riga 46

5.4.2 Lo spazio tra le parole 48

5.4.3 Il pacchetto microtype 48

5.4.4 Il rientro sulla prima riga 49

5.5 Le proporzioni di pagina 49

5.5.1 Il tormentone dei margini 49

5.5.2 L’interlinea e il riempimento della pagina 50

5.6 Il sezionamento del documento 51

5.6.1 Materiale iniziale, principale e finale 51

5.6.2 L’indice generale 52

5.6.3 I miniindici 54

5.7 Caratteri speciali e simboli 54

5.7.1 Virgolette, tratti e punti ellittici 54

5.7.2 Indirizzi Internet e riferimenti ipertestuali 56

5.7.3 Loghi, accenti e caratteri speciali 59

5.8 Il titolo del documento e il frontespizio 60

5.9 I riferimenti incrociati 61

5.10 Note a margine e a piè di pagina 62

5.11 Parole evidenziate 63

5.12 Ambienti 63

5.12.1 Elenchi puntati, numerati e descrizioni 64

5.12.2 Centrare e allineare i capoversi 65

5.12.3 Citazioni e versi 66

5.12.4 Codici e algoritmi 68

5.13 Gli acronimi e i glossari 69

5.14 Epigrafi, capolettera e scritture curiose 69

5.15 La revisione finale 71

6 TABELLE E FIGURE 75

6.1 Le tabelle 75

6.1.1 Regole generali 76

6.1.2 L’ambiente tabular 76

6.1.3 Celle su più colonne 77

6.1.4 Celle su più righe 78

6.1.5 Il pacchetto array 78

6.1.6 Il pacchetto tabularx 80

Page 11: L'arte di scrivere con LaTeX _ Pantieri

INDICE xi

6.1.7 Allineare i numeri alla virgola 81

6.1.8 Tabelle grandi 82

6.1.9 Note dentro a tabelle 87

6.1.10 Tabelle colorate 88

6.2 Le figure 91

6.2.1 Immagini vettoriali e bitmap 91

6.2.2 Conversione dei formati 93

6.2.3 Scontornare le immagini 94

6.2.4 L’inclusione delle immagini 94

6.3 Figure e tabelle in testo e fuori testo 96

6.4 Gli oggetti mobili 98

6.4.1 Gli ambienti table e figure 99

6.4.2 Il controllo degli oggetti mobili 101

6.4.3 Personalizzare le didascalie: il pacchetto caption 103

6.4.4 Affiancare figure o tabelle: il pacchetto subfig 103

6.4.5 Testo che “avvolge” un oggetto: il pacchetto wra-pfig 105

6.4.6 Didascalie laterali: il pacchetto sidecap 106

7 LA MATEMATICA 109

7.1 Formule in corpo e fuori corpo 110

7.2 Nozioni basilari 111

7.2.1 Raggruppamenti 112

7.2.2 Apici, pedici e radici 112

7.2.3 Somme, prodotti e frazioni 112

7.2.4 Limiti, derivate e integrali 113

7.2.5 Insiemi numerici 113

7.2.6 Lettere greche 114

7.2.7 Accostare simboli ad altri simboli 114

7.2.8 Barre e accenti 115

7.2.9 Punti e frecce 116

7.3 Gli operatori 117

7.4 Le parentesi 118

7.5 Vettori e matrici 121

7.6 Formule fuori corpo 122

7.6.1 Formule spezzate senza allineamento: multline 123

7.6.2 Formule spezzate con allineamento: split 123

7.6.3 Gruppi di formule senza allineamento: gather 124

7.6.4 Gruppi di formule con allineamento: align 124

7.6.5 Gli ambienti gathered e aligned 124

7.6.6 Casi e numerazione subordinata 125

7.7 Modificare lo stile e il corpo dei font 125

7.8 Enunciati e dimostrazioni 128

7.9 Diagrammi commutativi 131

7.10 Fisica e chimica 131

7.11 Evidenziare formule: il pacchetto empheq 132

7.12 Elenco dei simboli matematici 133

8 LA BIBLIOGRAFIA 141

8.1 L’ambiente thebibliography 141

8.2 Il programma BibTEX 143

8.2.1 Basi di dati dei riferimenti bibliografici 143

Page 12: L'arte di scrivere con LaTeX _ Pantieri

xii INDICE

8.2.2 I diversi tipi di record 144

8.2.3 I diversi tipi di campi 146

8.2.4 Alcune precisazioni 147

8.2.5 Generare la bibliografia 148

8.2.6 Stili bibliografici personalizzati 151

8.2.7 Riferimenti autore-anno: il pacchetto natbib 151

8.2.8 Riferimenti finali: il pacchetto backref 153

8.2.9 Riferimenti capitolo per capitolo: bibunits 153

8.3 Elenco dei siti Web consultati 153

9 L’INDICE ANALITICO 155

9.1 Creare l’indice analitico 155

9.2 Personalizzare l’indice analitico 157

10 PERSONALIZZARE LATEX 159

10.1 Comandi, ambienti e pacchetti nuovi 159

10.1.1 Definire nuovi comandi 159

10.1.2 Spazi dopo i comandi 160

10.1.3 Nuovi ambienti 161

10.1.4 Un pacchetto personale 161

10.2 Font 162

10.2.1 Comandi per cambiare lo stile dei font 162

10.2.2 Dichiarazioni per cambiare il corpo dei font 163

10.3 Inserire uno sfondo colorato in un’immagine 164

10.4 Le pagine bianche nei documenti fronte-retro 165

10.5 Testatine personalizzate 165

10.6 Cambiare le voci generate da babel 166

a NORME TIPOGRAFICHE ITALIANE 169

a.1 L’accento e l’apostrofo 170

a.1.1 Accento tonico e fonico 170

a.1.2 Apostrofo 171

a.2 Punteggiatura e spaziatura 172

a.2.1 Segni di interpunzione e apostrofo 172

a.2.2 Virgolette 172

a.2.3 Parentesi 173

a.2.4 Punti ellittici 174

a.2.5 Trattini 174

a.2.6 Sbarretta e asterisco 174

a.3 Stile dei font 174

a.3.1 Corsivo 175

a.3.2 Neretto 175

a.3.3 Maiuscoletto 175

a.4 Composizione del testo 175

a.4.1 Capoversi 175

a.4.2 Uso delle maiuscole 176

a.4.3 Parole straniere 176

a.4.4 Numeri 178

a.4.5 Frazioni, percentuali, unità di misura 179

a.4.6 Sigle 179

a.5 La bibliografia 180

Page 13: L'arte di scrivere con LaTeX _ Pantieri

INDICE xiii

b GALLERIA DEGLI ORRORI 181

b.1 Il testo 181

b.1.1 L’inserimento dei caratteri accentati 181

b.1.2 La divisione in sillabe 182

b.1.3 I margini 182

b.1.4 Gli indirizzi Internet 183

b.1.5 Le note a piè di pagina 183

b.2 Le tabelle 183

b.2.1 Regole generali 183

b.2.2 Allineare i numeri alla virgola 186

b.2.3 Le tabelle mobili 186

b.3 Le figure 187

b.3.1 Le figure mobili 187

b.4 La matematica 189

b.4.1 Formule fuori corpo 189

b.4.2 Operatori 192

b.4.3 Parentesi 193

b.4.4 Matrici 194

b.4.5 Integrali multipli 194

b.4.6 Insiemi numerici 195

b.4.7 Riferimenti a una formula 196

b.4.8 Punti ellittici 196

b.5 Codici sorgente leggibili 196

BIBLIOGRAFIA 199

INDICE ANALITICO 203

Page 14: L'arte di scrivere con LaTeX _ Pantieri

E L E N C O D E L L E F I G U R E

Figura 1 Donald Knuth 3

Figura 2 Una dispensa di matematica degli anni Settanta 4

Figura 3 Leslie Lamport 5

Figura 4 Alcuni editor per LATEX 14

Figura 5 Un breve documento 26

Figura 6 La gestione automatica dei pacchetti 30

Figura 7 Un esempio d’uso del pacchetto frontespizio 61

Figura 8 Tabella ottenuta con sidewaystable 86

Figura 9 Una figura posizionata manualmente 103

Figura 10 Un esempio d’uso del pacchetto subfig 104

Figura 11 Un esempio d’uso del pacchetto wrapfig 105

Figura 12 Un esempio d’uso del pacchetto sidecap 107

Figura 13 Alcuni stili bibliografici 150

Figura 14 Inserire uno sfondo colorato in un’immagine 165

Figura 15 Un esempio d’uso del pacchetto fancyhdr 166

Figura 16 Un esempio di figura mobile 189

E L E N C O D E L L E T A B E L L E

Tabella 1 Cronologia di TEX e LATEX 6

Tabella 2 Alcuni codici ascii 23

Tabella 3 Opzioni delle classi standard 28

Tabella 4 Le principali codifiche di input 42

Tabella 5 Comandi di sezionamento del documento 51

Tabella 6 Loghi particolari 58

Tabella 7 Accenti e caratteri speciali 59

Tabella 8 Tabella composta scorrettamente 76

Tabella 9 Tabella composta secondo le regole 76

Tabella 10 Tabella con \multicolumn e \multirow 79

Tabella 11 Tabella ottenuta con il pacchetto array 80

Tabella 12 Tabella con formato specifico di una colonna 80

Tabella 13 Tabella ottenuta con il pacchetto tabularx 81

Tabella 14 Tabella con colonne della stessa larghezza 82

Tabella 15 Tabella con allineamento alla virgola 83

Tabella 16 Tabella con font di dimensione ridotta 84

Tabella 17 Tabella ridimensionata con \resizebox 85

Tabella 18 Tabella ottenuta con il pacchetto footnote 87

Tabella 19 Tabella ottenuta con il pacchetto ctable 88

Tabella 20 Tabella con una colonna colorata 89

Tabella 21 Tabella con una riga colorata 90

Tabella 22 Tabella con le righe dispari colorate 90

xiv

Page 15: L'arte di scrivere con LaTeX _ Pantieri

Tabella 23 Tabella con una cella colorata 91

Tabella 24 Opzioni del pacchetto graphicx 95

Tabella 25 Caratteri di trasferimento 99

Tabella 26 Opzioni di posizionamento di wrapfloat 106

Tabella 27 Spazi in modo matematico 111

Tabella 28 Lettere greche minuscole 115

Tabella 29 Gli operatori predefiniti 119

Tabella 30 Lettere greche minuscole 133

Tabella 31 Lettere greche maiuscole 133

Tabella 32 Accenti in modo matematico 133

Tabella 33 Relazioni binarie 134

Tabella 34 Operazioni binarie 134

Tabella 35 Grandi operatori 135

Tabella 36 Delimitatori 135

Tabella 37 Grandi delimitatori 135

Tabella 38 Frecce 136

Tabella 39 Simboli misti 137

Tabella 40 Simboli non matematici 137

Tabella 41 Altri caratteri alfabetici 137

Tabella 42 Altre relazioni binarie 138

Tabella 43 Altre operazioni binarie 138

Tabella 44 Negazioni di simboli 139

Tabella 45 Font matematici 139

Tabella 46 Esempi di voci dell’indice analitico 156

Tabella 47 Comandi per cambiare lo stile dei font 162

Tabella 48 Comandi per cambiare il corpo dei font 163

Tabella 49 I corpi dei font nelle classi standard 164

Tabella 50 Comandi di babel specifici per l’italiano 167

Tabella 51 Tabella composta scorrettamente 185

Tabella 52 Tabella composta secondo le regole 185

Tabella 53 Tabella con allineamento alla virgola 186

Tabella 54 Un esempio di tabella mobile 187

A C R O N I M I

AMS American Mathematical Society

Fondata nel 1888, la Società Matematica Americana è una delle piùimportanti associazioni di matematici, con varie decine di migliaiadi soci. La AMS ha sostenuto attivamente lo sviluppo di LATEX ed èstata tra i primi organismi a sollecitare gli autori di lavori scientificia scrivere servendosi di questo programma.

ASCII American Standard Code for Information Interchange

Il “codice standard americano per lo scambio di informazioni” è unsistema di codifica dei caratteri a 8 bit (di cui uno usato come bit diparità) proposto nel 1961 e comunemente impiegato nei calcolatori.

xv

Page 16: L'arte di scrivere con LaTeX _ Pantieri

xvi ACRONIMI

BMP Windows bitmap

È un formato di file per la rappresentazione di immagini a mappadi bit nei sistemi operativi Microsoft Windows e OS/2. Fu intro-dotto con Windows 3.0 nel 1990. I file bmp possono essere com-pressi senza perdita di informazioni (ossia in modo lossless) oppurepossono non essere compressi affatto.

CTAN Comprehensive TEX Archive Network

La “Rete di archivi completi di TEX” è il luogo di riferimento da cuiscaricare software e materiale relativo a TEX e LATEX.

CMYK Cyan Magenta Yellow BlacK

È un metodo per definire i colori (detto anche di quadricromia), permezzo dei colori azzurro (Cyan), magenta, giallo (Yellow) e nero(blacK). In questo modello ciascun colore viene rappresentato me-diante quattro valori numerici che indicano quanto le quattro com-ponenti concorrono alla formazione del colore analizzato. I coloriottenibili con la quadricromia sono un sottoinsieme della gamma vi-sibile: in particolare non tutti i colori realizzati con il modello rgb

hanno un corrispondente nell’insieme cmyk. Il cmyk è un modellosottrattivo: in teoria l’azzurro, il magenta e il giallo, se mescolatiinsieme, dovrebbero assorbire tutti i colori e produrre il nero. Tut-tavia, a causa di piccole impurità contenute in tutti gli inchiostri, difatto combinandosi producono una sorta di marrone scuro (il cosid-detto “bistro”). Questa (insieme al fatto che gli inchiostri coloratisono più costosi di quello nero) è la ragione dell’inchiostro nero. Ilmodello cmyk viene usato soprattutto dalle stampanti.

DVI DeVice Independent

È il formato di output “indipendente dal dispositivo” generato daLATEX.

EC Extended Cork

Sono font che hanno lo stesso aspetto dei Computer Modern (i fontpredefiniti di LATEX), ma che contengono caratteri speciali per lamaggior parte delle lettere accentate usate nelle lingue europee. Ilnome deriva dalla città di Cork, in Irlanda, sede della ConferenzaInternazionale (1990) nella quale questi font vennero introdotti.

EPS Encapsulated PostScript

È un formato per immagini di tipo PostScript (un linguaggio didescrizione della pagina sviluppato da Adobe). Rispetto al Post-Script, un’immagine eps contiene alcune restrizioni che la rendonoadatta ad essere inclusa (“incapsulata”) in un documento. Ad esem-pio, un’immagine eps contiene l’informazione relativa alle dimen-sioni del rettangolo circoscritto all’immagine effettiva (il cosiddetto“bounding box”). L’eps è il formato delle figure da inserire in undocumento con LATEX.

FIFO First In First Out

Il termine (“primo ad entrare, primo ad uscire”) esprime la moda-lità di immagazzinamento di oggetti in cui il primo oggetto intro-dotto è il primo ad uscire. Questo tipo di struttura è usata da LATEXnella gestione degli oggetti mobili: se un oggetto come una figura o

Page 17: L'arte di scrivere con LaTeX _ Pantieri

ACRONIMI xvii

una tabella non può essere posizionato nella pagina corrente, vieneaccumulato nella relativa coda.

Si contrappone alla modalità lifo (“Last In First Out”, “ultimo arri-vato, primo ad uscire”), in cui è l’ultimo oggetto inserito ad essereestratto per primo.

GIF Graphics Interchange Format

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

GNU gnu’s Not UnixÈ un acronimo ricorsivo che significa “gnu non è Unix”. Il progetto,lanciato nel 1983 da Richard Stallman, si basa su una gestione deidiritti d’autore improntata al concetto di software libero.

GUI Graphical User InterfaceNei moderni sistemi operativi, l’ “interfaccia d’uso grafica” è unamodalità di interazione tra l’utente e il calcolatore, che permetteall’utente di interagire con il calcolatore manipolando oggetti gra-fici (come icone e finestre) attraverso un puntatore comandato conun mouse (o con un dispositivo analogo). Si contrappone alla mo-dalità cli (command line interface, “interfaccia a linea di comando”),nella quale l’utente impartisce con la tastiera una serie di comanditestuali.

Questo ambiente di lavoro, introdotto per la prima volta nei labo-ratori Xerox (progetto Alto), venne sviluppato da Apple, che loapplicò al mondo dei personal computer e lo commercializzò nel1983 con Lisa e nel 1984 con il Macintosh. In seguito al successodel Macintosh tale sistema è stato adottato anche da Microsoft conWindows.

guIt Gruppo Utilizzatori Italiani di TEX e LATEX

È un’associazione senza fini di lucro che si prefigge di aumenta-re la diffusione di TEX e LATEX in Italia attraverso la condivisionedi informazioni legate al loro uso, conciliando il vantaggio dell’ap-prendimento con il piacere dell’insegnamento.

HTML Hyper Text Mark-up LanguageIl “linguaggio di marcatura degli ipertesti” è usato per descriverei documenti ipertestuali disponibili sul Web. Sviluppato alla finedegli anni ’80 da Tim Berners-Lee al cern di Ginevra, l’html èun linguaggio di pubblico dominio derivato da un altro linguaggioavente scopi più generici, l’sgml.

ISO International Standard OrganizationL’ “organizzazione internazionale per le standardizzazioni” è la piùimportante associazione a livello mondiale per la definizione distandard tecnico-scientifici. Suoi membri sono gli organismi na-zionali di standardizzazione di 157 Paesi del mondo.

JPEG Joint Photographic Experts Group

È lo standard di compressione delle immagini fotografiche più usa-to. Esegue una compressione con perdita di informazioni (ovve-ro di tipo lossy). Insieme con il png, è il formato standard delleimmagini bitmap da inserire in un documento con pdfLATEX.

Page 18: L'arte di scrivere con LaTeX _ Pantieri

xviii ACRONIMI

KDE K Desktop Environment

È un’interfaccia grafica per sistemi operativi Unix/Linux, caratte-rizzata da un elevato grado di personalizzazione.

PDF Portable Document FormatÈ il formato di file più versatile per la stampa e la distribuzioneelettronica, introdotto da Adobe Systems nel 1993 per rappresenta-re documenti in modo indipendente dall’hardware e dal softwareusati per generarli o per visualizzarli. Il pdf eredita molte delle fun-zioni del PostScript, un linguaggio di descrizione della pagina an-ch’esso sviluppato da Adobe. È il formato standard delle immaginivettoriali da inserire in un documento con pdfLATEX.

PNG Portable Network GraphicsCreato nel 1995, è un formato di file per comprimere immagini, par-ticolarmente adatto per rappresentare disegni e icone. Esegue unacompressione senza perdita di informazioni (ossia di tipo lossless).Insieme con il jpg, è il formato standard delle immagini bitmap dainserire in un documento con pdfLATEX.

PS PostScript

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

RGB Red Green BlueÈ un metodo per definire i colori (detto anche di tricromia), permezzo dei colori rosso (Red), verde (Green) e blu (Blue): ciascuncolore viene rappresentato mediante tre valori numerici che indica-no quanto le tre componenti concorrono alla formazione del coloreanalizzato. L’rgb è un modello additivo: unendo i tre colori conla loro intensità massima, si ottiene il bianco (tutta la luce vieneriflessa). Questo modello viene di solito usato dagli strumenti cheemettono luce, come i monitor e i proiettori.

SGML Standard Generalized Mark-up LanguageNato nel 1978 e influenzato nella sua genesi dal concetto di “eti-chetta logica” di LATEX, il “linguaggio di marcatura generalizzatostandard” ha costituito la base su cui sono stati sviluppati l’html

e l’xml. L’idea centrale del linguaggio è di definire (“marcare”) lastruttura logica di un documento, piuttosto che dare informazionisulla disposizione grafica degli elementi che lo compongono (adesempio, specificando che una struttura è un paragrafo o un elen-co, piuttosto che affermare che essa dovrebbe essere composta conun’intestazione in neretto e dello spazio prima e dopo).

SVG Scalable Vector Graphics

È un formato di file, derivato dall’xml, progettato per memorizzareimmagini vettoriali (e dunque “scalabili” dimensionalmente).

TIFF Tagged Image File Format

È un formato per immagini di tipo bitmap sviluppato da Microsofte Aldus, che permette di specificare numerose indicazioni aggiun-tive (ad esempio informazioni sulla calibratura del colore) tramiteapposite etichette (tag). Le specifiche del formato tiff permettono

Page 19: L'arte di scrivere con LaTeX _ Pantieri

ACRONIMI xix

una notevole flessibilità: ciò di per sé è un vantaggio, ma rendedifficile scrivere un interprete pienamente conforme alle sue spe-cifiche. I file tiff possono usare diversi algoritmi di compressionesenza perdita di informazioni (ossia di tipo lossless) oppure possononon essere compressi affatto.

TUG TEX User GroupIndica un gruppo di persone accomunate dalla passione per TEX eLATEX. Lo scopo di tali associazioni è di diffondere l’uso di questilinguaggi e di fornire supporto alla comunità.

UNI Ente Nazionale Italiano di UnificazioneÈ un’associazione privata senza scopo di lucro che svolge attivitànormativa in tutti i principali settori tecnico-scientifici. L’uni parte-cipa in rappresentanza dell’Italia all’attività normativa dell’organi-smo internazionale di standardizzazione iso.

URL Uniform Resource LocatorÈ una sequenza di caratteri che identifica univocamente l’indiriz-zo di una risorsa in Internet, come un documento o un’immagine.Ogni url (ad esempio http://www.guit.sssup.it/forum/) si com-pone normalmente di tre parti: il protocollo usato per indirizzarela risorsa (http, nell’esempio considerato), il nome dell’host o delserver o del dominio (www.guit.sssup.it), ed infine il nome delfile della risorsa (/forum/).

UTF Unicode Transformation FormatUnicode è un sistema di codifica che assegna una combinazione dibit a ogni carattere in maniera indipendente dal programma, dallapiattaforma e dalla lingua. La codifica utf-8 (Unicode Transforma-tion Format, 8 bit) è una realizzazione di Unicode che usa gruppidi byte in numero variabile da uno a quattro per rappresentare icaratteri.

WYSIWYG What You See Is What You GetL’espressione indicata dall’acronimo (“ciò che vedi è ciò che ottie-ni”) ha sostanzialmente due significati.

Il primo significato si riferisce al problema di ottenere in stampatesto e immagini che abbiano una disposizione grafica uguale aquella visualizzata sullo schermo del calcolatore. I primi softwaree le prime stampanti nell’ambito dell’utenza domestica non davanorisultati pienamente soddisfacenti, e questo problema fu superatocon l’introduzione di nuovi dispositivi e software (pionieri furonoil sistema di codifica dei caratteri TrueType sviluppato dalla Applee il programma Adobe TypeManager).

Con il tempo, il significato dell’acronimo si è esteso per analogiaanche ad alcune problematiche nella creazione dei documenti. Neicomuni elaboratori di testo (come ad esempio Microsoft Word), l’au-tore agisce direttamente sul testo già composto, così come apparesullo schermo del suo elaboratore, ed ogni sua azione si traduce inun’immediata variazione del testo composto. Programmi di questotipo vengono detti wysiwyg (in questo secondo significato), ed iltipo di composizione che viene prodotto viene denominato “com-posizione sincrona”. L’acronimo che si riferisce al concetto oppostoè wysiwym.

Page 20: L'arte di scrivere con LaTeX _ Pantieri

xx ACRONIMI

WYSIWYM What You See Is What You MeanL’acronimo (“ciò che vedi è ciò che intendi”) è stato coniato spe-cificamente per LATEX in contrapposizione all’acronimo wysiwyg

(nel senso di “programma di videoscrittura caratterizzato da unacomposizione sincrona”).

La caratteristica che più differenzia LATEX dagli altri elaboratori ditesto è il fatto che per comporre un documento con questo pro-gramma bisogna agire in tempi diversi per introdurre il testo e percomporlo. La “composizione asincrona” consiste nell’introdurre(con un editor) il testo da comporre in un file, senza badare alsuo aspetto grafico, ma concentrandosi sulla struttura logica deltesto, e nell’elaborarlo successivamente con LATEX, che agisce daimpaginatore.

YAP Yet Another PreviewerÈ un programma che legge i file dvi, generati da LATEX. È inclusonella distribuzione MiKTEX per Windows.

XML eXtensible Mark-up LanguageNato nel 1998 come semplificazione e adattamento dell’sgml, il“linguaggio di marcatura estensibile” è un metalinguaggio, ovve-ro un linguaggio che permette di definire la grammatica di diversilinguaggi specifici derivati.

Page 21: L'arte di scrivere con LaTeX _ Pantieri

P R E F A Z I O N E

La storia di TEX in Italia è lunga: secondo i resoconti del TEX UsersGroup, il primo convegno su TEX tenuto in Europa è stato a Comonel maggio 1985 e ne esiste perfino un volume di rendiconti a cura diDario Lucarella.

Per lunghi anni, però, è mancato un manuale in italiano che spie-gasse ai possibili utenti di LATEX come cominciare a scrivere documenticon questo sistema. Da pochi anni è disponibile la traduzione italianadella “(Not so) short introduction to LATEX 2ε”, che però è ferma a unaversione abbastanza antiquata. Si trovano nei meandri di Internet altreguide, alcune scritte fin dall’inizio in italiano, altre tradotte. Tutte, com-presa la “(Not so) short”, soffrono di un grave difetto: rispecchiano ingran parte il modo in cui il loro autore ha imparato TEX e LATEX.

Ogni utente di LATEX ha sviluppato le sue tecniche, raccolte qua elà in modo spesso disordinato, e difficilmente si adatta a cambiareanche se ne scopre di nuove e anche più efficienti. Chiunque abbiaprovato a raccogliere documenti scritti da diverse persone se ne rendeconto a una prima occhiata: molti di questi documenti hanno trovatoposto nelle raccolte di orrori. Sia chiaro, nessuno è immune dagli orrori,compreso chi scrive: quando penso a come scrivevo codice LATEX annifa mi vengono i brividi. Quando leggo una guida a LATEX la prima cosache faccio è cercare gli orrori e inevitabilmente li trovo, così come li sitrova molto facilmente nei preamboli che circolano fra chi scrive tesidi laurea o di dottorato.

Non vorrei dare l’impressione di criticare gente che ha speso moltodel proprio tempo per mettere a disposizione di tutti le loro conoscen-ze: ogni guida ha i suoi pregi e i suoi difetti, solo che i difetti hanno lacuriosa tendenza di diffondersi più dei pregi. Anche nel mondo LATEXevidentemente vale il principio che la moneta cattiva scaccia quellabuona.

Che dire di questa guida scritta da Lorenzo Pantieri? Che forse èl’unica che affronta alla radice il problema descritto. Ciò che a primaimpressione può apparire pignoleria è invece profonda curiosità diandare alla ricerca del modo migliore per risolvere i problemi. Miriferisco alle innumerevoli domande poste da Lorenzo sul Forum delguIt su questioni stilistiche, su come affrontare problemi tipografici opiù strettamente riguardanti LATEX. Questa curiosità non è pedanteriafine a sé stessa: è desiderio di esplorare il linguaggio LATEX per trovaresempre la soluzione più efficace.

Il risultato è una guida molto piacevole da leggere, che introduceal linguaggio LATEX in modo chiaro evitando per quanto possibile lecomplicazioni che spesso si trovano in altri scritti simili. Certo, nonè completa: se pensiamo che il “LATEX companion” ha più di millepagine, siamo molto distanti da questo obiettivo, che lo stesso autoredice di non avere. Nessuna guida potrà mai essere completa, visto cheLATEX è usato per comporre documenti di generi diversissimi, dalla ma-tematica alla fisica, al diritto o alle edizioni critiche di testi classici. In

xxi

Page 22: L'arte di scrivere con LaTeX _ Pantieri

xxii PREFAZIONE

una guida introduttiva, soprattutto a LATEX, è importante la chiarezzanella spiegazione dei motivi che impongono all’utente certe scelte, conl’indicazione di dove trovare le soluzioni ai problemi che nella guidastessa sono solo accennati.

Devo menzionare l’eccellente guida scritta con grande competenzada Claudio Beccari, che però è rivolta a un pubblico diverso: sicu-ramente chi avrà letto “L’arte di scrivere con LATEX” sarà in grado,se lo desidera, di affrontare gli argomenti più complessi oggetto diquell’opera.

Questa è solo la prima edizione, possiamo essere sicuri che Lorenzosarà sempre pronto ad aggiunte e correzioni in modo che chi la leggetrovi facilmente la risposta ai suoi problemi. Sarà un piacere provarea dare una mano sul Forum in modo che questa guida diventi ancoramigliore e conquisti sempre nuovi lettori contribuendo alla diffusionedi TEX e LATEX in Italia.

Padova, 30 marzo 2008 Enrico Gregorio

Page 23: L'arte di scrivere con LaTeX _ Pantieri

1 I N T R O D U Z I O N E

LATEX è un programma di composizione tipografica liberamente di-sponibile, particolarmente indicato per l’elaborazione di documentiscientifici, ai più elevati livelli di qualità. Lo scopo di questo lavoro, ri-volto sia ai principianti di LATEX sia a coloro che già lo conoscono, è for-nire agli utenti di LATEX di lingua italiana alcuni elementi per comporreun documento usando questo potentissimo strumento di scrittura.

Tale obiettivo è perseguito innanzitutto presentando le nozioni fon-damentali del programma, con l’intento di operare una sintesi di nu-merosi concetti sparsi in svariati manuali, condensandoli in un unicodocumento e presentandoli nella maniera più chiara e organica possi-bile. Al contempo, viene fornita una vasta gamma di esempi e ven-gono analizzati alcuni problemi tipici incontrati durante la stesura diuna pubblicazione scientifica o professionale, specialmente in linguaitaliana, indicando le soluzioni che ritengo migliori.

La scelta delle soluzioni adottate deriva sia dalla mia esperienza siadalle numerose discussioni presenti sul forum del Gruppo UtilizzatoriItaliani di TEX e LATEX (http://www.guit.sssup.it/), che resta sempreun eccellente riferimento per tutti i temi trattati in questo documento.

Il testo presume che il lettore possieda una certa familiarità con l’usodel calcolatore e di Internet.

La prassi seguita è quella di non approfondire i vari temi nei det-tagli, ma di indirizzare il lettore alla letteratura specifica o ai manualidei pacchetti suggeriti, quando necessario. Tutte le volte che si citaun pacchetto, non si fornisce una descrizione completa del suo fun-zionamento, per cui si rimanda alla relativa documentazione, ma sianalizzano le opzioni più importanti e se ne suggerisce l’uso.

L’esposizione del lavoro è articolata come segue:

NEL SECONDO CAPITOLO viene offerta una breve visione d’insieme del-la storia di LATEX e ne vengono presentate le idee di fondo.

NEL TERZO CAPITOLO vengono spiegate le operazioni per installareLATEX sul proprio calcolatore.

NEL QUARTO CAPITOLO vengono presentate le nozioni fondamentaliche permettono di avere una conoscenza di base del funziona-mento di LATEX.

NEL QUINTO CAPITOLO, che estende le conoscenze basilari su LATEX ac-quisite nel capitolo precedente, vengono fornite le nozioni neces-sarie per realizzare veri e propri documenti testuali.

NEL SESTO CAPITOLO vengono presentati i concetti e gli strumentifondamentali per comporre e gestire tabelle e figure con LATEX.

NEL SETTIMO CAPITOLO viene esplorato uno dei principali punti diforza di LATEX, ovvero la composizione di formule matematiche.

1

Page 24: L'arte di scrivere con LaTeX _ Pantieri

2 INTRODUZIONE

NELL’OTTAVO CAPITOLO vengono presentati gli strumenti che LATEXmette a disposizione per realizzare e gestire una bibliografia.

NEL NONO CAPITOLO vengono illustrate le nozioni essenziali per ge-nerare un indice analitico con LATEX.

NEL DECIMO CAPITOLO vengono esposti alcuni suggerimenti su comefare in modo che LATEX produca risultati diversi da quelli prede-finiti.

NELL’APPENDICE A vengono descritte sinteticamente le principali nor-me tipografiche della lingua italiana, utili nella composizione diarticoli, tesi o libri.

NELL’APPENDICE B, infine, sono raccolti alcuni esempi estratti da al-cune diffuse guide introduttive a LATEX, con l’intendimento dimostrare come non si scrive in LATEX.

Questo non è un manuale su LATEX, quanto piuttosto un tentativodi riordinare in forma scritta appunti accumulatisi nel tempo, manmano che divenivo abituale utente di questo software. Come sempli-ce appassionato, non ho nulla da insegnare; d’altra parte ho studiatoLATEX e l’ho usato intensamente, acquisendo una certa esperienza chemi piacerebbe condividere con gli altri utenti.

Se avete idee su argomenti da aggiungere, togliere o modificare inquesto documento, o se vi dovesse capitare di notare un errore, siadi battitura sia di sostanza (ed è probabile che ce ne siano parecchi,soprattutto del primo tipo, ma anche del secondo), mi fareste un favorecomunicandomelo, così che io possa apportare le opportune correzioniin versioni successive. Mi interessano specialmente i commenti deiprincipianti di LATEX su quali parti di questo lavoro risultino di facilecomprensione e quali invece potrebbero essere spiegate meglio.

È con questo spirito che ho scritto questo lavoro: spero che possiateusare LATEX con il mio stesso piacere.

Page 25: L'arte di scrivere con LaTeX _ Pantieri

2 S T O R I A E F I L O S O F I A

INDICE2.1 Storia 3

2.1.1 TEX 3

2.1.2 Etimologia 4

2.1.3 LATEX 5

2.2 Filosofia 52.2.1 Composizione sincrona e asincrona 5

2.2.2 Concentrarsi sul contenuto e non sulla forma 6

2.2.3 Vantaggi e svantaggi 8

2.2.4 Luoghi comuni 9

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

2.1 STORIA2.1.1 TEX

Figura 1: Donald E. Knuth (questaimmagine è tratta dal si-to http://www-cs-faculty.stanford.edu/~knuth/).

TEX è un programma di com-posizione tipografica distribuitocon una licenza di software libe-ro, realizzato da Donald ErvinKnuth, professore di informaticaall’università di Stanford.

Knuth iniziò a scrivere il “mo- La storia di TEXtore” di tipocomposizione TEXnel 1977, allo scopo di esplorarele potenzialità degli strumenti di-gitali di stampa che a quel tempostavano iniziando a prendere pie-de nel campo dell’editoria, con lasperanza di poter far regredire latendenza al deterioramento del-la qualità tipografica che consta-tava affliggere i suoi libri e artico-li, in particolare il suo capolavoroThe Art of Computer Programming,in più volumi, ricchi di formulematematiche.

TEX è stato pubblicato nel 1982,e negli anni successivi è stato costantemente aggiornato e perfeziona-to. In particolare, nel 1989 sono stati aggiunti alcuni rilevanti miglio-

3

Page 26: L'arte di scrivere con LaTeX _ Pantieri

4 STORIA E FILOSOFIA

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

ramenti per consentire il supporto dei caratteri a 8 bit e di più lingue.L’ultima revisione di TEX è del 2008. TEX è rinomato per essere estre-mamente stabile ed eseguibile su diversi tipi di calcolatori. Il numerodi versione di TEX converge a π ed attualmente è 3.1415926.

The TEXbook, scritto da Donald Knuth, è il manuale d’uso di TEX euno dei libri più completi su questo programma. Attualmente, TEX èun marchio registrato dalla American Mathematical Society (AMS).

2.1.2 Etimologia

Knuth ha nascosto un “trabocchetto” nel nome del suo programmaL’etimologia delnome “TEX” di composizione tipografica: “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”. Inlettere minuscole, TEX si scriverebbe τεχ. È la radice della parola grecaτεχνη, che vuol dire “arte” e “tecnica”: un binomio perfetto per la scrit-tura scientifica 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 calcola-tore si appanna leggermente. La “X” di TEX è un suono che non esistein italiano. Si trova tuttavia in moltissime lingue, oltre al greco: neltedesco “Bach”, scozzese “Loch”, spagnolo “Juan” e “Mexico”, russo

HoroxoHoroxoProva Prova

1

Horoxo, cinese nı hao , . . .In un ambiente ascii, il logo “TEX” si rende con le maiuscole/minu-

scole: TeX.

Page 27: L'arte di scrivere con LaTeX _ Pantieri

2.2 FILOSOFIA 5

2.1.3 LATEX

LATEX è un programma di composizione tipografica liberamente di-sponibile, realizzato da Leslie Lamport, che si serve di TEX come mo-tore di tipocomposizione. Si tratta di un programma progettato perautomatizzare tutte le operazioni più comuni che coinvolgono la rea-lizzazione di un documento, che consente agli autori di impaginare estampare il proprio lavoro ai più elevati livelli di qualità tipografica,servendosi di impostazioni di pagina professionali predefinite.

Figura 3: Leslie Lamport (questaimmagine è tratta dal sitohttp://it.wikipedia.org/wiki/Leslie_Lamport).

Lamport iniziò a scrivere LATEX La storia di LATEXalla fine degli anni Settanta,quando TEX non era ancora sta-to pubblicato (Lamport era unodei collaboratori di Knuth nellosviluppo di TEX). La prima ver-sione pubblica di LATEX risale al1985, e da allora il programmaè stato continuamente aggiorna-to e migliorato. Per molti anni ilnumero della versione è rimastofissato a 2.09 e le successive revi-sioni sono state identificate conle loro date.

Nel 1994, LATEX è stato aggior-nato da un gruppo di program-matori guidato da Frank Mit-telbach, al fine di includere al-cuni miglioramenti e di riuni-re tutte le versioni con estensio-ni e correzioni che si erano rac-colte dopo la pubblicazione diLATEX 2.09. Per distinguere lanuova versione da quella prece-dente, essa è chiamata LATEX 2ε;

questa documentazione tratta LATEX 2ε.La versione 3 di LATEX appare come un progetto a lungo termine; i

costanti aggiornamenti di LATEX 2ε ne costituiscono le tappe di avvici-namento. L’ultima versione pubblica di LATEX è del 2005.

2.2 FILOSOFIA2.2.1 Composizione sincrona e asincrona

La caratteristica che più differenzia LATEX dagli altri elaboratori di te- Per comporre undocumento con LATEX,bisogna agire intempi diversi perintrodurre il testo eper comporlo.

sto è il fatto che per comporre un documento con questo programmabisogna agire in tempi diversi per introdurre il testo e per comporlo [Bec-cari, 2009, p. 1].

Nei comuni elaboratori di testo (come ad esempio Microsoft Word),l’autore agisce direttamente sul testo già composto, così come apparesullo schermo del suo elaboratore, ed ogni sua azione si traduce inun’immediata variazione del testo composto. Il tipo di composizione

Page 28: L'arte di scrivere con LaTeX _ Pantieri

6 STORIA E FILOSOFIA

Tabella 1: Cronologia di TEX e LATEX.

1977 Knuth comincia a scrivere TEX1978 Lamport comincia a scrivere il primo nucleo di LATEX1982 Prima versione pubblica di TEX1984 Knuth pubblica la prima edizione di The TEXbook1985 Lamport pubblica LATEX 2.09 e la prima edizione di

LATEX: a document preparation system1994 LATEX 2ε

2005 Ultima revisione di LATEX2008 Ultima revisione di TEX

che caratterizza questi programmi viene denominato “composizionesincrona”. Perché il programma sia davvero sincrono e il ritardo fraazione e visualizzazione sia trascurabile, la forza del programma deveessere concentrata nella rapidità della presentazione. Tale caratteristi-ca non può che andare a discapito della “perfezione” della composi-zione, perché questa dipende da un’elaborazione molto più accuratasul testo da comporre. È vero che oggi i programmi di videoscritturasono estremamente rapidi e che ogni anno la qualità della loro compo-sizione migliora vistosamente, tuttavia il compromesso fra velocità equalità esiste sempre.

La “composizione asincrona” consiste nell’introdurre (con un edi-tor) il testo da comporre in un file, senza badare al suo aspetto grafi-co, ma concentrandosi sulla struttura logica del testo, e nell’elaborarlosuccessivamente con LATEX, che agisce da impaginatore.

Durante questo processo può accadere, per esempio, di dover mo-dificare una parola di un capoverso. In questo caso l’intero capoversoviene ricomposto: ciò implica l’ottimizzazione compositiva di tutto ilcapoverso, non solo un piccolo aggiustamento del punto in cui si èeseguita la modifica. Ecco quindi che la composizione avviene in duetempi, l’introduzione del testo e l’ottimizzazione della composizione,avendo però a disposizione l’intero testo da trattare.

Va da sé che la composizione asincrona assicura una migliore qua-La composizioneasincrona assicura

una migliore qualitàdi quella sincrona.

lità di composizione rispetto a quella sincrona, dal momento che nonviene tenuta in nessun conto la velocità di visualizzazione, ma la forzacompositiva viene concentrata sulla qualità: poiché tratta il testo nelsuo complesso (e non man mano che lo si redige), LATEX può avere unavisione d’insieme e fare scelte di impaginazione migliori.

2.2.2 Concentrarsi sul contenuto e non sulla forma

L’idea centrale di Lamport era di creare un linguaggio che permet-LATEX permette diconcentrarsi sulla

struttura logica deltesto e non su quella

stilistica.

tesse ai suoi utenti di concentrarsi sulla struttura logica del testo e nonsu quella puramente stilistica.

LATEX infatti permette all’utente di astrarsi dai dettagli tipografici concui verrà composto il proprio documento, definendone la struttura lo-gica, piuttosto che dando informazioni sulla disposizione grafica deglielementi che lo compongono (ad esempio, specificando che una strut-

Page 29: L'arte di scrivere con LaTeX _ Pantieri

2.2 FILOSOFIA 7

tura è un paragrafo o un elenco, piuttosto che affermare che essa do-vrebbe essere composta con un’intestazione in neretto e dello spazioprima e dopo). La trasformazione di un testo sorgente scritto con LATEXin un documento finito viene fatta con l’aiuto di strumenti (classi, pac-chetti, . . . ) che, idealmente, permettono cambiamenti anche radicalidell’aspetto, senza modificare il sorgente.

Il concetto di “etichetta logica” (in inglese mark-up) di LATEX ha in- Il concetto dietichetta logica(mark-up)

fluito notevolmente nella genesi dell’sgml e dei vari html ed xml,così come lo sono stati i suoi approcci per convertire queste etichettelogiche nelle corrispondenti rappresentazioni visuali.

Sebbene abbia divulgato il concetto di etichetta logica, LATEX fornisce La revisione finale diun documentoperò anche degli strumenti per regolare finemente i risultati in sede di

revisione finale, accettando il fatto che se si desidera un prodotto finaledi alta qualità nessun programma può, al momento attuale, risolvereautomaticamente tutti i problemi relativi alla composizione del docu-mento, evitando di lavorare sulla sua forma definitiva. Le variabili,in tipografia, sono infatti troppe e troppo varie perché si possa tenerconto di tutte con un programma.

Il file prodotto con l’editor contiene dunque non solo il testo in senso Il file prodotto conl’editor contiene iltesto assieme alleistruzioni dimarcatura.

stretto, ma anche le istruzioni di marcatura che permettono a LATEX disapere che cosa sta componendo, in modo da eseguirne la composizio-ne secondo le direttive dello stile del documento che sta elaborando. Iltesto prodotto mediante l’editor di testo è quindi, in effetti, un codicescritto in un linguaggio di programmazione, che contiene sia il testoda comporre, sia le istruzioni per comporlo.

L’utente non deve spaventarsi con le parole “linguaggio di program-mazione”: per lo più si tratta solo di informazioni di marcatura perspecificare titoli, testi speciali, composizione della matematica, e simi-li. Le istruzioni sono solitamente espresse in inglese (molto semplice,ridotto all’essenziale), evitando quasi sempre le abbreviazioni o gliacronimi.

Un esempio

Per dare un’idea di com’è strutturato un documento elaborato conLATEX, di seguito è riportato un frammento di testo sorgente.

Due matrici $n\times n$ complesse $A$ e $B$ si dicono \emphsimilise esiste una matrice $n\times n$ invertibile $T$ tale che\beginequationB=T^-1AT.\endequation

Il testo sorgente con le sue istruzioni viene compilato con LATEX, che Con LATEX, non sipuò modificaredirettamente ildocumento composto:si corregge il testosorgente e siricompila.

(attraverso TEX) produce il documento tipocomposto (in inglese, type-set). Se il risultato non è soddisfacente, non si può modificare diret-tamente il documento composto, ma si corregge il testo sorgente e siricompila.

Di seguito è riportato un esempio di testo sorgente (sulla sinistra)con accanto il relativo documento composto.

Page 30: L'arte di scrivere con LaTeX _ Pantieri

8 STORIA E FILOSOFIA

Due matrici $n\times n$complesse $A$ e $B$ si dicono\emphsimili se esiste unamatrice $n\times n$invertibile $T$ tale che\beginequationB=T^-1AT.\endequation

Due matrici n × n complesse A

e B si dicono simili se esiste unamatrice n×n invertibile T tale che

B = T−1AT . (2.1)

Nei capitoli successivi verranno spiegate tutte le istruzioni usate nel-l’esempio. Tuttavia anche il lettore con pochi rudimenti di inglesecapisce facilmente quello che il linguaggio di marcatura ha specificato.

2.2.3 Vantaggi e svantaggi

I vantaggi di LATEX rispetto agli altri elaboratori di testo sono innu-I vantaggi di LATEXmerevoli. Di seguito se ne elencano alcuni.

• LATEX è sommamente professionale, e presenta caratteristiche diqualità e stabilità sconosciute agli altri elaboratori di testo.

• L’autore pensa alla logica, LATEX si occupa dell’impaginazione.

• Strutture complesse come i riferimenti, gli indici e le bibliografiepossono essere generate con grande efficienza e flessibilità.

• La composizione tipografica di formule matematiche è gestita inmaniera impeccabile.

• LATEX è multilingue, multipiattaforma e gratuito.

• LATEX ha una struttura modulare, che permette di estenderne lecapacità, per eseguire compiti tipografici non direttamente gestitida LATEX. Sono reperibili ad esempio estensioni per comporrebibliografie conformi a precisi standard.

Innegabilmente, LATEX ha anche alcuni svantaggi:Gli svantaggi diLATEX

• Con LATEX ci vuole attitudine all’astrazione.

• La gratificazione non è istantanea, ma ritardata.

• Solo gli esperti si possono permettere di uscire dagli stili prede-finiti.

• Nell’ultima fase della composizione di un documento, la caratte-ristica di LATEX di raggiungere un’elevata qualità solo per mezzodi cambiamenti dall’effetto non immediato può rivelarsi un difet-to anziché un pregio (almeno se non si considerano i motivi diquesto comportamento e se non si adatta di conseguenza il pro-prio metodo di lavoro). Per esempio, a causa dell’ottimizzazio-ne globale della suddivisione dei capoversi, la rimozione di unasingola parola in un capoverso determina un completo riallesti-mento dell’intero capoverso. Ciò potrebbe rendere il capoversoaddirittura di una riga più lungo, se LATEX decidesse che quella èla migliore soluzione possibile. Se ciò accadesse durante la cor-rezione dei refusi all’ultimo minuto, in un documento altrimentiben composto, potrebbe essere un problema.

Page 31: L'arte di scrivere con LaTeX _ Pantieri

2.2 FILOSOFIA 9

Se l’uso di LATEX sia consigliabile o meno dipende fortemente dal Quando è opportunousare LATEXlavoro che si ha sotto mano, e la risposta è sempre dipendente dal

contesto. In breve, è opportuno usare LATEX quando uno o più fatto-ri tra i seguenti giochi un ruolo importante nell’ambito del propriolavoro [Mittelbach et al., 2007]:

• preferenza dell’utente a pensare per strutture logiche;

• documenti che richiedono consistenza;

• documenti che non hanno un formato interamente definito o chesaranno presentati parallelamente in diverse vesti;

• documenti che contengono molta matematica;

• materiale corposo.

D’altro canto, i seguenti fattori fanno pendere l’ago della bilancia Quando è opportunonon usare LATEXverso l’uso di un sistema visuale (di buona qualità!):

• preferenza dell’utente a pensare per strutture visive;

• utente non del tutto a suo agio a lavorare con un linguaggiodi programmazione (un editor di buon livello per LATEX aiuta,ma. . . );

• documenti che richiedono più flessibilità visuale che consistenza(ad esempio volantini, biglietti d’invito, depliant, brochure, . . . );

• materiale non corposo.

Quello che realmente fa la differenza può variare in base alle circo-stanze.

2.2.4 Luoghi comuni

Molte persone che scoprono LATEX dopo anni di combattimento conaltri elaboratori di testo, restano stupiti nello scoprire che LATEX eradisponibile da oltre vent’anni e loro non ne avevano mai sentito par-lare. Non si tratta di una cospirazione, ma solo di «un segreto benconservato e noto solo a pochi milioni di persone [Flynn, 2005]».

Knuth e Lamport hanno reso generosamente i loro programmi dipubblico dominio e pertanto per molti anni non vi è stato alcun generedi pubblicità che avesse potuto far notare LATEX al di fuori dell’ambitoaccademico. Oggigiorno, tuttavia, dozzine di editori pubblicano docu-menti in formato LATEX, e centinaia di migliaia di utenti scrivono conLATEX milioni di documenti.

In tutti questi anni, si sono creati diversi luoghi comuni riguardo aLATEX. Per evitare potenziali incomprensioni, conviene esaminare i piùdiffusi.

Leggenda: LATEX ha solo un font

LATEX può usare, tra gli altri, ogni font di tipo TrueType, OpenType,PostScript e METAFONT. Ciò è più di quanto offerto della maggiorparte degli altri sistemi di composizione tipografica. Il font standarddi LATEX è il Computer Modern, non il Times New Roman, quindialcuni restano turbati poiché appare diverso.

Page 32: L'arte di scrivere con LaTeX _ Pantieri

10 STORIA E FILOSOFIA

Leggenda: LATEX è un software solo per Unix

Si sente anche dire che LATEX è un software solo per Windows, o soloper Mac, eccetera. Al contrario, LATEX funziona sulla maggior partedei calcolatori attualmente in uso, dai supercomputer ai palmari. Ciòcomprende i PC con Windows, i Mac e tutti i sistemi Unix/Linux. Sesi sta usando un elaboratore sul quale LATEX non gira, si tratterà o diun apparecchio estremamente nuovo oppure estremamente vecchio odecisamente sconosciuto.

Leggenda: LATEX è obsoleto

Proprio il contrario. È costantemente in via di sviluppo (grazie allavoro di migliaia di appassionati in tutto il mondo), con nuove ca-ratteristiche che vengono continuamente aggiunte all’archivio CTAN. Èindiscutibilmente più aggiornato della maggior parte degli altri siste-mi tipografici, e la sua capacità di composizione di capoversi e formulematematiche è tuttora ineguagliata, nonostante il programma e i suoialgoritmi siano liberamente disponibili da oltre vent’anni.

Leggenda: LATEX non è WYSIWYG

Dipende. Se per wysiwyg (What You See Is What You Get, “Ciòche vedi è ciò che ottieni”) si intende un software in grado di ottene-re in stampa testo e immagini che abbiano una disposizione graficauguale a quella visualizzata sullo schermo del calcolatore, LATEX è unprogramma wysiwyg della migliore qualità.

Se invece per wysiwyg si intende un programma di videoscrittura incui l’autore agisce direttamente sul testo già composto, così come ap-pare sullo schermo del suo elaboratore, ed ogni sua azione si traducein un’immediata variazione del testo composto, LATEX non è wysiwyg,in quanto caratterizzato da una composizione asincrona (wysiwym).

Leggenda: LATEX è troppo difficile

Questa frase si è sentita dire da fisici in grado di dividere gli atomi,da matematici che sanno dimostrare la trascendenza di π, da uominid’affari che sanno leggere un foglio di bilancio, da storici che hannocompreso la politica bizantina e da linguisti che sanno decifrare lascrittura “lineare B”. La maggior parte delle persone comprende LATEXpiù o meno in venti minuti. Non è una materia “spaziale”.

Leggenda: LATEX è solo per matematici e scienziati

Nient’affatto. Sebbene sia cresciuto nei campi della matematica edell’informatica, due delle sue maggiori aree di espansione sono quel-la umanistica e quella dell’economia, specie da quando ha preso piedel’xml, che ha portato nuove esigenze nell’ambito della tipocomposizio-ne automatica.

Page 33: L'arte di scrivere con LaTeX _ Pantieri

3 I N S T A L L A R E LATEX

INDICE3.1 Introduzione 113.2 Installazione per Windows 12

3.2.1 La distribuzione MiKTEX 12

3.2.2 La distribuzione TEX Live per Windows 13

3.2.3 Editor per Windows 13

3.3 Installazione per Mac 153.3.1 La distribuzione MacTEX 15

3.3.2 Editor per Mac 15

3.4 Installazione per Linux 163.4.1 La distribuzione TEX Live per Linux 16

3.4.2 Editor per Linux 16

3.5 Editor multipiattaforma 163.6 Altri programmi utili 173.7 LATEX e pdfLATEX 17

In questo capitolo vengono spiegate le operazioni per installare LATEXsul proprio calcolatore. Le distribuzioni di LATEX prese in considerazio-ne sono MiKTEX (per Windows) e TEX Live (multipiattaforma), chesono ottime, diffuse e gratuite. Si distinguono tre casi:

• sistema operativo Windows (da Windows 2000 in poi);

• sistema operativo Mac OS X (dalla versione 10.3 in poi);

• sistema operativo Linux.

3.1 INTRODUZIONECome anticipato nel capitolo precedente, gli elementi essenziali per Non bisogna

confondere LATEX, cheè un “motore” ditipocomposizione,con l’editor usato perscrivere ilsorgente .tex.

scrivere un documento con LATEX sono:

• un editor di testo con cui creare il file sorgente .tex contenenteil testo da comporre;

• LATEX, che elabora il file .tex creato con l’editor e produce ildocumento tipocomposto (in formato .pdf o .dvi);

• un programma per visualizzare il documento (.pdf o .dvi) ela-borato da LATEX.

È bene sottolineare che nonostante, in teoria, sia possibile usare qual- È opportuno servirsidi un editor specificoper LATEX.

siasi editor di testo, per gestire al meglio i file sorgente è opportunoservirsi di un editor specifico per LATEX. In questo modo, fra l’altro,basta premere un pulsante dell’editor per compilare con LATEX e, se

11

Page 34: L'arte di scrivere con LaTeX _ Pantieri

12 INSTALLARE LATEX

non ci sono errori, per attivare anche il programma per visualizzare ildocumento; ad ogni successiva compilazione, la finestra del program-ma impiegato per visualizzare il documento viene di regola aggiornataautomaticamente, per cui si ha una compilazione “quasi sincrona”. Esi-stono numerosi editor specifici per LATEX, fra cui è possibile sceglierequello più adatto alle proprie esigenze.

Una distribuzione di LATEX è una raccolta di file e programmi che con-tiene quanto serve per comporre un documento con LATEX. General-mente una distribuzione contiene, oltre al sistema LATEX (e ai program-mi principali ad esso connessi) uno o più editor e uno o più program-mi per visualizzare i documenti elaborati da LATEX. Le distribuzioni diLATEX possono essere installate da dvd oppure da Internet.

Va notato che il Gruppo Utilizzatori di TEX e LATEX (http://www.guit.sssup.it/guit/) invia a tutti i suoi soci il dvd “TEX Collection”,che contiene le distribuzioni di LATEX per i principali sistemi operativi;le distribuzioni presentate in questo capitolo possono essere ritrovatein quel disco; ciò è molto utile se non si dispone di una connessione aInternet veloce.

Per installare una distribuzione di LATEX da Internet, il luogo di ri-La “rete di archivicompleti per TEX” ferimento è ctan (Comprehensive TEX Archive Network, “rete di archi-

vi completi per TEX”, http://www.ctan.org/); qui è possibile rintrac-ciare tantissimo software e materiale che riguarda LATEX, ad esempiopacchetti, programmi, stili, font.1

3.2 INSTALLAZIONE PER WINDOWSSu Windows sono disponibili le distribuzioni MiKTEX e TEX Live:

sono entrambe eccellenti, ma mentre MiKTEX è specifica per Windowse facile da installare e gestire, TEX Live è multipiattaforma e più adattaagli utenti esperti.

3.2.1 La distribuzione MiKTEX

La distribuzione MiKTEX è specifica per il sistema operativo Win-Su Windows, siconsiglia di installarela versione completa

di MiKTEX.

dows. La sua installazione, simile a quella di ogni altro programmaper Windows, non presenta particolari difficoltà (bastano pochi clic delmouse). È possibile scaricare MiKTEX dal sito http://miktex.org/.Dalla pagina di download, si scarica il file setup.exe: questo piccoloprogramma va eseguito una prima volta per scaricare la distribuzio-ne e una seconda volta per effettuare l’installazione vera e propria. Èsufficiente seguire le semplici istruzioni a video. Sono disponibili dueversioni di MiKTEX, “di base” (basic) e “completa” (complete), che diffe-riscono unicamente per la disponibilità di pacchetti, che con MiKTEX

1 La rete ctan è un insieme di siti dislocati in tutto il mondo, tutti uguali fra di loro.Il vantaggio di collegarsi ad un server ctan più vicino, che contiene una copia inte-grale (mirror, “specchio”) di un sito ctan “originale” (che può essere sovraffollato),è di poter disporre, solitamente, di una connessione più veloce. In Italia esiste, adesempio, il server dell’Università Tor Vergata di Roma (ftp.uniRoma2.it), cui si vie-ne automaticamente indirizzati quando si scaricano da ctan le distribuzioni MiKTEX oTEX Live. Gli indirizzi dei server ctan disponibili in Rete sono indicati nella pagina Webhttp://www.ctan.org/tex-archive/CTAN.sites.

Page 35: L'arte di scrivere con LaTeX _ Pantieri

3.2 INSTALLAZIONE PER WINDOWS 13

si possono gestire in modo particolarmente semplice (vedi il paragra-fo 4.4.4 a pagina 29). La versione completa è ovviamente la sceltaconsigliata. È bene tener presente che la distribuzione MiKTEX non èautomaticamente predisposta per lavorare con tutte le lingue che LATEXè capace di gestire (italiano compreso); per farlo è necessario eseguirela semplice procedura descritta nel paragrafo 5.1.1 a pagina 39.2

3.2.2 La distribuzione TEX Live per Windows

Dal 2008, la distribuzione TEX Live, nata in ambiente Unix/Linux, è La distribuzioneTEX Live perWindows è riservataagli utenti esperti.

disponibile anche per Windows. Nonostante si tratti di una distribu-zione robusta e affidabile (e, a differenza di MiKTEX, automaticamenteconfigurata per lavorare con tutte le lingue che LATEX è capace di ge-stire, italiano compreso), le procedure di installazione e di manuten-zione della TEX Live per Windows non sono semplici come quelle diMiKTEX, che è pensata appositamente per gli utenti di Windows: biso-gna studiare la documentazione (in inglese, http://tug.org/texlive/windows.html) e può essere necessario servirsi della linea di comando.Allo stato attuale, se ne consiglia l’uso solo agli utenti esperti.

3.2.3 Editor per Windows

Su Windows sono disponibili numerosi editor specifici per LATEX. Frai più diffusi vi sono TEXnicCenter, WinEdit e LEd, che sono tutti facilida installare e usare. Quale impiegare è, in definitiva, questione digusti: si consiglia all’utente di provarli e di scegliere quello più adattoalle proprie esigenze.

TEXnicCenter

TEXnicCenter è un editor per Windows distribuito gratuitamente sot-to licenza gnu. È abbastanza simile a WinEdt, rispetto al quale pre-senta un’interfaccia e delle funzioni più semplici. Prima di iniziarel’installazione di TEXnicCenter, si consiglia di aver installato una del-le distribuzioni di LATEX disponibili per Windows; in caso contrario laconfigurazione del programma dovrà essere posticipata al momentoin cui una distribuzione si renderà disponibile all’interno del sistema.Il programma si scarica dal sito http://www.texniccenter.org/. Alprimo avvio dell’editor partirà la procedura di configurazione automa-tica, durante la quale è necessario specificare se si sta usando MiKTEXoppure un’ altra distribuzione.

IL CONTROLLO ORTOGRAFICO IN LINGUA ITALIANA: TEXnicCenter usa ConfigurareTEXnicCenter perl’uso della linguaitaliana

lo stesso dizionario di Open Office, pertanto è possibile scaricare ildizionario dalla pagina dedicata ai download del sito di Open Of-fice (http://it.openoffice.org/) o, in alternativa, dal sito di guIt(http://www.guit.sssup.it/installazione/win_editor.php). Dopo

2 È disponibile anche la distribuzione proTEXt (presente su http://www.tug.org/protext/o sul dvd “TEX Collection”), che è basata sulla distribuzione MiKTEX, alla quale so-no stati affiancati gli editor WinEdt e TEXnicCenter ed i programmi accessori GSviewe Ghostscript. La procedura di installazione di proTEXt è molto semplice e bendocumentata.

Page 36: L'arte di scrivere con LaTeX _ Pantieri

14 INSTALLARE LATEX

(a) WinEdt (per Windows). (b) TEXShop (per Mac).

(c) Kile (per Linux). (d) TEXmaker (multipiattaforma).

Figura 4: Alcuni editor per LATEX.

aver decompresso l’archivio e aver copiato i due file it_IT.aff e it_

IT.dic nella cartella ...\TeXnicCenter\Language\ (la posizione esattadella cartella che contiene il programma dipende dalla scelta fatta dal-l’utente durante l’installazione). A questo punto si avvia TEXnicCentere, tramite il menu Tools→ Options→ Spelling, si abilitano le funzio-ni language:it, dialect:IT, poi si inserisce in personal dictionaryla voce ...\TeXnicCenter\Language\it_IT.dic (anche in questo casoil percorso che individua la cartella contenente il programma dipendedalla scelta specificata durante l’installazione).

WinEdt

WinEdt è un ottimo editor shareware per Windows (che permette digestire anche altri tipi di file, ad esempio .html). La sua installazionenon presenta alcuna difficoltà. Il programma si scarica dal sito http://www.winedt.com/.

IL CONTROLLO ORTOGRAFICO IN LINGUA ITALIANA: Per usufruire del-Configurare WinEdtper l’uso della lingua

italianala funzione di controllo ortografico è necessario installare nel program-ma il dizionario per la lingua italiana. A tal fine, è sufficiente creare lacartella it\ in C:\Programmi\WinEdt Team\WinEdt\Dict\, scaricare dalsito di guIt il dizionario (http://www.guit.sssup.it/installazione/win_editor.php) e copiarlo nella cartella appena creata. Dal pannelloDictionaries del menu Options→ Dictionary Manager di WinEdt, siseleziona la voce Your custom dictionaries e si inserisce nel campoDefinitions la voce %B\Dict\it\It.dic. Per abilitare l’uso del dizio-

Page 37: L'arte di scrivere con LaTeX _ Pantieri

3.3 INSTALLAZIONE PER MAC 15

nario è sufficiente spuntare nella casella relativa la voce Enabled, veri-ficando che nel campo Options siano attivati i comandi Load On Start,Save On Exit, Add New Words e Use for Completions.

LEd

LEd (LATEX Editor) è un editor gratuito per Windows, specifico perLATEX (ma che permette di gestire anche altri tipi di file, ad esempio.html, Pascal o Perl). Facile da installare e usare, è dotato di un’in-terfaccia grafica (disponibile anche in lingua italiana) comodamenteconfigurabile e particolarmente ricca di funzioni. Si scarica dal sitohttp://www.latexeditor.org/. Le semplici istruzioni per usufruiredella funzione di controllo ortografico in lingua italiana sono riportatesulla guida in linea del programma.

3.3 INSTALLAZIONE PER MACInstallare LATEX su Mac è semplicissimo: la distribuzione TEX Live,

che su Mac è nota anche come MacTEX, si installa come qualsiasi altroprogramma per Mac.

3.3.1 La distribuzione MacTEX

Per installare la distribuzione TEX Live su Mac è sufficiente scaricare Installare LATEX suMac èsemplicissimo. . .

il file MacTeX.dmg da http://www.tug.org/mactex/. All’interno del fileè contenuta l’intera distribuzione, assieme a svariati programmi utili,come ad esempio TEXShop. Una volta scaricato il file, basta aprirlo edeseguire le semplicissime istruzioni a video.

Fin dalla prima installazione, la distribuzione è automaticamente . . . ed il sistemaoperativo è già dotatodei programmiaccessori per lavorarecon LATEX.

predisposta per lavorare con tutte le lingue che LATEX è capace di gesti-re (italiano compreso). Il sistema operativo è già dotato dei programmiaccessori per visualizzare il risultato della composizione e per proce-dere alla stampa. Anche la gestione dei pacchetti è particolarmentesemplice (vedi il paragrafo 4.4.4 a pagina 29).

3.3.2 Editor per Mac

Su Mac sono disponibili diversi editor specifici per LATEX: TEXShopè un classico, semplicissimo da installare e usare, mentre Aquamacs èriservato a utenti più esperti.

TEXShop

TEXShop è un ottimo editor gratuito per Mac, coperto da licenzagnu. Nella compilazione, TEXShop impiega pdfLATEX (non producen-do quindi file dvi) e usa un apposito programma per visualizzaree stampare i documenti compilati, in formato pdf. L’editor è giàdotato del dizionario italiano e inglese. Il sito Web del progetto èhttp://www.uoregon.edu/~koch/texshop/.

Page 38: L'arte di scrivere con LaTeX _ Pantieri

16 INSTALLARE LATEX

Aquamacs

Aquamacs è una versione con interfaccia grafica in stile Mac diEmacs, un editor di testo libero estremamente potente e versatile, mol-to popolare fra i programmatori. Il software si scarica da http://aquamacs.org/.

3.4 INSTALLAZIONE PER LINUXL’installazione di un sistema LATEX su Linux non presenta difficoltà

eccessive. Spesso LATEX risulta addirittura già installato assieme al si-stema operativo. In ogni caso, la distribuzione TEX Live può venireinstallata come qualunque altro programma di Linux.

3.4.1 La distribuzione TEX Live per Linux

Su Linux, la distribuzione TEX Live (http://www.tug.org/texlive/)Su Linux, ladistribuzione

TEX Live si installacome qualunque altro

programma.

può essere installata dalla linea di comando (scelta comune fra gliutenti di questa piattaforma) oppure avvalendosi di interfacce grafi-che, come per esempio kde. Generalmente non c’è altro da fare, sal-vo eventualmente eseguire il programma texconfig per configurare ilsistema per l’uso della lingua italiana (vedi il paragrafo 5.1.1 a pagi-na 39). Neppure la gestione dei pacchetti presenta troppe difficoltà(vedi il paragrafo 4.4.4 a pagina 29).

3.4.2 Editor per Linux

La distribuzione TEX Live per Linux contiene anche diversi editorfra cui scegliere quello più adatto alle proprie esigenze. Si può usarel’onnipresente Emacs con l’estensione auctex; in alternativa, se lo sitrova troppo complicato, si può installare Kile, facile da usare.

Kile

Kile è un ottimo editor con licenza gnu per kde. Incluso nella di-stribuzione TEX Live, si avvale di un’interfaccia grafica che includele funzioni a cui si ricorre più frequentemente durante la scritturadi un documento in LATEX. Particolare attenzione è stata posta allapossibilità di interagire con altri programmi (come Xfig e Gnuplot).Le versioni di Kile allegate alla distribuzione TEX Live sono già do-tate del dizionario italiano ed inglese. Il sito Internet del progetto èhttp://kile.sourceforge.net/.

3.5 EDITOR MULTIPIATTAFORMAI seguenti editor sono multipiattaforma (ovvero disponibili per tutti

i sistemi operativi più diffusi, tra cui Windows, Mac OS e Linux) egratuiti. Essi presentano il vantaggio di poter condividere il progettodi uno stesso documento tra utenti di sistemi operativi diversi.

Page 39: L'arte di scrivere con LaTeX _ Pantieri

3.6 ALTRI PROGRAMMI UTILI 17

TEXMAKER è un editor specifico per LATEX dotato di un’interfaccia gra-fica che integra svariati strumenti per semplificare la gestionedei propri documenti. Si scarica da http://www.xm1math.net/texmaker/.

VIM (Vi iMproved) rappresenta un’evoluzione dell’editor testuale Vi,molto diffuso tra i programmatori in ambiente Unix. È disponibi-le sul sito http://www.vim.org/, oltre ad essere incluso in tutte leprincipali distribuzioni di Unix/Linux. L’estensione LATEX-Suiteaggiunge a Vim numerose funzioni utili per lavorare con LATEX.

3.6 ALTRI PROGRAMMI UTILILavorando con LATEX, è possibile usare un programma specializzato

per ciascuna operazione di composizione, in modo da servirsi sempredel prodotto migliore per ciascuna fase di elaborazione del documento.I seguenti sono alcuni utili programmi accessori:

ADOBE READER è un programma multipiattaforma e gratuito prodot-to da Adobe, che consente di visualizzare e stampare i file nelformato pdf. Si scarica da http://www.adobe.com/it/.

GHOSTVIEW è un programma gratuito per Unix/Linux, che permettedi visualizzare file ps, eps e pdf. Permette, fra l’altro, di con-vertire file dal formato eps e ps al formato pdf. Esiste anche unprogramma 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 allostesso indirizzo Internet).

GIMP è un programma gratuito nato per la piattaforma Linux e ora di-sponibile anche per le piattaforme Windows e Mac. Consente dimodificare le immagini bitmap di svariati formati e di registrarlein 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 possonoessere impiegati anche indipendentemente da LATEX, tuttavia risultanomolto utili per svolgere egregiamente certe funzioni che solo un pro-gramma specializzato sa fare, certamente meglio di quanto potrebbefare un programma generico dalle “troppe” funzioni.

3.7 LATEX E PDFLATEXÈ bene che il lettore sappia che con “LATEX” si intende non solo il Con “LATEX” si

intende anchepdfLATEX.

programma LATEX vero e proprio, che produce in output file dvi, maanche il programma pdfLATEX, il cui formato di uscita è direttamente ilpdf (senza che siano necessarie conversioni di alcun genere).

Entrambi i formati hanno pro e contro e vengono usati con scopi I pro e i contro diLATEX e pdfLATEXdifferenti [Mori, 2007, p. 34]. Il formato dvi permette la ricerca diretta

(facendo doppio clic sul codice all’interno dell’editor, il programma di

Page 40: L'arte di scrivere con LaTeX _ Pantieri

18 INSTALLARE LATEX

visualizzazione del dvi trova il rispettivo output) ed inversa (facendodoppio clic all’interno del programma di visualizzazione del dvi, ilcursore viene posizionato sul rispettivo codice all’interno dell’editor),che possono essere utili in fase di elaborazione del documento. Tut-tavia la maggioranza dei visualizzatori di dvi non visualizza corretta-mente gli effetti di alcuni comandi che modificano le figure ed inoltrenon sfrutta il pacchetto microtype. Il pdf, invece, non offre in generalela ricerca diretta ed inversa — in realtà, su macchine Mac che usanola distribuzione MacTEX e su PC che impiegano SumatraPDF (http://william.famille-blum.org/software/sumatra/) per visualizzare ipdf, la ricerca è eseguibile in entrambi i sensi anche su file pdf. Tut-tavia, il pdf visualizza correttamente tutti gli effetti del pacchetto gra-phicx, sfrutta il pacchetto microtype, è un formato molto diffuso anchetra coloro che non usano LATEX, permette di attivare i riferimenti iperte-stuali forniti dal pacchetto hyperref e consente di restringere l’accessoal documento per mezzo di password: ad esempio, è possibile limita-re l’accesso al file, limitarne la stampa (impedirla, oppure consentirlasolo a bassa risoluzione) e limitarne le modifiche (estrazione di testo,estrazione o eliminazione di pagine, . . . ).

Si noti che la creazione di un pdf può essere effettuata nei dueseguenti modi:

• la conversione di un file dvi in pdf (di regola tramite l’applica-zione in sequenza dei programmi dvips e ps2pdf o mediante ilprogramma dvipdfmx, operazione per la quale è generalmentesufficiente cliccare su un apposito pulsante dell’editor usato);

• la compilazione diretta del sorgente .tex con pdfLATEX.

Tuttavia, per sfruttare appieno le potenzialità del formato pdf è neces-Per sfruttare appienole potenzialità del

formato pdf, ènecessario usarepdfLATEX e non

convertire un dvi inpdf.

sario usare pdfLATEX: ad esempio, il formato pdf permette di ottenere iriferimenti ipertestuali (hyperlink), i segnalibri (bookmark) e le immaginiin miniatura (thumbnail) che non vengono prodotti nella conversionea partire da file dvi. Il programma pdfLATEX è presente in tutte le piùimportanti distribuzioni di LATEX ed è gestito dai principali editor ditesto dedicati a LATEX.

In generale, i file sorgente elaborabili con LATEX o con pdfLATEX sonoidentici, o possono essere resi tali. Pertanto quando si parla di unfile sorgente elaborabile con LATEX, si intende che il file è elaborabileindifferentemente anche da pdfLATEX.

Tuttavia, esistono casi in cui un file conforme alla grammatica diSi consiglia di evitarei pacchetti

incompatibili conpdfLATEX.

LATEX può risultare incompatibile con pdfLATEX. Ciò succede raramente,e di solito dipende dall’uso di pacchetti particolarmente specializzati.Se possibile, sarebbe meglio evitare tali pacchetti, ricorrendo eventual-mente a pacchetti alternativi, ugualmente adeguati per la particolarefunzione per la quale essi vengono invocati [Beccari, 2009, p. 21]. Que-sta soluzione funziona nella stragrande maggioranza dei casi. (Il pac-chetto PSTricks, per esempio, produce codice PostScript che non puòessere inserito direttamente in un file da compilare con pdfLATEX. Finoa qualche tempo fa era possibile solo la conversione in pdf a partireda dvi, o l’inserimento di immagini esterne. Ora esistono però anchedei pacchetti, come pst-pdf, che rendono praticamente automatica lacompilazione anche con pdfLATEX di file contenente codice PSTricks.)

Page 41: L'arte di scrivere con LaTeX _ Pantieri

3.7 LATEX E PDFLATEX 19

Tipicamente, l’incompatibilità fra LATEX e pdfLATEX non dipende dalfile sorgente, ma dai file inclusi; ciò accade di regola con i file checontengono delle immagini (LATEX richiede immagini esclusivamentein formato eps, mentre pdfLATEX accetta immagini in formato pdf, sevettoriali, oppure jpg o png, se bitmap). Nel paragrafo 6.2 a pagina 91

sono spiegate le soluzioni da adottare per risolvere questo problema.In definitiva, si consiglia di usare il formato dvi durante la stesura di un Si consiglia

pdfLATEXper lastampa e ladistribuzione deldocumento.

documento, solo se si usa Windows o Linux e si ha la necessità di usare lefunzioni di ricerca diretta e inversa. Per tutti gli altri casi, tra cui la stampae la distribuzione del documento in formato elettronico, si consiglia di usarepdfLATEX.

Page 42: L'arte di scrivere con LaTeX _ Pantieri
Page 43: L'arte di scrivere con LaTeX _ Pantieri

4 L E B A S I

INDICE4.1 I file sorgenti di LATEX 21

4.1.1 Spazi 21

4.1.2 I caratteri speciali 22

4.1.3 I comandi 24

4.1.4 I commenti 24

4.2 La struttura del file sorgente 254.3 Le classi di documento 264.4 I pacchetti 28

4.4.1 Che cosa sono? 28

4.4.2 Come sapere se se ne ha bisogno? 29

4.4.3 Come scoprire qual è il pacchetto “giusto”? 29

4.4.4 Come installarli? 29

4.4.5 Come caricarli? 32

4.4.6 Come imparare a usarli al meglio? 32

4.4.7 E i file .ins e .dtx? 32

4.4.8 I pacchetti di uso più comune 33

4.5 Gli stili di pagina 344.6 I file con cui si ha a che fare 35

4.6.1 I file dell’utente 35

4.6.2 File di classi, pacchetti e stili 35

4.6.3 I file ausiliari 36

4.6.4 I file di output 37

4.7 Documenti di grandi dimensioni 37

In questo capitolo vengono presentate le nozioni fondamentali chepermettono di avere una conoscenza di base del funzionamento diLATEX; procedendo nella lettura, sarà possibile estendere ed arricchirequeste conoscenze con nuove informazioni.

4.1 I FILE SORGENTI DI LATEXUn file sorgente di LATEX è un file di testo in ascii puro. Può essere

creato con qualunque editor di testi e contiene sia il testo del documen-to sia i comandi che comunicano a LATEX come impostare il formato deltesto.

4.1.1 Spazi

Nel testo sorgente lo spazio e la tabulazione sono trattati indifferen- Più spazi sonoconsiderati come unospazio.

temente come “spazio” da LATEX. Più spazi consecutivi sono consideraticome uno spazio. Lo spazio all’inizio di una riga viene ignorato, e unasola interruzione di riga è trattata come uno spazio.

21

Page 44: L'arte di scrivere con LaTeX _ Pantieri

22 LE BASI

Una riga vuota tra due righe di testo indica la fine di un capoverso.Una riga vuotaindica la fine di un

capoverso.Più righe vuote di seguito sono considerate alla stessa maniera di unariga vuota. Il testo che segue è un esempio: nella parte sinistra vi è ilcodice sorgente, e a destra è visualizzato il risultato in stampa.

Non ha alcuna importanza se simettono uno o tanti spazidopo una parola.

Una riga vuota fa iniziare unnuovo capoverso.

Non ha alcuna importanza se simettono uno o tanti spazi dopouna parola.

Una riga vuota fa iniziare unnuovo capoverso.

4.1.2 I caratteri speciali

Ogni programma di composizione tipografica riceve dall’utente:

• il testo;

• i comandi per impostare il formato del testo.

I programmi di composizione sincrona prendono i comandi da ap-Con LATEX siinseriscono i comandi

assieme al testo.positi menu: l’utente vede l’effetto, mentre la codifica interna rimanenascosta. Con LATEX, invece, si inseriscono i comandi insieme con iltesto.

Per distinguere i comandi dal testo, LATEX interpreta in modo parti-Caratteri specialicolare certi caratteri. I caratteri speciali di LATEX sono i seguenti:

\ % $ _ & # ^ ~

\La barra rovescia (o backslash) inizia i comandi di LATEX.

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

#Il cancelletto (o diesis, o hash) indica l’argomento quando si defi-niscono nuovi comandi.

ˆIl cappuccio (o caret) indica l’esponente nelle formule matemati-che.

Page 45: L'arte di scrivere con LaTeX _ Pantieri

4.1 I FILE SORGENTI DI LATEX 23

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

Simbolo Codice

‘ 96

123

125

~ 126

~La tilde produce uno spazio insecabile.

Ogni utente di LATEX deve imparare a localizzare sulla tastiera i carat-teri speciali. Purtroppo la posizione dei caratteri speciali non è standar-dizzata: cambia, fra l’altro, con il sistema operativo. A volte può esserenecessario premere più tasti insieme, o anche digitare codici numerici.

Chi scrive con una tastiera italiana può avere problemi a digitare i Inserire i caratteriche non compaionosulla tastiera italiana

quattro caratteri ‘ ~ , che non compaiono su alcun tasto; bisognafare attenzione a distinguere il carattere ‘ (virgoletta aperta, accen-to grave) da ’ (usato per inserire l’apostrofo, la virgoletta chiusa el’accento acuto).

• Se si usa una tastiera italiana PC, i caratteri ‘ ~ possono es-sere ottenuti tenendo premuto il tasto alt e digitando il codiceascii relativo con il tastierino numerico (vedi la tabella 2). Leparentesi graffe aperta e chiusa si ottengono anche premendorispettivamente alt gr + maiuscole + “è” e alt gr + maiusco-le + “+” (ovvero come se si dovessero fare delle parentesi quadre“maiuscole”).

• Se si usa una tastiera italiana Mac, la tilde si ottiene con opzio-ne + 5, la virgoletta aperta con opzione + 9 e le parentesi graffeaperta e chiusa con opzione + maiuscole + “è” e opzione +maiuscole + “+”, rispettivamente.

• Su Linux, la tilde si ottiene con alt gr + ì, la virgoletta apertacon 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 (tranne la barra rovescia, il cappuccio e la tilde) si Stampare i caratterispecialipossono stampare facendoli precedere nel testo sorgente da \.

\ \ \% \$ \_ \& \# % $ _ & #

Il carattere di barra rovescia \ non può essere immesso aggiungendoun altro \ davanti ad esso (la sequenza \\ si usa infatti per le interru-zioni di riga nei casi che lo prevedono): a tal fine si impiega il comando\textbackslash.

Il cappuccio e la tilde si ottengono facendoli precedere da \ e se-guire da due parentesi graffe , perché \^ e \~ sono comandi pergli accenti (vedi il paragrafo 5.7.3 a pagina 59) e richiedono un argo-mento. In alternativa, è possibile usare i comandi \textasciicircum e\textasciitilde, che producono simboli leggermente diversi.

Page 46: L'arte di scrivere con LaTeX _ Pantieri

24 LE BASI

\^ \textasciicircum \\\~ \textasciitilde

ˆ ^˜ ~

4.1.3 I comandi

In LATEX, i comandi sono composti da una barra rovescia \ più altricaratteri. Nei comandi, maiuscole e minuscole sono distinte. Ci sonodue tipi di comandi:

• comandi che iniziano con una barra rovescia \ seguita da unnome fatto di sole lettere alfabetiche; il comando finisce con ilprimo carattere non alfabetico (esempi: \TeX, \enddocument,\documentclass).

• comandi che iniziano con una barra rovescia \ seguita da esatta-mente un carattere non alfabetico (esempi: \, \, \%, \$, \_, \&,\#, \~).

Gli spazi dopo i comandi sono ignorati da LATEX. Se si desidera ot-tenere uno spazio dopo un comando, si deve scrivere e uno spazio,oppure scrivere un comando esplicito di spaziatura, come \ .

\Ars è la rivista del GruppoUtilizzatori Italianidi \TeX e \LaTeX.

ArsTEXnica è la rivista del GruppoUtilizzatori Italiani di TEX e LATEX.

Per riprodurre il logo di ArsTEXnica serve il comando \Ars del pacchet-to guit.1

Alcuni comandi necessitano di un argomento (o parametro) che deveArgomentiobbligatori e

facoltativiessere fornito tra parentesi graffe dopo il nome del comando. Certicomandi accettano parametri opzionali (facoltativi) che si aggiungonodopo il nome del comando tra parentesi quadre [ ]. I prossimi esempisi servono di alcuni comandi di LATEX.

Data odierna: \today.

Sono qui in \emphdieciminuti.

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

Il comando \today indica la data odierna nella lingua corrente. Ilcomando \emph serve per evidenziare il testo (vedi il paragrafo 5.11 apagina 63).

4.1.4 I commenti

Quando, durante l’elaborazione di un file sorgente, LATEX incontraun carattere % (eccetto \%), ignora il resto della riga, l’interruzione diriga, e tutti gli spazi bianchi all’inizio della riga successiva.

Il carattere % può essere dunque impiegato per iniziare un pro me-Pro memoriamoria che non viene stampato. Talvolta il percento si usa per spezzare

1 Il pacchetto xspace permette di definire comandi seguiti da uno spazio, a meno chenon siano seguiti da determinati segni di punteggiatura (vedi il paragrafo 10.1.2 apagina 160).

Page 47: L'arte di scrivere con LaTeX _ Pantieri

4.2 LA STRUTTURA DEL FILE SORGENTE 25

parole troppo lunghe, o per dividere righe in cui non sono permessispazi bianchi o interruzioni di riga.

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

ifragilist%ichespiralidoso.

Ecco un esempio: Supercalifragili-stichespiralidoso.

Per commenti più lunghi si usa l’ambiente comment fornito dall’omo-nimo pacchetto.

Ecco un altro\begincommentsemplice,ma utile\endcommentesempio per includere commentinel proprio documento.

Ecco un altro esempio per include-re commenti nel proprio documen-to.

4.2 LA STRUTTURA DEL FILE SORGENTEQuando LATEX elabora un file sorgente, si aspetta di seguire una cer- Dichiarazione di

classeta struttura. Un testo sorgente di LATEX deve contenere almeno unadichiarazione di classe,

\documentclass〈. . .〉

e le dichiarazioni di inizio e fine del documento:

\begindocument...\enddocument

Tutto ciò che è compreso tra i comandi \documentclass〈. . .〉 e Preambolo\begindocument si dice preambolo del documento (o semplicementepreambolo) e comprende:

• il caricamento di pacchetti che estendono le capacità di LATEX:\usepackage〈. . .〉;

• le definizioni dei comandi e degli ambienti personalizzati (che siimpostano con i comandi \newcommand e \newenvironment);

• la scelta delle varie opzioni generali;

• informazioni come \title〈. . .〉, \author〈. . .〉, eccetera.

Fra \begindocument ed \enddocument va il testo vero e proprio, Corpo del documentoo corpo del documento.

La figura 5 nella pagina seguente mostra un esempio di documen-to di piccola lunghezza, composto con LATEX. Il documento è statoottenuto compilando (due volte) il codice seguente:

Page 48: L'arte di scrivere con LaTeX _ Pantieri

26 LE BASI

Minimalismo

L. Pantieri

24 giugno 2008

Indice

1 Inizio 1

2 Fine 1

1 Inizio

Bene, qui inizia il mio grazioso articolo.

2 Fine

. . . e qui finisce.

1

Figura 5: Un breve esempio di documento composto con LATEX.

\documentclass[a4paper]article\usepackage[italian]babel\usepackage[latin1]inputenc\usepackage[T1]fontenc\authorL.~Pantieri\titleMinimalismo\begindocument\maketitle\tableofcontents\sectionInizioBene, qui inizia il mio grazioso articolo.\sectionFine\dots e qui finisce.\enddocument

Con \begindocument inizia il corpo del documento. Il comando\maketitle produce il titolo. Il comando \tableofcontents producel’indice generale: alla prima compilazione, LATEX prende annotazio-ni in file ausiliari .aux e .toc, che vengono inserite con la secondacompilazione. Il comando \section〈titolo del paragrafo〉 inizia un pa-ragrafo. Il comando \dots produce i punti ellittici “. . .”. Il comando\enddocument termina il documento.

4.3 LE CLASSI DI DOCUMENTOLa prima informazione che LATEX richiede quando elabora un file

sorgente è il tipo di documento che l’autore desidera realizzare; questosi specifica con il comando \documentclass:

\documentclass[〈opzioni〉]〈classe〉

Page 49: L'arte di scrivere con LaTeX _ Pantieri

4.3 LE CLASSI DI DOCUMENTO 27

Di seguito vengono elencate le principali classi standard di docu- Le classi standard diLATEXmento.

article è una classe progettata per scrivere articoli;

report e book servono per comporre relazioni contenenti diversi capi-toli, tesi e libri.

letter è progettata per scrivere lettere.

Esistono numerose altre classi aggiuntive per comporre svariati do-cumenti, compresi lucidi e presentazioni. (Per esempio, questo docu-mento non è composto con una classe standard, ma con lo stile Classic-Thesis, che si basa sulle classi KOMA-Script, leggermente diverse daquelle standard. Per i dettagli: [Pantieri, 2008a].)

Il parametro 〈opzioni〉 del comando \documentclass adatta il com- Opzioni di classeportamento della classe del documento; le opzioni devono essere se-parate da virgole. Di seguito vengono descritte le opzioni globali piùcomuni per le tre classi principali article, report e book (dal momentoche la classe letter è fondamentalmente diversa dalle altre tre, per essasi rimanda alla relativa documentazione).

10pt, 11pt, 12pt Queste opzioni impostano la dimensione del font prin-cipale nel documento. Il valore predefinito è di 10 punti.

a4paper, a5paper, . . . Definiscono le dimensioni del foglio. La dimen-sione predefinita è il formato americano letterpaper. Oltre aquesta possono essere specificate, executivepaper, legalpaper eb5paper.

oneside, twoside Specificano se deve essere generato un documento adoppia o singola facciata. Le classi article e report sono a singolafacciata e la classe book è a doppia facciata per impostazionepredefinita.

openany, openright L’opzione openright, predefinita nella classe book,fa iniziare i capitoli sempre in una pagina destra, mentre l’op-zione openany, predefinita nella classe report, li fa iniziare nel-la successiva pagina a disposizione. Queste opzioni non sonodisponibili con la classe article, che non ha capitoli.

twocolumn Dà istruzioni a LATEX di impaginare il documento in duecolonne.

titlepage, notitlepage Queste opzioni specificano se dopo il titolodel documento debba avere inizio o no una nuova pagina. Laclasse article non dà inizio a una nuova pagina per impostazionepredefinita, 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 chesulla destra.

Page 50: L'arte di scrivere con LaTeX _ Pantieri

28 LE BASI

Tabella 3: Le opzioni più comuni delle classi standard di LATEX.

Opzione book report article

10pt predefinita predefinita predefinitaletterpaper predefinita predefinita predefinitaoneside predefinita predefinitatwoside predefinitaopenany predefinita indefinitaopenright predefinita indefinitatitlepage predefinita predefinitafinal predefinita predefinita predefinita

draft, final L’opzione draft evidenzia le righe che LATEX non è riu-scito a comporre adeguatamente, e che quindi fuoriescono dalmargine, con una spessa linea nera sul margine destro, renden-dole più facili da individuare. Ciò non accade con l’opzionefinal. Le due opzioni sono caricate anche dagli altri pacchetti ehanno effetto sul loro funzionamento. Per esempio, il pacchettographicx non carica le immagini quando è specificata l’opzionedraft: al loro posto viene mostrato un riquadro, di dimensionicorrispondenti, che contiene solo il nome dell’immagine.

Ad esempio, un file sorgente per un documento composto con LATEXpotrebbe iniziare con la riga

\documentclass[a4paper,11pt,twoside]article

che ordina a LATEX a impaginare il documento come articolo, con unadimensione dei font di base pari a undici punti, adeguato alla stampain due facciate in formato A4.

4.4 I PACCHETTIScrivendo dei documenti, capita frequentemente di avere alcune esi-La struttura

modulare di LATEX genze che LATEX di base non soddisfa. Ad esempio, nel linguaggio stan-dard che LATEX usa non è possibile gestire direttamente l’inserimentodelle immagini né è possibile sillabare testi scritti in lingue diverse dal-l’inglese o disporre di un metodo per modificare i margini di paginain maniera comoda. In questi casi si sfrutta la struttura modulare diLATEX, che permette di estenderne le capacità: queste estensioni sonodette pacchetti.

4.4.1 Che cosa sono?

Fondamentalmente, un pacchetto è un “file di stile” (con estensione.sty), scritto in linguaggio LATEX, contenente una serie di istruzioni chepermettono di svolgere le operazioni più disparate.

Page 51: L'arte di scrivere con LaTeX _ Pantieri

4.4 I PACCHETTI 29

4.4.2 Come sapere se se ne ha bisogno?

In genere, se per ottenere il risultato sperato si deve faticare trop-po, probabilmente qualcuno, trovatosi nella stessa condizione, ha giàprovveduto a creare un pacchetto per semplificare il lavoro.

Viceversa, può capitare che, compilando un file sorgente, LATEX pro-duca un messaggio di errore del tipo Can’t find file guit.sty: ciòsignifica che viene caricato un pacchetto (guit, nell’esempio considera-to) che non è presente nella distribuzione di LATEX usata. In questocaso bisogna seguire le istruzioni del paragrafo 4.4.4.

4.4.3 Come scoprire qual è il pacchetto “giusto”?

Questo è l’unico passaggio in cui valgono gusto, abilità personale e Capire qual è ilpacchetto che fa alproprio caso

un pizzico di fortuna: cercando sul motore di ricerca del sito di GuIToppure su CTAN o su Sarovar, si trovano preziosi riferimenti a soluzioniper una vastissima gamma di problemi.2

Nell’esempio dell’inserimento delle immagini, il pacchetto graphicxpermette di farlo facilmente (vedi il paragrafo 6.2.4 a pagina 94). Perquanto riguarda la sillabazione di testi scritti in lingue diverse dall’in-glese, è necessario caricare e configurare opportunamente il pacchettobabel (vedi il paragrafo 5.1.1 a pagina 39). Circa la modifica dei margi-ni di pagina, è consigliabile rivolgersi ai pacchetti layaureo o geometry,se si usano le classi standard (vedi il paragrafo 5.5.1 a pagina 49).

4.4.4 Come installarli?

Nelle distribuzioni di LATEX più diffuse sono inclusi numerosi pac- Installare unpacchettochetti, sufficienti per gran parte delle esigenze di scrittura, ma può es-

sere necessario installarne altri. Le due maggiori distribuzioni, MiKTEXe TEX Live (quest’ultima dalla versione 2008 in poi), permettono di in-stallare e aggiornare i pacchetti tramite appositi programmi (packagemanager). Se però il pacchetto che si desidera installare non fa partedella distribuzione, bisogna procedere ad un’installazione manuale.

Installare o aggiornare un pacchetto con MiKTEX

Se si usa il sistema operativo Windows e si utilizza MiKTEX, è pos-sibile installare al volo un pacchetto: quando si compila un documentoche fa uso di un pacchetto disponibile con la distribuzione ma nonancora installato, MiKTEX lo aggiunge automaticamente, scaricando idati dall’archivio locale o da ctan.

In alternativa, è possibile servirsi del programma MiKTEX Package Il MiKTEX PackageManagerManager (vedi la figura 6a nella pagina successiva), seguendo questa

procedura:

• Si esegue il programma MiKTEX Package Manager (dal menuAvvio di Windows si seleziona il sottomenu Programmi; da qui sisceglie la voce MiKTEX, da cui si lancia Browse Packages): apparirà

2 http://www.guit.sssup.it/ricerca/, http://www.ctan.org/, http://texcatalogue.sarovar.org/.

Page 52: L'arte di scrivere con LaTeX _ Pantieri

30 LE BASI

(a) Il MiKTEX Package Manager. (b) La TEX Live Utility.

Figura 6: La gestione automatica dei pacchetti.

una finestra con l’elenco, in ordine alfabetico, dei pacchetti dispo-nibili nell’archivio (repository); in corrispondenza di ciascuno diessi viene indicato se esso è installato e ne viene fatta una brevedescrizione.

• Si evidenzia il nome dei pacchetti che si desiderano installare.

• Si preme il pulsante “+” che si evidenzierà e si attende che ilprocesso di installazione sia concluso.

• Si effettua l’aggiornamento dei cosiddetti “file di formato” diMiKTEX (Avvio→ Programmi→ MiKTEX→ Settings→ General→Update Formats).

Può capitare che non sia il pacchetto a mancare, ma che la versio-ne che si possiede sia datata. In questo caso si usa il programmaMiKTEX Update Wizard (Avvio→ Programmi→ MiKTEX→ Update), checontrolla, tramite una semplice interfaccia grafica, quali pacchetti traquelli installati sono disponibili con una nuova versione e propone diaggiornarli.

Installare o aggiornare un pacchetto con TEX Live

Dal 2008, la distribuzione TEX Live, che su Mac è nota come MacTEX,Il TEX Live Managercontiene il programma TEX Live Manager per installare e aggiornarei pacchetti (http://www.tug.org/texlive/tlmgr.html). Il programmapuò essere usato tramite un’interfaccia grafica oppure attraverso la li-nea di comando. In entrambi i casi il programma va avviato dallalinea di comando, con i privilegi di amministratore (come acquisirli di-pende dal sistema operativo su cui si lavora), fornendo, se si desideral’interfaccia grafica, l’opzione --gui. La distribuzione MacTEX fornisceanche un’interfaccia grafica nativa per Mac: TEX Live Utility. Se si usaMac è quindi preferibile usare quest’ultima, che evita il ricorso a X11

e alla linea di comando.

LA TEX LIVE UTILITY PER MAC La TEX Live Utility, inclusa nell’archi-vio MacTeXtras (http://tug.org/mactex/mactextras.html, vedi la fi-gura 6b), è l’interfaccia grafica consigliata agli utenti Mac per instal-lare e aggiornare i pacchetti. Quando viene eseguito la prima volta,

Page 53: L'arte di scrivere con LaTeX _ Pantieri

4.4 I PACCHETTI 31

il programma aggiorna l’installazione di MacTEX. Per aggiornare tut-ti i pacchetti basta premere il pulsante Update All della barra deglistrumenti; si possono aggiornare singoli pacchetti selezionandoli nelrelativo elenco e premendo il pulsante Update. I pacchetti si installanousando la scheda Manage Packages.

GESTIRE I PACCHETTI DALLA LINEA DI COMANDO Se si preferisce usare La scelta di gestire ipacchetti dalla lineadi comando è comunefra gli utenti diLinux.

il programma TEX Live Manager dalla linea di comando (scelta comu-ne fra gli utenti di Linux), queste sono le operazioni più comuni dacompiere:

• tlmgr list elenca tutti i pacchetti disponibili, contrassegnandocon i quelli già installati;

• tlmgr install 〈pacchetto〉 installa il pacchetto prescelto;

• tlmgr update --list elenca i pacchetti aggiornabili;

• tlmgr update --all aggiorna tutti i pacchetti;

• tlmgr update 〈pacchetto〉 aggiorna il pacchetto prescelto.

Per acquisire i privilegi di amministratore, se si usa Linux (o Mac)è necessario premettere ad ogni istruzione il comando sudo (super userdo) o, in alternativa, dare le istruzioni in qualità di utente root — qualealternativa seguire dipende dal tipo di sistema operativo usato.

L’interfaccia grafica rispecchia fedelmente le operazioni del program-ma da riga di comando. Dopo averla avviata, con tlmgr --gui, bisognacaricare l’elenco dei pacchetti, premendo il tasto Carica, nella parte al-ta della prima schermata. Anche in questo caso, i pacchetti già instal-lati verranno visualizzati con una i accanto. Per installare i pacchettiprescelti basta selezionarli e premere il tasto Installa selezionati.

Per effettuare l’aggiornamento di uno, più o tutti i pacchetti, bi-sogna spostarsi nella scheda Aggiornamento e usare i tasti Aggiornaselezionati (dopo aver effettuato una selezione) oppure Aggiornatutti.

Installare manualmente un pacchetto

Talvolta (ma è un caso che si verifica di rado) può essere necessa- Per installare unpacchetto bastacopiare il file .stynella sottocartella/tex/latex/ dell’alberopersonale.

rio installare manualmente un pacchetto non compreso nella propriadistribuzione. In questo caso bisogna sapere dove va sistemato il rela-tivo file .sty, in modo che LATEX lo possa trovare. Se si usano MiKTEXo TEX Live, è sufficiente copiare il file .sty nella sottocartella /tex/latex/ dell’albero personale (ovvero la cartella in cui il singolo utentepuò inserire i pacchetti, le classi e gli stili che usa e che non sono in-clusi nella distribuzione), eventualmente creando tale sottocartella, senon ci fosse già.3

La posizione dell’albero personale dipende dalla particolare distri-buzione usata.

3 Le distribuzioni MiKTEX e TEX Live prevedono altre due cartelle in cui trovare i fileda usare: l’albero principale (ovvero la cartella in cui sono contenuti i file installati conla distribuzione usata, che sono disponibili per tutti gli utenti) e l’albero locale (ovverola cartella che rende i file disponibili a tutti gli utenti senza dover modificare manual-mente l’albero principale). Per i dettagli: http://www.guit.sssup.it/installazione/pacchetti.php.

Page 54: L'arte di scrivere con LaTeX _ Pantieri

32 LE BASI

• Su Windows, se si usa la distribuzione MiKTEX l’albero personaleè la cartella C:\Documents and Settings\〈nome dell’utente〉\Datiapplicazioni\MiKTeX\2.7\ oppure, equivalentemente, la cartel-la C:\Documents and Settings\〈nome dell’utente〉\Impostazionilocali\Dati applicazioni\MiKTeX\2.7\.

• Su Mac, l’albero personale è $HOME/Library/texmf/.

• Su Linux, la posizione dell’albero personale dipende dalla par-ticolare distribuzione usata. La radice dell’albero personale inqualsiasi distribuzione può essere visualizzata dalla linea di co-mando con kpsexpand ’$TEXMFHOME’. Su una Debian, per esem-pio, l’albero personale è radicato in ~/texmf/.

In alternativa, è sufficiente copiare i file necessari nella stessa cartellain cui si trova il file .tex.

4.4.5 Come caricarli?

I pacchetti si caricano con il comandoCaricare unpacchetto

\usepackage[〈opzioni〉]〈pacchetto〉

dove 〈pacchetto〉 è il nome del pacchetto e 〈opzioni〉 è un elenco di voci,separate da virgole, che specificano particolari caratteristiche del pac-chetto. Un’opzione può essere costituita da un’unica parola o da unavoce del tipo 〈chiave〉=〈valore〉.

4.4.6 Come imparare a usarli al meglio?

Di regola, chi scrive un pacchetto per LATEX scrive anche un docu-La documentazionedi un pacchetto mento in cui viene descritto il funzionamento del pacchetto stesso. La

documentazione spesso risulta essere di due tipi: il manuale d’uso,pensato per chi intende solo utilizzare il pacchetto, e la descrizionedel codice che costituisce il pacchetto, per chi voglia cimentarsi nelsuo sviluppo futuro. A volte i due tipi di documento sono uniti inun documento solo. Non bisogna spaventarsi, quindi, se cercando ilmanuale d’uso si trova un documento lungo.

La documentazione di un pacchetto è solitamente disponibile nel-lo stesso luogo virtuale in cui ci si è muniti del pacchetto, oppureviene scaricata automaticamente nel caso si usino sistemi avanzati digestione dei pacchetti. In ogni caso, tale documentazione può es-sere trovata facilmente tramite il motore di ricerca di ctan (http://www.ctan.org/). Nella maggior parte dei casi, si tratta di un filepdf con lo stesso nome del pacchetto. Altre volte la documentazione èinclusa direttamente nel file .sty, sotto forma di commenti.

4.4.7 E i file .ins e .dtx?

In alcuni casi, i pacchetti che si scaricano da Internet non contengonodirettamente il file .sty e la relativa documentazione .pdf, ma un filedi estensione .ins e uno di estensione .dtx. Basta procedere in questomodo:

Page 55: L'arte di scrivere con LaTeX _ Pantieri

4.4 I PACCHETTI 33

• Il file .dtx contiene la documentazione del pacchetto. EseguendoLATEX su questo file .dtx si ottiene il manuale ben composto, enon un semplice e spoglio file di testo.

• Eseguendo invece LATEX sul file .ins, si ottiene il file .sty deside-rato (o anche più di uno, a seconda dei casi).

A questo punto, per ultimare l’installazione, è sufficiente spostare i file.sty ottenuti in una cartella accessibile a LATEX e, se necessario, effet-tuare l’aggiornamento della base di dati dei pacchetti, come spiegatopoc’anzi.

4.4.8 I pacchetti di uso più comune

I seguenti pacchetti di uso comune devono essere presenti in tutte ledistribuzioni fin dall’inizio. L’unico di questi che richiede un interven-to dell’utente è babel, per caricare in memoria le regole di sillabazionedelle lingue (vedi il paragrafo 5.1.1 a pagina 39).

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 definisce nuove opzioni per l’allineamento delle colonne di unambiente tabular.

babel permette l’uso di lingue diverse dall’inglese.

backref permette di avere, nelle voci bibliografiche, l’indicazione dellepagine in cui esse sono citate.

booktabs migliora l’aspetto delle tabelle.

caption permette di personalizzare le didascalie.

chngpage permette di modificare i margini di una singola pagina.

enumitem permette di personalizzare gli elenchi.

eurosym introduce il simbolo dell’euro.

fancyhdr permette di creare stili di pagina personalizzati.

float permette di creare oggetti mobili personalizzati e di forzare ilposizionamento di un oggetto.

fontenc specifica la codifica dei font da usare nel documento stampato.

footmisc consente di personalizzare le note a piè di pagina.

geometry imposta i margini di pagina nelle classi standard.

graphicx gestisce l’inserimento delle immagini.

hyperref abilita i riferimenti ipertestuali.

Page 56: L'arte di scrivere con LaTeX _ Pantieri

34 LE BASI

indentfirst rientra il primo capoverso di ogni unità di sezionamento(rispettando una consuetudine spesso seguita nei documenti ita-liani).

inputenc permette l’inserimento di caratteri accentati da tastiera neldocumento sorgente.

listings consente l’inserimento di codici, permettendo un controllo mol-to sofisticato del loro formato.

makeidx fornisce comandi per realizzare l’indice 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 bibliografiche citando l’autore el’anno di pubblicazione.

showkeys permette di controllare, in fase di revisione, l’uso dei riferi-menti \label, \ref, \cite, eccetera.

subfig permette di affiancare figure e tabelle.

tabularx compone tabelle di larghezza impostata dall’utente.

url imposta l’inserimento degli indirizzi Internet.

varioref rende più flessibile la gestione dei riferimenti incrociati.

xcolor consente la gestione del colore.

xtab permette di ripartire una tabella su più pagine.

wrapfig permette di far scorrere del testo attorno ad un’immagine.

4.5 GLI STILI DI PAGINALe classi standard di LATEX accettano tre combinazioni predefinite diGli stili di pagina

della classi standarddi LATEX

testatina/piè di pagina (i cosiddetti stili di pagina). L’argomento 〈stile〉del comando

\pagestyle〈stile〉

stabilisce quale stile sarà usato. Gli stili di pagina predefiniti delleclassi standard sono i seguenti.

plain Stampa i numeri di pagina al piè di pagina, lasciando vuotala testatina. Questo è lo stile di pagina predefinito nelle classiarticle e report.

empty Imposta la testatina e il piè di pagina in modo che non vi siastampato nulla.

Page 57: L'arte di scrivere con LaTeX _ Pantieri

4.6 I FILE CON CUI SI HA A CHE FARE 35

headings Il piè di pagina è vuoto, mentre la testatina contiene il nu-mero della pagina vicino al margine esterno, seguito dal titolodel capitolo corrente nella testatina di sinistra e preceduto dal ti-tolo del paragrafo corrente nella testatina di destra. Questo valeper le classi book e report, mentre per la classe article si tratta deititoli del paragrafo e del sottoparagrafo corrente, rispettivamen-te. Quando si compone con l’opzione oneside (predefinita conreport e article), nella testatina compare solo il titolo della sud-divisione maggiore. Lo stile headings è predefinito nella classebook.

myheadings È simile a headings, con la differenza che il contenuto del-le testatine deve essere fissato manualmente dal compositore spe-cificando di volta in volta entrambe le testatine oppure solo quel-la di destra attraverso i comandi \markboth oppure \markright,rispettivamente.

È possibile cambiare lo stile della pagina corrente con il comando Cambiare lo stiledella pagina corrente

\thispagestyle〈stile〉

È anche possibile creare stili di pagina personalizzati con il pacchettofancyhdr (vedi il paragrafo 10.5).

4.6 I FILE CON CUI SI HA A CHE FAREQuando si lavora con LATEX, si ha a che fare con svariati tipi di file. Di

seguito è riportato un elenco (non esaustivo) delle relative estensioni.

4.6.1 I file dell’utente

.tex È l’estensione del testo sorgente scritto con LATEX dall’utente; puòessere diviso in più file.

.pdf, .jpg, .png Sono i formati standard delle figure da inserire in undocumento con pdfLATEX (vedi il capitolo 6).

.eps È il formato delle figure da inserire in un documento con LATEX(vedi il capitolo 6).

4.6.2 File di classi, pacchetti e stili

.cls I file delle classi definiscono il tipo di documento; sono scelti conil comando \documentclass.

.sty Pacchetto di LATEX. È un file che si può caricare nel documentosorgente mediante il comando \usepackage.

.ins, .dtx File di installazione e documentazione di un pacchetto. Ese-guendo LATEX sul file .ins e .dtx si ottengono rispettivamente ilcorrispondente file .sty ed il relativo file .pdf.

Page 58: L'arte di scrivere con LaTeX _ Pantieri

36 LE BASI

.bst Stile bibliografico usato dal programma BibTEX (vedi il capito-lo 8).

.ist File che contiene le istruzioni per personalizzare l’indice analitico(vedi il capitolo 9).

4.6.3 I file ausiliari

Prodotti dalla compilazione

.log Fornisce un resoconto dettagliato di ciò che è avvenuto durantel’ultima esecuzione del compilatore.

.toc Contiene le informazioni necessarie per produrre l’indice gene-rale (table of contents). Viene scritto da LATEX nella prima compila-zione ed è letto nella successiva esecuzione del compilatore.

.lof È simile al .toc ma riguarda l’elenco delle figure (list of figures).

.lot Analogo di .lot per l’elenco delle tabelle (list of tables).

.aux Un altro file che trasporta informazioni da un’esecuzione all’al-tra del compilatore; tra le altre cose, il file .aux è usato perconservare le informazioni associate ai riferimenti incrociati.

Generati in compilazione da pacchetti e programmi

.bbl Contiene le informazioni per impaginare la bibliografia, se si usaBibTEX.

.blg File che fornisce un resoconto (logfile) su ciò che è stato compiutoda BibTEX.

.idx È presente se il documento contiene un indice analitico. Tutte leparole che vanno nell’indice analitico sono memorizzate da LATEXin questo file, che deve essere successivamente elaborato con ilprogramma MakeIndex.

.ind È il risultato dell’elaborazione del file .idx fatta da MakeIndex,pronto per essere incluso nel documento al successivo ciclo dicompilazione.

.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 ilpacchetto minitoc (vedi il capitolo 5).

.brf Raccoglie le informazioni per generare i riferimenti bibliograficifinali, se si usa il pacchetto backref (vedi il capitolo 5).

.maf Contiene l’elenco dei file ausiliari di minitoc.

Page 59: L'arte di scrivere con LaTeX _ Pantieri

4.7 DOCUMENTI DI GRANDI DIMENSIONI 37

4.6.4 I file di output

.pdf È il principale risultato dell’esecuzione di pdfLATEX: è il formatopiù versatile per la stampa e la distribuzione elettronica. Si vi-sualizza e stampa con Adobe Reader o un’applicazione analoga.

.dvi È il principale risultato dell’esecuzione di LATEX. Si può visualiz-zare e stampare con Yap o un’applicazione analoga.

4.7 DOCUMENTI DI GRANDI DIMENSIONIUn fattore molto importante per il successo nella scrittura di un

documento di grandi dimensioni (come un libro o una tesi) è l’orga-nizzazione del proprio materiale. Si suggerisce di collocare tutti i filedel documento in una cartella, strutturandola come segue:

• La cartella Capitoli contiene il materiale principale, suddivisoin capitoli, come Introduzione.tex, StoriaFilosofia.tex, ecc.

• La cartella MaterialeInizialeFinale contiene il materiale ini-ziale e finale, come i ringraziamenti, la dedica, la bibliografia,ecc.

• La cartella Immagini contiene tutte le figure usate nel lavoro. Sesi hanno molte figure, potrebbe essere conveniente organizzarela cartella in sottocartelle, contenenti ciascuna le figure di uncapitolo.

• Bibliografia.bib: la base di dati di BibTEX che contiene tutti iriferimenti bibliografici del documento.

• 〈nome del documento〉.tex: il file principale del documento, cherichiama tutti gli altri.

Questo piccolo accorgimento permette di semplificare notevolmente ilproprio lavoro.

Tra \begindocument e \enddocument si caricano i file del proprio Il comando \inputdocumento con

\input〈file1〉\input〈file2〉...

Ad esempio, i capitoli si caricano con

\inputCapitoli/Introduzione\inputCapitoli/StoriaFilosofia...

Il comando \input include semplicemente il file specificato: nientedi più, niente di meno. Permette l’annidamento, ovvero è possibilerichiamare un file che ne richiama un altro.

Se si sta lavorando a un documento di grandi dimensioni su una Il comando \includepuò essere utile se sidispone di uncalcolatore vetusto.

macchina particolarmente vecchia, può essere utile servirsi del coman-do \include, il cui uso è analogo a \input:

Page 60: L'arte di scrivere con LaTeX _ Pantieri

38 LE BASI

\include〈file1〉\include〈file2〉...

Il comando \include non permette l’annidamento, ma fa iniziare unanuova pagina prima di elaborare i contenuti del file che contiene epermette di usare il comando

\includeonly〈file1〉,〈file2〉,〈. . .〉

per inserire soltanto i file elencati tra parentesi. Quando si usa il co-mando \includeonly〈file1〉,〈file2〉,〈. . .〉, vengono compilati solamen-te i file tra parentesi graffe ed i contatori (numeri di pagina, numeridi note, . . . ) non vengono aggiornati. A differenza di \input, che scri-ve tutte le informazioni sul file .aux principale, il comando \includecrea un file .aux per ogni file incluso e poi li richiama dal file .auxprincipale. (Dal momento che il meccanismo di \include comprendela scrittura di un file .aux per ogni file incluso e che alcune distribuzio-ni di LATEX non permettono di scrivere in cartelle che siano al di sopradi quella in cui si trova il file sorgente, \include può non funzionarese si cerca di includere un file che si trova in un punto “proibito”. Sipuò evitare il problema strutturando il materiale come consigliato inquesto paragrafo.)

Per evitare problemi, è opportuno che il percorso (path) dei file inclu-si mediante i comandi \input, \include e \includeonly non contengaspazi.

Per far sì che LATEX esegua un veloce controllo sintattico del docu-Eseguire un velocecontrollo sintattico

del documentomento si usa il pacchetto syntonly, che fa sì che LATEX scorra il docu-mento controllando solo la sintassi e l’uso corretto dei comandi, senzafornire alcun output. Poiché LATEX viene eseguito più velocemente inquesta modalità, si può risparmiare tempo; l’uso è molto semplice:

\usepackagesyntonly\syntaxonly

Quando si vuole realizzare il documento vero e proprio, basta com-mentare la seconda riga (facendola precedere da un simbolo di percen-tuale).

Page 61: L'arte di scrivere con LaTeX _ Pantieri

5 I L T E S T O

INDICE5.1 LATEX multilingue e multipiattaforma 39

5.1.1 Il pacchetto babel 39

5.1.2 Il pacchetto inputenc 42

5.2 La codifica dei font 425.3 La struttura del testo 435.4 La composizione dei capoversi 44

5.4.1 La divisione delle parole in fin di riga 46

5.4.2 Lo spazio tra le parole 48

5.4.3 Il pacchetto microtype 48

5.4.4 Il rientro sulla prima riga 49

5.5 Le proporzioni di pagina 495.5.1 Il tormentone dei margini 49

5.5.2 L’interlinea e il riempimento della pagina 50

5.6 Il sezionamento del documento 515.6.1 Materiale iniziale, principale e finale 51

5.6.2 L’indice generale 52

5.6.3 I miniindici 54

5.7 Caratteri speciali e simboli 545.7.1 Virgolette, tratti e punti ellittici 54

5.7.2 Indirizzi Internet e riferimenti ipertestuali 56

5.7.3 Loghi, accenti e caratteri speciali 59

5.8 Il titolo del documento e il frontespizio 605.9 I riferimenti incrociati 615.10 Note a margine e a piè di pagina 625.11 Parole evidenziate 635.12 Ambienti 63

5.12.1 Elenchi puntati, numerati e descrizioni 64

5.12.2 Centrare e allineare i capoversi 65

5.12.3 Citazioni e versi 66

5.12.4 Codici e algoritmi 68

5.13 Gli acronimi e i glossari 695.14 Epigrafi, capolettera e scritture curiose 695.15 La revisione finale 71

In questo capitolo, che estende le conoscenze basilari su LATEX acqui-site nel capitolo precedente, vengono fornite le nozioni necessarie perrealizzare veri e propri documenti testuali.

5.1 LATEX MULTILINGUE E MULTIPIATTAFORMA5.1.1 Il pacchetto babel

Se si vogliono scrivere documenti in lingue diverse dall’inglese, ci Scrivere in linguediverse dall’inglesesono due ambiti per cui LATEX deve essere configurato:

39

Page 62: L'arte di scrivere con LaTeX _ Pantieri

40 IL TESTO

a. tutte le voci generate automaticamente (“Indice”, “Elenco dellefigure”, “Elenco delle tabelle”, “Capitolo”, . . . ) devono essereadattate alla nuova lingua;

b. è necessario che LATEX conosca le regole di sillabazione per lanuova lingua.

Queste modifiche si possono compiere caricando il pacchetto babel conl’opzione che specifica la lingua (o le lingue) in cui si scrive:

\usepackage[〈lingua〉]babel

Le lingue che il pacchetto consente di usare sono elencate su [Gregorio,2008b].

Per adattare alla lingua italiana tutte le voci generate automatica-Scrivere in linguaitaliana mente e per attivare la sillabazione italiana, è necessario caricare il

pacchetto babel con l’opzione per l’italiano per mezzo del comando

\usepackage[italian]babel

L’uso di babel è necessario per avere la sillabazione italiana ma inPer attivare lasillabazione, il

caricamento di babelè necessario ma in

generale nonsufficiente.

generale non sufficiente, in quanto serve anche che il file che contiene lerelative regole di sillabazione sia attivato.

• Se si usa MiKTEX, per attivare la sillabazione italiana bisogna se-lezionare, dal pannello Languages del menu Settings di MiKTEX,la voce Italian e aggiornare il sistema (Update Formats).1

• Se si usa TEX Live su Linux, a seconda della distribuzione puòessere necessario lanciare texconfig-sys dalla linea di comando(occorrono i privilegi di amministratore), scegliere hyphenatione togliere il % davanti a italian nel file che comparirà (dallaversione 2008 in poi, questa procedura non è più necessaria).

• Se si usa la distribuzione TEX Live su Mac, non c’è bisogno di farenulla (tutto l’occorrente viene abilitato automaticamente durantel’installazione).

Per alcune lingue, babel definisce anche nuovi comandi che semplifi-cano l’immissione di caratteri speciali. La lingua tedesca, per esempio,contiene molte dieresi (ä, ö, ü); con babel, si può immettere una ö bat-tendo "o invece di \"o. Alcuni comandi predisposti da babel per lalingua italiana sono presentati nel paragrafo 5.7.1 a pagina 54.

Scegliere la lingua

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

\usepackage[english,italian]babel

l’ultima lingua (l’italiano) è quella predefinita. Si passa da una linguaall’altra con

1 Se si usa la versione di base (basic) di MiKTEX, è necessario anche selezionare, dal pannel-lo Packages del menu Settings di MiKTEX, la voce Language Support→ Italian; dopodi ciò si effettua l’aggiornamento dei “file di formato” e della base di dati di MiKTEX(Update Formats e Refresh FNDB).

Page 63: L'arte di scrivere con LaTeX _ Pantieri

5.1 LATEX MULTILINGUE E MULTIPIATTAFORMA 41

\selectlanguage〈lingua〉

oppure, equivalentemente, con

\beginotherlanguage〈lingua〉...\endotherlanguage

Le precedenti dichiarazioni fanno cambiare la lingua in modo globa-le (comprese le voci generate automaticamente): per esempio, dopo\selectlanguageenglish, \chapter produrrà ”Chapter. . . ”. L’am-biente otherlanguage è equivalente a \selectlanguage〈lingua〉, mal’effetto finisce appunto con \endotherlanguage.

\beginabstractVersione del sommario initaliano. \dots\endabstract

\selectlanguageenglish\beginabstractEnglish version of theabstract. \dots\endabstract\selectlanguageitalian

SommarioVersione del somma-rio in italiano. . . .

Abstract

English version of theabstract. . . .

In alternativa, è possibile usare il comando

\foreignlanguage〈lingua〉〈testo〉

oppure, equivalentemente, l’ambiente

\beginotherlanguage*〈lingua〉...\endotherlanguage*

Il testo dato come secondo argomento di \foreignlanguage o comecontenuto dell’ambiente otherlanguage* viene composto secondo leregole tipografiche di 〈lingua〉, ma le voci generate automaticamen-te non cambiano rispetto alla lingua in vigore. Per esempio, dopo\foreignlanguageenglish, \chapter produrrà “Capitolo. . . ”.

Per semplificare la scrittura del codice sorgente, può essere conve-niente definire (nel preambolo) un apposito comando

\newcommand\inglese[1]%\beginotherlanguage*english#1\endotherlanguage*

da usare come segue:

\ingleseWe have seen thatcomputer programmingis an art.

We have seen that computer pro-gramming is an art.

Page 64: L'arte di scrivere con LaTeX _ Pantieri

42 IL TESTO

Tabella 4: Le principali codifiche di input (la codifica utf8x richiede ilpacchetto ucs, da caricare prima di inputenc).

Codifica Opzione di inputenc

iso-8859-1 latin1

iso-8859-15 latin9

utf-8 utf8, utf8xCodepage 1252 (Windows) ansinew

MacRoman (Mac OS) applemac

Codepage 850 (OS/2, MS-DOS) cp850

5.1.2 Il pacchetto inputenc

A causa della vocazione multipiattaforma e multilingue di LATEX, èLa codifica con cui èscritto il codice

sorgentenecessario specificare, all’interno del documento, la codifica con cui èstato scritto il codice sorgente .tex. Tale codifica, usata dal calcolatoreper consentire di introdurre direttamente da tastiera alcuni caratteriparticolari (come le vocali accentate è, é, . . . ), dipende dalla piattaformae dall’editor impiegati. A tal fine si usa il pacchetto inputenc (inputencoding). L’opzione da passare al pacchetto indica la codifica scelta(vedi la tabella 4).

L’opzione consigliata è latin1, disponibile sulla maggioranza deglieditor 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 l’opzione utf8. Occorre impostareadeguatamente le preferenze dell’editor usato.

È preferibile usare le codifiche latin1 o utf8 in luogo di ansinew,applemac e latin9 (o utf8x, che richiede il pacchetto ucs, da caricareprima di inputenc), diffuse rispettivamente su piattaforma Windows,Mac e Linux, dal momento che latin1 e utf8 consentono di evitareproblemi di compatibilità quando si opera con documenti scambiatitra piattaforme diverse.2

5.2 LA CODIFICA DEI FONTLa codifica dei font del documento finale stampato è una questione di-La codifica dei font

del documento instampa

versa dalla codifica con cui è scritto il codice sorgente. In mancanzadi istruzioni specifiche, LATEX impiega i font Computer Modern, checontengono solo i 128 caratteri del vecchio sistema ascii a 7 bit. (Que-sto documento, composto con lo stile ClassicThesis, usa però altri font.

2 Per trasformare in latin1 o utf8 un file codificato diversamente, è possibile usare il pro-gramma Charco, multipiattaforma e gratuito (http://www.marblesoftware.com/Charco.html). Su Linux è disponibile anche l’analogo iconv (http://www.gnu.org/software/libiconv/), che opera dalla linea di comando.Su Linux, per capire la codifica usata nella propria distribuzione è possibile eseguireprintenv LANG dalla linea di comando.

Page 65: L'arte di scrivere con LaTeX _ Pantieri

5.3 LA STRUTTURA DEL TESTO 43

Per i dettagli: [Pantieri, 2008a,b].) Quando sono richiesti caratteri ac-centati, LATEX li crea combinando un normale carattere con un accento.Benché il risultato sia perfetto, questo approccio impedisce il funzio-namento della sillabazione automatica all’interno di parole contenenticaratteri accentati.

Fortunatamente, la maggior parte delle distribuzioni recenti di LATEX La codifica T1 deifontinclude una copia dei font ec, che hanno lo stesso aspetto dei Compu-

ter Modern, ma contengono caratteri speciali per la maggior parte del-le lettere accentate usate nelle lingue europee. Impiegando questi fontsi può migliorare la sillabazione in documenti scritti in lingue diversedall’inglese, ed è quindi decisamente consigliabile farne uso. I font ec

sono attivati caricando il pacchetto fontenc, specificando l’opzione T1:

\usepackage[T1]fontenc

La codifica T1 dei font rappresenta il nuovo standard di codifica deicaratteri di LATEX; tale codifica non è ancora la predefinita solo permotivi di compatibilità con le versioni di LATEX precedenti a LATEX 2ε.

In effetti, l’impiego di tale codifica richiede l’uso di font con un for- I font CM-Supermato opportuno (vettoriale) per evitare di dar luogo a problemi di resaallo schermo con versioni non aggiornate di programmi per visualiz-zare file pdf (come ad esempio Adobe Reader, Anteprima o Xpdf): inparticolare, se non sono installati i relativi font nel formato opportu-no, può accadere che i font appaiano sgranati [Beccari, 2009, p. 153].La soluzione di questo problema è fornita, per esempio, dalla collezio-ne di font CM-Super, inclusa nelle distribuzioni MiKTEX (installazionecompleta) e TEX Live, e attivata automaticamente quando si carica ilpacchetto fontenc con l’opzione T1; i font di tale collezione (visualizza-bili anche su dvi, purché il programma usato a tal fine sia configuratocorrettamente) hanno la stessa forma dei font ec, ma presentano mol-te migliorie in termini di qualità di resa allo schermo. Per maggioridettagli su questa famiglia si rimanda alla relativa documentazione.

In alternativa ai font CM-Super, è possibile usare i font Latin Modern, I font Latin Modernche forniscono un vasto repertorio di caratteri utili per scrivere nel-le lingue neolatine e rappresentano un valido sostituto dei ComputerModern:

\usepackagelmodern\usepackage[T1]fontenc

I font Latin Modern (che, come i CM-Super, sono visualizzabili anchesu dvi, purché il programma usato sia configurato correttamente) sonoinclusi in tutte le distribuzioni recenti di LATEX.

5.3 LA STRUTTURA DEL TESTOIl punto essenziale nella scrittura di un testo è comunicare idee La struttura logica

del contenutoe conoscenze al lettore, che comprenderà meglio il testo se questeinformazioni sono ben strutturate, e ne apprezzerà assai meglio lastruttura se la forma tipografica rispecchia la costruzione logica delcontenuto [Oetiker et al., 2000, p. 17].

Page 66: L'arte di scrivere con LaTeX _ Pantieri

44 IL TESTO

A differenza degli altri sistemi di composizione, con LATEX è suffi-ciente indicare la struttura logica del testo, dalla quale il programmaricava la forma tipografica secondo le regole definite nella classe e neipacchetti caricati.

La più importante unità di testo in LATEX (e in tipografia) è il capover-I capoversiso. Un capoverso è quel tratto di testo che comincia (di regola con unrientro) con una lettera maiuscola e termina con un “punto e a capo”.

Un capoverso viene definito “unità di testo” perché esso è la formatipografica che deve riflettere un singolo pensiero coerente, o un’idea.Quindi, se si apre un nuovo discorso, si deve cominciare un nuovocapoverso. Quando si è incerti sulla divisione dei capoversi, si pensial testo come veicolo di idee e pensieri. Se un periodo continua ilpensiero precedente, la divisione deve essere eliminata. Se invece unperiodo introduce una linea di pensiero completamente nuova, alloraoccorre introdurla con un nuovo capoverso.

L’unità di testo immediatamente più piccola è il periodo. Nei testiI periodiin lingua inglese e, spesso, anche nei testi in lingua italiana, dopo unpunto che conclude un periodo c’è più spazio di quanto ce ne sia dopouno che termina un’abbreviazione. Di regola, LATEX capisce quale sia ilpunto che si intendeva usare. Se però LATEX sbaglia, bisogna fornirglil’indicazione 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 com-plicate, ma per molte (comprese la lingua italiana e inglese) di solito èsufficiente ricordare che cosa rappresenta la virgola: una breve pausanel discorso. Se non si è sicuri del posizionamento di una virgola, silegga la frase ad alta voce, prendendo un breve respiro ad ogni virgo-la. Se questo in qualche punto dà la sensazione di essere inopportuno,probabilmente la virgola va eliminata. Se in qualche altro punto si sen-te la necessità di prendere fiato (o di fare una breve pausa), può essereopportuno inserire una virgola. In ogni caso, è bene ricordare che initaliano la virgola non deve mai essere usata per separare il soggettodal predicato o quest’ultimo dal complemento oggetto.

Infine, i capoversi in un testo devono essere strutturati logicamenteCapitoli, paragrafi,sottoparagrafi ed

altre strutturead un livello più alto. Un libro è in genere diviso in capitoli (e talvoltain parti); ogni capitolo è spesso diviso in sezioni gerarchiche che in ita-liano si chiamano paragrafo, sottoparagrafo, sotto-sottoparagrafo, ca-poverso e sottocapoverso; in inglese esse si chiamano rispettivamentesection, subsection, subsubsection, paragraph, subparagraph. Si noti la pre-senza dei falsi amici “paragrafo” e “paragraph”. In ogni caso, l’effettotipografico di scrivere per esempio

\sectionLa struttura del testo

è a tal punto evidente che l’uso di queste strutture ad alto livello sispiega quasi da sé (vedi comunque il paragrafo 5.6 a pagina 51).

5.4 LA COMPOSIZIONE DEI CAPOVERSILa maggior parte delle persone sottovaluta completamente l’impor-Scrivere capoversi

ben strutturati tanza di documenti ben strutturati. Molti ignorano persino qual è il

Page 67: L'arte di scrivere con LaTeX _ Pantieri

5.4 LA COMPOSIZIONE DEI CAPOVERSI 45

significato della suddivisione in capoversi o, specialmente in LATEX, co-minciano un nuovo capoverso senza rendersene conto. Quest’ultimoerrore è particolarmente facile da commettere se nel testo si usanoformule [Oetiker et al., 2000, p. 17].

Iniziare un nuovo capoverso in LATEX

Con LATEX, per iniziare un nuovo capoverso si lascia una riga vuota Con LATEX, periniziare un nuovocapoverso si lasciauna riga vuota.

(in alternativa, si può usare il comando \par). Osservando gli esempiche seguono, si cerchi di capire perché a volte si lascia una riga vuota(fine capoverso), e altre volte no. (Se non si comprendono ancora tuttii comandi abbastanza bene per capire questi esempi, si leggano intera-mente questo capitolo e i primi paragrafi del capitolo 7, e poi si ritorninuovamente a questo paragrafo.)

% Esempio 1\dots quando Einstein proposela definizione\beginequationE = mc^2,

\endequationche è allo stesso tempo la piùnota e la meno compresaformula della Fisica.

. . . quando Einstein propose ladefinizione

E = mc2, (5.1)

che è allo stesso tempo la più notae la meno compresa formula dellaFisica.

% Esempio 2\dots che, rispetto aiprecedenti, presenta alcunivantaggi.

La formula\beginequationI_\mathrmD =I_\mathrmF - I_\mathrmR

\endequationcostituisce la parte centraledi un modello moltodiverso di transistor. \dots

. . . che, rispetto ai precedenti, pre-senta alcuni vantaggi.

La formula

ID = IF − IR (5.2)

costituisce la parte centrale di unmodello molto diverso di transistor.. . .

% Esempio 3\dots da cui segue la legge diKirchhoff sulle correnti:\beginequation\sum_k=1^n I_k = 0.

\endequation

La legge di Kirchhoff sulletensioni può esserericavata\dots

. . . da cui segue la legge di Kirch-hoff sulle correnti:

n∑k=1

Ik = 0. (5.3)

La legge di Kirchhoff sulletensioni può essere ricavata. . .

Terminare un capoverso con una formula fuori corpo (vedi il para- Non si comincia maiun capoverso conuna formula.

grafo 7.1 a pagina 110), come nel terzo degli esempi proposti, è ra-ro, ma comunque lecito. È invece sempre sconsigliabile iniziare uncapoverso con una formula, a maggior ragione se fuori corpo.

Page 68: L'arte di scrivere con LaTeX _ Pantieri

46 IL TESTO

Capoversi giustificati

In genere, le righe di un testo hanno tutte la stessa lunghezza. Lenecessarie interruzioni di riga e gli spazi tra le parole sono inseriteautomaticamente da LATEX, ottimizzando il contenuto dell’intero capo-verso. Inoltre, se necessario, LATEX divide le parole che non stannoagevolmente su una riga. Il modo in cui sono composti i capoversidipende dalla classe di documento. Di regola la prima riga di un ca-poverso è evidenziata con un rientro, e non c’è spazio aggiuntivo tra icapoversi.3

Interrompere una riga senza iniziare un nuovo capoverso

In casi particolari può essere necessario ordinare a LATEX di interrom-I comandi \\ oppure\newline non vanno

mai usati periniziare un nuovo

capoverso.

pere una riga. I comandi \\ oppure \newline permettono di spezzareuna rigae di cominciarne una nuova, senza iniziare un nuovo capoverso, e dun-que senza tener conto dello spazio fra capoversi e del rientro, come inquesto caso.

Per specificare uno spazio aggiuntivo tra due linee dello stesso ca-poverso si usa il comando \\[〈lunghezza〉].

5.4.1 La divisione delle parole in fin di riga

In generale, LATEX cerca di produrre sempre le migliori interruzioniL’opzione draft delcomando

\documentclassdi riga possibili; se non riesce a trovare il modo di spezzare le righesecondo i suoi severi criteri, lascia che la riga fuoriesca dal marginedestro, avvertendo l’utente con un messaggio di “overfull hbox”. Ben-ché LATEX avverta l’utente quando ciò accade, le righe a cui si riferiscenon sempre sono facili da trovare. Usando l’opzione draft del coman-do \documentclass, queste righe saranno evidenziate con una spessalinea nera sul margine destro.

Quasi tutte le parole sono divise correttamente in sillabe da LATEX,Quasi tutte le parolesono divise

correttamente insillabe da LATEX. . .

tuttavia esistono casi in cui si usano nomi propri oppure parole ra-re oppure parole per cui si desidera la divisione etimologica invecedi quella fonetica (che, almeno per le parole italiane, viene eseguitabenissimo dall’algoritmo di LATEX). Per esempio si possono avere paro-le 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).

In questa eventualità, se la sillabazione compiuta da LATEX non è. . . e nei casi in cui lasillabazione

automatica èinsoddisfacente, è

possibile suggerirla.

soddisfacente, è possibile suggerirla con il comando \hyphenation (vaposizionato nel preambolo). Si devono scrivere le parole sillabate traparentesi graffe, separate da uno spazio, come nel seguente esempio:

3 In casi particolari può essere utile inserire uno spazio supplementare fra capoversi. Icomandi \bigskip, \medskip e \smallskip inseriscono uno spazio verticale più o menogrande. Sono molto comodi perché la grandezza dello spazio che generano è funzionedel 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 usatala versione con asterisco del comando: \vspace* invece di \vspace.

Page 69: L'arte di scrivere con LaTeX _ Pantieri

5.4 LA COMPOSIZIONE DEI CAPOVERSI 47

\hyphenationma-cro-istru-zio-ne nitro-idrossil-amminico

Il comando precedente può anche essere usato quando si vuoleche alcune parole non vengano sillabate. È sufficiente scriverle senzatrattini come nel seguente esempio:

\hyphenationFORTRAN ma-cro-istru-zio-ne

L’esempio precedente permette che “macroistruzione” sia divisa insillabe, come pure “Macroistruzione”, e impedisce del tutto che le pa-role “fortran”, “Fortran” e “fortran” siano divise. Nell’argomentonon sono ammessi caratteri speciali o simboli.

Il comando \hyphenation può anche essere impiegato per forza-re una sillabazione particolare; se ad esempio si vuole che la parola“melograno” sia spezzata tra “melo” e “grano” e non in altri punti, èsufficiente scrivere:

\hyphenationmelo-grano

Se la parola in questione compare una sola volta, è possibile sug-gerirne la sillabazione direttamente nel testo con \-. Avremo, adesempio:

La scoperta dell’acidonitro\-idrossil\-amminicoavvenne nel 1896.

La scoperta dell’acido nitroidrossil-amminico avvenne nel 1896.

Va precisato che gli interventi manuali sulla sillabazione dovrebberosempre essere fatti nella fase di revisione che precede immediatamen-te la stampa. Spesso è preferibile riformulare una frase che dà luo-go ad un errore di “overfull hbox” piuttosto che imporre particolarisillabazioni.

Se si usa l’opzione italian del pacchetto babel, può essere utile ser-virsi del comando "/, che consente di andare a capo dopo la barra. Peresempio, la scrittura modulazione"/demodulazione viene composta co-me “modulazione/demodulazione” se si trova all’interno di una riga,mentre in fin di riga viene spezzata in “modulazione/demodulazione”.

Più parole possono essere mantenute insieme sulla stessa riga con il Mantenere insiemeuna o più parolecomando

\mbox〈testo〉

che fa in modo che il suo argomento sia mantenuto insieme in qualun-que caso.

Il numero di fax del nostrodipartimento è\mbox0547 33 38 98.

L’argomento\mbox\emphnome del filedeve contenere il nomedel file.

Il numero di fax del nostrodipartimento è 0547 33 38 98.L’argomento nome del file deve con-tenere il nome del file.

Page 70: L'arte di scrivere con LaTeX _ Pantieri

48 IL TESTO

5.4.2 Lo spazio tra le parole

Per ottenere capoversi giustificati, LATEX inserisce tra le parole spaziLo spazio in fine diperiodo di dimensione variabile. Alla fine di un periodo, inserisce uno spa-

zio leggermente maggiore, perché questo rende il testo più leggibile.LATEX presuppone che i periodi si chiudano con un punto, un puntointerrogativo, o un punto esclamativo. Se un punto segue una lette-ra maiuscola non viene interpretato come conclusione di un periodo,perché normalmente un punto che viene dopo una lettera maiuscolasi trova nelle abbreviazioni.

Ogni eccezione a queste regole generali deve essere specificata dal-Lo spazio insecabilel’autore. Il comando \ prima di uno spazio produce uno spazio cheignora l’interpunzione. Un carattere tilde ~ produce uno spazio cheignora l’interpunzione e inoltre impedisce un’interruzione di riga. Siconfronti:

Hai letto le dispense delprof.~Beccari? \\Hai letto le dispense delprof. Beccari?

Hai letto le dispense del prof. Bec-cari?Hai letto le dispense del prof.Beccari?

Il concetto è spiegato nelparagrafo~\refsec:par. \\Il concetto è spiegato nelparagrafo \refsec:par.

Il concetto è spiegato nel paragra-fo 5.4.Il concetto è spiegato nel paragrafo5.4.

Per avere una spaziatura corretta ed evitare che una riga finisca con unpunto o inizi con un numero, si usa lo spazio insecabile: le scritturecorrette sono prof.~Beccari e paragrafo~\refsec:par.

Il comando \@ davanti a un punto specifica che quel punto concludeuna 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

5.4.3 Il pacchetto microtype

Si consiglia di caricare il pacchetto microtype (richiede pdfLATEX),Microtipografia

\usepackagemicrotype

che migliora il riempimento delle righe abilitando:

• l’espansione dei font, ovvero espandendo i caratteri secondo l’asseorizzontale, per ottenere un riempimento ottimale della riga;

• la protrusione dei caratteri, ovvero permettendo che certi caratterisporgano leggermente a fine riga (tipicamente segni di punteg-giatura e trattini).

4 Lo spazio aggiuntivo dopo un punto può essere disabilitato servendosi del comando\frenchspacing, che dice a LATEX di non inserire dopo un punto più spazio di quanto siainserito dopo ogni normale carattere. Questa è la regola nella tipografia francese. Se siusa \frenchspacing, il comando \@ non è più necessario.

Page 71: L'arte di scrivere con LaTeX _ Pantieri

5.5 LE PROPORZIONI DI PAGINA 49

5.4.4 Il rientro sulla prima riga

Per attivare il rientro sulla prima riga di ogni sezione (capitolo, Il pacchettoindentfirstparagrafo, sottoparagrafo, . . . ), rispettando una consuetudine spes-

so seguita nei documenti italiani, è necessario caricare il pacchettoindentfirst,

\usepackageindentfirst

in quanto la convenzione anglosassone (predefinita su LATEX) non loprevede.

5.5 LE PROPORZIONI DI PAGINA5.5.1 Il tormentone dei margini

In tipografia, i margini di pagina hanno, fra l’altro, il compito di deli- I margini esternidelle classi standardsono più grandi diquelli interni perottime ragioni.

mitare il corpo del testo, in modo che per il lettore sia facile da vedere ecomodo da maneggiare, lasciando spazio nella pagina per appoggiarei pollici [Bringhurst, 1992, p. 172]: questa è la ragione principale, consi-derato anche il fatto che al lettore i margini interni appaiono duplicatiin quanto adiacenti, per cui i margini esterni predefiniti delle classistandard a doppia facciata sono più grandi di quelli interni [Wilson,2004, p. 9].

Usando le classi standard di LATEX, senza pacchetti particolari o co-mandi che modificano le proporzioni di pagina, la maggior parte degliutenti europei, che stampa su carta in formato A4, trova che i margi-ni impostati da LATEX siano “troppo ampi” e che in generale il foglionon sia “sufficientemente ben riempito”. Prima di buttarsi nella frene-sia dell’«allarghiamo un po’ questa strettissima pagina» è però beneriflettere.

Uno dei punti di forza di LATEX è che consente di disinteressarsi com-pletamente delle questioni tipografiche, per dar modo all’autore di con-centrarsi unicamente sulla struttura e sui contenuti del proprio docu-mento. Questo fatto dovrebbe sempre essere tenuto presente: usandouno stile scritto da altri l’utente accetta per buone tutte le impostazionitipografiche scelte per lui dall’autore dello stile e non è più tenuto astudiare tipografia per mettere a punto l’aspetto delle proprie pubbli-cazioni. Modificare i margini predefiniti, di conseguenza, comportal’obbligo di studiare un (bel) po’ di tipografia per ottenere risultatiaccettabili.

L’esperienza mostra che leggere diventa più difficile se ci sono troppi La regola diBringhurstcaratteri per riga: ciò dipende dal fatto che l’occhio si affatica spostan-

dosi dalla fine di una riga all’inizio della successiva (questo è il motivoper cui i giornali vengono stampati su più colonne). Questa esperienzaè stata codificata da Bringhurst nella celebre regola che considera co-me ottimale il valore di circa 66 caratteri per riga, contando anche glispazi, indipendentemente dal font usato [Pantieri, 2008a, p. 21]. Comeampiezza media di un carattere viene assunto il rapporto tra la lun-ghezza dell’alfabeto latino minuscolo “abcdefghijklmnopqrstuvwxyz”ed il numero di lettere che lo compongono (26).

Page 72: L'arte di scrivere con LaTeX _ Pantieri

50 IL TESTO

Bisogna tener conto del fatto che la lunghezza di riga adottata daLATEX, di suo, è già superiore al limite stabilito dalla regola di Bring-hurst per consentire un maggiore riempimento delle pagine in formatoA4, su cui si assume avvenire la stampa (come di norma, in Europa, inambiente universitario o casalingo) [Busdraghi, 2004, p. 5].

Se si usano le classi standard e si desidera comunque avere unaIl pacchetto layaureomaggior copertura della pagina in formato A4 rispetto a quella pre-definita, disinteressandosi al contempo del problema tipografico delladefinizione delle proporzioni di pagina, è consigliabile caricare il pac-chetto layaureo (della cui documentazione si raccomanda la lettura),che mette a disposizione dell’utente dimensioni di pagina pronte perl’uso, fornendo anche, con la chiave binding, un modo semplice perimpostare lo spazio destinato alla rilegatura:

\usepackage[binding=5mm]layaureo

Il pacchetto layaureo è di facile uso, ma è anche “rigido”, nel sen-Il pacchetto geometryso che lascia all’utente una scarsa possibilità di personalizzare le di-mensioni di pagina. Se un utente necessita di proporzioni di paginadifferenti da quelle di layaureo, per esempio perché è obbligato a se-guire delle indicazioni imposte dalla sua università, è possibile usareil pacchetto geometry che è completamente configurabile.

Se, per esempio, si ha l’esigenza di comporre un documento in for-mato 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, la-sciando uno spazio per la rilegatura pari a 5 mm, è sufficiente scriverenel preambolo:

\usepackage[a4paper,top=3cm,bottom=3cm,left=3.5cm,right=3.5cm,%bindingoffset=5mm]geometry

Nella definizione dei margini di pagina, la modifica di comandi in-terni di LATEX quali \textwidth, \oddsidemargin, . . . è invece sempresconsigliabile per molte ragioni [Fairbairns, 2007; Trettin e Zannarini,2005].

Nel caso che siano necessari degli interventi locali a singole pagine,Il pacchetto chngpageè possibile usare il pacchetto chngpage.

Per rilegare un libro o una tesi può talvolta essere conveniente indi-Il pacchetto cropcare sulle pagine dove tagliare il foglio; questo può essere realizzatoagevolmente usando in coppia i pacchetti geometry e crop.

5.5.2 L’interlinea e il riempimento della pagina

L’interlinea

L’interlinea predefinita di LATEX garantisce un risultato tipograficoSpesso i regolamentidi facoltà impongono

un’interlineadifferente da uno.

ottimale e non andrebbe modificata senza una ragione precisa. Tutta-via, a volte, l’editore o i regolamenti di facoltà impongono all’autoreun’interlinea differente da uno (predefinita su LATEX). Per modificarel’interlinea del documento è consigliabile caricare il pacchetto setspa-ce. Tale pacchetto fornisce tre interlinee predefinite richiamate con icomandi \singlespacing (interlinea singola), \onehalfspacing (inter-linea 1,5) e \doublespacing (interlinea doppia). Se è necessaria un’in-terlinea differente, è sufficiente utilizzare il comando standard di LATEX

Page 73: L'arte di scrivere con LaTeX _ Pantieri

5.6 IL SEZIONAMENTO DEL DOCUMENTO 51

Tabella 5: I comandi di sezionamento del documento.

\part \subsubsection

\chapter \paragraph

\section \subparagraph

\subsection

\linespread〈fattore di scala〉: tra parentesi graffe va il numero cherappresenta il fattore di scala per l’avanzamento di riga. In alternativasi può usare l’ambiente

\beginspacing〈fattore di scala〉〈. . .〉\endspacing

messo a disposizione dal pacchetto setspace.

Il riempimento della pagina

In mancanza di istruzioni specifiche, LATEX cerca di coprire intera-mente l’altezza della pagina e, ove necessario, inserisce degli spazi ag-giuntivi tra i capoversi, oppure dilata gli spazi tra le voci degli elenchi,e così via.5

5.6 IL SEZIONAMENTO DEL DOCUMENTOStrutturare un documento (suddividerlo in parti, capitoli, paragrafi, Suddividere un

documento in parti,capitoli, paragrafi,sottoparagrafi, . . .

sottoparagrafi, . . . ) è molto facile da realizzare con LATEX. A tal fine,è necessario usare i comandi della tabella 5, che prendono come ar-gomento il relativo titolo (spetta all’autore usarli nell’ordine corretto).Il comando \chapter è disponibile nelle classi report e book, ma nonnella classe article, che non ha capitoli.

Dal momento che la classe article non ha capitoli, è molto sempliceraggruppare degli articoli come capitoli di un libro.

La spaziatura tra unità di sezionamento, la numerazione e il corpousato nei titoli sono impostati automaticamente da LATEX.

Appendici

Il comando \appendix non richiede alcun argomento. Cambia sem-plicemente la numerazione dei capitoli in lettere (per la classe articlecambia la numerazione dei paragrafi).

5.6.1 Materiale iniziale, principale e finale

Oltre ai comandi di sezionamento appena illustrati, la classe bookprevede tre dichiarazioni (\frontmatter, \mainmatter e \backmatter)

5 Se si vuole disattivare questa impostazione ed avere dello spazio bianco a piè di pa-gina quando non si riesce a coprirla tutta (scelta peraltro sconsigliabile), è sufficienteaggiungere nel preambolo la dichiarazione \raggedbottom.

Page 74: L'arte di scrivere con LaTeX _ Pantieri

52 IL TESTO

che controllano il formato del numero di pagina e la numerazione deicapitoli.

Nel materiale iniziale (frontmatter) le pagine sono numerate con inumeri romani minuscoli (i, ii, iii, . . . ) ed i capitoli non sono numerati(come se si usasse il comando asteriscato \chapter*). Nel materialeprincipale (mainmatter) le pagine sono numerate con numeri arabi (lanumerazione riparte da 1) e i capitoli sono numerati con numeri arabi.Nel materiale finale (backmatter) le pagine sono numerate come nelmateriale principale (la numerazione prosegue da quella del materialeprincipale), ma i capitoli non sono numerati.

Sezioni di una tesi di laurea

L’organizzazione 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 (ilsimbolo * contraddistingue le sezioni facoltative, mentre ° indica chele sezioni non devono essere presenti nell’indice).

• Il frontespizio°

• La dedica*°

• Il sommario*°

• I ringraziamenti*°

• Gli indici°

• Gli acronimi e i glossari*

• La prefazione*

Materiale iniziale

• I capitoli interni

• Le appendici*

Materiale principale

• La bibliografia

• L’indice analitico°

Materiale finale

5.6.2 L’indice generale

Il comando

\tableofcontents

produce l’indice nel punto in cui è inserito. Per ottenere l’indice c’èbisogno di due compilazioni successive: la prima scrive il contenutodell’indice nel file .toc (table of contents) e la seconda lo include neldocumento.

Page 75: L'arte di scrivere con LaTeX _ Pantieri

5.6 IL SEZIONAMENTO DEL DOCUMENTO 53

Varianti asterisco

Di tutti i comandi di sezionamento elencati esiste anche una variante“asterisco”. La versione asterisco di un comando è costituita da unasterisco * aggiunto alla fine del comando. La variante asterisco deicomandi di sezionamento genera titoli che non sono numerati e noncompaiono nell’indice.

Il titolo precedente, per esempio, è stato ottenuto con il comando

\subsection*Varianti asterisco

Se si desidera far apparire il titolo nell’indice, si usa il comando: Il comando\addcontentsline

\addcontentslinetoc〈livello〉〈titolo〉

dove 〈livello〉 è il nome del livello di sezionamento (che può essere part,chapter, section, subsection o subsubsection) e 〈titolo〉 è quanto vie-ne scritto nell’indice. Per esempio, per includere il titolo di questasezione nell’indice si scrive:

\addcontentslinetocsubsectionVarianti asterisco

Se si sta scrivendo un libro, una tesi o una relazione e si desidera Inserire capitoli nonnumeratiinserire un capitolo non numerato, come ad esempio una prefazione o

dei ringraziamenti (mentre è consigliabile numerare normalmente l’e-ventuale introduzione, che è un capitolo come gli altri), è decisamentepreferibile che nei capitoli non numerati non vi sia alcuna testatina. Sesi usano le classi standard, a tal fine è sufficiente impostare per essi lostile di pagina plain (vedi il paragrafo 4.5 a pagina 34). Per esempio:

\chapter*Prefazione\pagestyleplain...

\chapterIntroduzione\pagestyleheadings...

Se si desiderano comunque le testatine nei capitoli non numerati, va \markbothtenuto presente che nelle classi standard il comando \chapter* richie-de che i contenuti delle testatine ottenute con lo stile headings venganoforniti manualmente. A tal fine si usa il comando \markboth:

\markboth\MakeUppercase〈testatina di sinistra〉%\MakeUppercase〈testatina di destra〉

Per esempio:

\chapter*Prefazione\markboth\MakeUppercasePrefazione\MakeUppercasePrefazione

Questo problema non si presenta se i capitoli non numerati vengonoinseriti usando l’apposita dichiarazione \frontmatter, messa a dispo-sizione dalla classe book (i capitoli non numerati vanno inseriti conil comando \chapter, senza asterisco, dopo \frontmatter e prima di\mainmatter), oppure se si usano le classi AMS.

Page 76: L'arte di scrivere con LaTeX _ Pantieri

54 IL TESTO

Specificare le voci per l’indice

Normalmente i titoli appaiono nell’indice esattamente come sononel testo. Se si desidera evitare ciò (per esempio perché un titolo ètroppo lungo per trovarvi posto), si può specificare la voce per l’indicecome parametro opzionale prima del vero titolo.

\chapter[Leggilo! È emozionante!]Questo è un titolo lunghissimoe particolarmente noioso

5.6.3 I miniindici

Quando i capitoli hanno una struttura particolarmente complessa,Il pacchetto minitocpuò essere conveniente riportare nella pagina iniziale l’indice del capi-tolo. Questi miniindici possono essere prodotti automaticamente conil pacchetto minitoc:

\usepackage[tight,italian]minitoc

L’opzione tight permette di stringere gli spazi tra le voci dei mi-niindici. Come specificato nella documentazione, devono essere pre-senti il comando \dominitoc prima di \tableofcontents ed i coman-di \minitoc\mtcskip subito dopo i vari \chapter. (Se il proprio do-cumento contiene capitoli non numerati, introdotti con \chapter*, iminiindici appaiono nel capitolo sbagliato. Per rimediare è sufficienteaggiungere \adjustmtc alla fine di ogni capitolo non numerato.)

5.7 CARATTERI SPECIALI E SIMBOLI5.7.1 Virgolette, tratti e punti ellittici

Virgolette

In tipografia esistono tre tipi di virgolette: le basse (« », dette anche«francesi», «caporali» o «sergenti»), le alte (“ ” , dette anche “inglesi”) egli apici (‘ ’).

In LATEX, tutti e tre i tipi di virgolette possono essere inseriti diretta-mente nel sorgente, purché si usi il pacchetto inputenc (con la codificaappropriata).

Per inserire le virgolette alte non bisogna usare il carattere " comePer inserire levirgolette bisognausare gli appositi

simboli.

invece si farebbe su una macchina per scrivere (che impiega lo stessocarattere per le virgolette di apertura e di chiusura), ma si devonousare gli appositi simboli “ ”. In alternativa, si possono scrivere due ‘(il paragrafo 4.1.2 a pagina 22 spiega come farlo con la tastiera italiana)per le virgolette aperte e due ’ (due normali apostrofi nella nostratastiera) per le virgolette chiuse. Ciò vale anche per inserire gli apici,ovviamente scrivendo solo una volta i caratteri ‘ e ’.

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

La Delta di Dirac è una‘‘funzione impropria’’.

La Delta di Dirac è una “funzioneimpropria”.

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

1

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

La Delta di Dirac è una‘‘funzione impropria’’.

La Delta di Dirac è una “funzioneimpropria”.

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

1

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

La Delta di Dirac è una‘‘funzione impropria’’.

La Delta di Dirac è una “funzioneimpropria”.

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

1

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

La Delta di Dirac è una‘‘funzione impropria’’.

La Delta di Dirac è una “funzioneimpropria”.

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

1

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

La Delta di Dirac è una‘‘funzione impropria’’.

La Delta di Dirac è una “funzioneimpropria”.

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

1

Page 77: L'arte di scrivere con LaTeX _ Pantieri

5.7 CARATTERI SPECIALI E SIMBOLI 55

Se si usa l’opzione italian di babel le virgolette alte aperte possonoanche essere inserite con "" (ovvero due volte le normali virgolettenella tastiera italiana), mentre si può scrivere "< per ottenere i caporaliaperti e "> per i caporali chiusi.6

Tratti

In LATEX, si distinguono quattro tipi di tratto. Tre di questi si ottengo-no con un diverso numero di trattini consecutivi. Il quarto è il segnomatematico meno:

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

Stratford-on-Avon, e-mailpag. 13–67

sì — oppure no?0, 1 e −1

I loro nomi sono: “-” trattino breve (hyphen), “–” trattino medio (en-dash), “—” trattino lungo (em-dash) e “−” meno.

• Il trattino breve si si usa per separare parole (per esempio neicomposti) o cifre (come nell’indicazione delle pagine di una cita-zione).

• Il trattino medio si usa per separare numeri o cifre.

• Il trattino lungo può introdurre un discorso diretto (normalmen-te usandolo solo in apertura, dopo i due punti) o per racchiude-re — come in questo caso — un inciso.

• Un quarto tipo di tratto può essere considerato il segno “meno”dell’operazione aritmetica, che si ottiene con un normale trattinobreve 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 caratterioccupano solo un piccolo spazio e sono posti molto vicino alla letterache li precede. Quindi non si possono inserire dei punti di sospensionebattendo semplicemente tre punti, perché la spaziatura sarebbe errata.Va usato l’apposito 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 scri- Omissisvere il segno di omissione [. . .]. A tal fine, è opportuno definire nelpreambolo un apposito comando \omissis

\newcommand\omissis[\ldots\negthinspace]

e usarlo sempre (ricordando che gli spazi dopo i comandi come questosono ignorati; se occorre uno spazio, bisogna scrivere \omissis ).

6 Le virgolette di questo paragrafo sono composte usando la famiglia di font ComputerModern e non con i Palatino e i Bera Mono, usati nel resto del documento, perché inquesti ultimi font le virgolette aperta e chiusa sono rese con caratteri abbastanza simili,cosa che potrebbe confondere il lettore.

Page 78: L'arte di scrivere con LaTeX _ Pantieri

56 IL TESTO

5.7.2 Gli indirizzi Internet e i riferimenti ipertestuali

Per scrivere un indirizzo Internet è utile il pacchetto url (se si usaScrivere un indirizzoInternet hyperref, questo pacchetto è caricato automaticamente):

\urlhttp://profs.sci.univr.%it/~gregorio/

http://profs.sci.univr.it/~gregorio/

Per abilitare i riferimenti ipertestuali all’interno del documento siIl pacchetto hyperrefusa il pacchetto hyperref (di regola, va caricato per ultimo):

\usepackagehyperref

Per sfruttare appieno le potenzialità del pacchetto, è necessario com-Con hyperref vausato pdfLATEX. pilare il documento con pdfLATEX (vedi il paragrafo 3.7 a pagina 17).

Il pacchetto hyperref ha alcune opzioni che consentono di perso-nalizzarne il comportamento. Le opzioni possono essere date comeparametro opzionale del comando \usepackage,

\usepackage[〈chiave〉=〈valore〉,〈. . .〉]hyperref

oppure in una linea di codice a sé stante, come argomento del coman-do \hypersetup:

\hypersetup〈chiave〉=〈valore〉,〈. . .〉

Le opzioni principali sono le seguenti:Le opzioni di hyperref

• bookmarks=true, bookmarks=false mostra o nasconde la barradei segnalibri, rispettivamente (il valore predefinito è true).

• unicode=true, unicode=false permette di usare caratteri di lin-gue non latine (il valore predefinito è false).

• pdftoolbar=true, pdftoolbar=false mostra o nasconde la barradegli strumenti (il valore predefinito è true).

• pdfmenubar=true, pdfmenubar=false mostra o nasconde la barradei menu (il valore predefinito è true).

• pdffitwindow=true, pdffitwindow=false regola l’ingrandimen-to iniziale del pdf (il valore predefinito è true).

• pdftitle=〈titolo〉 definisce il titolo che viene mostrato nella fine-stra delle informazioni del documento, nel programma usato pervisualizzare il pdf.

• pdfauthor=〈autore〉 imposta il nome dell’autore del pdf.

• pdfnewwindow=true, pdfnewwindow=false stabilisce se aprire unanuova finestra quando un collegamento conduce all’esterno deldocumento corrente (il valore predefinito è true).

• colorlinks=true, colorlinks=false circonda i collegamenti conriquadri colorati (false, predefinito) o colora il testo dei collega-menti (true). I colori dei collegamenti possono essere configuratiusando le seguenti opzioni:

Page 79: L'arte di scrivere con LaTeX _ Pantieri

5.7 CARATTERI SPECIALI E SIMBOLI 57

– linkcolor=〈colore〉 imposta il colore dei collegamenti inter-ni, come sezioni e pagine (il valore predefinito è red);

– citecolor=〈colore〉 definisce il colore dei collegamenti ai ri-ferimenti bibliografici (il valore predefinito è green);

– filecolor=〈colore〉 determina il colore dei collegamenti afile (il valore predefinito è magenta);

– urlcolor=〈colore〉 stabilisce il colore dei collegamenti a sitiWeb (il valore predefinito è cyan).

Per esempio, per avere i segnalibri e i collegamenti colorati è suffi-ciente scrivere

\usepackage[bookmarks,colorlinks]hyperref

(i valori =true possono essere omessi).Se si desidera semplicemente fornire l’indicazione dell’autore e del

titolo del documento (mostrata nella finestra delle informazioni del do-cumento, nel programma usato per visualizzare il pdf), basta scriverequalcosa come

\usepackage[pdfauthor=Lorenzo Pantieri,%pdftitle=L’arte di scrivere con LaTeX]hyperref

Quando un pdf è destinato alla stampa, è sconsigliabile far uso deicollegamenti colorati, dal momento che nel documento finale appaionoin grigio, rendendone difficoltosa la lettura. Si possono usare i riquadricolorati, che non vengono stampati,

\usepackagehyperref\hypersetupcolorlinks=false

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

\usepackagehyperref\hypersetupcolorlinks,%

citecolor=black,%filecolor=black,%linkcolor=black,%urlcolor=black

Oltre ai collegamenti automatici per i riferimenti incrociati, è possi- Collegamenti a sitiWebbile realizzare collegamenti espliciti usando

\href〈indirizzo Internet〉〈testo del collegamento〉

Per esempio:

Visita il sito del\hrefhttp://www.guit.sssup.%

it/\GuIT*.

Visita il sito del guIt.

Un clic sulla parola “guIt” conduce al sito del guIt.Se la destinazione del collegamento non è un sito ma un file locale, Collegamenti a file

esternisi usa il comando \href:

Il documento completo è\hrefmanuale.pdfqui.

Il documento completo è qui.

Page 80: L'arte di scrivere con LaTeX _ Pantieri

58 IL TESTO

Tabella 6: Loghi particolari (il logo AMS richiede il pacchetto amsmath; i loghiMETAFONT e METAPOST richiedono il pacchetto mflogo; i loghiguIt, guIt e ArsTEXnica richiedono il pacchetto guit).

Comando Risultato Descrizione

\TeX TEX Il “motore” di LATEX

\LaTeX LATEX Il nome del gioco

\LaTeXe LATEX 2ε L’attuale versione di LATEX

\AmS AMS American Mathematical Society

\MF METAFONT Programma di Knuth per disegnare font

\MP METAPOST Strumento per generare grafici con LATEX

\GuIT, \GuIT* guIt, guIt Gruppo Utilizzatori Italiani di TEX e LATEX

\Ars ArsTEXnica La rivista del guIt

Un clic sulla parola “qui” aprirà il file manuale.pdf (il percorso del fileè relativo alla posizione del documento corrente).

Per realizzare un collegamento ad un indirizzo di posta elettronica,@ conviene definire nel preambolo un apposito comando \mail,

\newcommand\mail[1]\hrefmailto:#1\texttt#1

da usare come segue:

\mailsit6113@iperbole.%bologna.it

[email protected]

I segnalibri

Il pacchetto hyperref con l’opzione bookmarks genera automatica-mente i segnalibri relativi alle voci (capitoli, paragrafi, sottoparagra-fi, . . . ) che compaiono nell’indice generale. Ciò comprende anche le vo-ci inserite manualmente nell’indice con il comando \addcontentsline.

Per aggiungere un segnalibro che non corrisponde ad una voce pre-Aggiungere unsegnalibro sente nell’indice generale, si usa il comando

\pdfbookmark[〈livello〉]〈testo del segnalibro〉〈etichetta〉

Il 〈livello〉 è un numero intero che indica il livello di sezionamento (ca-pitolo, paragrafo, . . . ) cui il segnalibro verrà posizionato, nella relativabarra. Nelle classi book o report questo numero vale −1 per le parti,0 per i capitoli, 1 per i paragrafi, e così via; nella classe article vale 0per le parti, 1 per i paragrafi, 2 per i sottoparagrafi, e così via. Il 〈testodel segnalibro〉 è il testo del segnalibro vero e proprio. L’〈etichetta〉 per-mette di riferirsi al segnalibro all’interno del documento: deve essereunica. Un clic su un segnalibro definito con \pdfbookmark conduce alpunto esatto in cui si trova il comando. Il segnalibro viene aggiunto,nella barra dei segnalibri, nella posizione in cui si trova il comando, allivello di sezionamento specificato. Per esempio, in questo documentoc’è un segnalibro “Sommario”, così definito:

\pdfbookmark[1]Sommariosommario

Page 81: L'arte di scrivere con LaTeX _ Pantieri

5.7 CARATTERI SPECIALI E SIMBOLI 59

Tabella 7: Accenti e caratteri speciali.

ò ò ó \’o ô \^o õ \~o

o \=o o \.o ö \"o ç \cc

o \uo o \vo o \Ho o \co

o. \do o¯

\bo oo \too

œ \oe Œ \OE æ \ae Æ \AE

å \aa Å \AA

ø \o Ø \O ł \l Ł \L

ı \i \j ¡ !‘ ¿ ?‘

Dal momento che i segnalibri sono “semplice testo”, per essi sono Possibili problemicon i segnalibridisponibili molti meno caratteri che per il contenuto di un documen-

to scritto con LATEX. Si può aggirare questa difficoltà sostituendo neisegnalibri il testo che dà problemi:

\texorpdfstring〈testo del documento〉〈testo del segnalibro〉

Per esempio,

\sectionLa funzione \texorpdfstring$\Gamma$Gamma

trasforma \sectionLa funzione $\Gamma$ in “La funzione Gamma”nell’area del segnalibro.

Se si scrive il documento con la codifica Unicode e si usa l’opzioneunicode per il pacchetto hyperref, è possibile usare i caratteri Unicodenei segnalibri. Ciò consente una maggiore scelta di caratteri quando siusa \texorpdfstring.

5.7.3 Loghi, accenti e caratteri speciali

Loghi

La tabella 6 a fronte riporta alcuni semplici comandi per comporreparticolari loghi.

Accenti e caratteri speciali

Con LATEX è consentito l’uso degli accenti e dei caratteri speciali usatiin molte lingue. La tabella 7 mostra, fra l’altro, ogni sorta di accentoapplicato alla lettera “o”. Naturalmente, i comandi funzionano anchecon le altre lettere.

H\^otel, na\"if, élève,Sch\"onbrunner, !‘Se\~norita!.

Hôtel, naïf, élève, Schönbrunner,¡Señorita!.

Si consiglia di racchiudere i caratteri speciali tra parentesi graffe:

Sm\orrebr\od,Schlo\ss, Stra\sse.

Smørrebrød, Schloß, Straße.

Page 82: L'arte di scrivere con LaTeX _ Pantieri

60 IL TESTO

Il segno dell’euro (e) si ottiene con il comando \euro, messo ae disposizione dal pacchetto eurosym.

5.8 IL TITOLO DEL DOCUMENTOIl comandoIl comando

\maketitle\maketitle

crea il titolo del documento. Gli elementi che costituiscono il titolodevono essere definiti dai comandi

\title〈titolo〉\author〈autore〉

e, opzionalmente,

\date〈data〉

prima di chiamare \maketitle. Come argomento di \author sono am-messi più nomi separati dal comando \and. La data predefinita è quel-la della compilazione; il comando \date omette la data dal titolo.Esiste anche il comando

\thanks〈ringraziamenti〉

che permette di inserire i 〈ringraziamenti〉.Nelle classi standard (e in quelle KOMA-Script), il comando \thanks,

che va dato dentro l’argomento di \author, \title o \date, funzionacome il comando per inserire delle note a piè di pagina, solo che ilriferimento di queste note non è né un numero né una lettera, maun simbolo tratto da un elenco che contiene l’asterisco, la spada, laspada doppia, eccetera. Collegato ai nomi degli autori il comando per-mette, ad esempio, di specificarne l’istituzione di appartenenza, men-tre dato nel titolo consente, fra l’altro, di associargli il nome dell’entefinanziatore della ricerca.

\authorLorenzo Pantieri\thanksRingrazio i membri del \GuIT.

(Nelle classi AMS il comando \thanks va invece dato in una riga a séstante, fuori da \author, \title e \date.)

Nella figura 5 a pagina 26 si può trovare un esempio di alcuni deicomandi sopra citati.

Il titolo generato dal comando \maketitle, bisogna ammetterlo, èIl pacchettofrontespizio piuttosto spartano. Se si sta scrivendo una tesi di laurea o di dottorato,

per comporre il frontespizio è consigliabile usare il pacchetto fronte-spizio (vedi la figura 7 nella pagina successiva), di E. Gregorio, che èaccompagnato da un’esauriente documentazione (in italiano). Il pac-chetto fornisce comandi che permettono di specificare l’università e ladivisione (facoltà o dipartimento) presso cui si discute la tesi, il candi-dato, l’anno accademico, i relatori e i correlatori. Sono inoltre previstediverse opzioni, fra cui la possibilità di comporre il frontespizio in ca-ratteri senza grazie e di inserire il logo dell’università o un’immaginein filigrana.

Page 83: L'arte di scrivere con LaTeX _ Pantieri

5.9 I RIFERIMENTI INCROCIATI 61

Universita degli Studi di Paperopoli

FACOLTA DI PENNUTOLOGIA

Corso di Laurea Magistrale in Belle Lettere

Tesi di laurea magistrale

La mia tesi:una lunga serie di risultati

di!cilissimi e complicatissimi

Alcune considerazioni mutevoli

Candidato:Paperino Paolino

Matricola PP999999

Relatori:Giovanni EpiscopoPippo Cluvio

Correlatori:Ugo FrogioUbaldo Kutuzu

Anno Accademico 2030–2031

Figura 7: Un esempio d’uso del pacchetto frontespizio.

In alternativa, è possibile affidarsi all’eccellente suite ClassicThesis, Il frontespizio diClassicThesische contiene un modello di tesi, completo di frontespizio, pronto per

l’uso [Pantieri, 2008a].Altrimenti, se nessuna delle precedenti soluzioni soddisfa le proprie L’ambiente titlepage

esigenze, è possibile creare un frontespizio personalizzato grazie al-l’ambiente titlepage (deve trovarsi subito dopo \begindocument),all’interno del quale si è completamente padroni dell’impaginazione.

5.9 I RIFERIMENTI INCROCIATINei documenti si trovano spesso dei riferimenti incrociati a sezioni, Etichette e

riferimentifigure, tabelle, teoremi e particolari porzioni di testo. LATEX fornisce iseguenti comandi per i riferimenti incrociati

\label〈etichetta〉\ref〈etichetta〉\pageref〈etichetta〉

dove 〈etichetta〉 è un identificatore scelto dall’utente. Il formato dell’e-tichetta è libero, ma di solito si usa un’abbreviazione come sec (per lesezioni), fig (per le figure), tab (per le tabelle), thm (per i teoremi), . . .seguita da : e da una parola chiave che caratterizza l’oggetto cui cisi riferisce. Le etichette devono essere uniche nel documento. LATEXsostituisce a \ref il numero della sezione, figura, tabella o teoremadopo il quale si trova il corrispondente comando \label. Il coman-do \pageref stampa il numero di pagina del corrispondente comando\label (si noti che questi comandi non sanno a che cosa fanno riferi-mento: il comando \label si limita a registrare l’ultimo numero gene-rato automaticamente). Proprio come per l’indice, c’è bisogno di due

Page 84: L'arte di scrivere con LaTeX _ Pantieri

62 IL TESTO

compilazioni successive. Per esempio, se si identifica questo paragrafocon

\sectionRiferimenti incrociati\labelsec:ref

è possibile riferirsi ad esso con

Ecco un riferimento a questoparagrafo: ‘‘vedi ilparagrafo~\refsec:ref’’.

Ecco un riferimento a questoparagrafo: “vedi il paragrafo 5.9”.

In molti casi, specialmente quando ci sono una o più pagine tra ilRiferimenti completidella pagina: il

pacchetto variorefriferimento e l’oggetto, è utile avere un riferimento completo della pa-gina. A tal fine è opportuno usare il pacchetto varioref che introduce ilcomando \vref, da usarsi nello stesso modo di \ref, ma che aggiungeun riferimento addizionale alla pagina, come “nella pagina preceden-te/successiva” o “a pagina 23” a seconda di dove sia posizionata lacorrispondente \label.

Vedi ilparagrafo~\vrefsec:titolo.

Vedi il paragrafo 5.8 a pagina 60.

5.10 NOTE A MARGINE E A PIÈ DI PAGINANote a margine

Una nota a margine si ottiene molto semplicemente con il comandoLe note a margine,fra l’altro, danno untocco di vitalità alla

pagina.\marginpar〈nota a margine〉

Nei documenti fronte-retro, le note sono poste nel margine destro nellepagine dispari e nel margine sinistro nelle pagine pari. Nei documentisolo-fronte, le note sono sempre poste nel margine destro. (In alcunesituazioni può accadere che una nota appaia nel margine sbagliato:per rimediare a questo piccolo difetto di LATEX è sufficiente caricare ilpacchetto mparhack.)

Note a piè di pagina

Il comando

\footnote〈nota a piè di pagina〉

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

Le note a piè di pagina sonol’emblema dellameticolosità.\footnoteQuestone è un esempio.

Le note a piè di pagina sonol’emblema della meticolosità.a

a Questo ne è un esempio.

Page 85: L'arte di scrivere con LaTeX _ Pantieri

5.11 PAROLE EVIDENZIATE 63

Le note prodotte da LATEX sono di alta qualità. È tuttavia possibile Il pacchetto footmiscmodificarne il formato, qualora lo si ritenga strettamente necessario.A tal fine è utile il pacchetto footmisc, che è accompagnato da unadettagliata documentazione.

5.11 PAROLE EVIDENZIATEQuando si batte a macchina, le parole importanti sono evidenziate

sottolineandole. In tipografia, invece, le parole sono evidenziatestampandole in corsivo. LATEX fornisce il comando

\emph〈testo〉

per evidenziare il 〈testo〉. Ciò che effettivamente il comando fa al suoargomento dipende dal contesto:

\emphSe si evidenziaall’interno di un testoevidenziato, \LaTeX usail \emphfont normaleper evidenziare.

Se si evidenzia all’interno di un testoevidenziato, LATEX usa il font normaleper evidenziare.

È importante osservare la differenza tra i due ruoli logici del corsivo Differenza logica tracorsivo edevidenziato

e dell’evidenziato.

\emphSono qui in\textitdieci minuti.

\textitSono qui in\emphdieci minuti.

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

5.12 AMBIENTIUn generico ambiente si invoca con

\begin〈ambiente〉...\end〈ambiente〉

dove 〈ambiente〉 è il nome dell’ambiente. Gli ambienti possono esse-re chiamati più volte l’uno all’interno dell’altro, purché l’ordine dichiamata venga rispettato.

\begin〈aaa〉...\begin〈bbb〉...\end〈bbb〉...\end〈aaa〉

Di seguito vengono illustrati alcuni ambienti notevoli.

7 Così.

Page 86: L'arte di scrivere con LaTeX _ Pantieri

64 IL TESTO

5.12.1 Elenchi puntati, numerati e descrizioni

Gli ambienti che realizzano elenchi sono usati molto spesso in LATEX.Elenchi puntatiPermettono infatti:

• di “dare respiro” al testo;

• di migliorarne la leggibilità;

• di strutturare le proprie idee.

L’elenco precedente è stato ottenuto con l’ambiente itemize come se-gue:

Gli ambienti che realizzano elenchi permettono:\beginitemize\item di ‘‘dare respiro’’ al testo;\item di migliorarne la leggibilità;\item di strutturare le proprie idee.

\enditemize

Ogni elemento dell’elenco comincia con il comando \item. Si noticome gli elementi all’interno dell’ambiente itemize siano rientrati: inquesto modo il codice sorgente è più leggibile.

L’ambiente enumerate si usa come itemize, ma aggiunge un numeroElenchi numeratiad ogni elemento:

\beginenumerate\item primo elemento;\item secondo elemento;\item terzo elemento.

\endenumerate

1. primo elemento;

2. secondo elemento;

3. terzo elemento.

L’ambiente description si usa per le descrizioni, che sono elenchiDescrizioniin cui il segno distintivo non è né un simbolo né un numero, ma è unaparola o una locuzione di cui si fornisce una descrizione o una spiega-zione. L’ambiente description permette di scegliere il testo che appa-re prima di ogni elemento dell’elenco tramite il parametro “opzionale”(in realtà obbligatorio, in questo caso) del comando \item:

\begindescription\item[itemize] per fare

elenchi puntati;\item[enumerate] per fare

elenchi numerati;\item[description] per fare

elenchi in cui ognielemento comincia conun testo a piacere.

\enddescription

ITEMIZE per fare elenchi puntati;

ENUMERATE per fare elenchi nu-merati;

DESCRIPTION per fare elenchi incui ogni elemento cominciacon un testo a piacere.

Si noti che il testo del parametro “opzionale” di \item è stato messoautomaticamente in evidenza da LATEX (i dettagli tipografici di questoprocesso dipendono dalla classe del documento).

Si possono nidificare gli elenchi, cioè mettere degli elenchi dentroNidificare gli elenchialtri elenchi:

Page 87: L'arte di scrivere con LaTeX _ Pantieri

5.12 AMBIENTI 65

È consigliabile usare gliambienti per gli elenchiperché:\beginenumerate\item sono facili da usare;\item rendono più chiaro il

testo:\beginitemize

\item[-] spaziandolo;\item[-] facilitandone la

lettura;\enditemize\item permettono di

strutturare megliole proprie idee.

\endenumerate

È consigliabile usare gli ambientiper gli elenchi perché:

1. sono facili da usare;

2. rendono più chiaro il testo:- spaziandolo;- facilitandone la lettura;

3. permettono di strutturaremeglio le proprie idee.

Di seguito sono riportate alcune convenzioni tipografiche per gli Convenzionitipografiche per glielenchi

elenchi:

• per gli elenchi semplici (i cui elementi contengono una sola frase)ogni elemento deve terminare con un punto e virgola, trannel’ultimo, che termina con un punto;

• per gli elenchi i cui elementi contengono due o più frasi, ognielemento termina con un punto.

Per personalizzare gli elenchi è disponibile il pacchetto enumitem, Personalizzare glielenchi: il pacchettoenumitem

che è accompagnato da una dettagliata documentazione. Ad esempio,per produrre un elenco senza le spaziature verticali aggiunte dagliambienti predefiniti si usa l’opzione “locale” noitemsep:

Le voci dell’elenco seguentesono prive di spaziatureverticali:\beginitemize[noitemsep]

\item Mane;\item Tekel;\item Fares.

\enditemize

Le voci dell’elenco seguente sonoprive di spaziature verticali:

• Mane;• Tekel;• Fares.

Per produrre un elenco le cui voci non siano rientrate, si usa l’opzionelocale leftmargin=*:

Le voci dell’elenco seguentenon sono rientrate:\beginitemize[leftmargin=*]

\item Mane;\item Tekel;\item Fares.

\enditemize

Le voci dell’elenco seguente nonsono rientrate:

• Mane;

• Tekel;

• Fares.

5.12.2 Centrare e allineare i capoversi

Gli ambienti flushleft e flushright generano capoversi che sonoallineati rispettivamente a sinistra e a destra. L’ambiente center gene-

Page 88: L'arte di scrivere con LaTeX _ Pantieri

66 IL TESTO

ra testo centrato. Se le linee non vengono esplicitamente interrotte dalcomando \\, LATEX andrà a capo automaticamente.

\beginflushleftQuesto testo è allineato a \\sinistra. \LaTeX non cercadi creare righe di ugualelunghezza.\endflushleft

Questo testo è allineato asinistra. LATEX non cerca di crearerighe di uguale lunghezza.

\beginflushrightQuesto testo è allineato a \\destra. \LaTeX non cercadi creare righe di ugualelunghezza.\endflushright

Questo testo è allineato adestra. LATEX non cerca di creare

righe di uguale lunghezza.

\begincenterAl centro \\della Terra.\endcenter

Al centrodella Terra.

La dedica

La dedica di un libro o di una tesi, ove presente, può assumere le piùsvariate forme, a seconda dei gusti dell’autore. Di solito è costituita dauna riga centrata,

\begincenter...\endcenter

o allineata a destra:

\beginflushright...\endflushright

La posizione verticale della dedica nella pagina può essere scelta apiacere e per controllarla può essere conveniente l’uso di una coppia dicomandi \vspace*\stretch〈. . .〉. In questo modo è infatti possibileimpostare il rapporto tra lo spazio che precede la dedica e quello chesegue. Se ad esempio si vuole che lo spazio che segue sia il doppio diquello che precede, è possibile usare i comandi

\null\vspace*\stretch1...\vspace*\stretch2\null

5.12.3 Citazioni e versi

Esistono due tipi di citazioni:

Page 89: L'arte di scrivere con LaTeX _ Pantieri

5.12 AMBIENTI 67

UNA CITAZIONE IN CORPO (o “in linea”) è scritta in linea con il corpodel testo (“incorporata nel testo”), come ad esempio quando si ci-ta il motto kantiano «il cielo stellato sopra di me, la legge moraledentro di me».

UNA CITAZIONE FUORI CORPO (o “in display”) è formata da uno o piùcapoversi staccati dal testo precedente e seguente mediante spazidi ampiezza adeguata.

Le citazioni in corpo vanno inserite fra virgolette del tipo scelto (vedi Citazioni in corpoil paragrafo 5.7 a pagina 54) e devono essere brevi (un paio di frasi almassimo).

Nel caso di citazioni fuori corpo, il corpo dei capoversi citati è di Citazioni fuori corporegola minore del corpo del testo: questo significa, in particolare, chele dimensioni del carattere e l’interlinea devono venire ridotte, ed imargini aumentati adeguatamente.

Dal momento che gli ambienti predefiniti di LATEX rispondono soloparzialmente alle esigenze tipografiche delle citazioni fuori corpo, con-viene definire (nel preambolo) un nuovo ambiente citazione in questomodo:

\newenvironmentcitazione\beginquotation\small\endquotation

che permette di ottenere una citazione come la seguente:

Dal momento che gli ambienti predefiniti di LATEX rispondonosolo parzialmente alle esigenze tipografiche delle citazioni fuoricorpo, conviene definire un nuovo ambiente citazione.

Con l’ambiente così definito è possibile racchiudere citazionifuori corpo tra i comandi \begincitazione e \endcitazione.

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 lalunghezza delle righe è:\begincitazioneNessuna riga dovrebbecontenere più di 66~caratteri.\endcitazioneEcco perché le pagine in\LaTeX hanno marginipredefiniti così larghi,e nei giornali si usanospesso più colonne.

Una regola pratica per la lunghez-za delle righe è:

Nessuna riga dovreb-be contenere più di 66 ca-ratteri.

Ecco perché le pagine in LATEX han-no margini predefiniti così larghi,e nei giornali si usano spesso piùcolonne.

Le intercitazioni, cioè le citazioni dentro un’altra citazione, vanno Intercitazioniinserite fra virgolette di tipo diverso; nel caso di citazioni fuori corpo,il problema ovviamente non sussiste.

Per le poesie è disponibile l’ambiente verse. Nell’ambiente verse: Versi

• i margini sono aumentati come per le citazioni;

Page 90: L'arte di scrivere con LaTeX _ Pantieri

68 IL TESTO

• le linee devono finire con \\ per andare a capo, tranne l’ultimadi ogni strofa;

• le strofe sono separate da linee bianche.

La seguente poesia ‘‘La sera’’è di Fabiano Busdraghi.\beginverseIl sole è già svanito \\dietro le colline scure \\e i chiarori del giorno \\s’avvolgono d’ombra.

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

La seguente poesia “La sera” è diFabiano Busdraghi.

Il sole è già svanitodietro le colline scuree i chiarori del giornos’avvolgono d’ombra.Tutto si assopisce:le tracce di nubiil volo di una rondinei miei ulivi grigi. . .e la lucesi adagia quietae come saggiasulla campagnasilenziosa.

Un pacchetto particolarmente utile per quanto riguarda la scrittu-ra di versi con LATEX è costituito da verse, che è accompagnato daun’esauriente documentazione.

5.12.4 Codici e algoritmi

Se si desidera inserire codici all’interno di un documento, è consi-Il pacchetto listingsgliabile caricare il pacchetto listings, che permette di avere un controllomolto preciso del formato del codice e riconosce un elevato numero dilinguaggi di programmazione. Per esempio, se si desidera inserire uncodice LATEX all’interno di un documento, è sufficiente scrivere

\beginlstlistingNell’ambiente lstlistingi comandi di \LaTeXe i caratteri speciali(\%$_&#^~)non vengono interpretati.\endlstlisting

Nell’ambiente lstlistingi comandi di \LaTeXe i caratteri speciali(\%$_&#^~)non vengono interpretati.

dopo aver scritto nel preambolo

\usepackagelistings\lstsetlanguage=[LaTeX]TeX,%

basicstyle=\small\ttfamily

Il testo racchiuso tra \beginlstlisting e \endlstlisting vienestampato alla lettera, come se fosse battuto a macchina, con tutti glispazi e le interruzioni di riga, senza che LATEX interpreti i comandi e icaratteri speciali.

Page 91: L'arte di scrivere con LaTeX _ Pantieri

5.13 GLI ACRONIMI E I GLOSSARI 69

Per inserire frammenti di codice in linea con il corpo del testo, si usail comando \lstinline!〈testo〉!:

Il logo ‘‘\LaTeX’’ si ottienecon il comando\lstinline!\LaTeX!.

Il logo “LATEX” si ottiene con ilcomando \LaTeX.

Il simbolo ! è solo un esempio di carattere delimitatore. Si può usa-re qualsiasi carattere tranne le lettere o lo spazio. Tutti gli esempipresentati in questo manuale sono realizzati impiegando il pacchettolistings.

L’ambiente lstlisting e il comando \lstinline non possono es-sere usati come argomenti di altri comandi. Per maggiori dettagli sirimanda alla ricca documentazione del pacchetto.

Per l’inserimento di algoritmi sono invece consigliabili i pacchet- Algoritmiti algorithm e algpseudocode: il primo, a differenza del secondo, ge-nera degli oggetti mobili (vedi a questo proposito il paragrafo 6.4 apagina 98).

5.13 GLI ACRONIMI E I GLOSSARITalvolta è opportuno far precedere al testo del documento un glos-

sario, ovvero un elenco degli acronimi, dei termini e delle notazioniusate. Ogni voce di un glossario è formata da un nome accompagnatoda una descrizione (ed eventualmente da un simbolo associato).

Con LATEX, la gestione degli acronimi può essere efficacemente rea- Il pacchetto acronymlizzata con il pacchetto acronym, alla cui documentazione si rinvia illettore; tra le altre cose, tale pacchetto genera automaticamente i riferi-menti ipertestuali tra acronimi nel testo e la loro definizione all’internodell’elenco degli acronimi.

Per gestire la terminologia e le notazioni adottate nel documento è Il pacchettoglossariesutile il pacchetto glossaries, che genera gli elenchi automaticamente

per mezzo del programma MakeIndex.

5.14 SPECIALITÀ

Il tutto è maggiore della sommadelle parti.

AristoteleMetafisica

Le epigrafi

Talvolta si vogliono inserire epigrafi accanto al titolo di un capitolo o Il pacchetto epigraphdi un paragrafo. Per farlo è possibile usare il pacchetto epigraph. Un’e-pigrafe come quella che compare dopo il titolo di questo paragrafo siottiene con il seguente codice:

Page 92: L'arte di scrivere con LaTeX _ Pantieri

70 IL TESTO

\sectionSpecialità\epigraphIl tutto è maggiore della somma delle parti%

Aristotele\\Metafisica

I capolettera

In tipografia si usa talvolta inserire, all’inizio di un capitolo o di unCapoletteraparagrafo, un capolettera, ovvero una lettera di corpo maggiore dellealtre, usata come ornamento al testo.

Come iniziali, si usano tanto lettere comuni quanto, a volte, carat-teri tipografici costruiti appositamente, che si usano quando l’opera èparticolarmente ricercata e finalizzata a una pubblicazione di lusso.

Il pacchetto lettrine consente di usare diversi tipi di capolettera. PerIl pacchetto lettrinefunzionare al meglio, lettrine richiede i font CM-Super (vedi il paragra-fo 5.2 a pagina 42) e il pacchetto type1ec (che rende i font scalabili “apiacimento”), da caricare prima di fontenc con l’opzione T1:

\usepackagetype1ec\usepackage[T1]fontenc\usepackagelettrine

In alternativa, si può ricorrere ai font Latin Modern (vedi il paragra-fo 5.2 a pagina 42):

\usepackagelmodern\usepackage[T1]fontenc\usepackagelettrine

Di seguito è riportato un esempio dell’uso di questo pacchetto.

\lettrineLui non ha maisaputo come Cousin Jerryavesse previsto tutto quel chepoi è successo. Non ha maicapito perché se ne andasse ingiro col passaporto sempre intasca, quasi fosse già prontoa spiccare il grande salto.

Lui non ha mai saputo comeCousin Jerry avesse previsto

tutto quel che poi è successo. Nonha mai capito perché se ne andassein giro col passaporto sempre intasca, quasi fosse già pronto aspiccare il grande salto.

Si notino i caratteri in maiuscoletto che compaiono dopo il capolette-ra: questi sono una consuetudine assai usata, anche se non costituisco-no una regola ferrea. Per ottenere altri tipi di capolettera si rimandaalla documentazione del pacchetto.

Scritture curiose

Il pacchetto shapepar permette la disposizione del testo in formeIl pacchetto shapepar“curiose”, come ad esempio in forma di cuore o romboidale. L’usodelle istruzioni \heartpar e \diamondpar è veramente semplice: dopoognuna di queste istruzioni, il testo comandato ad assumere quelleparticolari forme va racchiuso tra parentesi graffe, secondo il codicequi in sintesi mostrato per una delle due istruzioni.

Page 93: L'arte di scrivere con LaTeX _ Pantieri

5.15 LA REVISIONE FINALE 71

\heartparLui non ha mai saputo come Cousin Jerry\dots

Lui non ha mai sapu-to come Cousin Jerry avesse pre-

visto tutto quel che poi è successo. Nonha mai capito perché se ne andasse in girocol passaporto sempre in tasca, quasi fossegià pronto a spiccare il grande salto. Di unasola cosa è certo, che se gliel’avesse chie-sto, il vecchio Jerry avrebbe richiama-

to in superficie la migliore delle sueespressioni strafottenti, detto una

frase da mezzo adulto, tipo:«Se stavi attento, Erman-

no, capivi tuttoanche tu».♥

♦Lui

non hamai saputo

come Cousin Jer-ry avesse previsto

tutto quel che poi è suc-cesso. Di una sola cosa è cer-

to, che se gliel’avesse chiesto, ilvecchio Jerry avrebbe richiamato in

superficie la migliore delle sueespressioni strafottenti, detto

una frase da mezzo adul-to, tipo: «Se stavi at-

tento, Ermanno,capivi tutto

anchetu».♦

5.15 LA REVISIONE FINALEUna delle caratteristiche fondamentali di LATEX è che permette ai suoi

utenti di concentrarsi sulla struttura logica del contenuto e non sullaforma, gestita automaticamente dal programma.

Tuttavia, al momento attuale, nessun software può risolvere automa-ticamente tutti i problemi tipografici ed evitare di lavorare sulla formadefinitiva del documento, se si desidera un prodotto di alta qualità. Larevisione finale di un lavoro è una fase impegnativa, ma gratificante:risolvere grandi problemi di impaginazione con piccole modifiche èun’arte complicata, ma ricca di soddisfazioni.

In generale, piuttosto che modificare le impostazioni generali di Piccole modifiche altesto sono spessosufficienti perrisolvere grandiproblemi diimpaginazione.

LATEX, è conveniente provare ad effettuare piccole modifiche al testo,che spesso sono sufficienti per risolvere i problemi e permettono diottenere un risultato più elegante.

Supponiamo, per esempio, che l’ultimo paragrafo di un capitolo diun libro sfori di due righe su una pagina a destra. Si avrebbero duepagine consecutive praticamente bianche. Per evitare questo inesteti-smo, è possibile provare a riformulare un paio di capoversi, in mododa accorciarli di una riga ciascuno.

In alternativa, si possono usare alcuni strumenti messi a disposizio- Il comando\loosenessne da LATEX per regolare finemente i risultati, in sede di revisione finale.

Per esempio, si può provare a dare il comando

\looseness=-1

per dire a LATEX di cercare di comporre un capoverso usando una rigain meno della sua lunghezza “naturale” (vanno scelti i capoversi cheabbiano almeno cinque o sei righe e la cui ultima riga sia breve). Seil capoverso è sufficientemente esteso, LATEX è in grado di comporloadeguatamente, accorciandolo di una riga. Il comando \looseness vadato all’inizio del capoverso da modificare, nel modo seguente:

Page 94: L'arte di scrivere con LaTeX _ Pantieri

72 IL TESTO

\dots Qui finisce un capoverso.

\looseness=-1Qui ne comincia un altro, che \LaTeX cercherà di comporre usandouna riga in meno della sua lunghezza ‘‘naturale’’. \dots

Il valore di \looseness è un parametro locale relativo al capoverso incui compare, quindi l’effetto del comando non si propaga.

Se il precedente stratagemma funziona per un paio di capoversi, siottiene l’effetto voluto di “riportare indietro” le due righe di troppo.

Se lo stratagemma non dovesse funzionare, si può usare il comandoIl comando\enlargethispage

\enlargethispage\baselineskip

(va dato fra due capoversi) che allunga di una riga, rispetto al normale,la pagina in cui compare. Dando il comando precedente in una coppiadi pagine affiancate (nei documenti fronte-retro), l’aggiustamento nondà nell’occhio, se il margine inferiore è sufficientemente ampio e senon ci sono note a piè di pagina.

Il comando \enlargethispage è da sconsigliare se si stampa su cartadi bassa grammatura, perché l’aggiustamento si vedrebbe in trasparen-za sfogliando il volume. Su carta di buona qualità il problema non sipone: l’importante è che non si vedano disparità sulla coppia di pagineaffiancate.

In alternativa, è possibile usare la versione asterisco del comando\enlargethispage,

\enlargethispage*\baselineskip

che prima di allungare la pagina di una riga cerca di stringere il piùpossibile gli spazi bianchi verticali al fine di non allungare la pagina,ovvero di allungarla il meno possibile.

I trucchi precedenti si possono usare anche al contrario. Alcuni pro-blemi di impaginazione possono essere risolti allungando qualche capo-verso o accorciando una coppia di pagine affiancate. A tal fine si usanoil 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.Se si adopera il comando \looseness=1 è consigliabile inserire unoAllungare un

capoverso spazio insecabile (~) fra le ultime due parole del capoverso o racchiu-dere l’ultima parola in \mbox: questi accorgimenti servono per evi-tare che l’ultima riga del capoverso “allungato” sia troppo corta (adesempio, che sia costituita soltanto da una breve parola o da una sil-laba), il che produrrebbe un effetto estetico non molto gradevole. Tut-to ciò può funzionare purché il capoverso sia abbastanza lungo, inmodo che LATEX abbia sufficiente spazio di manovra. Un capoversobreve, salvo casi fortunati, non è idoneo per questi trucchi di impagi-nazione: di solito servono almeno una decina di righe ed è necessario

Page 95: L'arte di scrivere con LaTeX _ Pantieri

5.15 LA REVISIONE FINALE 73

che, nella composizione normale, l’ultima riga sia quasi piena. Que-sto capoverso è stato composto con \looseness=1 e ha effettivamen-te una riga in più rispetto alla composizione ottimale che si avrebbesenza quel comando. Va tenuto presente che il trucco non funzio-na sempre e bisogna essere pronti a modificare il testo per ottenerel’effetto desiderato.

Vedove e orfane

In tipografia, si usa chiamare “orfana” una riga solitaria in fondo al- LATEX è programmatoper evitare vedove edorfane, ma a volte ènecessario uninterventodell’utente.

la pagina (tipicamente, la prima riga di un capoverso) e “vedova” unariga solitaria in cima alla pagina seguente (tipicamente, l’ultima rigadi un capoverso). Entrambi questi casi andrebbero evitati, ma le righevedove sono particolarmente gravi, come testimonia la terminologiatedesca: una riga orfana si chiama Schusterjunge (“apprendista ciabat-tino”), mentre una riga vedova Hurenkind (“figlio di p.”). Bisogna farein modo che ci siano almeno due righe di uno stesso capoverso siain cima che in fondo a ogni pagina. LATEX è già programmato per ot-tenere questo effetto, ma a volte può essere necessario un intervento“manuale” dell’utente.

Oltre agli strumenti presentati in questo paragrafo, per eliminare Il comando\pagebreakuna riga “orfana” può essere utile dare il comando \pagebreak prima

del capoverso che dà problemi. Il comando \pagebreak consente di in-terrompere una pagina, lasciando anche (a differenza di \newpage, checomincia semplicemente una nuova pagina) che LATEX cerchi di giusti-ficarla verticalmente. Se c’è abbastanza spazio bianco nella pagina, ilrisultato che si ottiene è generalmente buono.

Page 96: L'arte di scrivere con LaTeX _ Pantieri
Page 97: L'arte di scrivere con LaTeX _ Pantieri

6 T A B E L L E E F I G U R E

INDICE6.1 Le tabelle 75

6.1.1 Regole generali 76

6.1.2 L’ambiente tabular 76

6.1.3 Celle su più colonne 77

6.1.4 Celle su più righe 78

6.1.5 Il pacchetto array 78

6.1.6 Il pacchetto tabularx 80

6.1.7 Allineare i numeri alla virgola 81

6.1.8 Tabelle grandi 82

6.1.9 Note dentro a tabelle 87

6.1.10 Tabelle colorate 88

6.2 Le figure 916.2.1 Immagini vettoriali e bitmap 91

6.2.2 Conversione dei formati 93

6.2.3 Scontornare le immagini 94

6.2.4 L’inclusione delle immagini 94

6.3 Figure e tabelle in testo e fuori testo 966.4 Gli oggetti mobili 98

6.4.1 Gli ambienti table e figure 99

6.4.2 Il controllo degli oggetti mobili 101

6.4.3 Personalizzare le didascalie: il pacchetto caption 103

6.4.4 Affiancare figure o tabelle: il pacchetto subfig 103

6.4.5 Testo che “avvolge” un oggetto: il pacchetto wrapfig 105

6.4.6 Didascalie laterali: il pacchetto sidecap 106

Le tabelle e le figure sono fra gli oggetti che vengono usati più fre-quentemente nella composizione dei documenti. Sono anche fra gliargomenti trattati più estesamente dalle guide. In questo capitolo ven-gono presentati i concetti e gli strumenti fondamentali per comporre egestire tabelle e figure con LATEX.

6.1 LE TABELLELe tabelle sono uno degli oggetti che vengono usati più spesso nei

documenti scientifici. Oltre ai comandi standard di LATEX, esistono nu-merosi pacchetti che permettono di personalizzare le tabelle e di supe-rare le limitazioni dei primi. Questo paragrafo, basato su [Mori, 2006],cui si rimanda per ogni approfondimento, spiega come usare LATEX ei pacchetti disponibili per comporre tabelle, cercando di affrontare gliaspetti principali dell’argomento.

Da qui in avanti diamo per scontato che sia caricato il pacchettobooktabs.

75

Page 98: L'arte di scrivere con LaTeX _ Pantieri

76 TABELLE E FIGURE

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

D Pu uu β Gf

5 m 269,8 kg 0,000674 m 1,79 0,04089 Pa · m

10 m 421,0 kg 0,001035 m 3,59 ”

20 m 640,2 kg 0,001565 m 7,18 ”

Tabella 9: Tabella composta correttamente secondo le regole generali.

D Pu uu β Gf

(m) (kg) (m) (Pa · m)

5 269,8 0,000674 1,79 0,04089

10 421,0 0,001035 3,59 0,04089

20 640,2 0,001565 7,18 0,04089

6.1.1 Regole generali

La composizione delle tabelle dovrebbe fondarsi sulle seguenti rego-Le regole generali cheè opportuno seguirenella composizione

delle tabelle

le [Fear, 2005]:

• non usare mai linee verticali;

• evitare linee doppie;

• inserire le unità di misura nell’intestazione della tabella (inveceche nel corpo);

• non usare virgolette per ripetere il contenuto di celle.

Per capire l’importanza del rispetto di queste regole si confrontinole tabelle 8 e 9.

6.1.2 L’ambiente tabular

L’ambiente tabular è il principale strumento di base offerto da LATEXper la creazione di tabelle.1

Cominciamo con un semplice esempio:

\begintabularlcr\topruleApple & Mac~OS~X & 10.5 \\NeXT & NeXTSTEP & 3.3 \\Be & BeOS & 5.0 \\\bottomrule\endtabular

Apple Mac OS X 10.5

NeXT NeXTSTEP 3.3

Be BeOS 5.0

Abbiamo assegnato all’ambiente tabular un argomento (detto an-Il preambolo di unatabella che preambolo della tabella) di tre caratteri: ciò significa che la tabella è

formata da tre colonne. Più in dettaglio:

1 Esiste anche l’ambiente array, analogo a tabular, che può essere usato solo in modomatematico.

Page 99: L'arte di scrivere con LaTeX _ Pantieri

6.1 LE TABELLE 77

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

All’interno dell’ambiente tabular, le righe terminano con il coman-do \\ e le colonne sono separate da &. Si noti che LATEX non richiede chele colonne (ovvero i simboli &) siano allineate, tuttavia è consigliabileche lo siano per migliorare la leggibilità del sorgente.

Le linee orizzontali si ottengono mediante i tre comandi \toprule, Linee orizzontali\midrule e \bottomrule. In particolare, \toprule e \bottomrule van-no usati rispettivamente per la prima e l’ultima riga ed hanno unospessore maggiore delle linee per le altre righe ottenute con \midrule.Si noti che non c’è \\ dopo \toprule, \midrule e \bottomrule.2

Nell’ambiente tabular una colonna può essere specificata anchecon p〈larghezza〉, che indica che la colonna è giustificata ed è larga〈larghezza〉.

Si veda ad esempio la seguente tabella:

\begintabularl*2c\toprule

& Paese & Secolo \\\midruleTiziano & Italia & XVI \\Cézanne & Francia & XIX \\Escher & Olanda & XX \\\bottomrule\endtabular

Paese Secolo

Tiziano Italia XVI

Cézanne Francia XIX

Escher Olanda XX

Il codice *〈n〉〈formato〉, che equivale a 〈n〉 volte la dichiarazio-ne 〈formato〉 (qui, dunque, cc), è utile per migliorare la leggibilità delsorgente nel caso di tabelle con molte colonne.

6.1.3 Celle su più colonne

Per avere una cella che si estende su più colonne si usa il comando Celle multi-colonna\multicolumn.

\begintabularll\toprule\multicolumn2c%\textbfMusei \\\midruleLouvre & Parigi \\Prado & Madrid \\MoMA & New York \\\bottomrule\endtabular

Musei

Louvre Parigi

Prado Madrid

MoMA New York

2 I comandi \toprule, \midrule e \bottomrule del pacchetto booktabs sostituiscono ilcomando \hline offerto da LATEX, che ha una resa tipografica non del tutto soddisfacentea causa del poco spazio tra le linee orizzontali e il testo delle celle.

Page 100: L'arte di scrivere con LaTeX _ Pantieri

78 TABELLE E FIGURE

Il comando \multicolumn〈n〉〈formato〉〈testo〉 combina le suc-cessive 〈n〉 colonne in una singola cella della larghezza delle corrispon-denti celle, inclusi gli spazi tra colonne. L’argomento 〈formato〉 devecontenere un simbolo di posizionamento l, r o c.

6.1.4 Celle su più righe

Analogamente al comando \multicolumn che permette di avere celleCelle multi-rigasu più colonne, esiste il comando \multirow per avere celle su piùrighe. Tale comando richiede il pacchetto multirow. Il codice

\begintabularclcc\toprule\multicolumn2c$D$ & $P_u$ & $\sigma_N$ \\\multicolumn2c(m) & (kg) & (Pa) \\\midrule\multirow3*5 & test 1 & 285 & 38,00 \\\cmidrule(l)2-4

& test 2 & 287 & 38,27 \\\cmidrule(l)2-4

& test 3 & 230 & 30,67 \\\midrule\multirow3*10 & test 1 & 430 & 28,67 \\\cmidrule(l)2-4

& test 2 & 433 & 28,87 \\\cmidrule(l)2-4

& test 3 & 431 & 28,73 \\\bottomrule\endtabular

produce la tabella 10 nella pagina successiva.Il comando \cmidrule〈n〉-〈m〉 disegna una linea orizzontale dal-Il comando

\cmidrule la sinistra della colonna 〈n〉-esima fino alla destra della colonna 〈m〉-esima. La sintassi completa del comando è

\cmidrule(〈troncamento〉)〈n〉-〈m〉

Il parametro opzionale 〈troncamento〉, posto fra parentesi tonde, indicase l’estremità destra o sinistra della riga debba essere troncata. I pos-sibili valori di 〈troncamento〉 sono r, l o rl, che troncano l’estremitàdestra, sinistra o entrambi, rispettivamente.

6.1.5 Il pacchetto array

Il pacchetto array definisce nuove opzioni per l’allineamento dellecolonne di un ambiente tabular:

m〈larghezza〉 definisce una colonna giustificata di larghezza 〈larghezza〉le cui celle sono centrate verticalmente;

b〈larghezza〉 definisce una colonna giustificata di larghezza 〈larghezza〉le cui celle sono allineate in basso;

>〈dichiarazione〉 può essere usato prima di un comando l, r, c, p, mo b ed inserisce 〈dichiarazione〉 prima del contenuto della cella;

Page 101: L'arte di scrivere con LaTeX _ Pantieri

6.1 LE TABELLE 79

Tabella 10: Esempio d’uso dei comandi \multicolumn e \multirow.

D Pu σN

(m) (kg) (Pa)

5

test 1 285 38,00

test 2 287 38,27

test 3 230 30,67

10

test 1 430 28,67

test 2 433 28,87

test 3 431 28,73

<〈dichiarazione〉 può essere usato dopo un comando l, r, c, p, m o bed inserisce 〈dichiarazione〉 dopo il contenuto della cella.

Ad esempio, se si hanno colonne di sola matematica, può essereconveniente definirlo nel preambolo della tabella piuttosto che inserirein ogni cella i delimitatori di testo matematico ($. . .$).

È possibile definire nuove colonne che siano allineate in modo diver- Nuovi tipi di colonnaso da quelli predefiniti con il comando \newcolumntype. Ad esempio,i comandi

\newcolumntypeC>$c<$\newcolumntypeL>$l<$\newcolumntypeR>$r<$

consentono di avere colonne rispettivamente centrate, allineate a sini-stra o a destra di testo matematico. Se si vuole avere matematica informato displaystyle (vedi il paragrafo 7.7 a pagina 125), è sufficien-te aggiungere il relativo comando alla definizione della nuova colonna.Ad esempio, il codice

\newcolumntypeL>$\displaystylel<$\newcolumntypeC>$c<$\begintabularLC\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\endtabular

produce la tabella 11 nella pagina successiva.Per ulteriori dettagli sul pacchetto array si consiglia la lettura di [Gre-

gorio, 2008b].

Specificare il font di una colonna

I comandi >〈dichiarazione〉 e <〈dichiarazione〉 possono anche es-sere impiegati per specificare il font di determinate colonne: è pos-

Page 102: L'arte di scrivere con LaTeX _ Pantieri

80 TABELLE E FIGURE

Tabella 11: Tabella con testo matematico ottenuta con il pacchetto array.∫cos xdx sin x+ c∫exdx ex + c∫sec2 xdx tan x+ c

Tabella 12: Tabella con formato automatico di una colonna specificato con ilpacchetto array.

Forza Una forza è una grandezza fisica che simanifesta nell’interazione di due o piùcorpi materiali, che cambia lo stato diquiete o di moto dei corpi stessi.

Momento polare Il momento polare di una forza rispet-to ad una determinata origine è defi-nito come il prodotto vettoriale tra ilvettore posizione (rispetto alla stessaorigine) e la forza.

sibile usare i comandi \itshape, \slshape, \bfseries, \rmfamily e\ttfamily (vedi il paragrafo 10.2 a pagina 162). Ad esempio, il codice

\begintabular>\bfseriesl p6cm\topruleForza & Una forza è una grandezza fisica che si manifestanell’interazione di due o più corpi materiali, che cambia lo statodi quiete o di moto dei corpi stessi. \\\midruleMomento polare & Il momento polare di una forza rispetto ad unadeterminata origine è definito come il prodotto vettoriale trail vettore posizione (rispetto alla stessa origine) e la forza. \\\bottomrule\endtabular

produce la tabella 12.

6.1.6 Il pacchetto tabularx

Il pacchetto tabularx modifica la larghezza di certe colonne al fineL’utente definisce lalarghezza della

tabella e il pacchettotabularx calcola la

larghezza dellecolonne.

di coprire la larghezza della tabella definita dall’utente. Le colonneche possono essere dilatate o compresse sono indicate dal comandodi allineamento X; il testo che viene inserito in queste colonne vienemandato a capo automaticamente e, in mancanza di altre specificazio-ni, viene giustificato. Il pacchetto tabularx richiede il pacchetto array.Ad esempio, il codice

\begintabularx\columnwidth>\bfserieslX\toprule Forza & Una forza è una grandezza fisica che si manifestanell’interazione di due o più corpi materiali, che cambia lo stato

Page 103: L'arte di scrivere con LaTeX _ Pantieri

6.1 LE TABELLE 81

Tabella 13: Tabella ottenuta con il pacchetto tabularx.

Forza Una forza è una grandezza fisica che si manife-sta nell’interazione di due o più corpi materiali,che cambia lo stato di quiete o di moto dei corpistessi.

Momento polare Il momento polare di una forza rispetto ad unadeterminata origine è definito come il prodottovettoriale tra il vettore posizione (rispetto allastessa origine) e la forza.

di quiete o di moto dei corpi stessi. \\\midruleMomento polare & Il momento polare di una forza rispetto ad unadeterminata origine è definito come il prodotto vettoriale tra ilvettore posizione (rispetto alla stessa origine) e la forza. \\\bottomrule\endtabularx

produce la tabella 13. In questa tabella l’utente definisce la larghezzadell’intera tabella — in questo caso pari alla larghezza della colonnadi composizione \columnwidth, che per documenti scritti in un’unicacolonna coincide con la larghezza del corpo del testo \textwidth (vediil paragrafo 6.3 a pagina 96) — e il pacchetto calcola in automatico lalarghezza della seconda colonna.

Il pacchetto tabularx risulta utile anche quando si vogliono produrre Tabelle con colonneaventi la stessalarghezza

delle tabelle in cui alcune colonne hanno la stessa larghezza, ma nonsi ha la necessità di definirla 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:

\newcolumntypeU>\centering\arraybackslash$X<$\begintabularx0.9\columnwidth*7U...\endtabularx

Il comando \arraybackslash dopo \centering permette di terminarele righe della tabella con il solito \\.3

6.1.7 Allineare i numeri alla virgola

Per allineare i numeri alla virgola è possibile usare il pacchetto Il pacchetto dcolumndcolumn, 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à didare degli “a capo” espliciti nelle celle dell’ultima colonna). Lo stesso discorso vale percolonne allineate a sinistra con \raggedright o a destra con \raggedleft. Il motivo percui è necessario usare il comando \arraybackslash o, in alternativa, \tabularnewline èche \centering, \raggedright e \raggedleft ridefiniscono \\.

Page 104: L'arte di scrivere con LaTeX _ Pantieri

82 TABELLE E FIGURE

Tabella 14: Tabella ottenuta con il pacchetto tabularx per avere colonne dellastessa larghezza.

α sinα cosα tanα cscα secα cotα

0 0 1 0 ∞ 1 ∞π/4

√2/2

√2/2 1

√2

√2 1

π/2 1 0 ∞ 1 ∞ 0

3π/4√2/2 −

√2/2 −1

√2 −

√2 −1

π 0 −1 0 ∞ −1 ∞5π/4 −

√2/2 −

√2/2 1 −

√2 −

√2 1

3π/2 −1 0 ∞ −1 ∞ 0

7π/4 −√2/2

√2/2 −1 −

√2

√2 −1

2π 0 1 0 ∞ 1 ∞Il primo argomento è il carattere usato nel documento .tex per indi-care la separazione delle cifre decimali (di solito il punto oppure lavirgola), il secondo quello che si vuole nel documento composto (initaliano la convenzione è la virgola, mentre in inglese viene usato ilpunto), il terzo è il numero di cifre a sinistra (prima) e a destra (do-po) della virgola. I numeri vengono allineati rispetto al separatore e,se il terzo argomento è negativo, il separatore sarà al centro della co-lonna. Se le colonne hanno dei titoli, è necessario inserirli all’internodi comandi \multicolumn1c〈. . .〉. Ad esempio, la tabella 53 apagina 186 può essere ottenuta con il seguente codice:

\begintabularcD.,5.4\topruleEspressione & \multicolumn1cValore \\\midrule$\pi$ & 3.1416 \\$\pi^\pi$ & 36.46 \\$\pi^\pi^\pi$ & 80662.7 \\\bottomrule\endtabular

6.1.8 Tabelle grandi

Normalmente le tabelle vanno trattate come “oggetti mobili” (vedi ilDi regola, le tabellevanno trattate come

oggetti mobili.paragrafo 6.4 a pagina 98): se una tabella non sta sulla pagina corrente,è possibile chiedere a LATEX di stamparla su una pagina successiva,riempiendo quella attuale con il testo successivo. A tal fine l’ambientetabular deve essere inserito nell’ambiente table che:

• permette di generare automaticamente l’elenco delle tabelle conil comando \listoftables;

• permette di creare la didascalia e di assegnare un numero pro-gressivo alla tabella con il comando \caption;

Page 105: L'arte di scrivere con LaTeX _ Pantieri

6.1 LE TABELLE 83

Tabella 15: Esempio di tabella con allineamento alla virgola.

Espressione Valore

π 3,1416ππ 36,46ππ

π80662,7

• permette di assegnare alla tabella un’etichetta con il comando\label (che deve comparire dopo il corrispondente \caption) concui richiamarla nel testo con \ref o \vref.

Per centrare una tabella mobile è opportuno utilizzare il comando\centering invece dell’ambiente center, poiché quest’ultimo inserisceuno spazio verticale supplementare esagerato (vedi il paragrafo 6.4.1a pagina 99). Per separare la didascalia dalla tabella (di regola, ladidascalia si scrive sopra la tabella), se si usano le classi standard èconveniente caricare il pacchetto caption e, una volta per tutte, scriverenel preambolo

\captionsetup[table]position=top

In questo modo, per ottenere una tabella come la 53 a pagina 186 èsufficiente scrivere il seguente codice:

\begintable[tb]\captionEsempio di tabella con allineamento alla virgola.\labeltab:virgola\centering\begintabular〈. . .〉...\endtabular\endtable

Se si usano le classi KOMA-Script, per separare la didascalia dalla tabel-la è sufficiente caricare il pacchetto caption e scrivere, nel preambolo,

\captionsetup[table]skip=\medskipamount

dopo aver selezionato l’opzione di classe tablecaptionabove.4

Può capitare che le dimensioni di una tabella siano superiori a quelledell’intera pagina in altezza, in larghezza o in entrambe. Se la tabella Tabelle troppo lungheè troppo lunga è possibile:

• ridurre la dimensione del font;

• spezzarla su più pagine.

Se la tabella è troppo larga è possibile: Tabelle troppo larghe

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

Page 106: L'arte di scrivere con LaTeX _ Pantieri

84 TABELLE E FIGURE

Tabella 16: Tabella con font di dimensione inferiore (footnotesize) rispettoal resto del testo (normalsize).

Forza Una forza è una grandezza fisica chesi manifesta nell’interazione di dueo più corpi materiali, che cambia lostato di quiete o di moto dei corpistessi.

Momento polare Il momento polare di una forza rispet-to ad una determinata origine è defi-nito come il prodotto vettoriale tra ilvettore posizione (rispetto alla stessaorigine) e la forza.

• spezzarla su più pagine.

Ovviamente, per ogni caso è possibile applicare più soluzioni contem-poraneamente.

Ridurre la dimensione del font

Per ridurre la dimensione del font all’interno di una tabella è suffi-ciente mettere il comando della dimensione del font dentro l’ambientetable. Ad esempio, il codice

\begintable[tb]\footnotesize\caption〈. . .〉\label〈. . .〉\centering\begintabularx〈. . .〉...\endtabularx\endtable

produce la tabella 16. Si confronti il risultato con la tabella 13 apagina 81.

Se la tabella non è mobile, ovvero se non è inserita in un ambientetable, la dichiarazione della dimensione del font deve essere fatta fuo-ri dall’ambiente tabular e poi alla fine deve essere ripristinato il fontusato nel testo. Al contrario, quando la dichiarazione è inserita in unambiente table, vale solo all’interno di tale ambiente e quindi non ènecessario ripristinare la dimensione normale del font alla fine.

In alternativa, il pacchetto graphicx offre due comandi che possonoRidimensionare letabelle essere usati per ridimensionare le tabelle: \scalebox e \resizebox.

Questa soluzione è più flessibile della precedente, perché consente discegliere 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 casodi tabelle, si vuole usare lo stesso fattore di scala in orizzontale e inverticale: è possibile farlo dichiarando uno solo tra 〈scala orizzontale〉 e〈scala verticale〉 ed assegnando ! all’altro.

Il comando

\resizebox〈larghezza〉〈altezza〉〈argomento〉

Page 107: L'arte di scrivere con LaTeX _ Pantieri

6.1 LE TABELLE 85

Tabella 17: Tabella ridimensionata con \resizebox.

Forza Una forza è una grandezza fisica che si manife-sta nell’interazione di due o più corpi materiali,che cambia lo stato di quiete o di moto dei corpistessi.

Momento polare Il momento polare di una forza rispetto ad unadeterminata origine è definito come il prodottovettoriale tra il vettore posizione (rispetto allastessa origine) e la forza.

ridimensiona il suo 〈argomento〉 (che in questo caso sarà una tabella) inmodo da ottenere la 〈larghezza〉 e l’〈altezza〉 specificate; anche in questocaso è possible assegnare ! per non modificare il rapporto tra altezzae larghezza della tabella. Un uso tipico di questi comandi consiste nelridimensionare la tabella in modo che occupi tutta la larghezza dellerighe; tale effetto può essere ottenuto ad esempio con

\begintable[tb]\caption〈. . .〉\label〈. . .〉\centering\resizebox\columnwidth!%\begintabular〈. . .〉...\endtabular\endtable

Ad esempio la tabella 17 è realizzata con lo stesso codice della ta-bella 13 a pagina 81, ma è ridimensionata con \resizebox in modo daavere la larghezza pari al 75% della larghezza delle righe:

\resizebox0.75\columnwidth!〈. . .〉

Ruotare tabelle

Per ruotare una tabella mobile, il pacchetto rotating mette a disposi- Il pacchetto rotatingzione l’ambiente sidewaystable (che può essere usato per ruotare ognialtro oggetto mobile). Questo ambiente si va a sostituire all’ambientetable. La sintassi è:

\beginsidewaystable\caption〈. . .〉\label〈. . .〉\centering\begintabular...\endtabular\endsidewaystable

A differenza degli ambienti precedenti, sidewaystable occupa un’in-tera pagina. Dato che tale ambiente è mobile, se necessario LATEX riem-pie la pagina che lo precede con il testo che si trova dopo tale ambiente.Ad esempio, il codice

\newcolumntypeW>\centering\arraybackslashX\beginsidewaystable[p]\small\caption〈. . .〉\label〈. . .〉\centering\renewcommand\tabularxcolumn[1]>\arraybackslashm#1\begintabularx\textheightlccWWWWW

Page 108: L'arte di scrivere con LaTeX _ Pantieri

86 TABELLE E FIGURE

! "#$"%&'(#$( 23

Tabe

lla1:

Con

fron

totr

aim

iglio

ram

enti

delle

pres

tazi

onid

istr

uttu

rere

sist

enti

adon

ded’

urto

.

Gra

ndez

zaSi

mbo

loU

nità

dim

isur

aPi

astr

am

onol

itic

aPa

nnel

lom

ulti

stra

toa

nido

d’ap

equ

adra

to

Pann

ello

mul

tist

rato

api

ram

ide

reti

cola

re

iii

iii

Den

sità

nucl

eare

rela

tiva

!nr

%10

04,

04,

04,

04,

1

Den

sità

supe

rfici

ale

mA

kg/

m2

14,5

514

,014

,014

,013

,78

Dat

ispe

rim

enta

liI

–0,

882

1,23

40,

931

0,93

90,

925

"m

ax/L

–0,

391

0,39

80,

299

0,29

70,

299

Impu

lso

tras

mes

so("

max

/L) N

–0,

391

0,27

80,

283

0,27

90,

285

I i%

%–

28,9

27,6

28,7

27,2

Defl

essi

one

risu

ltant

eI N

–0,

882

1,24

01,

217

1,23

61,

210

I d%

%–

40,6

38,0

40,2

37,1

Figura 8: Un esempio d’uso dell’ambiente sidewaystable.

...\endtabularx\endsidewaystable

produce la tabella riportata nella figura 8. In questo esempio, oltrea sidewaystable, si usa anche il pacchetto tabularx, con il quale sidefinisce una colonna di tipo W (il cui testo è centrato orizzontalmente)e si centra verticalmente il testo, ed inoltre si riduce la dimensione delfont con il comando \small.

Tabelle su più pagine

L’ambiente tabular deve sempre essere contenuto in una pagina: seIl pacchetto xtabè più grande in altezza, le parti che sono all’esterno vengono taglia-te e si riceve un errore (“overfull vbox”). Il pacchetto xtab permettedi superare questa limitazione e di ripartire una tabella su più pagi-ne. Il pacchetto offre l’ambiente xtabular, che si comporta come ilnormale tabular, ma controlla le dimensioni in altezza della tabellaad ogni riga: se queste dimensioni superano quelle dell’intera pagina,vengono inseriti automaticamente l’argomento opzionale tabletail eil comando \endtabular, e la tabella viene fatta continuare su unanuova pagina inserendo l’argomento opzionale tablehead. L’argomen-to tabletail può essere usato per scrivere alla fine di ogni pagina incui è presente la tabella l’indicazione “continua sulla pagina succes-siva”, mentre tablehead permette di scrivere l’indicazione “continuadalla pagina precedente”. (Si noti che il pacchetto xtab tratta la partedi tabella che si trova su una pagina come un oggetto a sé stante edunque la larghezza delle colonne può variare tra le diverse pagine, ameno che non si usino colonne di larghezza fissa.)

Page 109: L'arte di scrivere con LaTeX _ Pantieri

6.1 LE TABELLE 87

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

Forza Una forza è una grandezza fisica che si manife-sta nell’interazione di due o più corpi materiali,che cambia lo stato di quiete o di moto dei corpistessi.

Momento polare Il momento polare di una forza rispetto ad unadeterminata origine è definito come il prodottovettoriale tra il vettore posizione5 e la forza.

6.1.9 Note dentro a tabelle

Il comando standard di LATEX per le note a piè di pagina (\footnote)non funziona nelle tabelle, perché l’ambiente tabular non permette alcomando di posizionare testo a piè di pagina.

Come per la maggior parte delle cose in LATEX, ci sono ottime ragioni È preferibile inserireeventualiannotazioni nelladidascalia dellatabella.

per questa limitazione. In generale, per migliorarne la leggibilità èpreferibile che le eventuali annotazioni siano inserite nella didascaliadella tabella, tanto più se questa è inserita in un ambiente table. Unatabella mobile è infatti un oggetto a sé stante, che non ha relazioni conil testo della pagina; scrivendo note alla tabella nel piede della paginac’è il rischio di confondere il lettore.

Tuttavia, a volte, l’editore o il relatore possono imporre all’autoredi inserire note in una tabella. A tal fine ci sono diverse soluzioni; diseguito si riportano le migliori. In generale possono presentarsi duecasi:

a. si vuole che la nota segua la numerazione delle altre note presen-ti 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 pac- Il pacchetto footnotechetto mette a disposizione l’ambiente savenotes, che permette di in-serire note anche nell’ambiente tabular e le posiziona a piè di pagina.Ad esempio, la tabella 18 è ottenuta con il seguente codice:

\beginsavenotes\begintable[〈. . .〉]\caption〈. . .〉\label〈. . .〉\centering\begintabularx〈. . .〉...Momento polare & Il momento polare di una forza rispetto ad unadeterminata origine è definito come il prodotto vettoriale tra ilvettore posizione\footnoteRispetto alla stessa origine. e laforza. \\ \bottomrule\endtabularx\endtable\endsavenotes

Se si vuole permettere la presenza delle note in tutte le tabelle deldocumento è sufficiente inserire nel preambolo il comando

5 Rispetto alla stessa origine.

Page 110: L'arte di scrivere con LaTeX _ Pantieri

88 TABELLE E FIGURE

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

Forza Una forza è una grandezza fisica che si manife-sta nell’interazione di due o più corpi materiali,che cambia lo stato di quiete o di moto dei corpistessi.

Momento polare Il momento polare di una forza rispetto ad unadeterminata origine è definito come il prodottovettoriale tra il vettore posizionea e la forza.

a Rispetto alla stessa origine.

\makesavenoteenvtabular

La soluzione per il caso b è offerta dal pacchetto ctable. L’ambienteIl pacchetto ctablectable, offerto dall’omonimo pacchetto, prevede il comando \tmark,che posiziona il simbolo della nota (in questo caso la numerazionepredefinita è con le lettere minuscole), e il comando \tnote〈. . .〉, checontiene il testo della nota. Le note sono posizionate subito sotto latabella e non a piè di pagina. Ad esempio, la tabella 19 è ottenuta conil seguente codice:

\ctable[caption=...,label=...]〈. . .〉\tnoteRispetto alla stessa origine....Momento polare & Il momento polare di una forza rispetto ad unadeterminata origine è definito come il prodotto vettoriale tra ilvettore posizione\tmark e la forza. \\\bottomrule

6.1.10 Tabelle colorate

Quando si vuole evidenziare parte di una tabella, può risultare utileIl pacchetto colortblcolorarne lo sfondo. Il pacchetto colortbl permette di colorare lo sfon-do di celle, righe e colonne di ambienti tabular (permette anche dicolorare le linee, ma tale argomento non viene affrontato perché neidocumenti scientifici non dovrebbero mai essere usate linee colorate).Il pacchetto colortbl richiede la presenza dei pacchetti xcolor e array.6

Colorare le colonne

Il pacchetto colortbl offre il comando \columncolor, che deve es-Il comando\columncolor sere usato esclusivamente all’interno del comando >〈. . .〉 (vedi il

paragrafo 6.1.5 a pagina 78). La sintassi è

\columncolor[〈modello di colore〉]〈colore〉

dove:

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

Page 111: L'arte di scrivere con LaTeX _ Pantieri

6.1 LE TABELLE 89

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

D Pu uu β Gf

(m) (kg) (m) (Pa · m)

5 269,8 0,000674 1,79 0,04089

10 421,0 0,001035 3,59 0,04089

20 640,2 0,001565 7,18 0,04089

〈modello di colore〉 dichiara il modello di colore da usare; quelli dispo-nibili sono rgb, cmyk, gray e named.

〈colore〉 dichiara il colore da usare; tale definizione dipende dal mo- I modelli rgb, cmyk,gray e nameddello di colore scelto. Il modello rgb (Red Green Blue) richiede

un elenco di tre numeri compresi tra 0 e 1 e separati tra loro dauna virgola; ognuno di essi dà la rispettiva componente del colo-re (rossa, verde e blu). (Esiste anche il modello RGB, in cui i trenumeri sono compresi tra 0 e 255.) Il modello cmyk (Cyan Magen-ta Yellow blacK) richiede un elenco di quattro numeri compresitra 0 e 1 e separati tra loro da una virgola; ognuno di essi dàla rispettiva componente del colore (azzurro, magenta, giallo enero). Il modello gray richiede un solo numero compreso tra 0e 1, che indica il livello di grigio; nelle tabelle scientifiche si pre-ferisce usare i grigi al posto del colore quindi questo comandorisulta particolarmente conveniente. Il modello named permettedi richiamare i colori in base al nome; tale nome deve essere notoal pacchetto xcolor oppure definito dall’utente con il comando

\definecolor〈nome〉〈modello di colore〉〈colore〉

dove 〈nome〉 è il nome assegnato dall’utente al colore, mentre〈modello di colore〉 e 〈colore〉 hanno lo stesso significato che hannoin \columncolor.

Si consiglia di usare il comando \newcolumntype per definire nuovecolonne che abbiano il colore desiderato. Ad esempio, definendo

\newcolumntypeG>\columncolor[gray]0.8c

è possibile ottenere la tabella 20 con il codice

\begintabularccccG\toprule$D$ & $P_u$ & $u_u$ & $\beta$ & $G_f$ \\(m) & (kg) & (m) & & (Pa\,·\,m) \\\midrule5 & 269,8 & 0,000674 & 1,79 & 0,04089 \\10 & 421,0 & 0,001035 & 3,59 & 0,04089 \\20 & 640,2 & 0,001565 & 7,18 & 0,04089 \\\bottomrule\endtabular

Page 112: L'arte di scrivere con LaTeX _ Pantieri

90 TABELLE E FIGURE

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

D Pu uu β Gf

(m) (kg) (m) (Pa · m)

5 269,8 0,000674 1,79 0,04089

10 421,0 0,001035 3,59 0,04089

20 640,2 0,001565 7,18 0,04089

Tabella 22: Tabella con le righe dispari colorate ottenuta con il pacchettoxcolor.

D Pu uu β Gf

(m) (kg) (m) (Pa · m)

5 269,8 0,000674 1,79 0,04089

10 421,0 0,001035 3,59 0,04089

20 640,2 0,001565 7,18 0,04089

Colorare le righe

Per colorare le righe, il pacchetto colortbl mette a disposizione ilIl comando\rowcolor comando \rowcolor, che ha la stessa sintassi di \columncolor e deve

essere posizionato all’inizio di una riga. Se in una tabella sono contem-poraneamente presenti \columncolor e \rowcolor, quest’ultimo ha laprecedenza.

Ad esempio, la tabella 21 è ottenuta con lo stesso codice della tabel-la 9 a pagina 76 con l’aggiunta del comando

\rowcolor[gray]0.8

Talvolta il colore sullo sfondo non serve ad evidenziare le righe, maUsare il colore sullosfondo per separare le

righea separarle (si tratta di una funzione analoga a quella delle linee oriz-zontali). In questo caso risulta particolarmente conveniente il pacchet-to xcolor, che offre comandi per colorare in automatico tutte le righepari o tutte le righe dispari di una tabella. In tal caso deve esserecaricata l’opzione table del pacchetto, con il comando

\usepackage[table]xcolor

Il comando da scrivere subito prima dell’ambiente 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 significa nessun colore);

〈colore delle righe pari〉 indica il colore da applicare alle righe spari (vuo-to significa nessun colore).

Page 113: L'arte di scrivere con LaTeX _ Pantieri

6.2 LE FIGURE 91

Tabella 23: Tabella con una cella colorata.

Forza Una forza è una grandezza fisica chesi manifesta nell’interazione di dueo più corpi materiali, che cambia lostato di quiete o di moto dei corpistessi.

Momento polare Il momento polare di una forza rispet-to ad una determinata origine è defi-nito come il prodotto vettoriale tra ilvettore posizione (rispetto alla stessaorigine) e la forza.

Ad esempio, la tabella 22 a fronte è identica alla tabella 9 a pagina 76,ma usa lo sfondo grigio per le righe dispari. Il codice usato è:

\rowcolors2gray!35\begintabularccccc...\endtabular

Colorare singole celle

Per colorare lo sfondo di singole celle, il pacchetto colortbl offre il Il comando \cellcolorcomando \cellcolor, che funziona come \columncolor e \rowcolore che ha precedenza su entrambi; \cellcolor può essere posizionatoovunque nella cella a cui va applicato. Ad esempio, la tabella 23 èottenuta con lo stesso codice della tabella 16 a pagina 84 con la solaaggiunta del comando

\cellcolor[gray]0.8

6.2 LE FIGURELe figure sono uno degli argomenti trattati più estesamente dalle gui-

de; esistono anche guide interamente dedicate all’argomento [Caucci eSpadaccini, 2000], cui si rimanda il lettore per ogni approfondimento.

I problemi incontrati dagli utenti di LATEX durante l’inserimento difigure sono generalmente di due tipi. Una parte dei problemi derivadalle figure in sé, ovvero dai file che si cerca di inserire in un docu-mento (verranno trattati in questo paragrafo), mentre un altro tipo diproblemi, totalmente distinto dal precedente, è quello del posiziona-mento delle figure (verranno trattati nei paragrafi 6.3 a pagina 96 e 6.4a pagina 98).

6.2.1 Immagini vettoriali e bitmap

Esistono due grandi classi di figure, le immagini vettoriali e le im-magini bitmap. Le prime sono descritte da forme e possono esserescalate e deformate senza perdere definizione; sono soprattutto adatte

Page 114: L'arte di scrivere con LaTeX _ Pantieri

92 TABELLE E FIGURE

per i grafici e per gli schemi. Le seconde sono matrici di pixel coloratie sono adatte per le fotografie, i disegni e le icone [Mori, 2007, p. 32].

Immagini vettoriali

Nonostante vi siano vari strumenti per creare grafici e schemi conLATEX oppure con qualche sua estensione, la maggior parte degli utentili considera decisamente ostici. Pertanto, questa possibilità non saràpiù considerata per il resto di questo lavoro.7

Un metodo di gran lunga più semplice per inserire grafici o schemiIl modo più sempliceper inserire grafici in

un documentoconsiste nell’usare un

software “esterno”.

in un documento consiste nel prepararli attraverso un software specifi-co e di includere l’immagine ottenuta nel documento. Il seguente è unelenco di programmi di grafica vettoriale.

INKSCAPE è un programma multipiattaforma e gratuito, pubblicatocon licenza gnu, particolarmente adatto per disegnare grafici“qualitativi”.

XFIG è un programma gratuito per Unix/Linux, coperto da licenzagnu, che permette di disegnare figure usando cerchi, rettangolie linee. Per Windows esiste la versione WinFIG.

GNUPLOT è un programma multipiattaforma e gratuito, che permettedi realizzare grafici di funzioni matematiche in due e tre dimen-sioni.

MATHEMATICA è un eccellente programma di calcolo simbolico e nu-merico. Il software, disponibile (a pagamento) per le piattaformepiù diffuse, consente, fra l’altro, di realizzare grafici di funzionimatematiche in due e tre dimensioni (http://www.wolfram.com/products/mathematica/).

OMNIGRAFFLE è un ottimo programma commerciale per Mac, che per-mette di realizzare schemi e diagrammi di ogni tipo (http://www.omnigroup.com/applications/omnigraffle/).

I formati vettoriali più noti e diffusi sono il formato pdf (PortableDocument Format), il formato ps (PostScript) e il suo parente stret-to 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 rappresentareimmagini fotografiche, al png (Portable Network Graphics), adatto perrappresentare disegni e icone, al gif (Graphics Interchange Format) altiff (Tagged Image File Format). Questo è solo un piccolo elenco diformati grafici bitmap, perché esistono dei formati specifici per certiapparecchi fotografici digitali o per particolari codici di colore. Alcuniformati sono compressi in una maniera che sfrutta la ridondanza diinformazioni delle immagini.

7 Gli strumenti più diffusi per disegnare grafici e schemi con LATEX sono l’ambientepicture, i pacchetti pgf, PSTricks e xypic, e i programmi METAPOST e Asymptote. Tut-tavia, essi richiedono di inserire a mano gli opportuni comandi per costruire il graficodi cui si necessita.

Page 115: L'arte di scrivere con LaTeX _ Pantieri

6.2 LE FIGURE 93

6.2.2 Conversione dei formati

La prima cosa da fare è produrre figure nel formato più adatto per i Produrre figure nelformato correttopropri scopi. È inutile registrare una figura in jpeg per poi convertirla

in pdf, in quanto la conversione di un’immagine bitmap in pdf includesemplicemente il file bitmap in una “cornice” pdf senza migliorare inalcun modo la qualità. È sbagliato anche fare la conversione oppostada file vettoriale a bitmap, perché in questo modo si perdono le infor-mazioni sulla geometria contenuta nella figura e quindi si abbassa laqualità del file.

Ciò premesso, dal momento che, come anticipato nel paragrafo 3.7 LATEX accetta soloimmagini eps,mentre pdfLATEXaccetta immagini pdf(se vettoriali), jpg opng (se bitmap).

a pagina 17, LATEX richiede immagini esclusivamente in formato eps,mentre pdfLATEX accetta immagini in formato pdf (se vettoriali) oppurejpg o png (se bitmap), può essere necessario convertire un formato inun altro. A tal fine esistono diversi programmi e di seguito se neelencano alcuni.8

GHOSTVIEW è un programma gratuito per Unix/Linux che permette,fra l’altro, di convertire file dal formato eps e ps al formato pdf.Esiste anche un programma simile, GSview, disponibile per Win-dows e Unix/Linux. Entrambi i programmi si scaricano dal si-to http://pages.cs.wisc.edu/~ghost/ e richiedono Ghostscript(disponibile allo stesso indirizzo Internet).

EPS2PDF è un’interfaccia grafica, disponibile solo per Windows, chetrasforma un’immagine 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 pro-gramma analogo, epstopdf, che opera dalla linea di comando(http://www.ctan.org/tex-archive/support/epstopdf/).

GIMP è un programma multipiattaforma e gratuito che consente, fral’altro, di visualizzare le immagini bitmap di svariati formati edi registrarle in uno qualunque dei numerosi formati che è ingrado di gestire. Non va usato per convertire formati vettorialiin formati a matrici di pixel, limitandosi alle trasformazioni deiformati bitmap. Si scarica da http://www.gimp.org/.

IMAGEMAGICK è un programma di grafica bitmap, multipiattaforma egratuito. Mette a disposizione dell’utente il comando convert,che permette di eseguire rapidamente la conversione da un for-mato grafico all’altro (http://www.imagemagick.org/).

ANTEPRIMA è un applicativo del sistema operativo Mac OS X; permet-te, fra l’altro, di visualizzare e convertire immagini di numero-si formati, sia vettoriali sia bitmap. Su Mac, la conversione diun’immagine eps o ps in pdf viene fatta automaticamente dal si-stema operativo: cliccando su un file eps o ps, esso viene apertocon Anteprima, dal quale si può registrare il file in formato pdf.

8 Con pdfLATEX si possono includere anche immagini bmp, gif e tiff, a patto di caricare ilpacchetto bmpsize.

Page 116: L'arte di scrivere con LaTeX _ Pantieri

94 TABELLE E FIGURE

6.2.3 Scontornare le immagini

Uno dei parametri più importanti di una figura è l’informazione re-Il “bounding box”lativa alle dimensioni del rettangolo circoscritto all’immagine (il cosid-detto “bounding box”). Questo contorno determina la taglia effettivadell’immagine e serve a LATEX per calcolare lo spazio da riservare allafigura. Idealmente, il contorno dovrebbe essere al limite massimo delcontenuto dell’immagine, ma talvolta capita di aver a che fare con fi-gure con grandi bordi bianchi attorno all’immagine effettiva. Questoporta spesso a grandi confusioni, perché di fatto LATEX sta lasciandoalla figura lo spazio corretto, ma visivamente parte di questo spazio èusato per il bordo bianco, quindi la figura appare troppo piccola, noncentrata, con eccessivi margini verticali, eccetera.

La prima cosa da verificare è quindi che le dimensioni del rettango-lo circoscritto all’immagine che si desidera includere nel documentosiano corrette. Per farlo, basta aprire la figura con un programma ac-cessorio (come Adobe Reader o Gimp) e attivare la visualizzazione delcontorno. Se le dimensioni del contorno non sono corrette, è necessa-rio intervenire, ma il problema non ha niente a che vedere con LATEX.Nel caso si abbiano poche figure con contorni errati, questi si possonocorreggere a mano. Se però il problema riguarda molti file, bisognacercare di correggerlo all’origine (per esempio configurando corretta-mente il programma di grafica usato per produrre le immagini). DiProgrammi per

scontornare leimmagini

seguito si elencano alcuni programmi per scontornare le immagini.

GIMP consente di scontornare e di correggere immagini bitmap dinumerosi formati.

GHOSTVIEW e GSVIEW permettono di scontornare immagini vettoriali.

ADOBE ACROBAT è un programma per Windows e Mac che permet-te di eseguire numerose azioni sui file e sulle immagini in for-mato pdf. Si possono per esempio estrarre delle pagine con-tenenti immagini da un file pdf e poi si possono ritagliare so-lo le immagini che interessano, scontornandole con una como-da interfaccia grafica. L’unico difetto potrebbe essere il costo,visto che il programma è commerciale (http://www.adobe.com/it/products/acrobatpro/), mentre Adobe Reader, gratuito, nonconsente di effettuare modifiche.

ANTEPRIMA permette, fra l’altro, di scontornare immagini di numerosiformati, vettoriali e bitmap.

6.2.4 L’inclusione delle immagini

Per inserire le figure è necessario caricare il pacchetto graphicx:

\usepackagegraphicx

Per inserire un’immagine nel documento, si usa il comando

\includegraphics[〈opzione〉=〈valore〉,〈. . .〉]〈immagine〉

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

Page 117: L'arte di scrivere con LaTeX _ Pantieri

6.2 LE FIGURE 95

Tabella 24: Opzioni del pacchetto graphicx.

width Ridimensiona l’immagine alla larghezza specificataheight Ridimensiona l’immagine all’altezza specificataangle Ruota l’immagine in senso antiorarioscale Riassegna le dimensioni dell’immagine

usate per modificare la larghezza, l’altezza e l’orientamento del graficoincluso. La tabella 24 elenca le opzioni più importanti. Gli esempi cheseguono dovrebbero rendere più chiaro il procedimento.

È possibile specificare la grandezza che l’immagine deve assumere,in larghezza,

\includegraphics[width=%\columnwidth]Mani

o in altezza,

L’immagine a fianco,che riproduce lalitografia Mani chedisegnano, diM. Escher, è tratta dahttp://www.mcescher.com/.

\includegraphics[height=%0.15\textheight]Mani

(\textheight indica l’altezza del corpo della pagina, senza contare latestatina e il piè di pagina).

Nonostante sia possibile attribuire alle chiavi width e height un va-lore espresso in punti, millimetri e in qualsiasi unità tipografica rico-nosciuta da LATEX (ad esempio width=87mm), è opportuno esprimerequesta dimensione con un valore legato alla geometria della pagina(ad esempio width=0.5\columnwidth), perché cambiando le dimensio-ni della pagina la dimensione relativa mantiene le proporzioni, mentrela dimensione assoluta potrebbe dare luogo a inconvenienti di impagi-nazione. Si pensi per esempio di voler passare da una composizionea piena pagina ad una composizione a più colonne; 87 mm potrebbe-ro andare bene a piena pagina, ma potrebbero essere troppi per unacolonna.

Il comando \includegraphics permette inoltre di reimpostare ledimensioni dell’immagine:

Page 118: L'arte di scrivere con LaTeX _ Pantieri

96 TABELLE E FIGURE

\includegraphics[scale=0.10]%Mani

Si può infine ruotare l’immagine in senso antiorario di un angoloespresso in gradi:

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

Per mantenere ordine nei file sorgenti, è consigliabile raccoglieretutte le figure in una cartella. Se si hanno molte figure, è convenientesuddividere la cartella in sottocartelle; se ad esempio tali sottocartellesi chiamano grafici e foto, è sufficiente inserire nel preambolo

\graphicspathgrafici/,foto/

Per evitare problemi, è opportuno che il percorso dei file inclusi me-diante il comando \graphicspath non contenga spazi.

Se si prevede di compilare sia con LATEX sia con pdfLATEX, è consi-È consigliabile nonspecificare

l’estensione dei filegrafici caricati.

gliabile non specificare l’estensione dei file grafici caricati dal coman-do \includegraphics; volendo ad esempio inserire il file figura.eps,è necessario creare il file figura.pdf (per esempio con Ghostview oGSview) e poi scrivere nel testo sorgente

\includegraphicsfigura

Adottando questo accorgimento, quando si compila con LATEX vienecaricato il file figura.eps, mentre quando si compila con pdfLATEXviene caricato il file figura.pdf.

6.3 FIGURE E TABELLE IN TESTO E FUORI TESTONormalmente, il comando \includegraphics e l’ambiente tabularNormalmente, le

figure e le tabellevanno trattate come

oggetti mobili. . .

vengono usati rispettivamente all’interno dell’ambiente figure e tableper creare una figura o una tabella mobile, che nel documento fina-le sarà posizionata da LATEX in accordo con determinate opzioni e re-gole tipografiche, accompagnata da una didascalia (vedi il paragrafosuccessivo).

Essi possono però essere impiegati diversamente, quando si vuole. . . ma possono essereinserite direttamente

in un punto benpreciso del

documento, senzadidascalia.

inserire una figura o una tabella in un punto ben preciso del docu-mento e non si ha bisogno di una didascalia. Ad esempio, il coman-do \includegraphics può essere usato per inserire il sigillo della pro-pria università o il logo della propria azienda nella copertina di unarelazione.

Page 119: L'arte di scrivere con LaTeX _ Pantieri

6.3 FIGURE E TABELLE IN TESTO E FUORI TESTO 97

Il comando \includegraphics (come del resto l’ambiente tabular)non inizia un nuovo capoverso; esso produce un’unità tipografica in-divisibile che viene trattata da LATEX come se fosse un carattere (unascatola, nel gergo di LATEX), e può quindi essere utilizato “in linea” esenza racchiuderlo nell’ambiente figure, per inserire una piccola im-magine oppure un simbolo in una riga di testo, come nel seguenteesempio:

\textitLe Chat noir\includegraphics[width=%0.15\columnwidth]LeChatNoir(Il Gatto nero) fu un celebrelocale di Montmartre (Parigi).

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

In generale, ci sono due tipi di figure (e tabelle):

UNA FIGURA (O TABELLA) IN TESTO appartiene al flusso del discorsoe non può essere posizionata altrove senza che il discorso nerisenta.

UNA FIGURA (O TABELLA) FUORI TESTO non appartiene al flusso deldiscorso e può essere spostata per esigenze tipografiche.

Solo le figure e le tabelle fuori testo ammettono una didascalia e un Solo le figure e letabelle fuori testoammettono unadidascalia e unnumero.

numero al quale potersi riferire: chi legge deve poter capire che cosac’è nella figura o nella tabella (questo è lo scopo della didascalia) edeve saperla trovare (con il numero).

Le figure e le tabelle in testo, invece, non ammettono una didascaliaproprio perché la loro funzione è spiegata dal testo che le precede ele segue. Non ci devono essere riferimenti a queste direttamente daaltre parti del documento. Devono essere di piccole dimensioni, edevono essere di chiarissima comprensione. Una figura o una tabellacomplessa devono andare fuori testo.

Di solito, le figure e le tabelle in testo sono centrate orizzontalmen-te rispetto alla giustezza del testo. A tal fine, si utilizza l’ambientecenter:

La figura seguente\begincenter\includegraphics[width=%0.5\columnwidth]Rettili\endcenterriproducel’incisione su legno\emphTassellazione delpiano con Rettili,di M.~Escher (l’immagine ètratta da \urlhttp://%www.mcescher.com/).

La figura seguente

riproduce l’incisione su legno Tas-sellazione del piano con Rettili, diM. Escher (l’immagine è tratta dahttp://www.mcescher.com/).

Page 120: L'arte di scrivere con LaTeX _ Pantieri

98 TABELLE E FIGURE

La tabella seguente\begincenter\begintabularcc\toprule$p$ & $\lnot p$ \\\midruleV & F \\F & V \\\bottomrule\endtabular\endcenterriproduce la tavola di veritàdella negazione logica.

La tabella seguente

p ¬p

V F

F V

riproduce la tavola di verità dellanegazione logica.

Quando si inseriscono tabelle o figure in testo, o fuori testo median-\columnwidth,\textwidth te gli ambienti table o figure, è preferibile utilizzare, in luogo del

comando \textwidth (che indica la larghezza del corpo del testo), lalarghezza della colonna di composizione \columnwidth (che per do-cumenti scritti in un’unica colonna coincide con \textwidth), dal mo-mento che, così facendo, se si vuole passare da una composizione apiena pagina ad una composizione a più colonne non è necessariomodificare il codice.

Se si inseriscono tabelle o figure in un elenco o in una citazione, può\linewidthessere utile servirsi del comando \linewidth, che indica la lunghezzadella riga corrente: normalmente essa è uguale a \columnwidth, main alcuni ambienti, come per l’appunto quelli per gli elenchi e per lecitazioni, è più corta [Beccari, 2009, p. 88].9

6.4 GLI OGGETTI MOBILILe tabelle e le figure richiedono un trattamento particolare, perché

non possono essere spezzate e stampate su più pagine.10

Un metodo potrebbe essere quello di cominciare una nuova pagi-na ogni volta che una figura o una tabella è troppo grande per sta-re sulla pagina corrente. Questo approccio lascerebbe alcune pagineparzialmente vuote, e il risultato sarebbe insoddisfacente.

La soluzione a questo problema è di rendere mobili (in inglese float-In LATEX, le tabelle ele figure fuori testosono oggetti mobili.

ing, “galleggianti”) le tabelle o le figure che non stanno sulla paginacorrente e stamparle su una pagina successiva, riempiendo quella cor-rente con il testo successivo (tabelle e figure di questo genere vengonodette “fuori testo”). LATEX offre due ambienti per gli oggetti mobili,uno per le tabelle (table) e uno per le figure (figure).11

9 È preferibile evitare di servirsi del comando \linewidth fuori dagli ambienti per glielenchi e per le citazioni, in quanto il suo valore è, in generale, imprevedibile al di fuoridi quei contesti.

10 Fanno eccezione le tabelle ripartite su più pagine definite con xtab.11 Se si scrive un documento su più colonne, oltre agli ambienti table e figure, che si

usano per tabelle e figure che si estendono per la larghezza di una singola colonna(\columnwidth), si possono usare anche gli ambienti table* e figure*, per tabelle efigure che si estendono lungo l’intera larghezza della pagina (\textwidth).Se poi si desidera creare oggetti mobili personalizzati, è utile il pacchetto float: si fac-cia riferimento alla documentazione del pacchetto e ai relativi comandi \newfloat e\listof.

Page 121: L'arte di scrivere con LaTeX _ Pantieri

6.4 GLI OGGETTI MOBILI 99

Tabella 25: Caratteri di trasferimento.

Carattere Permesso di spostare l’oggetto

h Qui (here), se possibilet In cima (top) alla paginab In fondo (bottom) alla paginap In una pagina di soli oggetti mobili (page of floats)! Senza considerare molti dei parametri interni di LATEX

Per ottenere il massimo da questi due ambienti è importante com-prendere almeno approssimativamente come LATEX tratta internamentegli oggetti mobili. In caso contrario, essi possono diventare una fontedi frustrazione, perché LATEX non li mette mai dove ci si aspetterebbe.

6.4.1 Gli ambienti table e figure

Tutto il materiale presente in un ambiente table o figure verràtrattato come oggetto mobile. Entrambi gli ambienti prevedono unparametro opzionale

\begintable[〈posizionamento〉]

oppure

\beginfigure[〈posizionamento〉]

chiamato 〈posizionamento〉. Questo parametro serve a dire a LATEX dovegli oggetti possono essere spostati. Un 〈posizionamento〉 è costituitoda una sequenza di caratteri di trasferimento (vedi la tabella 25). Unatabella mobile potrebbe ad esempio iniziare con la seguente linea:

\begintable[tbp]

In questo esempio, LATEX cercherà di posizionare la tabella in cima allapagina (t). Se questo non è possibile, prova a posizionarla in fondoalla pagina (b). Se neppure questo è possibile, LATEX stabilisce se si puòposizionare la tabella in una pagina di soli oggetti mobili (p). Se ciònon è possibile, LATEX inizia una nuova pagina, e tratta la tabella comese fosse appena comparsa nel testo. (In generale, se il posizionamentodi un oggetto non viene specificato, le classi standard assumono chesia proprio tbp.)

LATEX colloca ogni oggetto mobile che incontra in base al posiziona- LATEX colloca ognioggetto mobile inbase alposizionamentospecificatodall’autore.

mento specificato dall’autore. Se un oggetto non può essere posizio-nato nella pagina corrente, viene accumulato nella coda delle tabelle odelle figure (queste code sono di tipo fifo, First In First Out, “primo ar-rivato, primo servito”). Quando viene iniziata una nuova pagina, LATEXcontrolla innanzitutto se è possibile una pagina speciale di soli oggettimobili con quelli presenti nelle code. Se questo non è possibile, il pri-mo oggetto in ciascuna coda è trattato come se fosse appena comparsonel testo: LATEX prova ancora a collocarlo secondo il suo parametro diposizionamento (tranne per h, che non è più possibile). Tutti i nuovi

Page 122: L'arte di scrivere con LaTeX _ Pantieri

100 TABELLE E FIGURE

oggetti mobili che compaiono nel testo vengono posti nelle rispettivecode. LATEX mantiene strettamente l’ordine di inserimento originaleper ogni tipo di oggetto mobile. Ecco perché un oggetto che non puòessere posizionato spinge tutti gli oggetti successivi alla fine del docu-mento. Se LATEX 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:

\beginfigure[!hbp]

In questo caso, LATEX cercherà disperatamente (!) di mettere la figuranel punto esatto in cui è situato il relativo ambiente (h). Se questonon è possibile, prova a posizionare la figura in fondo alla pagina (b).Se neppure questo è possibile, stabilisce se è possibile posizionare lafigura in una pagina di soli oggetti mobili (p). Se non c’è abbastanzamateriale per una pagina di questo tipo, LATEX inizia una nuova paginae tratta la figura come se fosse appena comparsa nel testo.

Dopo aver spiegato la parte difficile, rimangono alcune altre nozionida menzionare riguardo gli ambienti table e figure. Con il comando

\caption〈didascalia〉

è possibile specificare una didascalia per l’oggetto mobile. LATEX ag-giunge l’intestazione “Tabella” o “Figura” e un numero progressivo. Idue comandi

\listoftables

e

\listoffigures

agiscono analogamente al comando \tableofcontents, stampando l’e-lenco delle tabelle e delle figure, rispettivamente. In questi elenchi, ver-rà ripetuta tutta la didascalia. Se si ha la tendenza a usare didascalielunghe, è consigliabile fornirne una versione più corta, che compari-rà negli elenchi. Questo si ottiene specificando la versione breve traparentesi quadre dopo il comando \caption.

\caption[〈didascalia corta〉]〈didascalia〉

Con i comandi \label, \ref e \vref (vedi il paragrafo 5.9 a pagi-Con i comandi \label,\ref e \vref sipossono creare

riferimenti a oggettimobili nel

documento.

na 61), si possono creare riferimenti a oggetti mobili nel documento. Ilcomando \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 relati-vo ambiente tra capoversi, cioè preceduto e seguito da una riga vuota.Ecco un esempio tipico d’uso dell’ambiente table:

\dots Qui finisce un capoverso.

\begintable[tb]\caption〈. . .〉\labeltab:esempio\centering\begintabular〈. . .〉...

Page 123: L'arte di scrivere con LaTeX _ Pantieri

6.4 GLI OGGETTI MOBILI 101

\endtabular\endtable

La tabella~\vreftab:esempio è un esempio di tabella mobile.

Per centrare una figura mobile è opportuno utilizzare il comando\centering invece dell’ambiente center, poiché lo spazio verticalesupplementare inserito da quest’ultimo — che è adeguato nell’inse-rimento di figure (e tabelle) in testo — risulta invece indesiderato nel-l’inserimento di figure mobili (di regola, la didascalia di una figurasi scrive sotto la figura). Ecco un esempio tipico d’uso dell’ambientefigure:

\dots Qui finisce un capoverso.

\beginfigure[tb]\centering\includegraphics[〈. . .〉]〈. . .〉\caption〈. . .〉\labelfig:esempio\endfigure

La figura~\vreffig:esempio è un esempio di figura mobile.

6.4.2 Il controllo degli oggetti mobili

Spesso gli utenti ritengono che LATEX sposti le figure (e in generalegli oggetti mobili) lontano dal punto in cui vengono inserite. Nellamaggioranza dei casi questo è dovuto ad un uso erroneo delle opzionidi posizionamento degli oggetti mobili. In questo testo si vuole evi-denziare che alcune scelte devono essere prese nella fase di stesuradel testo mentre altre sono riservate, quando necessarie, alla fase direvisione.

Che cosa fare durante la stesura del testo

In primo luogo bisogna accettare il fatto che se LATEX sposta un ogget- Se LATEX sposta unoggetto, è perché lospazio è insufficiente,o per considerazioniestetiche.

to è perché lo spazio è fisicamente insufficiente, o per considerazioniestetiche. Per esempio, LATEX non metterà mai una figura seguita daun titolo di paragrafo e da un cambio pagina, ma preferirà stampare iltitolo del paragrafo e poi la figura, oppure, se aggiungiamo un oggettomobile in fondo ad una pagina, LATEX è obbligato a spostarlo almenonella pagina successiva. Se lo spazio è insufficiente, è inutile cercare diforzare LATEX a mettere l’oggetto mobile in tale posizione: se lo spaziofisico non c’è, non possiamo inventarlo [Mori, 2007, p. 15].

Per fortuna, con un minimo di accortezza LATEX fa un ottimo lavoro.Per prima cosa è opportuno evitare i posizionamenti fatti “a mano”: infase di redazione bisogna solo concentrarsi sui contenuti e non sull’im-paginazione. In generale i posizionamenti fatti a mano interferisconocon il complesso algoritmo di LATEX per il posizionamento degli og-getti mobili e portano a risultati peggiori rispetto a quelli automatici.Seguendo le semplici indicazioni che seguono, gli oggetti mobili ven-gono mantenuti vicini al punto di inserimento ed inoltre si evita che

Page 124: L'arte di scrivere con LaTeX _ Pantieri

102 TABELLE E FIGURE

l’utente si preoccupi continuamente del posizionamento degli oggettimobili, lasciando più tempo per lavorare sui contenuti.

Una delle origini dei problemi lamentati è l’uso eccessivo dell’opzio-ne h: gli oggetti mobili vengono spesso inseriti con l’opzione htbp opeggio !ht. In genere si pensa che questa opzione sia la migliore permantenere gli oggetti mobili vicino al punto di inserzione. In realtàpuò funzionare bene solo quando gli oggetti inseriti sono molto picco-li (dove per piccolo si intende con un’altezza molto inferiore rispettoall’altezza del corpo del testo).

Il modo migliore per usare le opzioni di posizionamento è quello diÈ consigliabileintrodurre gli oggetti

mobili conun’opzione di

posizionamento tb sesono piccoli, e p se

sono grandi.

domandarsi in primo luogo se l’oggetto mobile sarà abbastanza pic-colo per stare in una pagina di testo o se avrà bisogno di una paginatutta per sé. Nel primo caso lo introdurremo quindi con un’opzione diposizionamento tb, nel secondo con p. Se non ci sono oggetti mobiliin sospeso, nel primo caso LATEX potrà spostare l’oggetto subito primadel punto di inserzione, cosa che non può fare se si usa h prima di t, onella pagina immediatamente successiva. Usando invece p per i grossioggetti mobili, questi verranno immediatamente stampati in una pagi-na dedicata, e non verrano spostati alla fine del capitolo come succedecon tbp. Basta sfogliare un qualunque testo ben impaginato per accor-gersi che le tabelle e le figure sono introdotte proprio in questo modo:di regola all’inizio o alla fine della pagina, in una pagina intera se sonograndi, raramente nel corpo del testo se sono davvero piccole.12

Infine è utile ricordare che LATEX riesce a posizionare tutti gli oggettiin modo corretto solo se il rapporto testo/oggetti è sufficientementealto. Da questo segue che è auspicabile (peraltro non solo per fini tipo-grafici) scrivere contenuti interessanti piuttosto che tentare di colmarele lacune con immagini o tabelle. Se tutto ciò non fosse sufficiente, nel-la fase precedente la stampa, e solamente allora, può essere necessariointervenire manualmente come spiegato nel paragrafo seguente.13

Che cosa fare durante la revisione del testo

Nella fase che precede la stampa, può essere necessario interveniremanualmente per correggere il posizionamento degli oggetti mobili.In alcune circostanze potrebbe essere necessario usare i comandi

\clearpage

oppure

\cleardoublepage

Essi ordinano a LATEX di stampare immediatamente tutti gli ogget-ti mobili rimasti nelle code e cominciare una nuova pagina. Il co-mando \cleardoublepage inizia una nuova pagina destra (nel casodi documenti a doppia facciata).

12 Se si scrive un documento su più colonne, i risultati migliori si ottengono scegliendol’opzione di posizionamento t e poi, in fase di revisione, spostando l’inserimento deglioggetti in modo che siano ripartiti su tutte le colonne (altrimenti in alcuni casi LATEX puòmetterne due o più su una colonna e nessuno su un’altra, producendo un effetto nonmolto gradevole).

13 Talvolta alcune riviste richiedono che nelle bozze tutte le tabelle e figure siano riportatealla fine del documento: per fare questo in automatico è possibile usare il pacchettoendfloats.

Page 125: L'arte di scrivere con LaTeX _ Pantieri

6.4 GLI OGGETTI MOBILI 103

Possono inoltre essere utili il pacchetto float, che permette di forzare Il pacchetto floatpermette di forzare ilposizionamento di unoggetto.

il posizionamento dell’oggetto nel punto in cui è situato il relativoambiente per mezzo dell’opzione H (Here, “esattamente qui, in ognicaso”), e il pacchetto placeins, che permette di mettere delle barriereinvalicabili per gli oggetti mobili con il comando \FloatBarrier.

\dotsQui finisce un capoverso.

\beginfigure[H]\centering\includegraphics[width=%0.5\columnwidth]Formica\captionUna figuraposizionata manualmente.\labelfig:float\endfigure

La figura~\vreffig:float èun esempio di figura mobileposizionata manualmente.

. . . Qui finisce un capoverso.

Figura 9: Una figura posizionatamanualmente.

La figura 9 è un esempio di figuramobile posizionata manualmente.

L’immagine a fianco,che riproduce lalitografia Formica,di M. Escher, è trattada http://www.mcescher.com/.

È opportuno non abusare dell’opzione H fornita dal pacchetto float: L’opzione H fornitada float va usata soloin casi eccezionali.

essa va usata solo in circostanze eccezionali ed esclusivamente in sede direvisione finale, per ottenere un effetto di impaginazione particolare, sesi sa davvero che cosa si sta facendo.

6.4.3 Personalizzare le didascalie: il pacchetto caption

Il formato delle didascalie può essere convenientemente controllato Il pacchetto captioncon il pacchetto caption, che fornisce molti modi per personalizzare ledidascalie negli ambienti mobili come figure e table.

Per esempio, l’opzione font=small consente di avere le didascaliein corpo più piccolo rispetto al testo. L’opzione format=hang rientra iltesto delle didascalie formate da almeno due righe, così esso sarà inco-lonnato (hang) sotto la prima linea del testo (le didascalie che occupanouna singola riga sono centrate automaticamente da LATEX). L’opzionelabelfont=sf,bf imposta le intestazioni delle didascalie in caratterisenza grazie (sans serif ) e in neretto (boldface). Le didascalie di questodocumento sono state composte proprio così:

\usepackage[font=small,format=hang,labelfont=sf,bf]caption

6.4.4 Affiancare figure o tabelle: il pacchetto subfig

Per affiancare più figure o tabelle si usa il pacchetto subfig (il succes- Il pacchetto subfigsore di subfigure, scritto dallo stesso autore). Il pacchetto permette didare a ciascuna sottofigura o sottotabella una didascalia. Richiede lapresenza del pacchetto caption.

Il comando \subfloat inserisce una sottofigura o sottotabella; i suoidue argomenti opzionali hanno lo stesso ruolo dell’argomento opzio-nale e obbligatorio del comando \caption: il primo, se presente, indica

Page 126: L'arte di scrivere con LaTeX _ Pantieri

104 TABELLE E FIGURE

(a) Mano con sfera riflettente. (b) Belvedere.

(c) Cascata. (d) Salita e discesa.

Figura 10: Un esempio d’uso del pacchetto subfig (le immagini, che ripro-ducono alcune litografie di M. Escher, sono tratte da http://www.mcescher.com/).

Page 127: L'arte di scrivere con LaTeX _ Pantieri

6.4 GLI OGGETTI MOBILI 105

ciò che va nell’elenco relativo (\listoffigures o \listoftables), men-tre il secondo indica la sottodidascalia da porre nell’ambiente mobi-le [Gregorio, 2008b]. Ciascun sottooggetto può contenere un comando\label per potersi riferire in seguito a esso.

Ad esempio, la figura 10 nella pagina precedente è stata ottenutacon un codice del tipo seguente:

\beginfigure[p]\centering\subfloat[][\emphMano con sfera riflettente.]\includegraphics[width=.45\columnwidth]Sfera \quad\subfloat[][\emphBelvedere.]\includegraphics[width=.45\columnwidth]Belvedere \\\subfloat[][\emphCascata.]\includegraphics[width=.45\columnwidth]Cascata \quad\subfloat[][\emphSalita e discesa.]\includegraphics[width=.45\columnwidth]SalitaDiscesa\captionAlcune litografie di M.~Escher.\labelfig:subfig\endfigure

6.4.5 Testo che “avvolge” un oggetto: il pacchetto wrapfig

Vi sono circostanze in cui può essere desiderabile “avvolgere” con Il pacchetto wrapfigdel testo un’immagine o una tabella. Farlo con LATEX è molto semplice;a tal fine, si utilizza il pacchetto wrapfig.

Figura 11: Un esempio d’uso del pac-chetto wrapfig (l’immagine,che riproduce la litogra-fia Relatività, di M. Escher,è tratta da http://www.mcescher.com/).

Il pacchetto (che è accompa-gnato da una sintetica ma esau-riente documentazione, contenu-ta nel relativo file .sty), in-teragisce correttamente con ilpacchetto caption per produr-re la didascalia con il formatodesiderato.

Il pacchetto definisce l’apposi-to ambiente wrapfloat. Questoambiente va preferibilmente po-sizionato tra capoversi, cioè pre-ceduto e seguito da una rigavuota.

Per ragioni estetiche, è oppor-tuno che l’oggetto sia avvoltosolo da testo “normale”: titolidi paragrafi, formule ed elenchiandrebbero evitati.

Può rendersi necessario un po’di lavoro manuale di impagina-zione per ottenere un risultato

ottimale da un punto di vista tipografico.Ad esempio, la figura 11 è stata inserita con un codice del tipo

seguente:

Page 128: L'arte di scrivere con LaTeX _ Pantieri

106 TABELLE E FIGURE

Tabella 26: Le opzioni di posizionamento dell’ambiente wrapfloat.

r, R Il lato destro del testo (right)l, L Il lato sinistro del testo (left)i, I Il margine interno (inner)o, O Il margine esterno (outer)

\dots ‘‘Avvolgere’’ un oggetto con del testo è molto semplice.

\beginwrapfloatfigureI0pt\includegraphics[width=0.5\columnwidth]Relativo\captionUn esempio di figura ‘‘avvolta’’ da un testo.\endwrapfloat

Può rendersi necessario un po’ di lavoro per ottenereun’impaginazione ottimale. \dots

L’ambiente wrapfloat prevede tre argomenti obbligatori:

\beginwrapfloat〈oggetto〉〈posizionamento〉〈larghezza〉

L’argomento 〈oggetto〉 indica il tipo di oggetto incluso (figure otable). L’argomento 〈posizionamento〉 indica come deve essere posi-zionato l’oggetto: è uno degli otto parametri riportati nella tabella 26

(bisogna specificare un solo parametro, non un elenco). I parametrivengono a coppie: una versione minuscola che mette l’oggetto nelpunto esatto in cui compare nel testo (“esattamente qui”), mentre laversione maiuscola crea un oggetto mobile. L’argomento 〈larghezza〉specifica la larghezza dell’oggetto; se si specifica una larghezza nul-la (0pt), viene usata la larghezza della figura specificata dal comando\includegraphics.

6.4.6 Didascalie laterali: il pacchetto sidecap

Talvolta si desidera che la didascalia appaia di fianco al relativo og-Il pacchetto sidecapgetto mobile, invece che sopra o sotto. A tal fine si usa il pacchettosidecap. 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). È l’opzionepredefinita.

innercaption La didascalia è posta nel margine interno (a destra nellepagine sinistre e a sinistra nelle pagine destre).

leftcaption, rightcaption La didascalia è sempre posta a sinistra oa destra, rispettivamente.

raggedright, raggedleft, ragged Consentono una migliore giustifica-zione delle didascalie corte.

Page 129: L'arte di scrivere con LaTeX _ Pantieri

6.4 GLI OGGETTI MOBILI 107

Figura 12: Un esempio d’uti-lizzo del pacchettosidecap (l’immagine,che riproduce la lito-grafia di M. EscherConcavo e convesso, ètratta da http://www.mcescher.com/).

Il pacchetto sidecap definisce due nuovi ambienti, SCfigure e SCtable,analoghi agli ambienti figure e table, rispettivamente. Gli ambientiSCfigure e SCtable prevedono due argomenti opzionali:

\beginSCfigure[〈larghezza relativa〉][〈posizionamento〉]\beginSCtable[〈larghezza relativa〉][〈posizionamento〉]

L’argomento 〈larghezza relativa〉 indica il rapporto fra la larghezzadella didascalia e la larghezza della figura o della tabella corrisponden-te. Un valore grande di 〈larghezza relativa〉 (per esempio, 50) impostaper la didascalia la larghezza massima possibile. Il valore predefinito è\sidecaptionrelwidth (che è pari a 1.0). L’argomento 〈posizionamento〉indica il consueto parametro di posizionamento degli oggetti mobili esi usa come negli ambienti figure e table (vedi il paragrafo 6.4 apagina 98); il suo valore predefinito è tbp.

(Esistono anche gli ambienti SCfigure* e SCtable*, la cui sintassi èla stessa di SCfigure e SCtable, che permettono di avere rispettivamen-te una figura o una tabella mobile — con didascalia laterale — estesasu tutta la pagina in un documento a più colonne.)

Ad esempio, la figura 12 è stata inserita con un codice del tiposeguente:

\beginSCfigure[][tb]\centering\includegraphics[width=0.5\textwidth]ConcavoConvesso\captionUn esempio di figura con didascalia laterale.\labelfig:sidecap\endSCfigure

Page 130: L'arte di scrivere con LaTeX _ Pantieri
Page 131: L'arte di scrivere con LaTeX _ Pantieri

7 L A M A T E M A T I C A

INDICE7.1 Formule in corpo e fuori corpo 1107.2 Nozioni basilari 111

7.2.1 Raggruppamenti 112

7.2.2 Apici, pedici e radici 112

7.2.3 Somme, prodotti e frazioni 112

7.2.4 Limiti, derivate e integrali 113

7.2.5 Insiemi numerici 113

7.2.6 Lettere greche 114

7.2.7 Accostare simboli ad altri simboli 114

7.2.8 Barre e accenti 115

7.2.9 Punti e frecce 116

7.3 Gli operatori 1177.4 Le parentesi 1187.5 Vettori e matrici 1217.6 Formule fuori corpo 122

7.6.1 Formule spezzate senza allineamento: multline 123

7.6.2 Formule spezzate con allineamento: split 123

7.6.3 Gruppi di formule senza allineamento: gather 124

7.6.4 Gruppi di formule con allineamento: align 124

7.6.5 Gli ambienti gathered e aligned 124

7.6.6 Casi e numerazione subordinata 125

7.7 Modificare lo stile e il corpo dei font 1257.8 Enunciati e dimostrazioni 1287.9 Diagrammi commutativi 1317.10 Fisica e chimica 1317.11 Evidenziare formule: il pacchetto empheq 1327.12 Elenco dei simboli matematici 133

In questo capitolo verrà esplorato uno dei principali punti di forzadi LATEX: la composizione di formule matematiche. Questo capitolointacca solamente la superficie dell’argomento. Benché gli strumentiche verranno spiegati siano sufficienti per la maggior parte delle esi-genze, se non si trova la soluzione per “quella” particolare necessità discrittura matematica è molto probabile che il problema sia risolvibilecon una funzione del pacchetto amsmath o con qualche altro pacchetto.

La scrittura della matematica è regolata da norme che dipendono Le norme ISO-UNIprima di tutto dalle tradizioni e dalla cerchia dei lettori cui lo scrit-to è destinato. Queste regole sono esplicitate nel mondo dalla normeemesse dall’iso, in Italia dalle norme definite dall’uni. Le norme uni

hanno valore di legge: se un documento legale, un capitolato d’appal-to, . . . viene scritto in modo conforme alle norme, mantiene il valorelegale che deve avere. Per maggiori dettagli sulle norme iso-uni sirimanda alla relativa documentazione e a [Beccari, 2009].1

1 Purtroppo, nonostante abbiano valore di legge, non è possibile consultare liberamentele norme iso-uni, ma occorre abbonarsi ad un servizio di consultazione (a pagamento).

109

Page 132: L'arte di scrivere con LaTeX _ Pantieri

110 LA MATEMATICA

7.1 FORMULE IN CORPO E FUORI CORPODa qui in avanti, per tutto il capitolo, diamo per scontato che sianoI pacchetti amsmath

e amssymb caricati i pacchetti amsmath e amssymb:

\usepackageamsmath,amssymb

Con LATEX ci sono due modi per scrivere la matematica:

UNA FORMULA IN CORPO (o “in linea”) è un’espressione matematicacomposta da LATEX in linea con il corpo testo (“incorporata neltesto”), come ad esempio limn→∞∑nk=1

1k2

= π2

6 .

UNA FORMULA FUORI CORPO (o “in display”) è un’espressione com-posta da LATEX in linee a sé stanti, staccate dal testo precedente eseguente mediante spazi di ampiezza adeguata per “mettere inmostra” l’espressione; per esempio

limn→∞

n∑k=1

1

k2=π2

6.

Quando una formula è in corpo, LATEX fa il possibile per schiacciar-Le formule in corposi usano solo per

espressioni di piccoledimensioni.

la e non aumentare l’interlinea. Se la stessa formula è fuori corpoc’è molta più libertà di manovra. È preferibile servirsi delle formulein corpo solo per espressioni di piccole dimensioni: le altre formulevanno messe fuori corpo.

Le formule in corpo si inseriscono includendole tra dollari. In alter-nativa, si possono usare i comandi (\. . .\).

Ci sono voluti secoli perdimostrare che quando $n>2$\emphnon ci sono tre interipositivi $a$, $b$, $c$ taliche $a^n+b^n=c^n$.

Ci sono voluti secoli per dimostrareche quando n > 2 non ci sono treinteri positivi a, b, c tali che an +

bn = cn.

Il font delle formule è il corsivo matematico (diverso dal corsivo deltesto). Gli esponenti sono stampati più piccoli delle basi.

Le formule fuori corpo si scrivono usando diversi ambienti, di cui iFormule numerate enon numerate 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\beginequationF’(x)=f(x).\endequation

Se f è continua e

F(x) =

∫xaf(x)dx,

alloraF ′(x) = f(x). (7.1)

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

2 Nell’inserimento delle formule fuori corpo, l’uso del codice $$. . .$$ è invece sempresconsigliabile per molte ragioni [Fairbairns, 2007; Trettin e Zannarini, 2005].

Page 133: L'arte di scrivere con LaTeX _ Pantieri

7.2 NOZIONI BASILARI 111

Tabella 27: Spazi in modo matematico.

\, Spazio sottile\quad Spazio di un “quadrato”\qquad Spazio di un “quadratone”

\beginequation\labeleq:eulere^i\pi+1=0.\endequationDalla formula~\eqrefeq:eulersi deduce che\dots

eiπ + 1 = 0. (7.2)

Dalla formula (7.2) si deduceche. . .

Ci sono delle differenze tra il modo con cui si inserisce la matematica Modo matematico emodo testuale(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 significato, poiché Spazi in modomatematicogli spazi sono inseriti automaticamente da LATEX, sulla base del-

la struttura dell’espressione matematica: quindi $x+y+z=n$ dàlo stesso risultato di $ x + y + z = n $. Se occorre, gli spazidevono essere specificati usando comandi speciali come \, (cheproduce uno spazio sottile) oppure \quad o \qquad (che dannospazi ampi). La dimensione di un \quad ( ) corrisponde all’am-piezza del carattere “M” nel font corrente, lo spazio sottile \,

( ) è pari a 318 di \quad, mentre \qquad ( ) produce uno spa-

zio pari a due \quad. L’ampiezza di un \quad è chiamata anche“quadrato”, mentre quella di un \qquad è detta “quadratone”.

• Non sono ammesse righe vuote.

• Ogni lettera è considerata come un nome di variabile e viene Inserire un brevetesto in una formulafuori corpo

scritta come tale. Se si vuole inserire un breve testo all’interno diuna formula fuori corpo (con font e spaziatura normali), allorabisogna scriverlo usando il comando \text〈. . .〉. La spaziaturaprima e dopo \text va esplicitata.

$x+y+z=n$ \\$ x + y + z = n $

x+ y+ z = n

x+ y+ z = n

\[x^2+1=0 \quad\textper $x=\pm i$.\]

x2 + 1 = 0 per x = ±i.

Il comando \pm dà ±. C’è anche \mp che dà ∓.Nastro diMöbius II, incisionesu legno diM. Escher(l’immagine è trattada http://www.mcescher.com/).

7.2 NOZIONI BASILARIIn questo paragrafo verranno descritti alcuni comandi che vengo-

no usati di frequente per scrivere formule matematiche. Nel paragra-

Page 134: L'arte di scrivere con LaTeX _ Pantieri

112 LA MATEMATICA

fo 7.12 a pagina 133 è riportato un elenco dettagliato dei principalicomandi per scrivere simboli matematici.

7.2.1 Raggruppamenti

La maggior parte dei comandi agiscono solo sul carattere successi-Graffe diraggruppamento vo. 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 6= ax+y

7.2.2 Apici, pedici e radici

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

$a_1$ \qquad $x^2$ \qquad$e^-\alpha t$ \qquad$a^3_ij$ \\$e^x^2 \neq e^x^2$

a1 x2 e−αt a3ij

ex2 6= ex2

Non si può scrivere x_n_k: è necessario usare le graffe.

Dalla successione $x_n$estrarre $x_n_k$.

Dalla successione xn estrarre xnk .

La radice quadrata si scrive come \sqrt, la radice n-esima si ottie-Radicine con \sqrt[〈n〉]〈. . .〉. La dimensione della radice è determinataautomaticamente da LATEX.

$\sqrtx$ \qquad$\sqrtx^2+\sqrty$ \qquad$\sqrt[3]2$

√x

√x2 +

√y

3√2

7.2.3 Somme, prodotti e frazioni

Il simbolo di sommatoria è generato con \sum e il simbolo di produt-Somme e prodottitoria con \prod. Gli estremi si scrivono come pedici e apici.

Trovare il massimo valoredella 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 dellafunzione

f(x1, . . . , xn) =

n∏k=1

xk

sotto la condizione

n∑k=1

x2k = 1.

Page 135: L'arte di scrivere con LaTeX _ Pantieri

7.2 NOZIONI BASILARI 113

Una frazione, anche complessa, si ottiene semplicemente con il co- Frazionimando \frac〈numeratore〉〈denominatore〉. A volte la forma n/m èpreferibile, perché è più gradevole a vedersi per piccole quantità di“materiale frazionario”.

\[\fracx^2k+1 \qquadx^\frac2k+1 \qquadx^1/2\]

x2

k+ 1x2k+1 x1/2

7.2.4 Limiti, derivate e integrali

I limiti si fanno con il comando \lim_〈variabile〉\to 〈valore〉. Limiti

\[\lim_x\to 0\frac\sin xx=1 \qquad\lim_n\to +\inftyf_n=\delta\]

limx→0

sin xx

= 1 limn→+∞ fn = δ

Il comando \infty dà∞.Le derivate si fanno con il simbolo ’ che produce un segno di “pri- Derivate

mo”.

\[y=x^2, \quad y’=2x, \quady’’=2.\]

y = x2, y ′ = 2x, y ′′ = 2.

Il simbolo di integrale è generato tramite \int. Gli estremi di in- Integralitegrazione sono come pedici e apici: \int_a^b. Se un pedice o api-ce è formato da più di una lettera o cifra, va racchiuso tra graffe:\inta+1^b+1.

\[\int_a^a+Tf(x)\,dx=\int_0^T f(x)\,dx\]

∫a+T

af(x)dx =

∫T0f(x)dx

Lo spazio sottile \, allontana dx da f(x).Per gli integrali multipli si usano i comandi \iint, \iiint, \iiiint

! !! !!!

!· · ·

!

1

e \idotsint.

\[\iint_D f(x,y)\,dx\,dy \qquad\iiint g \,dx\,dy\,dz\]

∫∫Df(x,y)dxdy

∫∫∫gdxdydz

7.2.5 Insiemi numerici

I simboli degli insiemi numerici si ottengono con \mathbb (blackboard “Neretto da lavagna”bold, “neretto da lavagna”).

Page 136: L'arte di scrivere con LaTeX _ Pantieri

114 LA MATEMATICA

\[x^2 \geq 0 \quad\forall x \in \mathbbR.\]

x2 > 0 ∀x ∈ R.

Il comando \in dà la relazione di appartenenza ∈ (per la non appar-tenenza /∈ si usa \notin).

Conviene scrivere nel preambolo le seguenti definizioni:

\newcommand\numberset\mathbb\newcommand\N\numbersetN\newcommand\R\numbersetR

In questo modo, basta scrivere \N per avere N ed è possibile cambiarenotazione con un’unica modifica.

7.2.6 Lettere greche

Le lettere greche minuscole si ottengono con \alpha, \beta, \gamma,\delta, . . . (vedi la tabella 30 a pagina 133).

Alcune lettere greche minuscole hanno delle forme varianti i cuinomi cominciano con l’abbreviazione var (vedi la tabella 28 a fronte);esse negli Stati Uniti sono delle varianti, ma in Europa (ad eccezionedi \varsigma) sono considerate le forme principali.3

Per scrivere documenti in accordo con il gusto europeo, è utile ri-Scrivere le letteregreche minuscole inaccordo con il gusto

europeo

definire le lettere greche varianti (ad eccezione di \varsigma) comenormali. A tal fine, è sufficiente scrivere nel preambolo

\renewcommand\epsilon\varepsilon\renewcommand\theta\vartheta\renewcommand\rho\varrho\renewcommand\phi\varphi

Le lettere greche maiuscole si ottengono con \Gamma, \Delta, . . . (ve-!

di la tabella 31 a pagina 133). Non ci sono α e β maiuscole in LATEX 2ε,perché sono uguali alle normali A e B latine.

$\lambda$, $\mu$, $\xi$,$\pi$, $\Phi$, $\Omega$

λ, µ, ξ, π, Φ, Ω

7.2.7 Accostare simboli ad altri simboli

Per posizionare un simbolo sopra o sotto un altro simbolo si usanoi comandi \overset e \underset.

Il comando \overset〈primo argomento〉〈secondo argomento〉 poneI comandi \overset e\underset il simbolo indicato nel 〈primo argomento〉 sopra quello specificato nel

〈secondo argomento〉, scrivendo il primo con dimensioni inferiori (pa-ri a quelle di un apice), mentre il secondo viene mantenuto nella

3 Con i font AMS Euler (usati in questo documento), \rho e \varrho producono lo stessorisultato; lo stesso accade per \sigma e \varsigma (vedi la tabella 28 nella pagina succes-siva). Dal momento che, in un documento, per ciascuna lettera si sceglie in alternativala forma principale o la sua variante, non c’è pericolo di confusione.

Page 137: L'arte di scrivere con LaTeX _ Pantieri

7.2 NOZIONI BASILARI 115

Tabella 28: Lettere greche minuscole: forme principali e varianti.

(a) Font AMS Euler.

! \epsilon " \varepsilon

# \theta $ \vartheta

% \rho % \varrho

& \sigma & \varsigma

' \phi ( \varphi

(b) Font Palatino.

! \epsilon " \varepsilon

# \theta $ \vartheta

% \rho & \varrho

' \sigma ( \varsigma

) \phi * \varphi

sua posizione usuale (tipicamente, il 〈secondo argomento〉 è un simbo-lo di relazione binaria). Il comando \underset ha un comportamentoanalogo.

Il simbolo\[\oversetH=\]indica l’uguaglianza nel sensodel teorema dide l’H\^opital.

Il simboloH=

indica l’uguaglianza nel senso delteorema di de l’Hôpital.

7.2.8 Barre e accenti

Il comando \bar pone un trattino sul carattere seguente: il simbolo Barre orizzontalix, per esempio, indica un nome di variabile distinto da x.

I comandi \overline e \underline rispettivamente sopralineano esottolineano tutto quanto si trova tra le graffe: il simbolo x indica unoperatore (coniugio di numeri complessi, per esempio) applicato allavariabile x.

$\barx$ \qquad$ \barX$\qquad $\overlinem+n$

x X m+n

I comandi \vec e \overrightarrow sono come \bar e \overline confrecce al posto di righe.

$\vec x$ \qquad$\overrightarrowAB$ ~x

−→AB

Ci sono tre tipi di barre verticali, che differiscono per come sono Barre verticalispaziati 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” negliinsiemi).

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

Page 138: L'arte di scrivere con LaTeX _ Pantieri

116 LA MATEMATICA

Analogamente, per le doppie barre verticali abbiamo: \| (o \Vert),\lVert, \rVert e \parallel.

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

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

A \B

A\B

Scrivendo A\backslash B viene una spaziatura (leggermente) sbaglia-ta.

Per il valore assoluto e la norma è conveniente caricare il pacchettoValore assoluto enorma mathtools e definire 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^+\inftyz^n=\frac11-z \quad\textper $\absz<1$.\]

+∞∑n=0

zn =1

1− zper |z| < 1.

\[\normax=\sqrtx_1^2+\dots+x_n^2\]

‖x‖ =

√x21 + · · ·+ x2n

Per aggiungere alle variabili un accento matematico, come un cap-Accenti matematicipello o un segno di tilde, si possono usare i comandi della tabella 32

a pagina 133. I segni di cappello o tilde coprenti diversi caratteri sonoprodotti tramite \widehat e \widetilde.

7.2.9 Punti e frecce

Ci sono due tipi di “due punti”, spaziati diversamente:Due punti

• semplice :, che è spaziato come un’operazione binaria (divisio-ne);

• \colon, che è spaziato come un’interpunzione.

Si confrontino:

$f\colon\R\to\R$ \\$f:\R\to\R$

f : R→ R

f : R→ R

Se si scrive f:\R\to\R viene una spaziatura (leggermente) sbagliataattorno ai due punti.

Per inserire punti ellittici in una formula si usa il comando \dots,Punti ellitticiche, automaticamente a seconda del contesto, inserisce i punti sullalinea di base del testo o li centra rispetto alla riga:

Page 139: L'arte di scrivere con LaTeX _ Pantieri

7.3 GLI OPERATORI 117

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

x1, . . . , xn x1 + · · ·+ xn

Si possono trovare altri esempi nel paragrafo 7.5 nella pagina 122.Oltre alla freccia semplice →, che si ottiene con il comando \to, c’è Frecce

anche quella col trattino 7→, che si ottiene con \mapsto.

$f\colon\R\to\R$, \\$x\mapsto x^2$

f : R→ R,x 7→ x2

I comandi \xleftarrow e \xrightarrow stampano frecce che si esten-dono automaticamente per accordarsi con grandezze inusuali di api-ci e pedici. Questi comandi prendono un argomento facoltativo (ilpedice) e un argomento obbligatorio (l’apice, che può anche esserevuoto):

\[\xleftarrown+\mu-1 \quad\xrightarrow[T]n\pm i-1\]

n+µ−1←−−−−− n±i−1−−−−−→T

I simboli logici vanno usati solo se si sta scrivendo un lavoro di logi- Simboli logicica (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 ¬.

7.3 GLI OPERATORILe funzioni matematiche come sin, cos e log sono (per tradizione

conservata dalle norme iso-uni) stampate in tondo per renderne piùimmediata la visibilità rispetto alle variabili matematiche, che sonostampate in corsivo matematico.

Inoltre, le funzioni matematiche richiedono certi spazi alla loro de-stra e alla loro sinistra; questi spazi dipendono dalla natura deglioggetti matematici che precedono o seguono le funzioni.

\[\cos2x=\frac1-\sin^2x2,\]

cos 2x =1− sin2 x

2,

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

log log x, log(x+ y)

In LATEX, i comandi come \sin, \cos e \log sono detti operatori. Si notiche 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

Page 140: L'arte di scrivere con LaTeX _ Pantieri

118 LA MATEMATICA

spazio sottile tra log e x, mentre nella formula log(x+ y) non ci sonospazi tra log e “(”.

Se si omette il “\” si ha cosx in corsivo e spaziato scorrettamente,che non è più un operatore. Solo usando gli appositi comandi, LATEXsa che sta usando degli operatori e sa quale font e quali spazi usare.

I seguenti sono alcuni operatori predefiniti:Operatori predefiniti

$\arccos x$, $\exp x$,$\min_x\in A f(x)$,$\det A$, $\log x$, $\tan x$

arccos x, exp x, minx∈A f(x), detA,log x, tan x

Per quel che riguarda la relazione di congruenza modulo m, ci sonodue comandi, \bmod e \pmod:

$a\bmod b$ \qquad$a\equiv b \pmodm$

a mod b a ≡ b (mod m)

La tabella 29 a fronte riporta l’elenco degli operatori predefiniti diLATEX.

Dal momento che nelle pubblicazioni relative alla matematica si in-Definire nuovioperatori troducono continuamente nuove funzioni, è utile disporre di un meto-

do generale per definire nuovi operatori. A tal fine, si usa il comando\DeclareMathOperator.

Per esempio, per definire una funzione matematica arcsinh che deno-ti l’arcoseno iperbolico (che non è definito né da LATEX né da amsmath),si scrive nel preambolo

\DeclareMathOperator\arcsinharcsinh

Nel seguito, basta scrivere \arcsinh per avere arcsinh nel font correttoe adeguatamente spaziato su entrambi i lati.

L’operatore che denota la parte reale di un numero complesso è \Re,Operatore “partereale” che produce il simbolo <; se lo si vuole ridefinire in modo che esso sia

scritto in tondo e non in gotico, si usano i comandi

\let\Re\relax\DeclareMathOperator\ReRe

La dichiarazione \let\Re\relax è necessaria dal momento che l’ope-ratore \Re è già definito.

Se il nuovo operatore dovesse esser dotato di pedici e apici posizio-Definire operatori “ditipo limite” nati “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*\LimLim

7.4 LE PARENTESIPer quel che riguarda le parentesi e gli altri delimitatori, LATEX offre

un vasto assortimento di simboli. Le parentesi tonde e quadre posso-no essere scritte “normalmente”, ossia con i caratteri corrispondenti,mentre le parentesi graffe vanno scritte con \; tutti gli altri delimi-tatori vengono generati tramite comandi speciali (come ad esempio\updownarrow).

Page 141: L'arte di scrivere con LaTeX _ Pantieri

7.4 LE PARENTESI 119

Tabella 29: Gli operatori predefiniti.

\arccos \cosh \det \inf \limsup \Pr \tan

\arcsin \cot \dim \ker \ln \sec \tanh

\arctan \coth \exp \lg \log \sin

\arg \csc \gcd \lim \max \sinh

\cos \deg \hom \liminf \min \sup

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

a,b, c 6= a,b, c

Per l’elenco di tutti i delimitatori disponibili si vedano le tabelle 36

e 37 a pagina 135.In certi casi è necessario specificare manualmente la giusta dimen- Specificare

manualmente ledimensioni di undelimitatore

sione di un delimitatore matematico: ciò si può fare tramite i comandi\big, \Big, \bigg e \Bigg, usabili come prefissi sulla maggior partedei delimitatori.

I comandi \bigl e \bigr ingrandiscono lievemente le parentesi:

\[\bigl( (x-y)+(x+y) \bigr)\]

((x− y) + (x+ y)

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

\[\Bigl(1+\frac1n\Bigr)^n\]

(1+

1

n

)nI comandi \biggl e \biggr le producono ancora più grandi:

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

(∑n

x2n

)1/2

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 Graffe orizzontaliorizzontali sopra o sotto un’espressione.

4 È possibile specificare automaticamente le dimensioni di un delimitatore con i comandi\left (davanti ad un delimitatore di apertura) e \right (davanti al corrispondente de-limitatore 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 sullastessa riga e che se non si vuole niente sulla destra si usa l’invisibile \right. (con puntofinale). Tuttavia, la scelta manuale è spesso la migliore, poiché in molti casi \left e\right inseriscono spaziature non richieste e parentesi più grandi del necessario.

Page 142: L'arte di scrivere con LaTeX _ Pantieri

120 LA MATEMATICA

\[\underbrace1+2+\dots+n_=\fracn(n+1)2+(n+1)\]

1+ 2+ · · ·+n︸ ︷︷ ︸=n(n+1)

2

+(n+ 1)

Per scrivere coefficienti binomiali si usa il comando \binom:Coefficienti binomiali

\[(a+b)^n=\sum_\substackk\in\N \\0\le k\le n\binomnka^n-k b^k\]

(a+ b)n =∑k∈N06k6n

(n

k

)an−kbk

Il comando \substack〈sopra〉\\〈sotto〉 serve per produrre un apice oun pedice su più righe.

Gli intervalli della retta reale si possono indicare con le parentesiIntervalliquadre. Si confronti:

$]a,b[ \times ]b,c[$ \\$\mathopen]a,b\mathclose[\times\mathopen]c,d\mathclose[$

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

Se scriviamo ]a,b[ può venire una spaziatura (lievemente) sbagliataattorno alle parentesi. I comandi \mathopen] e \mathclose[ fannospaziare le parentesi quadre come aperta e chiusa rispettivamente.

Per i sistemi di equazioni è conveniente definire un apportuno am-Sistemi di equazionibiente nel preambolo:

\newenvironmentsistema%\left\lbrace\beginarray@l@%\endarray\right.

da usare come segue:

\[\beginsistemax+y+z=0 \\2x-y=1 \\y-4z=-3\endsistema\]

x+ y+ z = 0

2x− y = 1

y− 4z = −3

Per gli insiemi, è conveniente caricare il pacchetto braket, che metteInsiemia disposizione l’apposito comando \Set.

\[\Set\frac1n^3 | n\in\N\]

1

n3

∣∣∣∣ n ∈N

Per le parentesi ad angolo, si usano i comandi \Bra, \Ket e \BraketParentesi ad angolo(sempre del pacchetto braket):

Page 143: L'arte di scrivere con LaTeX _ Pantieri

7.5 VETTORI E MATRICI 121

\[\Bra\psi_n \quad\Ket\psi \quadc_n=\Braket\psi_n | \psi\]

〈ψn| |ψ〉 cn = 〈ψn |ψ〉

7.5 VETTORI E MATRICII vettori si scrivono di solito in neretto (corsivo, secondo le norme Vettori

iso-uni) oppure in semplice corsivo matematico; talvolta, soprattuttonei testi di fisica, vengono stampati con una freccia sopra. Per scrive-re simboli in neretto si può usare il comando \mathbf; per il nerettocorsivo c’è il comando \bm, messo a disposizione dal pacchetto bm(bold math); per comporre simboli con una freccia sopra si usa il co-mando \vec. Può essere conveniente ridefinire il comando \vec, nelpreambolo:

\renewcommand\vec\bm

In questo modo, basta scrivere \vecv per avere v ed è possibile cam-biare notazione con un’unica modifica (vedi anche il paragrafo 7.7 apagina 125).

Per scrivere matrici si usano gli ambienti pmatrix, bmatrix, Bmatrix, Matricivmatrix e Vmatrix, che hanno come delimitatori rispettivamente pa-rentesi tonde, parentesi quadre (braces), parentesi graffe (curly Braces),barre verticali e doppie barre Verticali; c’è anche l’ambiente matrixsenza delimitatori.

Gli elementi sono centrati automaticamente. Righe e colonne siscrivono come in tabular:

• i vari & separano gli elementi di una riga;

• il comando \\ serve per terminare una riga (eccetto l’ultima);

• gli spazi non espliciti sono ignorati.

\[\beginpmatrix1 & 2 \\3 & 4\endpmatrix\]

(1 2

3 4

)

\[\beginbmatrix1 & 2 \\3 & 4\endbmatrix\]

[1 2

3 4

]

Page 144: L'arte di scrivere con LaTeX _ Pantieri

122 LA MATEMATICA

\[\beginvmatrix1-x & 2 \\3 & 4-x\endvmatrix\]

∣∣∣∣∣1− x 2

3 4− x

∣∣∣∣∣

Il seguente è un esempio di matrice con punti ellittici:Matrici con puntiellittici

\[A=\beginbmatrixx_11 & x_12 & \dots \\x_21 & x_22 & \dots \\\vdots & \vdots & \ddots\endbmatrix\]

A =

x11 x12 . . .

x21 x22 . . ....

.... . .

Il comando \vdots fa tre punti ellittici verticali, il comando \ddotsfa tre punti ellittici diagonali. Il comando \hdotsfor〈n〉 riempie dipunti ellittici per n colonne.

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

\[\beginbmatrixa_11 & a_12 & \dots &a_1n \\a_21 & a_22 & \dots &a_2n \\\hdotsfor4 \\a_n1 & a_n2 & \dots &a_nn\endbmatrix\]

!

""""#

a11 a12 . . . a1n

a21 a22 . . . a2n

. . . . . . . . . . . . . . . . . . . . . . . .an1 an2 . . . ann

$

%%%%&

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

1

Per scrivere una piccola matrice in linea con il corpo del testo èPiccole matricidisponibile l’ambiente smallmatrix:

Sia $A=\bigl(\beginsmallmatrixa & b \\c & d\endsmallmatrix\bigr)$una matrice invertibile.

Sia A =(a bc d

)una matrice

invertibile.

Le parentesi vanno aggiunte manualmente.

7.6 FORMULE FUORI CORPOLe formule lunghe non vengono automaticamente divise in parti daFormule lunghe

LATEX. Solo chi ha scritto la formula, infatti, ne conosce il ritmo dilettura e sa dove è più opportuno andare a capo e se allineare o menole varie righe.

Page 145: L'arte di scrivere con LaTeX _ Pantieri

7.6 FORMULE FUORI CORPO 123

In generale, tuttavia, vale la regola per cui si può andare a capo dopoi simboli di relazione e, subordinatamente, dopo i simboli di relazionee operazione binaria (vedi le tabelle 33 e 34 a pagina 134), mai dopogli operatori funzionali (tabella 29 a pagina 119), i grandi operatori e idelimitatori di apertura (vedi le tabelle 35, 36 e 37 a pagina 135).

Per spezzare le formule fuori corpo, il pacchetto amsmath mette adisposizione (fra l’altro) gli ambienti multline, split, gather e align.5

7.6.1 Formule spezzate senza allineamento: l’ambiente multline

Per dividere una singola formula in più righe, senza particolari allinea- Spezzare una singolaformula senzaallineamento

menti fra le varie righe, si usa l’ambiente multline.

\beginmultlinef=a+b+c \\+d+e+g+h \\+r+s+t.\endmultline

f = a+ b+ c

+ d+ e+ g+ h

+ r+ s+ t. (7.3)

In stampa la prima riga è allineata a sinistra, l’ultima è allineata adestra, e le altre vengono centrate (a meno che non sia in funzionel’opzione fleqn, che compone le formule visualizzate allineandole asinistra (rispetto a un margine rientrato) invece che centrandole. Ilnumero della formula è stampato a margine destro dell’ultima riga.

L’ambiente multline* produce una formula non numerata.

7.6.2 Formule spezzate con allineamento: l’ambiente split

Per dividere una singola formula in più righe, con le righe da allineare, Spezzare una singolaformula conallineamento

si usa l’ambiente split.

\beginequation\beginsplita &= b+c-d \\&= e-f \\&= g+h \\&= i.

\endsplit\endequation

a = b+ c− d

= e− f

= g+ h

= i.

(7.4)

Il simbolo & marca il punto di una riga da incolonnare con i punticorrispondenti delle altre righe. Il numero della formula è centratoverticalmente.

A differenza di altre strutture per comporre formule, l’ambientesplit non produce numeri, poiché è progettato per essere usato esclu-sivamente all’interno di qualche altra struttura per formule fuori cor-po (di solito un ambiente equation, align o gather), che fornisce lanumerazione.

5 Per spezzare formule fuori corpo, l’uso dell’ambiente eqnarray è invece sempresconsigliabile per molte ragioni [Fairbairns, 2007; Trettin e Zannarini, 2005].

Page 146: L'arte di scrivere con LaTeX _ Pantieri

124 LA MATEMATICA

7.6.3 Gruppi di formule senza allineamento: l’ambiente gather

L’ambiente gather serve per raggruppare più formule, ognuna cen-Raggruppare piùformule senzaallineamento

trata in una riga a sé, numerata separatamente, senza allineamento l’unacon l’altra; a ciascuna formula può essere attribuita un’etichetta.

\begingathera=b+c, \\V+F-S=2.\endgather

a = b+ c, (7.5)

V + F− S = 2. (7.6)

Con più ambienti equation di seguito l’effetto sarebbe simile, ma laspaziatura fra le righe sarebbe esagerata. Una formula che finisce con\notag non viene numerata.

L’ambiente gather* (come equation*) non numera le formule.

7.6.4 Gruppi di formule con allineamento: l’ambiente align

L’ambiente align permette di disporre gruppi di due o più formule,Disporre gruppi diformule con

allineamentociascuna su una riga, numerate singolarmente, da allineare fra loro.

\beginaligna_1 &= b_1+c_1+d_1, \\a_2 &= b_2, \notag \\a_3-1 &= b_3+c_3.\endalign

a1 = b1 + c1 + d1, (7.7)

a2 = b2,

a3 − 1 = b3 + c3. (7.8)

Il simbolo & marca la posizione di una riga da incolonnare (di solitoper gli allineamenti vengono scelti i simboli di relazione). Una formulache finisce con \notag non è numerata.

L’ambiente align* produce formule non numerate.L’ambiente align può anche allineare più colonne di formule. In tal

caso i vari & hanno due significati diversi:

• i simboli & di posto dispari (primo, terzo, . . . ) segnano i punti daincolonnare;

• i simboli & di posto pari (secondo, quarto, . . . ) servono solo perdistanziare una colonna di formule dall’altra.

\beginaligna &= b, & c &=d, & e &=f, \\u &= v, & w &=x, & y &=z.\endalign

a = b, c = d, e = f, (7.9)

u = v, w = x, y = z. (7.10)

7.6.5 Gli ambienti gathered e aligned

Come equation, gli ambienti per disporre gruppi di formule gathere align sono progettati per produrre strutture aventi lunghezza com-plessiva pari alla lunghezza di una riga; questo implica, ad esempio,che non è facile aggiungere parentesi attorno alle strutture. Vengonoallora fornite le varianti gathered e aligned, la cui lunghezza tota-le è pari alla reale lunghezza dei contenuti; le strutture così ottenute

Page 147: L'arte di scrivere con LaTeX _ Pantieri

7.7 MODIFICARE LO STILE E IL CORPO DEI FONT 125

possono quindi essere usate come componenti di un’espressione piùcomplessa. Ad esempio:

\[\left.\beginaligned\nabla\cdot E &= 4\pi\rho, \\\nabla\cdot B &= 0,\endaligned\right\\quad\texteq.~di Maxwell\]

∇ · E = 4πρ,

∇ ·B = 0,

eq. di Maxwell

7.6.6 Casi e numerazione subordinata

L’ambiente cases serve per le definizioni fatte per casi. La graf- Casifa e l’allineamento sono automatici; il testo nella seconda colonna vadentro a \text〈. . .〉.

\[f(n):=\begincases2n+1, & \textse $n$ èdispari, \\n/2, & \textse $n$ è pari.\endcases\]

f(n) :=

2n+ 1, se n è dispari,

n/2, se n è pari.

Per numerare un gruppo di formule con uno schema subordinato è Numerazionesubordinatadisponibile l’ambiente subequations:

\beginsubequations\labeleqn:schema\beginaligna &= b+c, \\c &= d, \labeleqn:sub \\e &= f+g.\endalign

\endsubequationsLe formule~\eqrefeqn:schema,e in particolarela~\eqrefeqn:sub, \dots

a = b+ c, (7.11a)

c = d, (7.11b)

e = f+ g. (7.11c)

Le formule (7.11), e in particolarela (7.11b), . . .

7.7 MODIFICARE LO STILE E IL CORPO DEI FONT

In modo matematico, LATEX seleziona automaticamente lo stile e la Font matematicidimensione dei font in accordo col contesto. Ciò nonostante, a volte ènecessario modificare lo stile e il corpo dei caratteri.

Page 148: L'arte di scrivere con LaTeX _ Pantieri

126 LA MATEMATICA

$x+y+2^n M\cos t$ \\$\mathitx+y+2^n M\cos t$ \\$\mathbfx+y+2^n M\cos t$ \\$\mathrmx+y+2^n M\cos t$ \\$\mathttx+y+2^n M\cos t$ \\$\mathsfx+y+2^n M\cos t$

x+ y+ 2nM cos tx + y + 2nM cos tx + y + 2nM cos tx + y + 2

nM cos tx+ y+ 2nM cos tx + y + 2nM cos t

Come si può constatare, i comandi di cambiamento di stile agisconosia sulle lettere sia sui numeri.

Il comando \mathcal genera delle lettere maiuscole corsive:

Siano $\mathcalC$ lacirconferenza di centro~$O$e raggio~$1$, $\mathcalD_1$e $\mathcalD_2$ due rette.

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

Non bisogna abusare, come spesso fanno i compositori amatoriali,Simboli in nerettodella possibilità di inserire simboli in neretto, tipograficamente piut-tosto “pesante”. Ciò premesso, il comando \mathbf può essere usatoper ottenere lettere latine in neretto in modo matematico, ma per lamaggior parte degli altri tipi di simboli matematici non ha effetto, oi suoi effetti dipendono in maniera non prevedibile dalla serie di fontmatematici in uso. Per esempio, scrivendo

\[\mu, M \qquad\mathbf\mu, \mathbfM\]

µ,M —, M

si osserva che il comando \mathbf non ha funzionato con la lettera µ.Inoltre, le lettere restituite dal comando \mathbf sono in tondo, mentredi solito i simboli matematici sono in corsivo.

Per comporre simboli matematici in neretto corsivo è consigliabi-Per comporre simbolimatematici in neretto

corsivo si usa \bm.le servirsi dell’apposito comando \bm, fornito dal pacchetto bm (boldmath). Va tenuto presente che \bm funziona se (e solo se) il font mate-matico in uso in quel momento dispone di una versione in neretto diquel simbolo.

\[\mu, M \qquad\bm\mu, \bmM\]

µ,M µ,M

I pedici e gli apici letterali vanno scritti in corsivo matematico sePedici e apici intondo rappresentano quantità variabili (cioè se sono dei simboli), o in tondo

se rappresentano delle apposizioni di una grandezza fisica (cioè sesono semplice testo). In quest’ultimo caso si usa il comando \textup.

\[V_\textupeff \qquad\psi_\textupincidente\]

Veff ψincidente

Si confronti:

Page 149: L'arte di scrivere con LaTeX _ Pantieri

7.7 MODIFICARE LO STILE E IL CORPO DEI FONT 127

$V_\textupeff$ \\$V_eff$

VeffVeff

Se si scrive V_eff, il font non è il tondo ma il corsivo matemati-co e la spaziatura risulta completamente sbagliata, dal momento cheLATEX interpreta le tre lettere come variabili da moltiplicare: la scritturacorretta è V_\textupeff. Si confronti anche:

\textit$V_\textupeff\neV_\texteff$ \\\textbf$V_\textupeff\neV_\mathrmeff$

Veff 6= VeffVeff 6= Veff

A differenza di \text, le parole dentro a \textup vengono sempre com-poste in tondo, e non con il font “attuale”, cioè quello in vigore fuoridalla formula: perciò se il contesto è in corsivo, il risultato di \textupè in tondo. A differenza di \mathrm, il comando \textup permette diusare gli spazi e gli accenti, impiega la famiglia di font corrente (chepotrebbe essere diversa da quella scelta da \mathrm) e, se il contesto èin neretto, produce correttamente un risultato in (tondo) neretto.

In alternativa, l’opzione italian di babel offre i comandi \ap e \pedper scrivere in tondo apici e pedici, rispettivamente.6

In modo matematico la dimensione del font può essere impostata Impostaremanualmente ladimensione dei font

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^nz^k$$\sum_k=1^n z^k$$\scriptstyle\sum_k=1^n z^k$$\scriptscriptstyle\sum_k=1^n z^k$

n∑k=1

zk∑nk=1 z

k

n∑k=1

zk∑nk=1 z

k ∑nk=1 z

k ∑nk=1 z

k

\[x_G=\frac\displaystyle\sum_i=1^n m_ix_i\displaystyle\sum_i=1^n m_i\]

xG =

n∑i=1

mixi

n∑i=1

mi

Il cambiamento di stile influisce anche sul modo in cui vengonoscritti gli apici e i pedici.

Esistono anche i comandi \dfrac e \tfrac come convenienti abbre-viazioni per \displaystyle\frac〈. . .〉 e \textstyle\frac〈. . .〉.

6 Entrambi i comandi funzionano anche in modo testo per inserire pedici o apici nel fontcorrente. Servono per abbreviazioni antiquate come Flli oppure per loghi come WordStaroppure per gli ordinali maschili o femminili 1

o, 2a, . . . , che si ottengono rispettivamente

con F\aplli, Word\pedStar e 1\apo, 2\apa.

Page 150: L'arte di scrivere con LaTeX _ Pantieri

128 LA MATEMATICA

$\frac1k\log_2 c(f)$\qquad$\dfrac1k\log_2 c(f)$\[\frac1k\log_2 c(f) \qquad\tfrac1k\log_2 c(f)\]

1k log2 c(f)

1

klog2 c(f)

1

klog2 c(f)

1k log2 c(f)

7.8 ENUNCIATI E DIMOSTRAZIONIIn questo paragrafo diamo per scontato che sia caricato il pacchetto

amsthm.Componendo documenti matematici, è utile disporre di un metodoIntrodurre ed

enumeraredefinizioni, teoremi e

strutture simili

per introdurre e numerare definizioni, teoremi e strutture simili. I tipidi enunciati non sono predefiniti, ma vanno dichiarati dall’utente, chedeve prendere alcune decisioni “globali”:

• quali tipi di enunciati si useranno, per esempio definizioni eteoremi;

• il nome dell’ambiente LATEX di ogni tipo di enunciato, per esem-pio definizione e teorema (def non si può usare perché è uncomando di base interno di TEX);

• quali parole esattamente andranno in stampa come titoli dei varienunciati, per esempio “Definizione” e “Teorema”.

Le dichiarazioni globali si fanno con il comando \newtheorem (nelIl comando\newtheorem preambolo), che consente due forme di definizione:

\newtheorem〈nome dell’enunciato〉〈titolo〉[〈sezione〉]\newtheorem〈nome dell’enunciato〉[〈numerato come〉]〈titolo〉

L’argomento 〈nome dell’enunciato〉 è una parola chiave usata per iden-tificare successivamente l’enunciato. Con l’argomento 〈titolo〉 inveceviene indicato il titolo dell’enunciato, che poi verrà stampato sul docu-mento. Gli argomenti tra parentesi quadre sono opzionali; entrambivengono impiegati per specificare la numerazione usata per l’enun-ciato. L’argomento 〈numerato come〉 deve specificare il nome di unenunciato precedentemente dichiarato: il nuovo enunciato verrà alloranumerato con la stessa sequenza numerica. L’argomento 〈sezione〉 per-mette di specificare a quale tipo di unità di sezionamento (di regolachapter o section) collegare la numerazione dell’enunciato.

Un enunciato comincia con \begin〈nome dell’enunciato〉 e finiscecon \end〈nome dell’enunciato〉. Un’eventuale specificazione dell’e-nunciato va fra quadre subito dopo \begin〈nome dell’enunciato〉; instampa verrà fra tonde.

Ci sono tre stili predefiniti di enunciati (plain, definition e remark).Stili di enunciatiI dettagli tipografici di questi stili dipendono dalla classe del documen-to, ma tipicamente lo stile plain produce un corpo del testo in corsivo,mentre gli altri due producono un corpo del testo in tondo. L’elencoseguente riporta le strutture normalmente associate ai diversi stili dienunciati:

Page 151: L'arte di scrivere con LaTeX _ Pantieri

7.8 ENUNCIATI E DIMOSTRAZIONI 129

PLAIN si usa per teoremi, lemmi, corollari, proposizioni, congetture,criteri, leggi, algoritmi;

DEFINITION è adatto per definizioni, condizioni, problemi, esempi;

REMARK si usa per osservazioni, note, notazioni.

Lo stile predefinito è plain. Per specificare stili differenti, si usa il co-mando \theoremstyle, suddividendo gli enunciati per gruppi e scri-vendo prima di ogni gruppo l’appropriato \theoremstyle. (Qualo-ra i tre stili predefiniti non fossero sufficienti, il pacchetto amsthmfornisce il comando \newtheoremstyle, che permette di creare stilipersonalizzati.)

La teoria dovrebbe essere sufficiente, i seguenti esempi dovrebberochiarire quanto appena spiegato.

Se scriviamo nel preambolo Esempi di enunciati

\theoremstyledefinition\newtheoremdefinizioneDefinizione

\theoremstyleplain\newtheoremteoremaTeorema

gli ambienti definizione e teorema si usano nel modo seguente:

\begindefinizione[di LordKelvin]Si dice \emphmatematicocolui per il quale è ovvio che$\int_-\infty^+\inftye^-x^2\,dx=\sqrt\pi$.\enddefinizione\beginteoremaI matematici, se ce ne sono,sono molto rari.\endteorema

Definizione 1 (di Lord Kelvin). Sidice matematico colui per il quale èovvio che

∫+∞−∞ e−x2 dx =

√π.

Teorema 1. I matematici, se ce nesono, sono molto rari.

Il seguente teorema è a tuttiben noto.\beginteorema[di Pitagora]La somma dei quadraticostruiti sui cateti è ugualeal quadrato costruitosull’ipotenusa.\endteoremaLa dimostrazione è lasciataper esercizio.

Il seguente teorema è a tutti bennoto.

Teorema 2 (di Pitagora). La som-ma dei quadrati costruiti sui cate-ti è uguale al quadrato costruitosull’ipotenusa.

La dimostrazione è lasciata peresercizio.

Come si vede, LATEX numera automaticamente ogni enunciato e lostacca da ciò che precede e da ciò che segue. Ogni tipo di enunciato ènumerato a parte e non c’è alcun rientro prima del titolo dell’enunciato.Il titolo e il numero dell’enunciato sono in neretto (con punto finale).Il corpo dell’enunciato è in tondo per le definizioni e in corsivo per iteoremi.

L’ambiente proof serve per le dimostrazioni. Dimostrazioni

Page 152: L'arte di scrivere con LaTeX _ Pantieri

130 LA MATEMATICA

\beginteorema[Sorpresa]Si ha che $0=1$.\endteorema\beginproofDa $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.\endproof

Teorema 3 (Sorpresa). Si ha che 0 =

1.

Dimostrazione. Da e2nπi = 1 se-gue che e1+2nπi = e, poi(e1+2nπi)1+2nπi = e1+2nπi = e,per cui e1+4nπi−4n

2π2 = e, e in-fine e4nπi−4n

2π2 = 1. Mandandon→ +∞ si ha la tesi.

Viene un quadratino a fine dimostrazione.7

Con il comando \qedhere è possibile spostare il simbolo di “finedimostrazione” in modo che sia posizionato correttamente anche se ladimostrazione termina con una formula fuori corpo.

\beginproofBasta usare la formula\[E=mc^2.\]\endproof

Dimostrazione. Basta usare la for-mula

E = mc2.

\beginproofBasta usare la formula\[E=mc^2.\qedhere\]\endproof

Dimostrazione. Basta usare la for-mula

E = mc2.

Vediamo ora un esempio di due enunciati numerati con la stessasequenza numerica. Se scriviamo nel preambolo

\theoremstyleplain\newtheoremleggeLegge\newtheoremdecreto[legge]Decreto

gli ambienti legge e decreto si usano come segue:

\beginlegge\labellex:capoIl capo ha ragione.\endlegge\begindecreto[Aggiornamentoalla legge~\reflex:capo]Il capo ha \emphsempreragione.\enddecreto\beginleggeSe il capo ha torto, vedere lalegge~\reflex:capo.\endlegge

Legge 1. Il capo ha ragione.

Decreto 2 (Aggiornamento allalegge 1). Il capo ha sempre ragione.

Legge 3. Se il capo ha torto, vedere lalegge 1.

7 Per sostituire la scritta “Dimostrazione” con un’altra, ad esempio “Soluzione”, èsufficiente scrivere \beginproof[Soluzione].

Page 153: L'arte di scrivere con LaTeX _ Pantieri

7.9 DIAGRAMMI COMMUTATIVI 131

L’enunciato “Decreto” usa lo stesso contatore dell’enunciato “Legge”,perciò ha un numero di identificazione che segue la stessa sequenzanumerica usata da questo. Gli enunciati possono essere identificati conun’etichetta.

Se si desidera introdurre un enunciato “Murphy” la cui numerazio-ne sia collegata al paragrafo corrente, è sufficiente scrivere nel pream-bolo

\newtheoremmurphyMurphy[section]

L’ambiente murphy così definito si usa nel solito modo:

\beginmurphySe esistono due o più modiper fare una cosa, e se unodi questi modi può creareuna catastrofe, alloraqualcuno lo sceglierà.\endmurphy

Murphy 7.8.1. Se esistono due o piùmodi per fare una cosa, e se uno diquesti modi può creare una catastrofe,allora qualcuno lo sceglierà.

7.9 DIAGRAMMI COMMUTATIVII diagrammi commutativi sono particolari oggetti a metà strada fra

un insieme di espressioni matematiche e un disegno che le mette inrelazione le une con le altre.

Il pacchetto amscd definisce un ambiente CD con cui è possibile di-segnare diagrammi commutativi piani e senza frecce diagonali. Perdiagrammi più complessi il lettore deve rivolgersi a pacchetti più sofi-sticati, come xypic oppure kuvio.

\[\beginCDS^\mathcalW_\mu\otimes T@>j>> T \\@VVV @VV\hom PV \\(S\otimes T)/I@=(Z\otimes T)/J\endCD\]

SWµ ⊗ T j−−−−−→ Ty yhomP

(S⊗ T)/I (Z⊗ T)/J

L’ambiente CD va usato solo all’interno di un ambiente matematico performule fuori corpo, come equation oppure uno degli altri appositiambienti visti in questo capitolo.

7.10 FISICA E CHIMICAPer inserire le unità di misura del Sistema Internazionale è consi- Unità di misura

gliabile l’uso del pacchetto siunitx, che permette di avere un controllomolto preciso del formato delle unità di misura e consente, se lo sidesidera, di cambiare convenzione tipografica con un’unica modificanel preambolo, evitando di modificare una per una le unità di misura.

Page 154: L'arte di scrivere con LaTeX _ Pantieri

132 LA MATEMATICA

\SI23.4kg.m.s^-2 \\$r_p=\SI0.8768(11)e-15m$ \\$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 \\\ang1;2;3

23.4 kg m s−2

rp = 0.8768(11)× 10−15 m

rp = (0.8768± 0.0011)× 10−15 m

J mol−1 K−1

1.2346

9.8000

1°2′3′′

Per comporre formule chimiche è utile il pacchetto mhchem. AdFormule chimicheesempio:

\ceH2O \qquad\ce^227_90Th+ \qquad\ceC6H5-CHO \\[1ex]\ceSO4^2- + Ba^2+ -> BaSO4 v

H2O 22790Th+ C6H−

5 CHO

SO2−4 + Ba2+ −−→ BaSO4 ↓

Per la composizione delle formule di struttura è disponibile il pac-Formule di strutturachetto XyMTeX:

\ryl(5==NH--SO$_2$)%4==\bzdrh1==(yl)

NH–SO2

TT

TT

TT

Per disegnare i grafici di Feynman è disponibile il pacchetto feynmf:I grafici di Feynman

>.88 $)&%$+.&!"$ 4*"30,$ : &, /!((6$##* empheq 119

\ryl(5==NH--SO$_2$)%4==\bzdrh1==(yl)

NH–SO2

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

""

""

""

""

""

""

""

""

""

""

""

""

""

""

""

""

""

""

""

""

""

""

""

""

"

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!

"""""""""""""""""""""""""""""""""""""""""""""""""

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!!

!

"""""""""""""""""""""""""""""""""""""

>.88 $)&%$+.&!"$ 4*"30,$Se si desidera dare particolare evidenza ad una formula, è utile Il pacchetto empheq

il pacchetto empheq. (Il primo dei seguenti due esempi richiede ilpacchetto xcolor.)

\newcommand*\mygraybox[1]%\colorboxlightgray#1\beginempheq[box=%\mygraybox]align*a &= b \\E &= mc^2 + \int_a^a x\, dx\endempheq

a = b

E = mc2 +

&a

ax dx

\beginempheq[box=%\fbox]align*a &= b \\E &= mc^2 + \int_a^a x\, dx\endempheq

a = b

E = mc2 +

&a

ax dx

\beginfmffileesempio\beginfmfgraph*(40,25)\fmfleftem,ep\fmffermionem,Zee,ep\fmfphotonZee,Zff\fmffermionfb,Zff,f\fmfrightfb,f\fmfdotZee,Zff

\endfmfgraph*\endfmffile

>.87 $,$+(* %$& '&32*,& 3!#$3!#&(&Nelle seguenti tabelle si possono trovare tutti i simboli ai quali si

può accedere normalmente dall’ambiente matematico. Queste tabellesono prese da [?, p. 52-58]. (Per un elenco esauriente dei simboli diLATEX, vedi [?].)

7.11 EVIDENZIARE FORMULESe si desidera dare particolare evidenza ad una formula, è utile ilIl pacchetto empheq

pacchetto empheq. (Il primo dei seguenti due esempi richiede xcolor.)

\newcommand*\mygraybox[1]%\colorboxlightgray#1\beginempheq[box=%\mygraybox]align*a &= b \\E &= mc^2 + \int_a^a x\, dx\endempheq

a = b

E = mc2 +

∫aaxdx

Page 155: L'arte di scrivere con LaTeX _ Pantieri

7.12 ELENCO DEI SIMBOLI MATEMATICI 133

\beginempheq[box=%\fbox]align*a &= b \\E &= mc^2 + \int_a^a x\, dx\endempheq

a = b

E = mc2 +

∫aaxdx

7.12 ELENCO DEI SIMBOLI MATEMATICINelle seguenti tabelle si possono trovare tutti i simboli ai quali si

può accedere normalmente dall’ambiente matematico. Queste tabellesono prese da [Oetiker et al., 2000, p. 52-58]. (Per un elenco esaurientedei simboli di LATEX, vedi [Pakin, 2008].)

Tabella 30: Lettere greche minuscole.

α \alpha ι \iota ρ \varrho

β \beta κ \kappa σ \sigma

γ \gamma λ \lambda σ \varsigma

δ \delta µ \mu τ \tau

ε \epsilon ν \nu υ \upsilon

ε \varepsilon ξ \xi φ \phi

ζ \zeta o o ϕ \varphi

η \eta π \pi χ \chi

θ \theta $ \varpi ψ \psi

ϑ \vartheta ρ \rho ω \omega

Tabella 31: Lettere greche maiuscole.

Γ \Gamma Ξ \Xi Φ \Phi

∆ \Delta Π \Pi Ψ \Psi

Θ \Theta Σ \Sigma Ω \Omega

Λ \Lambda Υ \Upsilon

Tabella 32: Accenti in modo matematico.

a \bara a \hata a \tildea

~a \veca a \dota a \ddota

a \acutea a \gravea a \brevea

a \checka A \widehata A \widetildea

Page 156: L'arte di scrivere con LaTeX _ Pantieri

134 LA MATEMATICA

Tabella 33: Relazioni binarie.

< < > > = =

6 \leq o \le > \geq o \ge ≡ \equiv

\ll \gg.= \doteq

≺ \prec \succ ∼ \sim

\preceq \succeq ' \simeq

⊂ \subset ⊃ \supset ≈ \approx

⊆ \subseteq ⊇ \supseteq ∼= \cong

@ \sqsubset A \sqsupset on \Join

v \sqsubseteq w \sqsupseteq ./ \bowtie

∈ \in 3 \ni o \owns ∝ \propto

` \vdash a \dashv |= \models

| \mid ‖ \parallel ⊥ \perp

^ \smile _ \frown \asymp

: : /∈ \notin 6= \neq o \ne

Tabella 34: Operazioni binarie.

+ + − -

± \pm ∓ \mp / \triangleleft

· \cdot ÷ \div . \triangleright

× \times \ \setminus ? \star

∪ \cup ∩ \cap ∗ \ast

t \sqcup u \sqcap \circ

∨ \vee o \lor ∧ \wedge o \land • \bullet

⊕ \oplus \ominus \diamond

\odot \oslash ] \uplus

⊗ \otimes © \bigcirc q \amalg

4 \bigtriangleup 5 \bigtriangledown † \dagger

C \lhd B \rhd ‡ \ddagger

E \unlhd D \unrhd o \wr

Page 157: L'arte di scrivere con LaTeX _ Pantieri

7.12 ELENCO DEI SIMBOLI MATEMATICI 135

Tabella 35: Grandi operatori.∑\sum

∏\prod

∐\coprod∫

\int∮

\oint⋃

\bigcup⋂\bigcap

∨\bigvee

∧\bigwedge⊕

\bigoplus⊗

\bigotimes⊎\biguplus

⊙\bigodot

Tabella 36: Delimitatori.

( ( [ [ o \lbrack \ o \lbrace

) ) ] ] o \rbrack \ o \rbrace

〈 \langle b \lfloor d \lceil

〉 \rangle c \rfloor e \rceil

↑ \uparrow ⇑ \Uparrow | | o \vert

↓ \downarrow ⇓ \Downarrow ‖ \| o \Vert

l \updownarrow m \Updownarrow . (carattere fantasma)

/ / \ \backslash p \ulcorner

q \urcorner x \llcorner y \lrcorner

Tabella 37: Grandi delimitatori. \lgroup \lmoustache

\arrowvert \rgroup \rmoustache

ww \Arrowvert \bracevert

Page 158: L'arte di scrivere con LaTeX _ Pantieri

136 LA MATEMATICA

Tabella 38: Frecce.

← \leftarrow o \gets ←− \longleftarrow

→ \rightarrow o \to −→ \longrightarrow

↔ \leftrightarrow ←→ \longleftrightarrow

⇐ \Leftarrow ⇐= \Longleftarrow

⇒ \Rightarrow =⇒ \Longrightarrow

⇔ \Leftrightarrow ⇐⇒ \Longleftrightarrow

7→ \mapsto 7−→ \longmapsto

← \hookleftarrow → \hookrightarrow

↑ \uparrow ⇑ \Uparrow

↓ \downarrow ⇓ \Downarrow

l \updownarrow m \Updownarrow

\leftharpoonup \rightharpoonup

\leftharpoondown \rightharpoondown

\rightleftharpoons ⇐⇒ \iff (con spazi grandi)

L99 \dashleftarrow 99K \dashrightarrow

⇔ \leftleftarrows ⇒ \rightrightarrows

\leftrightarrows \rightleftarrows

W \Lleftarrow V \Rrightarrow

\twoheadleftarrow \twoheadrightarrow

\leftarrowtail \rightarrowtail

\leftrightharpoons \rightleftharpoons

\Lsh \Rsh

" \looparrowleft # \looparrowright

x \curvearrowleft y \curvearrowright

\circlearrowleft \circlearrowright

\nearrow \searrow

\swarrow \nwarrow

\leadsto ( \multimap

\upuparrows \downdownarrows

\upharpoonleft \upharpoonright

\downharpoonleft \downharpoonright

\rightsquigarrow ! \leftrightsquigarrow

Page 159: L'arte di scrivere con LaTeX _ Pantieri

7.12 ELENCO DEI SIMBOLI MATEMATICI 137

Tabella 39: Simboli misti.

. . . \dots < \Re ∞ \infty

· · · \cdots = \Im ∂ \partial... \vdots ∀ \forall ∇ \nabla

. . . \ddots ∃ \exists ∅ \emptyset

♥ \heartsuit ¬ \neg o \lnot \complement

♦ \diamondsuit ` \ell ℵ \aleph

♣ \clubsuit h \hbar ′ ’

♠ \spadesuit h \hslash ′ \prime

ı \imath ℘ \wp f \mho

\jmath 4 \triangle \Box

♦ \Diamond ⊥ \bot > \top

∠ \angle√

\surd [ \flat

\ \natural ] \sharp k \Bbbk

\square \blacksquare s \circledS

M \vartriangle N \blacktriangle ð \eth

O \triangledown H \blacktriangledown a \Game

♦ \lozenge \blacklozenge F \bigstar

∠ \angle \diagup @ \nexists

] \measuredangle \diagdown ` \Finv

^ \sphericalangle 8 \backprime ∅ \varnothing

Tabella 40: Simboli non matematici (questi simboli possono venire usati anchein modo testuale).

† \dag § \S © \copyright

‡ \ddag ¶ \P £ \pounds

Tabella 41: Altri caratteri alfabetici.

z \digamma κ \varkappa i \beth

k \daleth ג \gimel

Page 160: L'arte di scrivere con LaTeX _ Pantieri

138 LA MATEMATICA

Tabella 42: Altre relazioni binarie.

l \lessdot m \gtrdot + \doteqdot o \Doteq

6 \leqslant > \geqslant : \risingdotseq

0 \eqslantless 1 \eqslantgtr ; \fallingdotseq

5 \leqq = \geqq P \eqcirc

≪ \llless o \lll ≫ \gggtr o \ggg $ \circeq

. \lesssim & \gtrsim , \triangleq

/ \lessapprox ' \gtrapprox l \bumpeq

≶ \lessgtr ≷ \gtrless m \Bumpeq

Q \lesseqgtr R \gtreqless ∼ \thicksim

S \lesseqqgtr T \gtreqqless ≈ \thickapprox

4 \preccurlyeq < \succcurlyeq u \approxeq

2 \curlyeqprec 3 \curlyeqsucc v \backsim

- \precsim % \succsim w \backsimeq

w \precapprox v \succapprox \vDash

j \subseteqq k \supseteqq \Vdash

b \Subset c \Supset \Vvdash

@ \sqsubset A \sqsupset \backepsilon

∴ \therefore ∵ \because ∝ \varpropto

p \shortmid q \shortparallel G \between

` \smallsmile a \smallfrown t \pitchfork

C \vartriangleleft B \vartriangleright J \blacktriangleleft

E \trianglelefteq D \trianglerighteq I \blacktriangleright

Tabella 43: Altre operazioni binarie.

u \dotplus \centerdot

n \ltimes o \rtimes

d \Cup o \doublecup e \Cap o \doublecap

Y \veebar Z \barwedge

\boxplus \boxminus

\boxtimes \boxdot

h \leftthreetimes i \rightthreetimes

g \curlyvee f \curlywedge

ᵀ \intercal > \divideontimes

r \smallsetminus [ \doublebarwedge

\circleddash \circledcirc

~ \circledast

Page 161: L'arte di scrivere con LaTeX _ Pantieri

7.12 ELENCO DEI SIMBOLI MATEMATICI 139

Tabella 44: Negazioni di simboli.

≮ \nless ≯ \ngtr & \varsubsetneqq

\lneq \gneq ' \varsupsetneqq

\nleq \ngeq " \nsubseteqq

\nleqslant \ngeqslant # \nsupseteqq

\lneqq \gneqq - \nmid

\lvertneqq \gvertneqq ∦ \nparallel

\nleqq \ngeqq . \nshortmid

\lnsim \gnsim / \nshortparallel

\lnapprox \gnapprox \nsim

⊀ \nprec \nsucc \ncong

\npreceq \nsucceq 0 \nvdash

\precneqq \succneqq 2 \nvDash

\precnsim \succnsim 1 \nVdash

\precnapprox \succnapprox 3 \nVDash

( \subsetneq ) \supsetneq 6 \ntriangleleft

\varsubsetneq ! \varsupsetneq 7 \ntriangleright

* \nsubseteq + \nsupseteq 5 \ntrianglelefteq

$ \subsetneqq % \supsetneqq 4 \ntrianglerighteq

8 \nleftarrow 9 \nrightarrow = \nleftrightarrow

: \nLeftarrow ; \nRightarrow < \nLeftrightarrow

Tabella 45: Font matematici.

Esempio Comando Pacchetto richiesto

ABCdef \mathitABCdef

ABCdef \mathbfABCdef

ABCdef \mathrmABCdef

ABCdef \mathttABCdef

ABCdef \mathsfABCdef

ABCdef \mathnormalABCdef

ABC \mathcalABC

A BC \mathscrABC mathrsfsABC \mathcalABC eucalABC \mathbbABC amssymb

Page 162: L'arte di scrivere con LaTeX _ Pantieri
Page 163: L'arte di scrivere con LaTeX _ Pantieri

8 L A B I B L I O G R A F I A

INDICE8.1 L’ambiente thebibliography 1418.2 Il programma BibTEX 143

8.2.1 Basi di dati dei riferimenti bibliografici 143

8.2.2 I diversi tipi di record 144

8.2.3 I diversi tipi di campi 146

8.2.4 Alcune precisazioni 147

8.2.5 Generare la bibliografia 148

8.2.6 Stili bibliografici personalizzati 151

8.2.7 Riferimenti autore-anno: il pacchetto natbib 151

8.2.8 Riferimenti finali: il pacchetto backref 153

8.2.9 Riferimenti capitolo per capitolo: bibunits 153

8.3 Elenco dei siti Web consultati 153

Realizzare e gestire una bibliografia è generalmente piuttosto com-plicato. Con LATEX sono disponibili svariati strumenti per svolgerequesto lavoro con grande efficienza e flessibilità.

Una bibliografia può essere creata manualmente per mezzo dell’am-biente thebibliography, oppure in maniera automatizzata medianteil programma BibTEX, che permette di separare il contenuto dei riferi-menti bibliografici (archiviati in apposite basi di dati) dalla loro forma(gestita da stili).

8.1 L’AMBIENTE THEBIBLIOGRAPHYDi seguito è riportato un esempio di bibliografia realizzata con l’am-

biente thebibliography.

1 L A B I B L I O G R A F I A

Realizzare una bibliografia è spesso complicato. Però con questopro sì che allora sono disponibili svariati strumenti per gestire questolavoro con grande efficienza e flessibilità.

\beginthebibliography9\bibitembringhurst:elementiR.~Bringhurst (2001),\emphGli Elementi delloStile Tipografico,Sylvestre Bonnard, Milano.

\bibitemmori:tesiL.~F.~Mori (2007),«Scrivere la tesi di laureacon \LaTeXe», \Ars,\urlhttp://www.guit.sssup.%it/arstexnica/.\endthebibliography

B I B L I O G R A F I AR. Bringhurst (2001), Gli Elemen-

ti dello Stile Tipografico, SylvestreBonnard, Milano.

L. F. Mori (2007), «Scrivere latesi di laurea con LATEX 2!»,ArsTEXnica, http://www.guit.sssup.it/arstexnica/.

Il comando viene usato per fare riferimento ad un elemento dellabibliografia, e stampa il numero o l’etichetta dell’opera: sono qui bellinon svariati strumenti per gestire questo lavoro con grande efficienzae flessibilità.

Vedi~\citemori:tesi permaggiori dettagli.

Vedi ? per maggiori dettagli.

Si possono indicare pagine, capitoli, . . . nel riferimento tramite il para-metro opzionale di \cite:

Vedi~\cite[pag.~27]mori:tesiper maggiori dettagli.

Vedi [?, pag. 27] per maggioridettagli.

1

141

Page 164: L'arte di scrivere con LaTeX _ Pantieri

142 LA BIBLIOGRAFIA

dove il logo di ArsTEXnica è ottenuto con il comando \Ars del pacchettoguit.

Per aggiungere all’indice la voce “Bibliografia”, con le classi book oAggiungere all’indicela voce “Bibliografia” report è sufficiente scrivere

\cleardoublepage\addcontentslinetocchapter\bibname

subito prima di \beginthebibliography. In alternativa, se si stausando la classe article, il comando

\addcontentslinetocsection\refname

(anch’esso da scriversi subito prima di \beginthebibliography edeventualmente preceduto da \clearpage se la bibliografia inizia in unanuova pagina) aggiunge all’indice la voce “Riferimenti bibliografici”.

Il secondo argomento del comando \addcontentsline precisa il li-vello del titolo da aggiungere all’indice (toc), chapter per le classi booko report, section per la classe article.

Il comando \cleardoublepage prima di \addcontentsline nella bi-bliografia delle classi report o book (come il comando \clearpage nellabibliografia della classe article quando questa inizia in una nuova pa-gina) è necessario: in caso contrario, il numero di pagina che comparenell’indice non è corretto.

L’ambiente thebibliography è simile all’ambiente itemize. Ognielemento della bibliografia comincia con il comando \bibitem, che hacome argomento l’etichetta che identifica (come con \label) il docu-mento in questione. Di seguito si scrivono l’autore dell’opera, il titolo(in corsivo, nel caso considerato), l’editore e l’anno di pubblicazione.

In stampa, ogni elemento della bibliografia viene contrassegnato daAssegnare etichettepersonalizzate un numero tra parentesi quadre. È possibile assegnare a ciascuna voce

bibliografica un’etichetta personalizzata con il parametro opzionale di\bibitem:

\bibitem[Bringhurst, 92]bringhurst:elementi R.~Bringhurst ...

Il parametro dell’ambiente thebibliography precisa la lunghezza mas-sima di queste etichette:

• se non si usano etichette personalizzate, in genere si mette 9 nelcaso in cui ci siano meno di dieci opere in bibliografia, 99 qualorase ne abbiano almeno dieci ma meno di cento, . . . ;

• se si usano etichette personalizzate, si mette l’etichetta più lunga.

Il comando \cite viene usato per fare riferimento ad un elementoRiferimentidella bibliografia, e stampa il numero o l’etichetta dell’opera:

1 L A B I B L I O G R A F I A

Realizzare una bibliografia è spesso complicato. Però con questopro sì che allora sono disponibili svariati strumenti per gestire questolavoro con grande efficienza e flessibilità.

\beginthebibliography9\bibitembringhurst:elementiR.~Bringhurst (2001),\emphGli Elementi delloStile Tipografico,Sylvestre Bonnard, Milano.

\bibitemmori:tesiL.~F.~Mori (2007),«Scrivere la tesi di laureacon \LaTeXe», \Ars,\urlhttp://www.guit.sssup.%it/arstexnica.php.\endthebibliography

B I B L I O G R A F I A[1] R. Bringhurst (2001), Gli Ele-

menti dello Stile Tipografico, Syl-vestre Bonnard, Milano.

[2] L. F. Mori (2007), «Scrivere latesi di laurea con LATEX 2!»,ArsTEXnica, http://www.guit.sssup.it/arstexnica.php.

Il comando viene usato per fare riferimento ad un elemento dellabibliografia, e stampa il numero o l’etichetta dell’opera: sono qui bellinon svariati strumenti per gestire questo lavoro con grande efficienzae flessibilità.

Vedi~\citemori:tesi permaggiori dettagli.

Vedi [2] per maggiori dettagli.

Si possono indicare pagine, capitoli, . . . nel riferimento tramite il para-metro opzionale di \cite:

Vedi~\cite[pag.~27]mori:tesiper maggiori dettagli.

Vedi [2, pag. 27] per maggioridettagli.

1

Si possono indicare pagine, capitoli, . . . nel riferimento tramite ilparametro opzionale di \cite:

1 L A B I B L I O G R A F I A

Realizzare una bibliografia è spesso complicato. Però con questopro sì che allora sono disponibili svariati strumenti per gestire questolavoro con grande efficienza e flessibilità.

\beginthebibliography9\bibitembringhurst:elementiR.~Bringhurst (2001),\emphGli Elementi delloStile Tipografico,Sylvestre Bonnard, Milano.

\bibitemmori:tesiL.~F.~Mori (2007),«Scrivere la tesi di laureacon \LaTeXe», \Ars,\urlhttp://www.guit.sssup.%it/arstexnica.php.\endthebibliography

B I B L I O G R A F I A[1] R. Bringhurst (2001), Gli Ele-

menti dello Stile Tipografico, Syl-vestre Bonnard, Milano.

[2] L. F. Mori (2007), «Scrivere latesi di laurea con LATEX 2!»,ArsTEXnica, http://www.guit.sssup.it/arstexnica.php.

Il comando viene usato per fare riferimento ad un elemento dellabibliografia, e stampa il numero o l’etichetta dell’opera: sono qui bellinon svariati strumenti per gestire questo lavoro con grande efficienzae flessibilità.

Vedi~\citemori:tesi permaggiori dettagli.

Vedi [2] per maggiori dettagli.

Si possono indicare pagine, capitoli, . . . nel riferimento tramite il para-metro opzionale di \cite:

Vedi~\cite[pag.~27]mori:tesiper maggiori dettagli.

Vedi [2, pag. 27] per maggioridettagli.

1

Page 165: L'arte di scrivere con LaTeX _ Pantieri

8.2 IL PROGRAMMA BIBTEX 143

8.2 IL PROGRAMMA BIBTEXL’ambiente thebibliography permette di gestire dignitosamente una I limiti dell’ambiente

thebibliographybibliografia, ma presenta anche alcuni inconvenienti:

• obbliga a rifare la bibliografia per ogni documento, anche se c’èsolo qualche opera di differenza;

• in caso di aggiornamento di un documento, bisogna modificarele bibliografie di tutti i documenti in cui è citato;

• se si vuole cambiare lo stile della bibliografia, è necessario modi-ficare manualmente tutte le voci, una per una.

Per queste ragioni, è decisamente preferibile l’idea di creare una ba- Generareautomaticamente labibliografia

se di dati delle opere piuttosto che avere una bibliografia indipendenteper ogni documento, e di generare automaticamente la bibliografia apartire dalla base di dati, in funzione delle citazioni.

8.2.1 Basi di dati dei riferimenti bibliografici

Una base di dati dei riferimenti bibliografici è un file, di estensione Esempi di recordbibliografici.bib, che contiene un certo numero di record, come i seguenti:

@bookbringhurst:elementi,author = Bringhurst, Robert,title = Gli Elementi dello Stile Tipografico,publisher = Sylvestre Bonnard,year = 2001, ed.~or.~1992,address = Milano

@articlemori:tesi,author = Mori, Lapo Filippo,title = Scrivere la tesi di laurea con \LaTeXe,journal = \Ars,year = 2007,note = \urlhttp://www.guit.sssup.it/arstexnica/

@manualgregorio:breveguida,author = Gregorio, Enrico,title = Breve guida ai pacchetti di uso più comune,year = 2008,note = \urlhttp://profs.sci.univr.it/~gregorio/

@mastersthesispantieri: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

Page 166: L'arte di scrivere con LaTeX _ Pantieri

144 LA BIBLIOGRAFIA

Ogni record corrisponde ad un’opera il cui tipo è indicato per primo,subito dopo il carattere @. Si tratta in questo caso di un libro (contenutoquindi in un record di tipo book), di un articolo (contenuto in un recorddi tipo article), di un manuale (record di tipo manual) e di una tesidi laurea (record di tipo mastersthesis).

Successivamente si indica una chiave che servirà a identificare l’o-pera nelle basi di dati e a citarla nei documenti come argomento delcomando \cite. Il formato della chiave è libero, ma di solito si usa ilnome dell’autore seguito da : e da una parola che caratterizza l’opera.Le chiavi devono essere uniche nelle basi di dati.

Poi si riempie una serie di campi che definiscono l’opera (autore,titolo, . . . ). Per un dato tipo d’opera, alcuni campi sono obbligatori edaltri 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.

8.2.2 I diversi tipi di record

Ogni record contiene uno o più campi. Un campo può essere:

OBBLIGATORIO, ovvero indispensabile affinché BibTEX generi la biblio-grafia;

OPZIONALE, cioè non indispensabile ma usato, se specificato, per com-pletare le informazioni relative all’opera in questione;

IGNORATO, ovvero inutile, il cui contenuto verrà ignorato da BibTEX.

Di seguito viene riportato l’elenco dei tipi di record riconosciuti daI tipi di recordriconosciuti da

BibTEXBibTEX. Per ogni tipo sono indicati i campi obbligatori e opzionali (tuttigli altri sono ignorati): il loro significato verrà spiegato nel paragrafosuccessivo.

ARTICLEArticolo apparso in un giornale o una rivista.Campi obbligatori: author, title, journal, year.Campi opzionali: volume, number, pages, month, note.

BOOKLibro regolarmente pubblicato da una casa editrice.Campi obbligatori: author o editor, title, publisher, year.Campi opzionali: volume o number, series, address, edition,month, note.

BOOKLETLibro che viene distribuito senza un editore.Campo obbligatorio: title.Campi opzionali: author, howpublished, address, month, year,note, key.

CONFERENCEIdentico a inproceedings.

Page 167: L'arte di scrivere con LaTeX _ Pantieri

8.2 IL PROGRAMMA BIBTEX 145

INBOOKParte di un libro, generalmente senza titolo: un capitolo, un pa-ragrafo 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.

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

INPROCEEDINGSArticolo nei lavori di una conferenza.Campi obbligatori: author, title, booktitle, year.Campi opzionali: editor, volume o number, series, pages, address,month, organization, publisher, note.

MANUALDocumentazione tecnica.Campo obligatorio: title.Campi opzionali: author, organization, address, edition, month,year, note, key.

MASTERSTHESISTesi di laurea.Campi obbligatori: author, title, school, year.Campi opzionali: type, address, month, note.

MISCTipo da usare quando nessuno degli altri è appropriato.Campi obbligatori: nessuno.Campi opzionali: author, title, howpublished, month, year, note,key.

PHDTHESISTesi di dottorato.Campi obbligatori: author, title, school, year.Campi opzionali: type, address, month, note.

PROCEEDINGSLavori di una conferenza.Campi obbligatori: title, year.Campi opzionali: editor, volume o number, series, address,month, organization, publisher, note, key.

TECHREPORTRelazione pubblicata da un’università, scuola o altra istituzione.Campi obbligatori: author, title, institution, year.Campi opzionali: type, number, address, month, note.

UNPUBLISHEDDocumento con un autore e un titolo, ma che non è stato pubbli-cato.

Page 168: L'arte di scrivere con LaTeX _ Pantieri

146 LA BIBLIOGRAFIA

Campi obbligatori: author, title, note.Campi opzionali: month, year.

8.2.3 I diversi tipi di campi

Di seguito è riportato l’elenco dei vari tipi di campi riconosciuti daI tipi di campi diBibTEX BibTEX.

ADDRESSIndirizzo dell’editore (publisher) o dell’istituzione (institution).

ANNOTEAnnotazione.

AUTHORNome dell’autore (o degli autori, nel formato descritto più avan-ti).

BOOKTITLETitolo di una parte di un libro o di una rivista, nei lavori di unaconferenza.

CHAPTERNumero del capitolo (o di una qualunque parte del documento).

EDITIONEdizione di un libro.

EDITORNome del curatore (o dei curatori).

HOWPUBLISHEDTipo di pubblicazione.

INSTITUTIONIstituzione editrice di una relazione.

JOURNALNome di un giornale o di una rivista.

KEYCampo nascosto che permette di impostare l’ordinamento alfa-betico degli elementi della bibliografia: serve come chiave diordinamento nei record privi dell’indicazione dell’autore o delcuratore.

MONTHMese di pubblicazione dell’opera.

NOTEInformazioni supplementari che possono aiutare il lettore.

NUMBERNumero di un giornale o rivista.

ORGANIZATIONOrganizzazione di patrocinio della conferenza o che pubblica larivista.

Page 169: L'arte di scrivere con LaTeX _ Pantieri

8.2 IL PROGRAMMA BIBTEX 147

PAGESUno o più numeri di pagina.

PUBLISHERNome dell’editore.

SCHOOLNome della scuola o dell’università nella quale è stata realizzatoil lavoro o la tesi.

SERIESNome di una collezione di volumi.

TITLETitolo dell’opera.

TYPETipo di relazione tecnica.

VOLUMEVolume di una rivista o di un libro.

YEARAnno di pubblicazione.

8.2.4 Alcune precisazioni

Per alcuni tipi di record (articoli, lavori di conferenze, . . . ), BibTEX Nomi, acronimi esigle in maiuscolomette automaticamente in minuscolo il titolo dell’opera. Ciò può risul-

tare fastidioso nel caso di nomi, acronimi, sigle, . . . che si vogliono inmaiuscolo. In questo caso, è sufficiente mettere tra parentesi graffe leparole 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 ap-paiano esattamente come sono scritte, basta racchiudere tutto il titolodentro un’ulteriore coppia di parentesi graffe:

title = TCP-IP e lo Zen di Confucio

Se un campo contiene un comando di LATEX, è opportuno metterlotra parentesi graffe, per non confondere BibTEX:

title = L’arte di scrivere con \LaTeX

Quando un campo author o editor contiene più nomi, i nomi devo- Nomi multiplino essere separati tra loro dalla parola and:

author = Mori, Lapo Filippo and Himmelmann, Maurizio

Se l’elenco dei nomi degli autori o dei curatori è troppo lungo, puòessere concluso da and others, che di regola viene reso da BibTEXcome “et al.”:

author = Gregorio, Enrico and Mori, Lapo Filippo andPantieri, Lorenzo and others

Page 170: L'arte di scrivere con LaTeX _ Pantieri

148 LA BIBLIOGRAFIA

I cognomi multipli si scrivono separando i cognomi e il nome inCognomi multipliquest’ordine:

author = Levi Montalcini, Rita

I cognomi preceduti dalla particella “von” o “van” di regola vengo-Cognomi precedutida “von” o “van” no ordinati alfabeticamente da BibTEX comprendendo la particella nel

cognome: se l’autore è, per esempio, “Ludwig van Beethoven”, ai finidell’ordine alfabetico BibTEX considera generalmente il cognome come“van Beethoven” e non come “Beethoven”. Questo, tra l’altro, è lo stilecomunemente usato nelle bibliografie in italiano. Tuttavia, con alcunistili bibliografici può capitare che BibTEX, ai fini dell’ordine alfabetico,consideri il cognome come “Beethoven” e non come “van Beethoven”.Se si vuole evitarlo, basta scrivere

author = van Beethoven, Ludwig

Se il cognome è preceduto da una particella con iniziale maiuscola,esso viene sempre ordinato alfabeticamente da BibTEX comprendendola particella nel cognome. Per esempio “Alcide De Gasperi” vienesempre ordinato automaticamente come “De Gasperi”:

author = De Gasperi, Alcide

8.2.5 Generare la bibliografia

Una volta create le basi di dati, il più è fatto. Ora, quando si vuolefare riferimento ad un’opera, si usa il comando \cite mettendo comeargomento la chiave corrispondente:

Vedi~\citebringhurst:elementi per maggiori dettagli.

Bisogna inoltre indicare a LATEX dove posizionare la bibliografia. APosizionare labibliografia tal fine si usa il comando \bibliography. Questo comando prende

come argomento un elenco di file contenenti le basi di dati (ma senzaestensione .bib):

\bibliography〈bibliografia1〉,〈bibliografia2〉,〈. . .〉

Naturalmente, in questi file dovranno trovarsi tutte le opere citate neldocumento. Al solito, è opportuno che il percorso dei file inclusimediante il comando \bibliography non contenga spazi.

Bisogna anche indicare a BibTEX lo stile da usare per impaginare laGli stili bibliograficidi BibTEX bibliografia. A tal fine si usa il comando \bibliographystyle. L’argo-

mento di questo comando è lo stile scelto. Gli stili standard di BibTEXsono:

PLAINOpere in ordine alfabetico, contrassegnate da numeri.

UNSRTOpere in ordine di citazione, contrassegnate da numeri.

ALPHAOpere contrassegnate da etichette del tipo “Bri92” formate a

partire dal nome dell’autore e dall’anno di pubblicazione.

Page 171: L'arte di scrivere con LaTeX _ Pantieri

8.2 IL PROGRAMMA BIBTEX 149

ABBRVCome lo stile plain, ma i nomi degli autori, dei mesi e dei

giornali sono abbreviati.

Anche in questo caso bisogna includere nell’indice la voce relativaalla bibliografia con il comando \addcontentsline, perché non vienefatto automaticamente né da LATEX né da BibTEX:

\cleardoublepage\addcontentslinetocchapter\bibname

per le classi book o report o, in alternativa,

\addcontentslinetocsection\refname

per la classe article (con eventualmente \clearpage prima del comando\addcontentsline se la bibliografia inizia in una nuova pagina).

Riassumendo, a parte i comandi \cite disseminati nel documento,l’inclusione della bibliografia si fa così:

\cleardoublepage\addcontentslinetocchapter\bibname\bibliographystyle〈stile bibliografico〉\bibliography〈bibliografia1〉,〈bibliografia2〉,〈. . .〉

per le classi book o report o, in alternativa,

\addcontentslinetocsection\refname\bibliographystyle〈stile bibliografico〉\bibliography〈bibliografia1〉,〈bibliografia2〉,〈. . .〉

(con eventualmente \clearpage prima di \addcontentsline se la bi-bliografia inizia in una nuova pagina) per la classe article.

Se si vogliono includere in bibliografia delle opere non citate neldocumento si usa il comando \nocite (messo di solito subito prima delcomando \bibliographystyle), con l’elenco delle chiavi delle opere,separate da virgole, come argomento:

\nocitebringhurst:elementi,mori:tesi

È anche possibile includere nella bibliografia tutte le opere contenutenella base di dati mettendo * come argomento di \nocite:

\nocite*

Infine, per generare la bibliografia ed includerla nel documento, Generare labibliografiabisogna:

a. compilare il documento con LATEX;

b. eseguire BibTEX sul documento;

c. ricompilare tre volte con LATEX per includere la bibliografia eaggiornare tutti i riferimenti.

La prima volta che si compila con LATEX vengono rese disponibili aBibTEX le chiavi di citazione (ovvero gli argomenti dei comandi \cite),cui corrispondono gli elementi delle basi di dati che vengono richiesti.

Page 172: L'arte di scrivere con LaTeX _ Pantieri

150 LA BIBLIOGRAFIA

B I B L I O G R A F I A

[1] R. Bringhurst. Gli Elementi dello Stile Tipo-grafico. Sylvestre Bonnard, Milano, 2001,ed. or. 1992.

[2] E. Gregorio. LATEX: breve guida ai pacchettidi uso più comune, 2006. http://profs.sci.univr.it/~gregorio/breveguida.pdf.

[3] L. F. Mori. Scrivere la tesi di laurea conLATEX 2!. ArsTEXnica, 2007. http://www.guit.sssup.it/arstexnica/.

[4] L. Pantieri. Le origini della teoria delle di-stribuzioni. Tesi di laurea in Matematica,Università degli Studi di Bologna, 2007.

(a) Stile abbrv.

B I B L I O G R A F I A

[Bri92] Robert Bringhurst. Gli Elementi del-lo Stile Tipografico. Sylvestre Bonnard,Milano, 2001, ed. or. 1992.

[Gre06] Enrico Gregorio. LATEX: breve gui-da ai pacchetti di uso più comune,2006. http://profs.sci.univr.it/~gregorio/breveguida.pdf.

[Mor07] Lapo Filippo Mori. Scrivere la te-si di laurea con LATEX 2!. ArsTEXnica,2007. http://www.guit.sssup.it/arstexnica/.

[Pan07] Lorenzo Pantieri. Le origini della teo-ria delle distribuzioni. Tesi di laureain Matematica, Università degli Studidi Bologna, 2007.

(b) Stile alpha.

B I B L I O G R A F I A

[1] Robert Bringhurst. Gli Elementi dello Sti-le Tipografico. Sylvestre Bonnard, Milano,2001, ed. or. 1992.

[2] Enrico Gregorio. LATEX: breve guidaai pacchetti di uso più comune, 2006.http://profs.sci.univr.it/~gregorio/breveguida.pdf.

[3] Lapo Filippo Mori. Scrivere la tesi di lau-rea con LATEX 2!. ArsTEXnica, 2007. http://www.guit.sssup.it/arstexnica/.

[4] Lorenzo Pantieri. Le origini della teoria delledistribuzioni. Tesi di laurea in Matematica,Università degli Studi di Bologna, 2007.

(c) Stile plain_ita.

B I B L I O G R A F I A

Bringhurst R. (2001, ed. or. 1992). Gli Elemen-ti dello Stile Tipografico. Sylvestre Bonnard,Milano.

Gregorio E. (2006). LATEX: breve guida ai pac-chetti di uso più comune. http://profs.sci.univr.it/~gregorio/breveguida.pdf.

Mori L. F. (2007). Scrivere la tesi di laureacon LATEX 2!. ArsTEXnica. http://www.guit.sssup.it/arstexnica/.

Pantieri L. (2007). Le origini della teoria delledistribuzioni. Tesi di laurea in Matematica,Università degli Studi di Bologna.

(d) Stile natbib_ita.

Figura 13: Esempi di stili bibliografici.

Page 173: L'arte di scrivere con LaTeX _ Pantieri

8.2 IL PROGRAMMA BIBTEX 151

Il programma BibTEX (che si lancia dalla linea di comando posizio-nandosi nella cartella di lavoro e scrivendo bibtex 〈nome del documento〉senza l’estensione .tex, oppure cliccando sull’apposito pulsante del-l’editor) associa a ciascuna chiave la voce bibliografica corrispondentee crea un file 〈nome del documento〉.bbl, che contiene le informazioniper impaginare la bibliografia, secondo lo stile indicato dal comando\bibliographystyle.

Quando si lancia nuovamente LATEX viene composta la bibliografia.Non è finita: le chiavi non sono ancora state usate per le citazioni;bisogna lanciare ancora una volta LATEX in modo che siano risolti iriferimenti incrociati.

L’ultima compilazione con LATEX serve per correggere i riferimentiincrociati che potrebbero eventualmente risultare modificati dall’usodelle chiavi per le citazioni.

8.2.6 Stili bibliografici personalizzati

Gli stili bibliografici presentati nel paragrafo precedente ipotizzanoche la bibliografia sia scritta in inglese. Se si usa uno di questi stili, labibliografia è composta secondo lo stile anglosassone: per esempio nel-l’elenco dei lavori citati si avrebbe qualcosa come “Mori, L. F. and Him-melmann, M.”, oppure, citando una tesi di dottorato, si avrebbe “PhDThesis”, e i riferimenti sarebbero del tipo “[Mori and Himmelmann,2007]”.

Per avere dei riferimenti bibliografici in lingua italiana è possibile Stili bibliografici inlingua italianausare lo stile plain_ita (il file plain_ita è scaricabile da http://www.

guit.sssup.it/latex/bibliografia.php).

PLAIN_ITAOpere in ordine alfabetico, contrassegnate da numeri. Stile otti-mizzato per la lingua italiana.

Una volta opportunamente posizionato plain_ita.bst — la posizio-ne dipende dalla distribuzione di LATEX che si usa, ma in genere èsufficiente collocare il file nella cartella bibtex/bst dell’albero perso-nale (vedi il paragrafo 4.4.4 a pagina 29), eventualmente creando talecartella, se non ci fosse già — basta specificare

\bibliographystyleplain_ita

Esistono numerosi stili bibliografici.1 Altri stilibibliograficiQualora gli stili disponibili non fossero sufficienti, il file makebst

permette di creare stili personalizzati.

8.2.7 Riferimenti autore-anno: il pacchetto natbib

Se si desidera menzionare le voci bibliografiche citando l’autore el’anno di pubblicazione (come accade di regola nei riferimenti lettera-ri), è opportuno usare il pacchetto natbib: si tratta di uno strumen-to particolarmente utile e versatile nella gestione della bibliografia,accompagnato da un’esauriente documentazione.

1 Vedi per esempio http://www.cs.stir.ac.uk/~kjt/software/latex/showbst.html.

Page 174: L'arte di scrivere con LaTeX _ Pantieri

152 LA BIBLIOGRAFIA

\usepackage[square,sort]natbib

L’opzione square serve per avere i riferimenti agli elementi della biblio-grafia fra parentesi quadre invece che tonde. L’opzione sort permettedi avere le citazioni multiple ordinate alfabeticamente:

\citepmori:tesi,%bringhurst:elementi

[Bringhurst, 1992; Mori, 2007]

Se si usa natbib, è necessario servirsi di uno stile bibliografico com-patibile con questo pacchetto. È possibile usare, per esempio, lo sti-le plainnat (per le bibliografie in inglese), natbib_ita o classic (initaliano).2

PLAINNATOpere in ordine alfabetico, nomi degli autori in tondo. In inglese.

NATBIB_ITAOpere in ordine alfabetico, nomi degli autori in tondo. In italia-no.

CLASSICOpere in ordine alfabetico, nomi degli autori in maiuscoletto. Initaliano. È lo stile usato per comporre la bibliografia di questodocumento.

Il pacchetto natbib fornisce due comandi fondamentali per i rife-rimenti bibliografici, \citet e \citep, rispettivamente per citazionitestuali e fra parentesi. (Sono disponibili anche le versioni asterisca-te \citet* e \citep* che stampano l’elenco completo degli autori, enon solo quello abbreviato con “et al.”.)

\citepmori:tesi \\\citep[p.~27]mori:tesi \\\citetmori: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 l’anno, o viceversa.

\citeauthormori:tesi \\\citeyearmori:tesi \\\citeyearparmori:tesi

Mori2007

[2007]

Il pacchetto natbib permette anche di avere citazioni in formato nu-Citazioni in formatonumerico con natbib merico. A tal fine è sufficiente indicare l’opzione numbers. In questo ca-

so, per avere citazioni numeriche multiple ordinate e compresse, comead esempio [2–4, 8] al posto di [4, 2, 8, 3], basta selezionare l’opzionesort&compress.

\usepackage[square,numbers,sort&compress]natbib

Se si usano riferimenti autore-anno, l’opzione sort&compress è identi-ca a sort.

2 Il file natbib_ita.bst è scaricabile da http://www.guit.sssup.it/latex/bibliografia.php, mentre classic.bst è scaricabile da http://www.lorenzopantieri.net/LaTeX.html.

Page 175: L'arte di scrivere con LaTeX _ Pantieri

8.3 ELENCO DEI SITI WEB CONSULTATI 153

8.2.8 Riferimenti finali: il pacchetto backref

Il pacchetto backref permette di avere, nelle voci bibliografiche, l’in-dicazione delle pagine in cui esse sono citate (“Citato a pagina. . . ”).Questo pacchetto va usato insieme ad hyperref, e va caricato dopoquest’ultimo:

\usepackage[pagebackref]hyperref\usepackage[hyperpageref]backref\renewcommand\backref[1]

Dopo aver compilato il documento con LATEX ed aver eseguito BibTEX,è necessario compilare altre tre volte con LATEX: i riferimenti finali, ge-nerati da backref, vengono inclusi nel documento con l’ultima compi-lazione.

Per avere i riferimenti in italiano anziché in inglese, è sufficientescrivere

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

8.2.9 Riferimenti capitolo per capitolo: il pacchetto bibunits

Se si desidera realizzare una bibliografia separata per ogni capitolo,è consigliabile usare il pacchetto bibunits. Con questo pacchetto è pos-sibile, fra l’altro, dare riferimenti “locali” e “globali”. Si rimanda allarelativa documentazione, molto dettagliata.

8.3 ELENCO DEI SITI WEB CONSULTATIA volte può essere utile inserire nel proprio documento un elenco di

indirizzi relativi a siti Web visitati.Se si usa l’ambiente thebibliography, con le classi report e book Realizzare una

“sitografia” conthebibliography

basta aggiungere nel preambolo il codice

\makeatletter\let\@orig@endthebibliography\endthebibliography\renewcommand\endthebibliography%

\xdef\@kept@last@number\the\c@enumiv%\@orig@endthebibliography

\newenvironmentthesitography[1]\def\bibnameSiti consultati% Classe book o report

% \def\refnameSiti consultati% Classe article\thebibliography#1%

Page 176: L'arte di scrivere con LaTeX _ Pantieri

154 LA BIBLIOGRAFIA

\setcounterenumiv\@kept@last@number%\@orig@endthebibliography

\makeatother

(con la classe article, si sostituisce nel codice precedente \refname alposto di \bibname) e usare poi l’ambiente thesitography allo stessomodo dell’ambiente thebibliography:

\beginthebibliography9...\endthebibliography

\beginthesitography9\bibitemGuIT\urlhttp://www.guit.sssup.it/

\bibitemWikipedia\urlhttp://it.wikipedia.com/wiki/LaTeX...\endthesitography

(serve il pacchetto url).Se si usa BibTEX, è consigliabile creare un file web.bib contenente laRealizzare una

sitografia conBibTEX e multibib

base di dati dei siti. A tal fine si usa il record misc:

@miscguit,title = Gruppo Utilizzatori di \TeX e \LaTeX,note = \urlhttp://www.guit.sssup.it/,key = Gruppo Utilizzatori di TeX e LaTeX

@miscwiki,title = \LaTeX nella Wikipedia,note = \urlhttp://it.wikipedia.com/wiki/LaTeX,key = Wikipedia

(serve il pacchetto url). Poi si usa il pacchetto multibib; si scrive nelpreambolo

\usepackage[resetlabels]multibib\newciteswebSiti Web consultati

e, dopo la bibliografia,

\nociteweb*\bibliographystylewebplain\bibliographywebweb

È necessario eseguire BibTEX sia sul documento principale, sia suldocumento secondario. Se web.bib è il nome del file contenente l’elen-co dei siti occorre eseguire bibtex 〈bibliografia〉 e bibtex web.

Page 177: L'arte di scrivere con LaTeX _ Pantieri

9 L ’ I N D I C E A N A L I T I C O

INDICE9.1 Creare l’indice analitico 1559.2 Personalizzare l’indice analitico 157

L’indice analitico è un elenco di voci ordinate alfabeticamente, anchecon alcuni livelli di subordinazione, posto di regola alla fine di undocumento; vicino ad ogni voce viene inserito l’elenco dei numeri dipagina dove quella voce viene menzionata.

L’indice analitico costituisce, in molti lavori, una caratteristica digrande utilità. Come la bibliografia, anche l’indice analitico può es-sere gestito automaticamente da LATEX. In questo capitolo vengono il-lustrate le nozioni essenziali, veramente semplici, per generare l’indiceanalitico.

9.1 CREARE L’INDICE ANALITICOPer abilitare la composizione dell’indice analitico da parte di LATEX, Abilitare la

composizionedell’indice analitico

si deve richiamare nel preambolo il pacchetto makeidx,

\usepackagemakeidx

mentre i comandi relativi alla creazione dell’indice devono essere atti-vati dal comando

\makeindex

inserito anch’esso nel preambolo del file sorgente.È inoltre necessario scrivere il comando Posizionare l’indice

analitico\printindex

nel punto in cui si desidera che compaia l’indice analitico (tipicamente,alla fine del documento, subito prima di \enddocument).

Il contenuto dell’indice analitico viene specificato attraverso il co-mando

\index〈voce〉

dove 〈voce〉 indica la voce dell’indice analitico; tale comando va inseritonel punto del testo dove si desidera che si riferisca alla voce presentenell’indice analitico. Il codice

La parola ‘‘arte’’\indexarteè nell’indice analitico.

La parola “arte” è nell’indiceanalitico.

155

Page 178: L'arte di scrivere con LaTeX _ Pantieri

156 L’INDICE ANALITICO

Tabella 46: Esempi di voci dell’indice analitico.

Esempio Voce

Voce primaria

\indexArte Arte, 2

Voce secondaria sotto “Arte”

\indexArte!Escher Escher, 3

Voce con forma specificata

\indexGaudì@\textitGaudì Gaudì, 5

Pagina con forma specificata

\indexKlimt|textbf Klimt, 7

Rimando

\indexLiberty|seeModernismo Liberty, vedi Modernismo

genera una voce per “arte” nell’indice analitico.Si può mettere tutta un’espressione nell’indice analitico:

È possibile mettere tuttaun’espressione\indextuttaun’espressione nell’indiceanalitico.

È possibile mettere tutta un’espres-sione nell’indice analitico.

Per generare dei sottolemmi bisogna separare il lemma principale eil sottolemma con il carattere !:

Qui parliamo dei sottolemmi%\indexindice!sottolemmidell’indice analitico.

Qui parliamo dei sottolemmi del-l’indice analitico.

Infine si può mettere del testo alla posizione alfabetica identificatada un altro testo, con il carattere @:

Mettiamo il simbolo $\alpha$%\indexalpha@$\alpha$nell’indice analitico al postodi ‘‘alpha’’ nell’ordinealfabetico.

Mettiamo il simbolo α nell’indi-ce analitico al posto di “alpha”nell’ordine alfabetico.

A volte può rivelarsi utile l’uso delle graffe di raggruppamento:

È possibile inserire una vocein corsivo\indexcorsivo@%\textitcorsivo.

È possibile inserire una voce incorsivo.

La tabella 46 illustra, per mezzo di alcuni esempi, la sintassi delcomando \index.

Per un documento con indice analitico, la sequenza di compilazioneGenerare l’indiceanalitico è la seguente:

a. si compila una prima volta con LATEX il sorgente;

Page 179: L'arte di scrivere con LaTeX _ Pantieri

9.2 PERSONALIZZARE L’INDICE ANALITICO 157

b. si compila con il programma MakeIndex;

c. si compila altre due volte con LATEX.

Quando LATEX viene eseguito la prima volta sul file sorgente, ognicomando \index scrive un’opportuna voce insieme al numero di pa-gina corrispondente in un file speciale che ha lo stesso nome del filesorgente LATEX, ma estensione diversa (.idx). Questo file .idx vienepoi elaborato dal programma MakeIndex, che genera un file avente an-cora lo stesso nome, ma questa volta estensione .ind, che contiene levoci nella forma “giusta”, cioè in ordine alfabetico, strutturate per lem-mi, sottolemmi e sotto-sottolemmi, con gli elenchi di numeri di paginesenza ripetizioni ed eventualmente con intervalli, se necessario com-posti con caratteri diversi a seconda dell’uso della voce. Se a questopunto si compila ancora due volte il sorgente LATEX, questo indice ana-litico ordinato verrà incluso nel documento e verranno aggiornati tuttii riferimenti.

In fase di correzione di bozze e controllo dell’indice analitico può Controllare l’indiceanaliticoessere utile il pacchetto showidx, che stampa le voci dell’indice analitico

nel margine sinistro della pagina.

9.2 PERSONALIZZARE L’INDICE ANALITICOL’indice analitico che si ottiene con le impostazioni predefinite non

è molto elegante. È possibile ricorrere a un apposito file, che chiamere-mo classic.ist, che contiene le istruzioni per personalizzare l’indiceanalitico, così definito:

headings_flag 1heading_prefix "\\goodbreak\\textsc\\MakeLowercase"heading_suffix "\\nopagebreak\n"symhead_positive "Simboli"symhead_negative "simboli"numhead_positive "Numeri"numhead_negative "numeri"

Una volta opportunamente posizionato classic.ist — la posizione, Istruzioni pergenerare un indiceanaliticopersonalizzato

al solito, dipende dalla distribuzione di LATEX che si usa, ma in ge-nere è sufficiente collocare il file nella cartella makeindex dell’alberopersonale (vedi il paragrafo 4.4.4 a pagina 29), eventualmente creandotale cartella, se non ci fosse già — le istruzioni per la compilazionedell’indice analitico sono le seguenti:

a. si compila una prima volta con LATEX il sorgente;

b. si elabora l’indice analitico (dalla linea di comando: makeindex-s classic 〈nome del documento〉 senza l’estensione .tex);

c. si compila altre due volte con LATEX.

Per bilanciare le colonne dell’ultima pagina dell’indice analitico èsufficiente inserirlo all’interno di un ambiente multicols (deve esserecaricato il pacchetto multicol). A questo scopo è possibile ridefinirel’ambiente theindex con il seguente codice,

Page 180: L'arte di scrivere con LaTeX _ Pantieri

158 L’INDICE ANALITICO

\let\orgtheindex\theindex\let\orgendtheindex\endtheindex\def\theindex%

\def\twocolumn\beginmulticols2%\def\onecolumn%\clearpage\orgtheindex

\def\endtheindex%

\endmulticols%\orgendtheindex

da scrivere nel preambolo.

Page 181: L'arte di scrivere con LaTeX _ Pantieri

10 P E R S O N A L I Z Z A R E LATEX

INDICE10.1 Comandi, ambienti e pacchetti nuovi 159

10.1.1 Definire nuovi comandi 159

10.1.2 Spazi dopo i comandi 160

10.1.3 Nuovi ambienti 161

10.1.4 Un pacchetto personale 161

10.2 Font 16210.2.1 Comandi per cambiare lo stile dei font 162

10.2.2 Dichiarazioni per cambiare il corpo dei font 163

10.3 Inserire uno sfondo colorato in un’immagine 16410.4 Le pagine bianche nei documenti fronte-retro 16510.5 Testatine personalizzate 16510.6 Cambiare le voci generate da babel 166

La ricerca di personalizzazioni di particolari oggetti o dell’intero do-cumento è un processo che presto o tardi tutti si trovano ad affrontare.In questo capitolo vengono esposti alcuni suggerimenti su come farein modo che LATEX produca risultati diversi da quelli predefiniti.

10.1 COMANDI, AMBIENTI E PACCHETTI NUOVI

10.1.1 Definire nuovi comandi

Uno degli aspetti più importanti della filosofia di LATEX è la distinzio- La distinzione tra lastruttura deldocumento e la sua“resa” visiva

ne tra la struttura del documento e la sua “resa” visiva. Si immaginiad esempio di dover scrivere un libro di botanica e di volere che tutti inomi latini delle piante appaiano in corsivo. In teoria, basterebbe met-terli come argomento del comando \textit. Se però l’editore dovessechiedere di comporre i nomi latini in neretto e non in corsivo (perchéqueste sono le sue scelte tipografiche), sarebbe necessario sostituiretutti i \textit in \textbf, facendo attenzione, perché probabilmenteil corsivo sarà stato usato anche per qualcos’altro. Tutto ciò non è ilmassimo della praticità.

Conformemente alla sua filosofia, LATEX offre una soluzione elegan-te a questo problema. È possibile infatti definire un nuovo comando,\latino, che stampa il suo argomento, cioè un nome latino, nello sti-le specificato. Se i nomi latini devono poi essere in neretto, basteràcambiare la definizione di \latino. Il comando \latino, dunque, nondescrive il modo in cui il suo argomento deve essere stampato, ma ilsuo valore, il modo in cui lo si è pensato nell’ambito del testo. Eccoperché non si usano quasi mai dei comandi di cambiamento di stile

159

Page 182: L'arte di scrivere con LaTeX _ Pantieri

160 PERSONALIZZARE LATEX

in un documento scritto con LATEX: si preferisce definire un insieme dicomandi che rispecchiano la logica del testo e servirsi di questi ultimi.

Per aggiungere comandi personali, si usa il comandoIl comando\newcommand

\newcommand〈nome〉[〈numero di argomenti〉][〈predefinito〉]〈definizione〉

I due argomenti obbligatori sono il 〈nome〉 del nuovo comando, e la〈definizione〉 del comando. Il parametro opzionale 〈numero di argomenti〉specifica il numero di argomenti che il nuovo comando richiede (finoad un massimo di nove); se manca, si assume che non vi sia alcunargomento. Il primo degli argomenti del nuovo comando può esserefacoltativo; esso è facoltativo se viene espressa anche la seconda opzio-ne di \newcommand (si può dare anche solo []). Se nell’uso di un nuovocomando che accetta un argomento facoltativo quest’ultimo non vienespecificato, esso assume il valore 〈predefinito〉.

Ad esempio, è possibile definire un nuovo comando, chiamato \arte,che è l’abbreviazione di L’arte di scrivere con LATEX, nel modo seguente:

\newcommand\arte\emphL’arte di scrivere con \LaTeX

Un comando simile potrebbe essere utile se si dovesse scrivere ripetu-tamente il titolo di questo libro.

Questo lavoro è intitolato\arte.

Questo lavoro è intitolato L’arte discrivere con LATEX.

Il prossimo esempio mostra come definire un comando che accettaargomenti. Il parametro #1 viene sostituito dal primo argomento spe-cificato; 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:

\latinorosa canina rosa canina

Se si desidera creare nuovi comandi che sovrascrivano quelli giàIl comando\renewcommand esistenti, è necessario usare il comando \renewcommand; la sintassi è la

stessa di \newcommand.

10.1.2 Spazi dopo i comandi

Gli spazi dopo i comandi sono ignorati da LATEX. Se si desideraottenere uno spazio dopo un comando, si deve scrivere e uno spazio,oppure scrivere un comando esplicito di spaziatura, come \ (vedi ilparagrafo 4.1.3 a pagina 24).

In alternativa, è possibile usare il pacchetto xspace per definire co-Il pacchetto xspacemandi seguiti da uno spazio, a meno che non siano seguiti da deter-minati segni di punteggiatura. Per esempio, dopo aver definito

\newcommand\mcescherMaurits Cornelis Escher\xspace

il comando \mcescher determina automaticamente quando inserireuno spazio dopo se stesso e quando no:

Page 183: L'arte di scrivere con LaTeX _ Pantieri

10.1 COMANDI, AMBIENTI E PACCHETTI NUOVI 161

\mcescher è stato un incisoree grafico olandese. \\\mcescher, artista olandese, èmolto apprezzato da logici,matematici e scienziati.

Maurits Cornelis Escher è stato unincisore e grafico olandese.Maurits Cornelis Escher, artistaolandese, è molto apprezzato dalogici, matematici e scienziati.

10.1.3 Nuovi ambienti

Il comando \newenvironment, corrispondente di \newcommand, per- Il comando\newenvironmentmette di creare ambienti personali. La sua sintassi è la seguente:

\newenvironment〈nome〉[〈numero di argomenti〉][〈predefinito〉]%〈prima〉〈dopo〉

Quando LATEX incontra \begin〈nome〉, lo sostituisce con quantospecificato nell’argomento 〈prima〉, e quando incontra \end〈nome〉,lo sostituisce con quanto specificato nell’argomento 〈dopo〉. L’ambien-te che viene definito può ricevere (in apertura) un certo 〈numero diargomenti〉, il primo dei quali può essere facoltativo, se viene specificatoil valore 〈predefinito〉, e va trattato come il primo argomento facoltativodefinito con \newcommand.

Il seguente esempio mostra l’uso del comando \newenvironment. Sescriviamo nel preambolo

\newenvironmentitaitemize\beginitemize\itshape\enditemize

l’ambiente itaitemize si usa nel modo seguente:

\beginitaitemize\item Un elenco con voci\dots\item \dots automaticamente

in corsivo.\enditaitemize

• Un elenco con voci. . .

• . . . automaticamente in corsivo.

LATEX si assicura che non venga definito un ambiente già esisten- Il comando\renewenvironmentte: se si vuole ridefinire un ambiente già esistente, si usa il comando

\renewenvironment, che ha la stessa sintassi di \newenvironment.

10.1.4 Un pacchetto personale

Quando vengono definiti molti nuovi comandi e ambienti, il pream-bolo del documento può diventare piuttosto lungo. In questo caso,è una buona prassi creare un pacchetto contenente le definizioni deipropri comandi ed ambienti; si usa poi il comando \usepackage percaricare il pacchetto nel documento principale.

% Un esempio di pacchetto personale\ProvidesPackageesempio\newcommand\arte\emphL’arte di scrivere con \LaTeX\newcommand\latino[1]\textit#1\newenvironmentitaitemize\beginitemize\itshape\enditemize

Essenzialmente, per scrivere un pacchetto si copia il contenuto delpreambolo del documento in un file a parte, con un nome terminanteper .sty. C’è poi il comando speciale

Page 184: L'arte di scrivere con LaTeX _ Pantieri

162 PERSONALIZZARE LATEX

Tabella 47: Comandi per cambiare lo stile dei font.

Comando Dichiarazione Stile

\textit \itshape Corsivo\textsc \scshape Maiuscoletto

\textbf \bfseries Neretto\textsl \slshape Inclinato\textrm \rmfamily Tondo\textsf \sffamily Senza grazie\texttt \ttfamily Macchina per scrivere

\ProvidesPackage〈nome del pacchetto〉

da usare all’inizio del file contenente pacchetto. Questo comando co-munica a LATEX il nome del pacchetto, permettendogli di fornire mes-saggi di errore appropriati se si tenta di includere due volte lo stessopacchetto.

10.2 FONTDi regola, LATEX sceglie il font appropriato in base alla struttura logi-In alcuni casi, si può

voler cambiare lostile e il corpo dei

font, manualmente.

ca del documento (capitoli, paragrafi, testatine, . . . ). In alcuni casi, sipotrebbe però voler cambiare lo stile e il corpo dei font, manualmente.

10.2.1 Comandi per cambiare lo stile dei font

Per cambiare lo stile dei font, si usano i comandi elencati nellatabella 47. Questi comandi modificano unicamente lo stile del loroargomento, mentre il testo che segue non viene modificato.

La parola che segue è in\textitcorsivo.Il resto del testo è normale.

La parola che segue è in corsivo. Ilresto del testo è normale.

È possibile combinare i comandi:

L’espressione che segue\textitè in \textbfnerettocorsivo.

L’espressione che segue è in nerettocorsivo.

Per ciascuno di questi comandi, esiste una dichiarazione corrispon-Dichiarazioni percambiare lo stile dei

fontdente, ovvero un comando privo di argomenti, che agisce su tutto ilresto del testo. Per limitare l’effetto di una dichiarazione bisogna usaredelle graffe di raggruppamento.

La parola che segue è in\itshape corsivo.Il resto del testo è normale.

La parola che segue è in corsivo. Ilresto del testo è normale.

Page 185: L'arte di scrivere con LaTeX _ Pantieri

10.2 FONT 163

Tabella 48: Dichiarazioni per cambiare il corpo dei font.

Dichiarazione Corpo

\tiny Font minuscolo

\scriptsize Font molto piccolo

\footnotesize Font abbastanza piccolo

\small Font piccolo

\normalsize Font normale\large Font grande\Large Font più grande\LARGE Font molto grande\huge Font enorme\Huge Il più grande

Si possono anche combinare più dichiarazioni:

L’espressione che segue\itshape è in \bfseriesneretto corsivo.

L’espressione che segue è in nerettocorsivo.

Gli spazi che seguono una dichiarazione vengono ignorati.

10.2.2 Dichiarazioni per cambiare il corpo dei font

Per cambiare il corpo dei font, si usano le dichiarazioni elencatenella tabella 48.

Lettere \Large grandie \footnotesize piccole.

Lettere grandi e piccole.

Il corpo effettivo di ogni font dipende dalla classe del documento edalle sue opzioni; nella tabella 49 nella pagina seguente sono elencati icorpi, in punti, dei font corrispondenti alle diverse dichiarazioni nelleclassi standard, in funzione dell’opzione di classe selezionata.

Le dichiarazioni per il cambiamento della dimensione cambiano an-che l’interlinea, ma solo se il capoverso termina entro il raggio d’azio-ne del comando. Si confronti la posizione del comando \par nei dueseguenti esempi.

\large Socrate: «Platonementirà nella fraseseguente».\par

Socrate: «Platone mentirànella frase seguente».

\large Platone: «Socrate hadetto il vero nella fraseprecedente».\par

Platone: «Socrate ha det-to il vero nella fraseprecedente».

Page 186: L'arte di scrivere con LaTeX _ Pantieri

164 PERSONALIZZARE LATEX

Tabella 49: I corpi dei font nelle classi standard (il corpo predefinito è di 10

punti).

Corpo 10 pt (predefinito) opzione 11 pt opzione 12 pt

\tiny 5 pt 6 pt 6 pt\scriptsize 7 pt 8 pt 8 pt\footnotesize 8 pt 9 pt 10 pt\small 9 pt 10 pt 11 pt\normalsize 10 pt 11 pt 12 pt\large 12 pt 12 pt 14 pt\Large 14 pt 14 pt 17 pt\LARGE 17 pt 17 pt 20 pt\huge 20 pt 20 pt 25 pt\Huge 25 pt 25 pt 25 pt

Nel secondo esempio viene un’interlinea scorretta: il comando \pardeve essere presente prima della parentesi graffa chiusa.

Per concludere il nostro viaggio nella terra degli stili e dei corpi deifont, ecco un piccolo consiglio:

Ricorda! Tanti Più font scegli di usare in un documento,

quanto più leggibile e bello diventa.

10.3 IMMAGINI CON LO SFONDO COLORATO

Se si desidera inserire uno sfondo colorato in un’immagine (perPersonalizzare losfondo delle

immaginiesempio del colore “Azzurro Alice” impiegato come sfondo della fi-gura 14b nella pagina successiva), è possibile definire un comando adhoc nel preambolo,

\definecolorAzzurroAliceRGB240,248,255\newcommand\myincludegraphics[2][]%\begingroup\setlength\fboxsep0pt%\colorboxAzzurroAlice\includegraphics[#1]#2%\endgroup

da usare nel modo seguente:

\myincludegraphics[〈. . .〉]〈immagine〉

(servono i pacchetti xcolor e graphicx). Affinché tutto funzioni, è fon-damentale che l’immagine da inserire abbia lo sfondo trasparente. Persfondi di colore diverso si rimanda alla ricca documentazione di xcolor.

Page 187: L'arte di scrivere con LaTeX _ Pantieri

10.4 LE PAGINE BIANCHE NEI DOCUMENTI FRONTE-RETRO 165

Grupp

oU

tili

zzatoriItalia

ni

di

TEX !

Igut(a) Immagine senza sfondo.

Gru

ppo

Uti

li

zzatoriItalia

ni

di

TEX !

Igut(b) Immagine con sfondo.

Figura 14: Inserire uno sfondo colorato in un’immagine.

10.4 PAGINE BIANCHESe si sta scrivendo un libro o una relazione, l’opzione openright, Il pacchetto

emptypagepredefinita nella classe book, fa iniziare i capitoli sempre in una paginadestra (vedi il paragrafo 4.3 a pagina 26). Se si usano le classi standard,per far sì che le eventuali pagine bianche inserite alla fine di un capitolonon abbiano né testatina né piè di pagina (scelta peraltro consigliabile),è sufficiente caricare il pacchetto emptypage:

\usepackageemptypage

10.5 TESTATINE PERSONALIZZATESe si usano le classi standard, con il pacchetto fancyhdr è possibile Il pacchetto fancyhdr

personalizzare la testatina e il piè di pagina (ossia lo stile di pagina)del documento.

La difficoltà nel personalizzare le testatine consiste nel dovervi in-serire informazioni come i titoli del capitolo e del paragrafo corrente.LATEX risolve questo problema con un approccio a due tappe. Nelladefinizione della testatina si usano i comandi \leftmark e \rightmarkper indicare rispettivamente il titolo del capitolo e del paragrafo in cor-so. I valori di questi comandi vengono aggiornati ogni volta che vieneelaborato un comando di inizio capitolo o paragrafo. Per garantirela massima flessibilità, i comandi \chapter e \section non modifica-no direttamente \leftmark e \rightmark, ma richiamano due ulterioricomandi, \chaptermark e \sectionmark, che a loro volta definiscono\leftmark e \rightmark. Così, se si desidera cambiare il titolo del capi-tolo o del paragrafo nella testatina, si devono semplicemente ridefinire\chaptermark e \sectionmark, rispettivamente.

La figura 15 nella pagina successiva illustra un esempio d’uso delpacchetto fancyhdr ottenuto con il seguente codice:

\documentclassbook\usepackagefancyhdr

Page 188: L'arte di scrivere con LaTeX _ Pantieri

166 PERSONALIZZARE LATEX

76 Le origini della teoria delle distribuzioni

Figura 3.2: Alcuni dei matematici impegnati nell’opera di rendere rigo-roso 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 ele usarono senza particolari commenti.

Alcuni dei matematici impegnati nell’opera di rendere rigo-roso il calcolo di Heaviside bandirono tali funzioni trovandole«illegittime» [Doetsch, 1937, p. 57], mentre altri (fra i qualiVan der Pol e Niessen) non si preoccuparono della debolezzadei loro fondamenti e le usarono senza curarsi del rigore. Vander Pol [1929] descrive la “funzione impulsiva unitaria” comesegue:

pH(t) =

!0, se t != 0,+", se t = 0,

" +"

#"pH(t) dt = 1. (3.6)

A!erma che tale oggetto può essere definito in modo equivalentecome limite di una successione di gaussiane:

pH(t) =n$!

e#n2t2, (3.7)

dove n è “un numero naturale molto grande”. Egli inoltre dà laformula " +"

#"f(t)

#pH(t)

$%dt = #f %(0), (3.8)

che dimostra attraverso un’integrazione per parti. Van derPol illustra i suoi argomenti con la figura 3.2. Per calcolare

3.3 La “Delta di Dirac” 77

la trasformata di Laplace L[pH(t)] =! +!

0 pH(t)e"st dt dellafunzione impulsiva unitaria, Van der Pol procede nel modoseguente. Innanzitutto determina L[fn(t)] =

! +!0 fn(t)e"st dt,

dove fn(t) è definita dalla relazione (3.4); ottenuto L[fn(t)] =1"e!s/n

s/n dimostra che limn#+!L[fn(t)] = 1 e conclude:

L[pH(t)] = L"

limn#+!

fn(t)

#= lim

n#+!L[fn(t)] = 1. (3.9)

La debolezza dell’impostazione di Van der Pol e Heaviside èdovuta essenzialmente ad una confusione circa le operazionicon i limiti doppi. Va però riconosciuto che la spregiudicatezzadel loro modo di procedere coglie, in un certo senso, nel segno:bisogna sottolineare che tutti i risultati precedenti possonoessere resi rigorosi nella teoria delle distribuzioni.

3.3 La “Delta di Dirac”Il significatofisico delle funzioni “impulsive” o “improprie”

è quello di fornire una rappresentazione di cariche e massepuntiformi. È degno di nota come fisici e matematici sianostati in grado di aggirare abilmente i problemi connessi conquesti oggetti, in ambiti dove a noi, oggi, sembrano giocare unruolo fondamentale.

Nel trattamento delle forze elettriche o gravitazionali, peresempio, la procedura tradizionale consisteva nel trattare perprime le cariche (o le masse) puntiformi e successivamente nelconsiderare distribuzioni continue di carica (o di massa), me-diante l’introduzione di una opportuna funzione densità. Inquesto modo, però, era impossibile rappresentare in modo rigo-roso linee e superficie cariche, come anche le cariche (le masse)puntiformi da cui si era inizialmente partiti. Questa contraddi-zione logica era il prezzo pagato dai fisici per la mancanza diuna teoria delle distribuzioni adeguatamente sistemata.

La situazione che precedette la scoperta della teoria delledistribuzioni sembra per certi aspetti paradossale. Né i fisici né

Figura 15: Un esempio d’uso del pacchetto fancyhdr.

\pagestylefancy\renewcommand\chaptermark[1]\markboth#1\renewcommand\sectionmark[1]\markright\thesection\ #1\fancyhf\fancyhead[LE,RO]\bfseries\thepage\fancyhead[RE]\bfseries\footnotesize\nouppercase\leftmark\fancyhead[LO]\bfseries\footnotesize\nouppercase\rightmark

Le istruzioni precedenti impediscono la scrittura in maiuscolo dei tito-li dei capitoli e dei paragrafi nelle testatine. Nella testatina delle pagi-ne pari (Even) viene scritto il titolo del capitolo in corso, sulla destra(Right); nella testatina delle pagine dispari (Odd) viene scritto il tito-lo del paragrafo in corso, a sinistra (Left). Il numero di pagina vienestampato a sinistra nelle pagine pari e a destra nelle pagine dispari.

Per ottenere altri stili di pagina si rimanda alla documentazione delpacchetto fancyhdr, molto dettagliata.

10.6 CAMBIARE LE VOCI GENERATE DA BABELTalvolta può essere necessario modificare le voci generate automa-

ticamente dal pacchetto babel. Per esempio, si può voler cambiare lavoce “Capitolo. . . ” in “Unità. . . ”, oppure “Bibliografia” con “Letturesuggerite”, e così via. A tal fine, si usa il codice

\addto\captions〈lingua〉〈testo〉

(nel preambolo, dopo aver caricato babel), che comanda di aggiungerealle definizioni specifiche della 〈lingua〉 il 〈testo〉.

Ad esempio, volendo sostituire la voce “Capitolo” con “Unità” bastascrivere

\addto\captionsitalian%

Page 189: L'arte di scrivere con LaTeX _ Pantieri

10.6 CAMBIARE LE VOCI GENERATE DA BABEL 167

Tabella 50: Comandi di babel specifici per l’italiano.

\abstractname Sommario \indexname Indice analitico

\alsoname vedi anche \listfigurename Elenco delle figure

\appendixname Appendice \listtablename Elenco delle tabelle

\bibname Bibliografia \pagename Pag.

\ccname e p. c. \partname Parte

\chaptername Capitolo \prefacename Prefazione

\contentsname Indice \proofname Dimostrazione

\enclname Allegati \refname Riferimenti bibliografici

\figurename Figura \seename vedi

\glossaryname Glossario \tablename Tabella

\headtoname Per

\renewcommand\chapternameUnità

mentre per sostituire “Bibliografia” con “Letture suggerite” si puòscrivere

\addto\captionsitalian%\renewcommand\bibnameLetture suggerite

Nella tabella 50 sono riportati i comandi per le parole chiave e il lorovalore in italiano.

Page 190: L'arte di scrivere con LaTeX _ Pantieri
Page 191: L'arte di scrivere con LaTeX _ Pantieri

A N O R M E T I P O G R A F I C H E I T A L I A N E

INDICEa.1 L’accento e l’apostrofo 170

a.1.1 Accento tonico e fonico 170

a.1.2 Apostrofo 171

a.2 Punteggiatura e spaziatura 172a.2.1 Segni di interpunzione e apostrofo 172

a.2.2 Virgolette 172

a.2.3 Parentesi 173

a.2.4 Punti ellittici 174

a.2.5 Trattini 174

a.2.6 Sbarretta e asterisco 174

a.3 Stile dei font 174a.3.1 Corsivo 175

a.3.2 Neretto 175

a.3.3 Maiuscoletto 175

a.4 Composizione del testo 175a.4.1 Capoversi 175

a.4.2 Uso delle maiuscole 176

a.4.3 Parole straniere 176

a.4.4 Numeri 178

a.4.5 Frazioni, percentuali, unità di misura 179

a.4.6 Sigle 179

a.5 La bibliografia 180

Questa appendice, basata su [Cevolani, 2006], cui si rimanda perogni approfondimento, descrive sinteticamente le principali norme ti-pografiche della lingua italiana, utili nella composizione di articoli, tesio libri. Per ogni regola discussa, si mostra come applicarla in LATEX.1

La parola “norme” va qui presa in senso piuttosto ampio: in italia- Non esistono chepochissime regoletipograficherealmente universalie vincolanti.

no, come in tutte le altre lingue, non esistono che pochissime regoletipografiche realmente universali e vincolanti, mentre molti aspetti deltesto dipendono da convenzioni e abitudini, o dal gusto dell’autoreo dell’editore del testo. Per questo motivo, questa appendice non hala pretesa di fornire un modello generale di scrittura, ma semplice-mente di riassumere le convenzioni più comunemente seguite nellacomposizione tipografica di un testo in italiano.

Ciò premesso, va tenuto presente che la scrittura in una qualunque Le norme ISO-UNIlingua è regolata nel mondo dalle norme emesse dall’iso, in Italia dallenorme definite dall’uni, che (come detto a pagina 109) hanno valoredi legge. Per maggiori dettagli sulle norme iso-uni si rimanda allarelativa documentazione e a [Beccari, 2009].

In questa appendice diamo per scontato che siano caricati corretta-mente il pacchetto babel con l’opzione italian, il pacchetto inputenc

1 Per molti dei temi trattati in questa appendice, il sito dell’Accademia della Crusca (http://www.accademiadellacrusca.it/) è un riferimento prezioso.

169

Page 192: L'arte di scrivere con LaTeX _ Pantieri

170 NORME TIPOGRAFICHE

con la codifica appropriata ed il pacchetto fontenc con l’opzione T1(vedi i primi due paragrafi del capitolo 5 a pagina 39):

\usepackage[italian]babel\usepackage[〈codifica〉]inputenc\usepackage[T1]fontenc

A.1 L’ACCENTO E L’APOSTROFOL’italiano ha due tipi di accento che possono venir segnalati grafica-

mente: il tonico e il fonico.2

A.1.1 Accento tonico e fonico

Il primo tipo è l’accento tonico che segnala, in una parola, la vocale suAccento tonicocui appunto “cade l’accento”. Per esempio, l’accento tonico permettedi distinguere “pàssero” (uccello) da “passerò” (verbo) o “àmbito” (diricerca) da “ambito” (sinonimo di “desiderato”).

Il secondo tipo è l’accento fonico, che segnala la pronuncia aperta oAccento fonicochiusa di una vocale. Per esempio, l’accento fonico permette di distin-guere “pésca” (in mare) da “pèsca” (il frutto), o “bótte” (di vino) da“bòtte” (nel senso di percosse). Si noti che, per la fonetica italiana, solola “e” e la “o” possono venire pronunciate aperte o chiuse (e quindihanno l’accento fonico), mentre la “a”, la “i” e la “u” ammettono unasola pronuncia.

Per distinguere questi due casi, l’accento fonico assume due formeAccento grave eacuto diverse, chiamate rispettivamente accento grave (da sinistra in alto a

destra in basso: `), che segnala un suono aperto della vocale, e accentoacuto (da sinistra in basso a destra in alto: ´), che segnala un suonochiuso.

Benché i due tipi di accento, tonico e fonico, abbiano una funzionedel tutto distinta, lo stesso segno grafico, cioè la forma grave dell’accentofonico, viene usato anche per segnalare l’accento tonico. L’accento toni-co è quindi sempre indicato con un accento grave, ad eccezione di queicasi in cui entrambi gli accenti, tonico e fonico (chiuso), cadono sullastessa vocale: per esempio, in “perché” e nelle altre parole “tronche”.3

Si noti che, al contrario delle vecchie macchine per scrivere o dialtri programmi di composizione del testo, LATEX permette di accentaresenza problemi le lettere maiuscole (il codice \‘E produce direttamente“È”), che spesso vengono erroneamente rese con un apostrofo (“E’ ”,che significa “ei, egli”).

È possibile usare il pacchetto inputenc per inserire i caratteri accentatidirettamente da tastiera (vedi il paragrafo 5.1.2 a pagina 42). Si noti

2 Un terzo tipo di accento, il circonflesso, ˆ, usato in passato per distinguere parole omo-grafe, soprattutto nel caso dei plurali in -ii — per esempio per distinguere studî (pluraledi studio) da studi (voce del verbo studiare) — non è più usato: oggi si scrive semplice-mente studi. Nei casi in cui l’ambiguità 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 l’intonazione(fenomeno tonico), per la pronuncia della vocale (fenomeno fonico) e per il simbolografico impiegato per segnalare i primi due.

Page 193: L'arte di scrivere con LaTeX _ Pantieri

A.1 L’ACCENTO E L’APOSTROFO 171

tuttavia che per alcuni caratteri, ad esempio la “o” chiusa (ó), assentidalla tastiera italiana, occorrerà comunque usare il codice esplicito.

Uso dell’accento

Molto spesso, nella scrittura quotidiana, sia l’accento tonico sia l’ac- Spesso si lascia alcontesto il compito didistinguere le paroleomografe.

cento fonico non vengono segnalati graficamente, lasciando al conte-sto il compito di distinguere fra parole omografe (si trovano quindinormalmente “Il mio ambito di ricerca” e “Il premio è molto ambi-to”, o “Alla domenica vado a pesca” e “Ho mangiato una buona pe-sca”, senza accento alcuno). L’unico caso di uso obbligatorio è quellodell’accento tonico sulle parole tronche, come “perché”, “cioè”, eccetera.

Gli accenti obbligatori sono sempre gravi su tutte le vocali trannesulla e che può riceverlo sia grave sia acuto a seconda dei casi.

I monosillabi che devono essere accentati sono i seguenti: ché (con-giunzione causale), chiù (onomatopea), ciò (pronome), dà (indicativo didare), 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 fareriferimento alla pronuncia aperta o chiusa, ma siccome questa è moltovariabile da persona a persona, le norme uni stabiliscono che:

• l’accento è grave su ahimè, ohimè, caffè, canapè, cioè, coccodè, diè, è,gilè, lacchè, piè, tè; sui francesismi adattati alla grafia italiana comebebè, cabarè, relè, purè, eccetera; sui nomi propri Giosuè, Mosè, Noè,Salomè, eccetera;

• l’accento è acuto su ché e i suoi composti come perché, affinché,eccetera; fé e i suoi composti come autodafé; sui composti di re co-me viceré, e sui composti di tre come ventitré, trentatré; sui passatiremoti 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 dellaomografia non corrispondente alla omofonia (pésca/pèsca), questi ac-centi facoltativi non vanno mai sulle parole piane, anche se la versionepiana è meno frequente o meno usuale della parola sdrucciola: quindiséguito, seguito, ma non seguìto. In altre parole, l’accento è vietato sulleparole piane (tranne nel suo valore fonico).

A.1.2 Apostrofo

L’apostrofo, ’, segnala normalmente la caduta della parte iniziale, co-me in ’sta (per questa), o finale di una parola, come in un’altra, un po’,da’ (imperativo), eccetera. Questa regola non è tuttavia fissa e semprerispettata; fra le eccezioni (in cui l’uso prevale sulla regola) ci sono adesempio piè (e non pie’) e fé (sia nel senso di “fede” che di “egli fece”),anche se in questo secondo caso l’uso non è costante. Occorre quindi,caso per caso, consultare un dizionario.

Page 194: L'arte di scrivere con LaTeX _ Pantieri

172 NORME TIPOGRAFICHE

Quando una parola perde una lettera o una sillaba iniziale si ha ilAferesi, apocope,elisione fenomeno dell’aferesi. Per esempio si ha aferesi in ’sta (per “questa”).

Se una parola perde una lettera o una sillaba finale di fronte ad un’al-tra parola si parla di apocope (o troncamento); quando questa perdita èsegnata dall’apostrofo, si chiama elisione. Per esempio si ha apocopein un bel cane sia nell’articolo uno sia nell’aggettivo bello; si ha elisionein l’amico è un po’ stanco sia nell’articolo lo sia nell’avverbio poco.

Quando cadono lettere o sillabe iniziali l’apostrofo è preceduto dauno spazio. Quando cadono sillabe finali l’apostrofo è seguito da unospazio o da un segno di interpunzione.

Quando in una parola cade una vocale finale di fronte ad un’altraNel file sorgente, nonbisogna mai lasciare

uno spazio dopol’apostrofo che sta alposto di una vocale

elisa.

parola che inizia per vocale (come in un’altra o in quell’uomo), l’apostro-fo sta al posto della vocale elisa; in quest’ultimo caso nel file sorgentenon bisogna mai lasciare uno spazio dopo l’apostrofo. In questo mo-do, LATEX evita automaticamente che resti l’apostrofo in fin di riga. Peresempio, “quell’uomo” viene diviso in sillabe come una parola unicain “quel-l’uo-mo” (occorre l’opzione italian di babel).

Fra gli usi particolari, l’apostrofo indica una riduzione delle cifre diun anno (per esempio: “il ’68”) ed è usato come simbolo per i minutid’angolo, mentre non va impiegato per indicare i minuti di tempo.

A.2 PUNTEGGIATURA E SPAZIATURALa punteggiatura italiana comprende i segni di interpunzione, l’apo-

strofo, le parentesi, le virgolette, i punti ellittici, i trattini e altri simbolicome asterisco e sbarretta. Esistono alcune regole fisse relative all’usodegli spazi prima e dopo i segni di interpunzione.

A.2.1 Segni di interpunzione e apostrofo

Tutti i segni di interpunzione (punto, virgola, punto e virgola, duepunti, punti interrogativo ed esclamativo, . . . ) vanno attaccati alla pa-rola che precede e separati per mezzo di uno spazio da quella che se-gue. Quindi, in generale, dopo ogni segno di interpunzione va battutouno spazio.

L’apostrofo segue la regola precedente, ad eccezione dei casi (che so-no però i più comuni) come “un’oca”, “un’altra”, . . . , che non richiedo-no uno spazio dopo l’apostrofo. A volte l’apostrofo si “scontra” con levirgolette, per esempio in l’“unico”. Una soluzione possibile è natural-mente 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 l’apostrofo e le virgolet-te: il codice l’\,‘‘unico’’ produce la forma, più leggibile, l’ “unico”.

A.2.2 Virgolette

In italiano, esistono tre tipi di virgolette: le basse (« », dette ancheVirgolette basse,virgolette alte e apici «francesi», «caporali» o «sergenti»), le alte (“ ”, dette anche “inglesi”) e

gli apici (‘ ’) (vedi il paragrafo 5.7.1 a pagina 54). La forma alto-basso(“ „) non è usata in tipografia, ma solo nella scrittura a mano.

Page 195: L'arte di scrivere con LaTeX _ Pantieri

A.2 PUNTEGGIATURA E SPAZIATURA 173

In generale, le virgolette servono a “staccare” graficamente una pa- Uso delle virgoletterola o un’espressione dal resto del testo. Per esempio, sono usate perriportare parole altrui (come nel caso del discorso diretto) o per segna-lare che una certa parola o frase è usata in un senso speciale differenteda quello ordinario. Alcuni usi tipici delle virgolette sono i seguenti:

• citazioni (e “intercitazioni”, cioè citazioni dentro a citazioni) dipensieri, 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 solomenzionata;

• significato traslato o speciale di un’espressione, per evidenziarnel’uso ironico, dispregiativo o semplicemente scherzoso, come inQuesti grandi “esperti” dicono. . . o in È un “mago” del calcolatore;

• parole insolite o straniere, come in Il “guru” locale di LATEX;

• titoli di opere.

Non esistono regole fisse o comunemente accettate per l’uso dei varitipi di virgolette nei casi sopra elencati (e negli altri possibili). Inoltre,in quasi tutti questi casi l’uso del corsivo concorre con quello dellevirgolette. L’importante, quindi, è fare una scelta iniziale ragionevoleed attenersi coerentemente ad essa nel resto del documento.

A.2.3 Parentesi

Le parentesi normalmente impiegate in italiano sono le parentesi Parentesi tonde,quadre, graffe euncinate

tonde ( ) e le parentesi quadre [ ]. Le parentesi graffe e uncinate 〈 〉(i comandi per queste ultime sono $\langle$ e $\rangle$) vengonousate solo in ambiti tecnici, tipicamente in matematica.

L’uso normale delle parentesi è quello di inserire un inciso nel di-scorso (cioè una frase relativa a quella principale ma non strettamentenecessaria, dal punto di vista logico, al discorso stesso, come in que-sto caso). Le parentesi quadre vengono usate quasi esclusivamentein due casi: come parentesi interne a parentesi (come [anche se nonè molto elegante] in questo caso) e nelle citazioni per indicare «uncommento dello scrivente [come in questo caso]» in modo che non siaconfuso con parole dell’autore. In quest’ultimo caso rientra anche quel-lo dell’omissione volontaria (che è comunque un commento), segnalatacon [. . .] (vedi il paragrafo 5.7.1 a pagina 54).

Uso di virgolette e parentesi

Sia le virgolette sia le parentesi vanno attaccate alle parole che rac-chiudono, e separate con uno spazio, sia prima sia dopo, dal restodella frase (a meno che non siano a fine frase, come qui). Quandoun segno d’interpunzione ricorre dentro a virgolette o a parentesi, lafrase o il periodo finirà, come questo, con un punto fuori dalla paren-tesi stessa (ovviamente!). Si noti che solo punto interrogativo e puntoesclamativo stanno di norma dentro alle parentesi.

Page 196: L'arte di scrivere con LaTeX _ Pantieri

174 NORME TIPOGRAFICHE

In italiano è poco diffuso, ma comunque lecito, l’uso di racchiudereun intero periodo all’interno delle parentesi, abitudine invece piuttostocomune per esempio in inglese. (In questo caso, la punteggiatura vieneanch’essa compresa fra parentesi, come qui.)

A.2.4 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 unospazio da quella che segue. . . in questo modo. In LATEX, il comandoda usare è \dots (non vanno mai inseriti a mano tre punti separati),eventualmente forzando uno spazio, \dots , se i punti ellittici nonsono a fine periodo (vedi il paragrafo 5.7.1 a pagina 54).

Se usati per indicare un’omissione in una citazione «è bene [. . .]inserire i puntini entro parentesi quadre o tonde» come in questo caso.

A.2.5 Trattini

Per il trattino lungo (vedi il paragrafo 5.7.1 a pagina 54), si usa unospazio sia prima sia dopo — come in questo caso.

Il trattino breve, invece, non richiede alcuno spazio quando separacifre, 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.

A.2.6 Sbarretta e asterisco

La sbarretta, /, si usa, senza spazi né prima né dopo, per indicareSbarrettaun’alternativa tra due possibilità. Quindi non dovrebbe essere usataper indicare giustapposizione o composti, per cui si usa il trattino. Peresempio: “i passeggeri diretti a Torino/Milano” (cioè a Torino o a Mila-no) ma “la linea Torino-Milano”. (Un uso eccezionale della sbarretta sitrova negli indirizzi postali, con “c/o”, che è l’abbreviazione dell’ingle-se care of, equivalente al nostro “all’attenzione di”.) La sbarretta si usaanche per scrivere le frazioni numeriche, come 3/4. Non si confondala sbarretta (slash, /), che può essere inserita direttamente da tastiera,con la barra rovescia (backslash, \), riservata ai comandi di LATEX.

L’asterisco, *, si usa praticamente solo in tre occasioni: come simboloAsteriscodella nota a piè di pagina, in numero di tre per indicare omissionevolontaria (“nel paese di * * *”, codice: *\,*\,*) e in linguistica perindicare forme non attestate, scorrette o inaccettabili (*che io vadi).

A.3 STILE DEI FONTIn tipografia, la parola font indica un insieme di caratteri accomunatiFont

da un certo stile grafico [Zannarini e Vavassori, 2005]. I font più usatiin italiano, oltre a quello normale del testo, comprendono lo stile cor-sivo, neretto e maiuscoletto. È poco utilizzato invece lo stile slanted(“inclinato”). Altri stili possono essere usati per esigenze particolari:

Page 197: L'arte di scrivere con LaTeX _ Pantieri

A.4 COMPOSIZIONE DEL TESTO 175

per esempio, in questo documento si usa il carattere tipo macchinaper scrivere per evidenziare il codice e i pacchetti di LATEX.

Lo stile “evidenziato” o “enfatizzato” è reso normalmente col corsi-vo, ma riveste un ruolo logico differente, discusso nel paragrafo 5.11 apagina 63.

A.3.1 Corsivo

Il corsivo si usa nel testo principalmente:

• per evidenziare le parole importanti del testo;

• per le parole straniere (anche latine) non entrate nell’uso italiano,ad esempio guillemet o politically correct;

• per i titoli di opere citate, ad esempio La Divina Commedia o TheTEXbook;

In bibliografia, si usa per i titoli dei libri e delle collezioni, ma questodipende dallo stile bibliografico scelto.

A.3.2 Neretto

Il neretto si usa, nelle classi standard di LATEX, per i titoli dei capitoli, Il neretto va usatocon moderazione.dei paragrafi e delle altre suddivisioni del testo. Si tende di norma a

non impiegarlo per evidenziare le parole, uso per cui esiste già il cor-sivo, o comunque a utilizzarlo con moderazione, per non appesantirel’aspetto della pagina.

A.3.3 Maiuscoletto

Il maiuscoletto viene usato in italiano, con una certa regolarità, qua-si esclusivamente per i nomi degli autori citati in bibliografia, comein questo caso: Bringhurst (1992). Questa convenzione, tuttavia,dipende dallo stile bibliografico usato.

A.4 COMPOSIZIONE DEL TESTO

A.4.1 Capoversi

Un capoverso è un blocco di testo, contenente uno o più periodi,che logicamente individua una parte del discorso autonoma. Si notiche in inglese un capoverso è chiamato paragraph, mentre un paragrafo(formato da più capoversi) è chiamato section (vedi il paragrafo 5.4 apagina 44).

Di regola, la prima riga di un capoverso viene rientrata per eviden- Il rientro nella primariga di un capoversoziare lo stacco da quello precedente. In questo caso, in italiano viene

solitamente rientrata anche quella del primo capoverso di un capitoloo di un paragrafo (mentre in inglese solo il secondo capoverso viene

Page 198: L'arte di scrivere con LaTeX _ Pantieri

176 NORME TIPOGRAFICHE

rientrato). La stessa regola vale anche nel caso delle citazioni fuoricorpo (vedi il paragrafo 5.12 a pagina 63).4

Per avere il rientro anche nel paragrafo iniziale si usa il pacchettoindentfirst, richiamandolo nel preambolo con

\usepackageindentfirst

A.4.2 Uso delle maiuscole

L’iniziale maiuscola, oltre che all’inizio del periodo, si usa solo per iIn italiano, l’inizialemaiuscola si usa solo

per i nomi propri.nomi propri. Questo è l’uso italiano, che contrasta con la consuetudi-ne di altre lingue. A parte il tedesco, dove tutti i sostantivi sono scritticon l’iniziale maiuscola, in inglese c’è l’abitudine di usare l’inizialemaiuscola, per esempio, nei nomi dei mesi e delle stagioni, nei nomidi alcuni settori disciplinari (ad esempio “Electrical and Electronic En-gineering”, “Information and Communication Technology”, . . . ), neititoli degli enunciati matematici menzionati all’interno di una frase(“Theorem 1”, “Lemma 2”, “Algorithm 3”), negli aggettivi che indi-cano la nazionalità e nelle parole “principali” — ovvero diverse daarticoli, congiunzioni e preposizioni, che (ad eccezione della primaparola) rimangono in minuscolo — che compongono i titoli di un li-bro (in italiano scriviamo “I promessi sposi”, ma in inglese troviamo“The Betrothed” con due maiuscole iniziali). Allo stesso modo, nonsi usa la maiuscola nell’abbreviazione di figura, tabella, eccetera, comeavviene invece regolarmente in inglese; non solo, ma in italiano si fariferimento ad una figura, una tabella, o simili, mediante la preposi-zione articolata, e quindi si scriverà correttamente “Come si vede nellafigura 14”, e non “Come si vede in Fig. 14”.

A.4.3 Parole straniere

Riempire i propri scritti con parole straniere non è solo cacofonico, èLe parole stranierevanno evitate,

quando c’è unavalida alternativa in

italiano.

anche provinciale. Non bisogna quindi usare le parole straniere quan-do c’è una valida alternativa in italiano. Così si può benissimo scrivere“scadenza” invece di deadline, “diagramma” invece di chart, “compe-tenze” al posto di know-how, e così via. Bisogna tuttavia evitare dicadere nel ridicolo per troppo purismo, come a volte fanno i francesicon i loro logiciel, ordinateur e page d’accueil. Si può scrivere tranquil-lamente “software”, “browser”, “editor”, “file”; valide alternative nonce ne sono.

A questo proposito, va stigmatizzata l’usanza (pessima, ma sempreI barbarismi vannoevitati sempre. più diffusa) di “tradurre” le parole straniere in maniera goffa, orec-

chiando l’originale. Ne risultano termini che non esistono né in unalingua né nell’altra, ma che a forza di essere usati acquistano quasi una“patente di credibilità”. Qualche esempio:

• proattivo, dall’inglese proactive, impropriamente usato nel sensodi “propositivo”, mentre significa “capace di anticipare futuritemi, problemi”;

4 Se i capoversi non sono rientrati, vengono solitamente spaziati verticalmente l’unodall’altro: in questo caso è utile il pacchetto parskip.

Page 199: L'arte di scrivere con LaTeX _ Pantieri

A.4 COMPOSIZIONE DEL TESTO 177

• monitorare, dall’inglese to monitor, ovvero “tenere sotto controllo”;

• promozionare, quando c’è l’italiano “promuovere”;

• testare, al posto dell’italiano “provare”, “verificare”;

• confidenzialità, che in italiano non esiste, ma che è diventato sino-nimo di “riservatezza”, dall’inglese confidential;

• educazione, impropriamente usato nel senso di “formazione”, dal-l’inglese education;

• compagnia, quando “azienda” o “impresa” vanno benissimo;

• approcciare (un tema, un problema), può essere facilmente sosti-tuito con “affrontare”, tanto più che in inglese to approach signifi-ca semplicemente “avvicinare (qualcuno)”.

Le parole straniere vanno in corsivo, a meno che non vengano espli- Le parole stranierenon di uso correnteper il lettore vannoin corsivo.

citamente «quoted» (come in questo caso) o che non siano entrate nel-l’uso comune. Quindi, per esempio, si scriverà: “ho visto un bel film”(comune) ma “ho mangiato un pudding” (non comune). In realtà, da-to che è molto difficile stabilire che cosa sia entrato o meno “nell’u-so comune”, la regola più corretta è quella di scrivere in corsivo leparole straniere che si presumono non di uso corrente per il lettore acui 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 nell’uso comu- Le parole straniered’uso comune nonassumono la formaplurale.

ne non assumono la forma plurale (“ho visto due film”), mentre leparole straniere di uso non comune seguono il plurale della linguaoriginale (“ho mangiato due puddings”).

A proposito del morfema finale -s, che di regola rappresenta la mar-ca del plurale in inglese, francese, spagnolo e portoghese, va sottolinea-to che la diffusione di questa modalità di formazione del plurale nellelingue europee presenta il rischio di poter essere intesa, nella coscien-za comune, come la modalità tipica per ottenere un plurale stranie-ro e quindi di essere applicata anche a parole che formano il pluralein modo diverso. Si scriverà dunque correttamente, ad esempio: “ilgentleman”, “i gentlemen”; “il Land”, “i Länder”.

I nomi propri (come “San Francisco”, “Donald”, . . . ) o le denomina-zioni ufficiali (come “Stanford University”, “Magna Charta”, . . . ) nonsono considerati parole straniere, e quindi non vanno in corsivo.

La traduzione straniera di un’espressione italiana usata nel testo puòessere semplicemente messa in corsivo e fra parentesi (bracket), come inquesto caso. Se invece l’espressione tradotta ricorre in una citazione, esi vuole indicare la forma originale, occorre inserirla fra parentesi qua-dre, come ogni altro commento. Per esempio: «La visione del mondo[Weltanschauung]. . . ».

È ovvio che la sillabazione delle altre lingue è diversa da quella del- La sillabazione delleparole stranierel’italiano, ed è altrettanto ovvio che scrivendo in lingue diverse dall’ita-

liano è possibile che alcune cesure risultino errate. Nel caso di singoleparole straniere inserite in una frase italiana è ammessa la divisionein fin di riga seguendo le regole applicabili per l’italiano. Qualorainvece sia riprodotto un intero brano in una lingua straniera, occorre

Page 200: L'arte di scrivere con LaTeX _ Pantieri

178 NORME TIPOGRAFICHE

attenersi alle regola della lingua in questione (vedi il paragrafo 5.1.1 apagina 39).

A.4.4 Numeri

Lettere o cifre?

Qualsiasi numero può venir scritto altrettanto correttamente in cifreo in lettere. La scelta dipende anche dalla natura del testo: quelliumanistici tendono a usare le lettere, quelli tecnico-scientifici 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, è all’inizio del periodolo si scrive in lettere: «Trentatré trentini venivano da Trento. . . »;

• se una quantità è meramente indicativa, si usano le lettere o unaforma 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 incifre o in lettere. Nella scrittura in cifre, l’ordinale si indica con uncircoletto in posizione di apice (esponente): per esempio, “1°”, che siottiene in LATEX semplicemente con 1° (si noti che, benché il circolettoindichi in origine la “o” finale di “primo”, il simbolo relativo non èuna “o” ma un circolo.) Quando, per indicare un ordinale, si usano inumeri romani al posto dei numeri arabi, non va usato il circoletto inesponente: per esempio, in “Carlo V” e “il XX secolo” i due numeriromani vengono letti rispettivamente “quinto” e “ventesimo” senzabisogno di altra indicazione.

Separazione fra cifre

Per numeri di cinque o più cifre, è utile inserire uno spazio fra ogniIl pacchettonumprint gruppo di tre cifre (partendo da destra), per facilitare la lettura del

numero stesso. Lo spazio in questione non dovrebbe essere un nor-male spazio (come in 1 500 000) ma invece uno spazio sottile (comein 1 500 000. Il pacchetto numprint permette, fra l’altro, di inserire talespazio automaticamente, sia in modo testo sia in modo matematico:

\numprint1500000 1 500 000

È bene evitare l’uso di virgola e punto (diffusi rispettivamente nel mon-do anglosassone e in quello europeo continentale) per separare le mi-gliaia, uso che rischia di confondersi con la separazione decimale e di

Page 201: L'arte di scrivere con LaTeX _ Pantieri

A.4 COMPOSIZIONE DEL TESTO 179

provocare gravi errori di lettura. L’uso dello spazio sottile è l’unicometodo universale corretto.

Nei numeri decimali, che si scrivono quasi sempre in cifre, il separa-tore fra la parte intera e quella decimale è una virgola (23,5), secondol’uso europeo continentale (in quello anglosassone è un punto). Se ilnumero è inserito in ambiente matematico, è necessario racchiuderela virgola tra parentesi graffe, per correggere opportunamente la spa-ziatura dopo la virgola: in modo matematico, infatti, LATEX tratta lavirgola come un segno di punteggiatura e aggiunge uno spazio extradopo di essa. Si confronti:

$23,5$ \\$23,5$

23,523, 5

Nel secondo caso si ha una spaziatura (leggermente) sbagliata dopo lavirgola. La scrittura corretta è $23,5$.

Se si devono inserire molti numeri decimali nel proprio documento, Il pacchetto icommaper evitare di scrivere ogni volta le graffe è possibile caricare il pacchet-to icomma. Dopo aver caricato il pacchetto, la virgola viene interpretatacome segno di punteggiatura se seguita da uno spazio, altrimenti vienetrattata come separatore. Così, per scrivere un numero decimale come23,5 basta scrivere $23,5$, mentre l’espressione matematica (x,y) siottiene inserendo uno spazio esplicito dopo la virgola: (x, y).

A.4.5 Frazioni, percentuali, unità di misura

Le frazioni si possono esprimere in lettere (tre quarti) a meno che non Frazioniindichino una quantità numerica precisa. In questo caso si possonoscrivere usando la sbarretta, per esempio 3/4, o la forma frazionariavera e propria, per esempio 3

4 (codice LATEX: $\frac34$).5

Le percentuali si scrivono normalmente in cifre (30%) a meno che Percentualiil contesto non sia colloquiale, nel qual caso si può scrivere “30 percento”. Va ricordato che il simbolo % è riservato in LATEX ai commenti,e va quindi inserito con l’apposito comando \%.

Le quantità misurate sono costituite da numeri seguiti dall’unità di Unità di misuramisura, espressa tipicamente dal simbolo relativo, come per esempio,“20 cm” o “15 kg”. Si noti che il simbolo dell’unità di misura non vuoleil punto. In LATEX, per inserire le unità di misura del Sistema Interna-zionale è consigliabile l’uso del pacchetto siunitx (vedi il paragrafo 7.10

a pagina 131).

A.4.6 Sigle

Gli acronimi sono espressioni formate dalle lettere o sillabe iniziali Acronimidi parole componenti un’espressione che si vuole abbreviare. Esempisono guIt, html o pdf. Gli acronimi dovrebbero essere composti tuttida maiuscole, senza spazi né puntini fra di esse, anche se spesso sitrovano forme differenti. Quando un acronimo è ampiamente entrato

5 Una scrittura del tipo 3/4, che si può ottenere con pacchetti come nicefrac o xfrac, è invecesempre sconsigliabile (l’unica possibile eccezione è se la frazione si trova all’interno diun libro di cucina).

Page 202: L'arte di scrivere con LaTeX _ Pantieri

180 NORME TIPOGRAFICHE

nell’uso e viene pronunciato come parola, si può spesso scriverlo cometale: “Fiat” e “radar” sono entrambi accettabili. A parte questi casi,è sempre consigliabile, per acronimi meno noti, citarli per esteso laprima volta che li si scrive nel testo, mettendo fra parentesi la formaestesa. Per esempio: guIt (Gruppo Utilizzatori Italiani di TEX e LATEX).

Le abbreviazioni si ottengono invece dal troncamento di una parola,Abbreviazioniche viene indicata dalla sua sola parte iniziale. In casi particolari, come“sig.ra” o “Prof.ssa”, comprendono anche la parte finale della parolaoriginale. Il troncamento viene indicato con un punto: se l’abbrevia-zione dovesse cadere a fine 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).

A.5 LA BIBLIOGRAFIALa bibliografia è forse il più tormentato fra gli aspetti tipografici del-Stile dei riferimenti

bibliografici la composizione di un documento. Se in generale esistono poche re-gole assolute per la tipografia, nel caso della bibliografia non ne esistesostanzialmente alcuna.

Lo stile dei riferimenti bibliografici dipende essenzialmente dal tipodi pubblicazione, dall’editore, dai gusti dell’autore e da altri fattori.

Per esempio, lo stile della bibliografia adottato in questo documento,tipico di molti documenti italiani, prevede l’uso del maiuscoletto siaper i nomi degli autori che dei curatori (editor), il corsivo per i titolidi libri o antologie (collection) e per i nomi delle riviste (journal) e levirgolette basse per i titoli degli articoli o dei contributi in antologie(vedi il paragrafo 8.1 a pagina 141).

Vale comunque la pena ripetere che queste sono solo alcune del-le tante scelte stilistiche possibili, che solitamente vengono imposteall’autore del documento dall’editore o dalla rivista per cui scrive.

Anche la scelta fra riferimenti in nota (a piè di pagina) o invece rac-colti in un’apposita bibliografia dipende spesso dall’editore o dalla rivi-sta. La prima scelta è piuttosto diffusa nelle pubblicazioni italiane, madel tutto sconsigliabile per qualsiasi pubblicazione scientifica (in sensolato, comprese le tesi di laurea, per esempio) a causa della maggiordifficoltà di individuazione e lettura del riferimento. La seconda sceltaè quella standard in LATEX: l’ambiente thebibliography o il program-ma BibTEX producono appunto una sezione del documento separata,contenente l’elenco dei riferimenti bibliografici.

Page 203: L'arte di scrivere con LaTeX _ Pantieri

B G A L L E R I A D E G L I O R R O R I

INDICEb.1 Il testo 181

b.1.1 L’inserimento dei caratteri accentati 181

b.1.2 La divisione in sillabe 182

b.1.3 I margini 182

b.1.4 Gli indirizzi Internet 183

b.1.5 Le note a piè di pagina 183

b.2 Le tabelle 183b.2.1 Regole generali 183

b.2.2 Allineare i numeri alla virgola 186

b.2.3 Le tabelle mobili 186

b.3 Le figure 187b.3.1 Le figure mobili 187

b.4 La matematica 189b.4.1 Formule fuori corpo 189

b.4.2 Operatori 192

b.4.3 Parentesi 193

b.4.4 Matrici 194

b.4.5 Integrali multipli 194

b.4.6 Insiemi numerici 195

b.4.7 Riferimenti a una formula 196

b.4.8 Punti ellittici 196

b.5 Codici sorgente leggibili 196

In questa appendice, ispirata a [Gregorio, 2003], ho raccolto alcuniesempi estratti da alcune diffuse guide introduttive a LATEX. Presentoquesta galleria non per svergognare gli autori, naturalmente; piuttosto,l’intendimento è di mostrare come non si scrive in LATEX e che con qual-che minuto di riflessione e il pacchetto “giusto” si può spesso ottenereun risultato migliore e più semplice, evitando di prodursi in acrobazie“TEXniche”. In ciascun esempio è mostrato il testo originale; lo si di-scute e poi si mostra una versione corretta, con l’indicazione di qualipacchetti richiamare e quali comandi definire nel preambolo.

B.1 IL TESTOB.1.1 L’inserimento dei caratteri accentati

Consideriamo il codice seguente:

181

Page 204: L'arte di scrivere con LaTeX _ Pantieri

182 GALLERIA DEGLI ORRORI

Non se ne pu\‘o pi\‘u: inrealt\‘a, cos\‘\i facendoil numero di caratteri dabattere \‘e triplo! Perch\’enon usare direttamentei caratteri accentati?

Non se ne può più: in realtà, co-sì facendo il numero di caratteri dabattere è triplo! Perché non usaredirettamente i caratteri accentati?

Dal 1994, è possibile usare il pacchetto inputenc per inserire i carat-Per inserire icaratteri accentati

direttamente datastiera si usa il

pacchetto inputenc.

teri accentati direttamente da tastiera (vedi il paragrafo 5.1.2 a pagi-na 42):

In realtà, dal 1994 èpossibile inserire i caratteriaccentati direttamente datastiera: perché non farlo?

In realtà, dal 1994 è possibile inseri-re i caratteri accentati direttamenteda tastiera: perché non farlo?

B.1.2 La divisione in sillabe

Si consideri il seguente esempio:

\hyphenationSil-la-ba-zio-ne sim-pa-ti-ca-men-te

Questo esempio di \hyphenation è infelice, perché le parole indi-Il comando\hyphenation si usa

per le eccezioniall’algoritmo di

sillabazione.

cate vengono trattate correttamente dall’algoritmo di sillabazione; sa-rebbe meglio esemplificare con nomi propri oppure con parole rareoppure con parole tecniche composte per le quali si vuole la divisio-ne etimologica invece di quella fonetica (che, almeno per le paroleitaliane, viene eseguita benissimo dall’algoritmo di LATEX). Per esem-pio si possono avere parole come “macroistruzione” (divisione ordi-naria: 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) (vedi il paragra-fo 5.4.1 a pagina 46).

L’esempio proposto va sostituito con un altro del tipo seguente:

\hyphenationma-cro-istru-zio-ne nitro-idrossil-amminico

B.1.3 I margini

Si consideri il seguente codice, proposto per modificare i margini dipagina predefiniti:

\addtolength\textwidth1cm\addtolength\hoffset-0.5cm

Nella definizione dei margini di pagina, la modifica di comandi in-terni di LATEX quali \textwidth, \hoffset, \oddsidemargin, . . . è inve-ce sempre sconsigliabile per molte ragioni [Fairbairns, 2007; Trettin eZannarini, 2005].

Per modificare i margini di pagina, è consigliabile rivolgersi ai pac-I pacchetti layaureo egeometry chetti layaureo o geometry, se si usano le classi standard (vedi il para-

grafo 5.5.1 a pagina 49).

Page 205: L'arte di scrivere con LaTeX _ Pantieri

B.2 LE TABELLE 183

B.1.4 Gli indirizzi Internet

Consideriamo il seguente codice:

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 Per scrivere unindirizzo Internet siusa il pacchetto url.

url (se si usa hyperref, questo pacchetto è caricato automaticamente):

\urlhttp://profs.sci.univr.%it/~gregorio/

http://profs.sci.univr.it/~gregorio/

In questo modo, fra l’altro, non occorre fare peripezie per inserire latilde ~, l’indirizzo Internet è composto con il font a spaziatura fissausato e, se necessario, viene automaticamente sillabato.

B.1.5 Le note a piè di pagina

Si consideri il seguente esempio:

Le note a pi\‘e dipagina\footnoteQuesto ne \‘eun esempio. sono spessousate dagli utenti di \LaTeX.

Le note a piè di paginaa sonospesso usate dagli utenti di LATEX.

a Questo ne è un esempio.

Dal momento che le note a piè di pagina (di cui è bene non abusare) È bene scrivere lenote a piè di paginaalla fine del relativocapoverso, dopo ilsegno diinterpunzione.

interrompono il flusso del discorso, esse dovrebbero sempre essereposte alla fine del relativo capoverso, dopo il segno di interpunzione.1

Le note a piè di paginasono usate con moderazionedagli utenti di\LaTeX.\footnoteQuestone è un esempio.

Le note a piè di pagina sono usa-te con moderazione dagli utenti diLATEX.a

a Questo ne è un esempio.

B.2 LE TABELLE

B.2.1 Regole generali

Si considerino le seguenti tabelle:

1 Così.

Page 206: L'arte di scrivere con LaTeX _ Pantieri

184 GALLERIA DEGLI ORRORI

\begintabular|l|c|r|\hlineSparc & SunOS & 4.1.4 \\\hlineHP & HP-UX & 10.20 \\\hlinePC & NetBSD & 1.2 \\\hline\endtabular

Sparc SunOS 4.1.4

HP HP-UX 10.20

PC NetBSD 1.2

\begintabular|r|l|\hline7C0 & esadecimale \\3700 & ottale \\11111000000 & binario \\\hline \hline1984 & decimale \\\hline\endtabular

7C0 esadecimale

3700 ottale

11111000000 binario

1984 decimale

• Le tabelle precedenti sono state composte senza seguire le regoleLe tabelle vannocomposte seguendo le

regole generali. . .generali, che impongono di non usare linee verticali e di evitarelinee doppie (vedi il paragrafo 6.1.1 a pagina 76).

• Inoltre, per ottenere le linee orizzontali è opportuno usare i co-. . . usando i comandidel pacchetto

booktabs per ottenerele linee orizzontali. . .

mandi \toprule, \midrule e \bottomrule del pacchetto booktabsal posto del comando \hline offerto da LATEX, che ha una resatipografica non del tutto soddisfacente a causa del poco spaziotra le linee orizzontali e il testo delle celle (vedi il paragrafo 6.1.2a pagina 76).

• Si noti infine che LATEX non richiede che le colonne (ovvero i sim-. . . e allineando lecolonne nel sorgente. boli &) siano allineate, tuttavia è consigliabile che lo siano per

migliorare la leggibilità del sorgente.

Per queste ragioni è opportuno riscrivere le tabelle nel modo seguente:

\begintabularlcr\topruleSparc & SunOS & 4.1.4 \\HP & HP-UX & 10.20 \\PC & NetBSD & 1.2 \\\bottomrule\endtabular

Sparc SunOS 4.1.4

HP HP-UX 10.20

PC NetBSD 1.2

\begintabularrl\toprule7C0 & esadecimale \\3700 & ottale \\11111000000 & binario \\\midrule1984 & decimale \\\bottomrule\endtabular

7C0 esadecimale

3700 ottale

11111000000 binario

1984 decimale

Page 207: L'arte di scrivere con LaTeX _ Pantieri

B.2 LE TABELLE 185

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

Contenuto Quantità

Heineken 33 cl 10

Guinness 66 cl 5

Kronenbourg 33 cl 0

Tabella 52: Tabella composta correttamente secondo le regole generali.

Contenuto (cl) Quantità

Heineken 33 10

Guinness 66 5

Kronenbourg 33 0

Si consideri la tabella 51, ottenuta con il seguente codice:

\begintabular||p5cm||*2c||\hline& Contenuto & Quantit\‘a \\\hline\hline\bfseries Heineken & 33 cl & 10 \\\hline\bfseries Guinness & 66 cl & 5 \\\hline\bfseries Kronenbourg & 33 cl & 0 \\\hline\endtabular

Nell’esempio considerato, la scelta di specificare la larghezza della Per specificare il fontdi una colonna diuna tabella si usa ilpacchetto array.

prima colonna non appare molto appropriata. Inoltre, per specifica-re il font di una determinata colonna è opportuno usare il comando>〈dichiarazione〉 del pacchetto array (vedi il paragrafo 6.1.5 a pagi-na 78). Eliminando le linee verticali, le linee doppie e le linee orizzon-tali superflue, e usando i comandi del pacchetto booktabs per ottenerele linee orizzontali, la tabella 51 si trasforma nella 52, ottenuta con ilseguente codice

\begintabular>\bfserieslcc\toprule

& Contenuto (cl) & Quantità \\\midruleHeineken & 33 & 10 \\Guinness & 66 & 5 \\Kronenbourg & 33 & 0 \\\bottomrule\endtabular

nel quale, al solito, sono state allineate le colonne per migliorarne laleggibilità. Sono state anche inserite le unità di misura nell’intestazio-ne della tabella invece che nel corpo.

Page 208: L'arte di scrivere con LaTeX _ Pantieri

186 GALLERIA DEGLI ORRORI

Tabella 53: Esempio di tabella con allineamento alla virgola.

Espressione Valore

π 3,1416ππ 36,46ππ

π80662,7

B.2.2 Allineare i numeri alla virgola

Consideriamo la seguente tabella:

\begintabularc r @, lEspressione &\multicolumn2cValore \\\hline$\pi$ & 3&1416 \\$\pi^\pi$ & 36&46 \\$(\pi^\pi)^\pi$ & 80662&7 \\\endtabular

Espressione Valore

π 3,1416

ππ 36,46

(ππ)π 80662,7

Per allineare i numeri alla virgola è preferibile usare il pacchettoPer allineare inumeri alla virgola si

usa il pacchettodcolumn.

dcolumn. La tabella precedente si trasforma allora nella 53, ottenutacon il seguente codice:

\begintabularcD.,5.4\topruleEspressione & \multicolumn1cValore \\\midrule$\pi$ & 3.1416 \\$\pi^\pi$ & 36.46 \\$\pi^\pi^\pi$ & 80662.7 \\\bottomrule\endtabular

nel quale, al solito, si sono usati i comandi del pacchetto booktabs perottenere le linee orizzontali.

B.2.3 Le tabelle mobili

Consideriamo il seguente codice, spesso usato per introdurre unatabella mobile:

\begintable[htbp]\begincenter\begintabular|l|l|\hlinetable & tabelle \\\hlinefigure & disegni \\\hline\endtabular\endcenter\captionEsempio di tabella mobile

Page 209: L'arte di scrivere con LaTeX _ Pantieri

B.3 LE FIGURE 187

Tabella 54: Un esempio di tabella mobile.

table tabellefigure disegni

\labeltab:table\endtable

Il codice precedente contiene diversi errori:

• Innanzitutto, è consigliabile introdurre gli oggetti mobili median- È meglio evitarel’opzione diposizionamento htbp.

te un’opzione di posizionamento tb se sono piccoli, e p se sonograndi (vedi il paragrafo 6.4 a pagina 98).

• Inoltre, per centrare una tabella mobile è opportuno usare il co- Per centrare unatabella mobile vausato \centeringinvece di center.

mando \centering invece dell’ambiente center, poiché quest’ul-timo inserisce uno spazio verticale supplementare esagerato.

• Infine, per separare la didascalia dalla tabella (di regola, la di- Per separare ladidascalia dallatabella si può usare ilpacchetto caption.

dascalia si scrive sopra la tabella e non sotto, come nell’esempioconsiderato), se si usano le classi standard è conveniente caricareil pacchetto caption e, una volta per tutte, scrivere nel preambolo

\captionsetup[table]position=top

Eliminando come al solito le linee verticali e usando i comandi delpacchetto booktabs per ottenere le linee orizzontali, la tabella preceden-te si trasforma nella 54, ottenuta con il seguente codice:

\begintable[tb]\captionUn esempio di tabella mobile.\labeltab:esempio\centering\begintabularll\toprule\texttttable & tabelle \\\textttfigure & disegni \\\bottomrule\endtabular\endtable

B.3 LE FIGUREB.3.1 Le figure mobili

Consideriamo il seguente codice, spesso usato per introdurre unafigura mobile:

\beginfigure[htbp]\begincenter\includegraphics[width=10cm]figura.eps\endcenter

Page 210: L'arte di scrivere con LaTeX _ Pantieri

188 GALLERIA DEGLI ORRORI

\captionDisegno\labelfig:dessin\endfigure

Il codice precedente contiene diversi errori:

• Innanzitutto, è meglio evitare l’opzione di posizionamento htbp:È meglio evitarel’opzione di

posizionamento htbp.è invece consigliabile introdurre gli oggetti mobili con un’opzio-ne di posizionamento tb se sono piccoli, e p se sono grandi.

• Inoltre, per centrare una figura mobile è opportuno usare il co-Per centrare unafigura mobile va

usato \centeringinvece di center.

mando \centering invece dell’ambiente center, poiché quest’ul-timo inserisce uno spazio verticale supplementare indesiderato(di regola, la didascalia di una figura si scrive sotto la figura).

• Nonostante sia possibile attribuire alla chiave width un valoreÈ opportuno inserireuna figura

specificandone ledimensioni relative e

non assolute.

espresso in centimetri (o in punti, in millimetri, o in qualsiasiunità tipografica riconosciuta da LATEX), è opportuno esprimerequesta dimensione con un valore legato alla geometria della pa-gina (ad esempio width=0.5\columnwidth), perché cambiando ledimensioni della pagina la dimensione relativa mantiene le pro-porzioni, mentre la dimensione assoluta potrebbe dare luogo ainconvenienti di impaginazione.

• Infine, se si prevede di compilare sia con LATEX sia con pdfLATEX,È consigliabile nonspecificare

l’estensione dei filegrafici caricati.

è consigliabile non specificare l’estensione dei file grafici cari-cati dal comando \includegraphics (vedi il paragrafo 6.2.4 apagina 94).

In conclusione, per introdurre una figura mobile è opportuno servirsidel seguente codice:

\beginfigure[tb]\centering\includegraphics[width=0.5\columnwidth]Galleria\captionUn esempio di figura mobile.\labelfig:galleria\endfigure

La figura 16 a fronte è stata introdotta usando le istruzioni precedenti.Si consideri ora il seguente codice:

Come si vede in Fig.~14 \dots

In LATEX, i riferimenti incrociati si realizzano con i comandi \label,I riferimentiincrociati si fannocon \label, \ref e

\vref.

\ref e \vref (vedi il paragrafo 5.9 a pagina 61); nei riferimenti aglioggetti mobili, il comando \label deve comparire dopo il corrispon-dente \caption. Inoltre, non si usa la maiuscola nell’abbreviazionedi “figura”, “tabella”, eccetera, come avviene invece regolarmente ininglese; non solo, ma in italiano si fa riferimento ad una figura, una ta-bella, o simili, mediante la preposizione articolata, e quindi si scriveràcorrettamente:

Come si vede nellafigura~\vreffig:galleria\dots

Come si vede nella figura 16 afronte . . .

Page 211: L'arte di scrivere con LaTeX _ Pantieri

B.4 LA MATEMATICA 189

Figura 16: Un esempio di figura mobile (l’immagine, che riproduce la litogra-fia Galleria di stampe, di M. Escher, è tratta da http://www.mcescher.com/).

B.4 LA MATEMATICAB.4.1 Formule fuori corpo

Si consideri il seguente esempio:

Ne risulta:$$x + y + z = n$$

Ne risulta:

x+ y+ z = n

Nell’inserimento delle formule matematiche fuori corpo, l’impiego I comandi $$. . .$$non vanno usati mai.dei comandi $$. . .$$ è sempre sconsigliabile, perché in alcuni casi si

possono presentare problemi con la spaziatura verticale tra le formule;inoltre, con quel codice l’opzione di classe fleqn non funziona cor-rettamente [Fairbairns, 2007; Trettin e Zannarini, 2005]. La formulaprecedente si scrive correttamente così:

Ne risulta:\[x + y + z = n.\]

Ne risulta:

x+ y+ z = n.

Nella formula precedente è stata aggiunta la punteggiatura.Esistono due scuole di pensiero sulla punteggiatura esterna, ovvero In questo documento

si usa lapunteggiatura nelleformule fuori corpo.

sulla punteggiatura nelle formule matematiche fuori corpo. Alcuniritengono che questa non andrebbe mai usata, in quanto superflua ecausa di possibili ambiguità di lettura [Beccari, 2009, p. 126]. Altri,compreso chi scrive, ritengono invece la punteggiatura esterna utileed opportuna: le formule, sia in corpo sia fuori corpo, fanno partedell’argomentazione e quindi la punteggiatura va usata per aiutare illettore [Guiggiani e Mori, 2008, p. 8]. L’importante, qualunque dei duemetodi si scelga, è essere coerenti e usare sempre un unico metodo.

Si consideri ora:

Page 212: L'arte di scrivere con LaTeX _ Pantieri

190 GALLERIA DEGLI ORRORI

$$f(x) > 1 \mbox se x < 3$$

f(x) > 1 se x < 3

Se si vuole inserire un breve testo all’interno di una formula fuoricorpo (con font e spaziatura normali), allora è opportuno scriverlousando il comando \text〈. . .〉 (serve il pacchetto amsmath). Il modocorretto 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:

\begineqnarraye^x+y & = & e^x \: e^y \\\ln xy & = & \ln x + \ln y\endeqnarray

ex+y = ex ey (B.1)

ln xy = ln x+ lny (B.2)

Per inserire formule fuori corpo, LATEX offre gli ambienti eqnarrayGli ambientieqnarray ed

eqnarray* non vannousati mai.

(per formule numerate) ed eqnarray* (per formule non numerate).Purtroppo questi ambienti sono nati con un “peccato originale”: glispazi a destra e a sinistra dei segni di uguaglianza nelle formule scrittecon eqnarray ed eqnarray* sono maggiori che non nelle formule inse-rite con gli altri ambienti matematici. Quando dal vecchio LATEX 2.09

si è passati al nuovo LATEX 2ε, questo difetto è stato conservato, permantenere una compatibilità con i file predisposti per essere composticon la vecchia versione. Oggi gli ambienti eqnarray ed eqnarray* nondevono venire più usati, ma vanno usati solo gli ambienti predisposti dalpacchetto amsmath (vedi il paragrafo 7.6 a pagina 122).

L’ambiente align di amsmath permette di disporre gruppi di due o piùPer disporre gruppidi formule con

allineamento si usaalign.

formule, ciascuna su una riga, numerate singolarmente, da allineare fraloro. L’esempio precedente si scrive:

\beginaligne^x+y &= e^x e^y \\\ln xy &= \ln x + \ln y\endalign

ex+y = exey (B.3)

ln xy = ln x+ lny (B.4)

Si noti che è stata preferita la spaziatura automatica a quella manuale:il comando \: nella formula (B.1) dell’esempio considerato produceun piccolo spazio di 4

18 quad (vedi il paragrafo 7.1 a pagina 110).

Formule spezzate con allineamento

Si consideri la seguente formula:

Page 213: L'arte di scrivere con LaTeX _ Pantieri

B.4 LA MATEMATICA 191

\begineqnarray\int_1^2 x^2 dx& = & \left[

\fracx^33\right]_1^2 \nonumber \\

& = & \frac2^33-\frac1^33\nonumber \\

& = & \frac83-\frac13 \nonumber \\

& = & \frac73\endeqnarray

∫21x2dx =

[x3

3

]21

=23

3−13

3

=8

3−1

3

=7

3(B.5)

Per dividere una singola formula in più righe, con le righe da allineare, Per spezzare unasingola formula conallineamento si usasplit.

si usa l’ambiente split di amsmath:

\beginequation\beginsplit\int_1^2 x^2 dx&= \biggl[

\fracx^33\biggr]_1^2 \\

&= \frac2^33-\frac1^33 \\

&= \frac83-\frac13 \\&= \frac73.\endsplit\endequation

∫21x2dx =

[x3

3

]21

=23

3−13

3

=8

3−1

3

=7

3.

(B.6)

Si noti che, nell’esempio proposto, sono stati utilizzati i comandi“manuali” \biggl e \biggr in luogo di \left e \right per specifi-care le dimensioni delle parentesi quadre (vedi il paragrafo B.4.3 apagina 193).

Formule spezzate senza allineamento

Si consideri la seguente formula:

\begineqnarray\lefteqn \cos x = 1-\fracx^22! + \nonumber\\& & +\fracx^44!-\fracx^66!+\cdots\endeqnarray

cos x = 1−x2

2!+

+x4

4!−x6

6!+ · · · (B.7)

Per dividere una singola formula in più righe, senza particolari allinea- Per spezzare unasingola formulasenza allineamento siusa multline.

menti fra le varie righe, si usa l’ambiente multline di amsmath:

\beginmultline\cos x = 1-\fracx^22! \\+\fracx^44!-\fracx^66!+\dots\endmultline

cos x = 1−x2

2!

+x4

4!−x6

6!+ . . . (B.8)

Page 214: L'arte di scrivere con LaTeX _ Pantieri

192 GALLERIA DEGLI ORRORI

Quando si spezza una formula, i segni di operazione o relazione,Quando si spezzauna formula, nonbisogna ripetere i

segni di operazione.

cioè quelli che permettono di spezzare una formula, vanno indicatiuna sola volta, al termine della riga in caso di formule in corpo, e all’i-nizio della riga in caso di formule fuori corpo. La doppia indicazio-ne è sconsigliabile, oltre che per ragioni estetiche, anche per evitareambiguità [Guiggiani e Mori, 2008, p. 6].

Si noti inoltre che, nell’esempio precedente, sono state eliminatesvariate parentesi graffe superflue, in particolare per gli esponenti.

Casi

Si consideri il seguente esempio:

$$|x| =\left\\beginarrayrlx & \mboxse x \ge 0 \\-x & \mboxse x < 0\endarray\right.$$

|x| =

x se x > 0

−x se x < 0

• Per le definizioni fatte per casi si usa l’ambiente cases di amsmath.Per le definizionifatte per casi si usa

cases.La graffa e l’allineamento sono automatici; il testo nella secondacolonna va dentro a \text〈. . .〉.

• Per scrivere il valore assoluto è conveniente caricare il pacchet-Per il valore assolutosi usa mathtools. to mathtools (vedi il paragrafo 7.2.8 a pagina 115) e definire un

apposito comando, scrivendo nel preambolo:

\DeclarePairedDelimiter\abs\lvert\rvert

La formula precedente si scrive allora:

\[\absx =\begincasesx, & \textse $x\ge 0$, \\-x, & \textse $x<0$.\endcases\]

|x| =

x, se x > 0,

−x, se x < 0.

B.4.2 Operatori

Si consideri il seguente esempio:

\begindisplaymath\mathop\mathrmcov(X,Y)=\frac1n\sum_i=1^n(x_i-\overline x)(y_i-\overline y)\enddisplaymath

cov(X, Y) =1

n

n∑i=1

(xi − x)(yi − y)

Page 215: L'arte di scrivere con LaTeX _ Pantieri

B.4 LA MATEMATICA 193

Per definire un nuovo operatore, è disponibile l’apposito comando Per definire unnuovo operatore siusa l’appositocomando diamsmath.

\DeclareMathOperator, fornito dal pacchetto amsmath (vedi il paragra-fo 7.3 a pagina 117). Per esempio, per definire una funzione matema-tica cov che denoti la covarianza (che non è definita né da LATEX né daamsmath), si scrive nel preambolo

\DeclareMathOperator\covcov

Nel seguito, basta scrivere \cov per avere cov nel font corretto e ade-guatamente spaziato su entrambi i lati.

L’esempio precedente si scrive allora:

\[\cov(X,Y)=\frac1n\sum_i=1^n(x_i-\bar x)(y_i-\bar y)\]

cov(X, Y) =1

n

n∑i=1

(xi − x)(yi − y)

È stato usato il comando \bar al posto di \overline per indicare il va-lor medio delle variabili aleatorie X e Y: il simbolo x indica un operato-re (coniugio di numeri complessi, per esempio) applicato alla variabilex, mentre il simbolo x indica un nome di variabile distinto da x.

B.4.3 Parentesi

Si consideri la seguente formula:

\begindisplaymath1 + \left( \frac1 1-x^2 \right)^3\enddisplaymath

1+

(1

1− x2

)3

Nonostante sia possibile specificare automaticamente le dimensioni Per specificare ledimensioni di undelimitatore la sceltamanuale è spesso lamigliore.

di un delimitatore con i comandi \left (davanti ad un delimitatore diapertura) e \right (davanti al corrispondente delimitatore di chiusu-ra), la scelta manuale è tuttavia spesso la migliore, dal momento chein molti casi i comandi \left e \right inseriscono spaziature non ri-chieste e parentesi più grandi del necessario. La formula precedente siscrive allora:

\[1+\biggl(\frac11-x^2\biggr)^3\]

1+

(1

1− x2

)3

Al solito, sono state eliminate le parentesi graffe superflue.Si consideri:

\begindisplaymathn \choose k\enddisplaymath

(n

k

)

Per scrivere coefficienti binomiali si usa il comando \binom di amsmath: Per i coefficientibinomiali si usa\binom.\[

\binomnk\]

(n

k

)

Page 216: L'arte di scrivere con LaTeX _ Pantieri

194 GALLERIA DEGLI ORRORI

B.4.4 Matrici

Si considerino i seguenti esempi:

$$\left[\beginarraycca_11 & a_12 \\a_21 & a_22\endarray\right]$$

[a11 a12

a21 a22

]

$$\mathcal A = \left(\beginarrayccca_11 & a_12 & a_13 \\a_21 & a_22 & a_23 \\a_31 & a_32 & a_33\endarray\right)$$

A =

a11 a12 a13

a21 a22 a23

a31 a32 a33

Per scrivere matrici è opportuno usare gli appositi ambienti mes-Per scrivere matricivanno usati gli

appositi ambienti diamsmath.

si a disposizione dal pacchetto amsmath (vedi il paragrafo 7.5 a pagi-na 121). Questi ambienti, oltre a essere facili da usare, permettono diraggiungere un risultato tipografico ottimale.

Le matrici precedenti si scrivono allora:

\[\beginbmatrixa_11 & a_12 \\a_21 & a_22\endbmatrix\]

[a11 a12

a21 a22

]

\[\mathcalA=\beginpmatrixa_11 & a_12 & a_13 \\a_21 & a_22 & a_23 \\a_31 & a_32 & a_33\endpmatrix\]

A =

a11 a12 a13

a21 a22 a23

a31 a32 a33

Si noti anche che il comando \mathcal ha un argomento e non è unadichiarazione.

B.4.5 Integrali multipli

Si considerino i seguenti esempi:

Page 217: L'arte di scrivere con LaTeX _ Pantieri

B.4 LA MATEMATICA 195

$$V = \int \!\! \int \!\!\int_\Omega d\tau$$

V =

∫∫∫Ωdτ

\newcommand\ud\mathrmd\begindisplaymath\int\!\!\int_D g(x,y)\, \ud x\, \ud y\enddisplaymath

∫∫Dg(x,y) dxdy

(Il comando \! produce uno spazio negativo di − 318 quad.)

Per gli integrali multipli si usano gli appositi comandi forniti da Per scrivere gliintergali multipli siusano gli appositicomandi di amsmath.

amsmath (vedi il paragrafo 7.2.4 a pagina 113):

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

V =

∫∫∫Ωdτ

\[\iint_D g(x,y)\,dx\,dy\]

∫∫Dg(x,y)dxdy

Si noti che il simbolo del “differenziale” nell’integrale è stato scritto incorsivo e non in tondo, in accordo con l’uso dei documenti di mate-matica pura, che è però in contrasto con le norme iso-uni, seguite neilavori di carattere tecnico-scientifico [Guiggiani e Mori, 2008, p. 5].

B.4.6 Insiemi numerici

Si consideri il seguente esempio:

\beginequation\forall x \in \mathbfR:\qquad x^2 \ge 0\endequation

∀x ∈ R : x2 > 0 (B.9)

Per comporre gli insiemi numerici, conviene caricare il pacchetto Per comporre gliinsiemi numericiconviene adottareuna scrittura checonsenta di cambiarenotazione conun’unica modifica.

amssymb e scrivere nel preambolo le seguenti definizioni:

\newcommand\numberset\mathbb\newcommand\N\numbersetN\newcommand\R\numbersetR

In questo modo, basta scrivere \N per avere N ed è possibile cambia-re notazione con un’unica modifica. L’esempio precedente si scriveallora:

\beginequation\forall x \in \R\quad x^2 \ge 0.\endequation

∀x ∈ R x2 > 0. (B.10)

Page 218: L'arte di scrivere con LaTeX _ Pantieri

196 GALLERIA DEGLI ORRORI

B.4.7 Riferimenti a una formula

Si consideri il seguente esempio:

\beginequation\labeleq:eta\eta>0\endequationDalla formula (\refeq:eta)si deduce che \ldots

η > 0 (B.11)

Dalla formula (B.11) si deduce che. . .

Per riferirsi ad una formula, è conveniente usare il comando \eqrefPer riferirsi ad unaformula si usa \eqref. del pacchetto amsmath:

\beginequation\labeleqn:eta\eta>0\endequationDalla formula~\eqrefeqn:etasi deduce che\dots

η > 0 (B.12)

Dalla formula (B.12) si deduceche. . .

Si noti anche l’uso dello spazio insecabile (vedi il paragrafo 5.4.2 apagina 48).

B.4.8 Punti ellittici

Si consideri il seguente esempio:

\begindisplaymathx_1,\ldots,x_n \qquadx_1+\cdots+x_n\enddisplaymath

x1, . . . , xn x1 + · · ·+ xn

Per inserire punti ellittici in una formula è conveniente caricare ilPer inserire puntiellittici si usa \dots

di amsmath.pacchetto amsmath e usare il comando \dots, che, automaticamente aseconda del contesto, inserisce i punti sulla linea di base del testo o licentra rispetto alla riga:

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

x1, . . . , xn x1 + · · ·+ xn

B.5 CODICI SORGENTE LEGGIBILISpesso gli utenti di LATEX sottovalutano l’importanza di un codiceL’importanza di

scrivere codicisorgenti benstrutturati ecommentati

sorgente ben strutturato (con rientri, incolonnamenti, . . . ) e commenta-to. Nonostante tutto ciò non sia indispensabile, tuttavia è consigliabilefarlo: un codice sorgente leggibile ne facilita la gestione (specialmentese allo stesso progetto lavorano più persone).

Nella stesura del codice sorgente si consiglia di adottare i seguentiaccorgimenti:

Page 219: L'arte di scrivere con LaTeX _ Pantieri

B.5 CODICI SORGENTE LEGGIBILI 197

• servirsi di commenti opportuni;

• suddividere con chiarezza il documento, aiutandosi eventual-mente con rientri, incolonnamenti, “a capo” e righe vuote sup-plementari;

• limitare i comandi personalizzati a quelli effettivamente utili (unabuso dei comandi personali complica la lettura del codice, so-prattutto a distanza di tempo);

• scrivere le etichette subito dopo i relativi comandi;

• adottare per le etichette un formato costituito da un’abbrevia-zione come sec (per le sezioni), fig (per le figure), tab (per letabelle), . . . seguita da : e da una parola chiave che caratterizzal’oggetto cui ci si riferisce;

• allineare le colonne delle tabelle;

• adottare per le chiavi bibliografiche un formato costituito dal no-me dell’autore seguito da : e da una parola che caratterizzal’opera;

• introdurre ciascun oggetto mobile scrivendo il relativo ambientetra capoversi, cioè preceduto e seguito da una riga vuota.

Di seguito sono riportati alcuni esempi di codici sorgenti “ben scrit-ti”.

Un esempio di articolo composto con LATEX.

% Un articolo scritto con LaTeX\documentclass[a4paper,11pt]article\usepackage[italian]babel % per scrivere in italiano\usepackagelipsum % genera testo fittizio\usepackageurl % per scrivere gli indirizzi Internet

\begindocument\titleIl titolo\authorLorenzo Pantieri

\maketitle

\beginabstract\lipsum[1]\endabstract

\tableofcontents

\sectionUn paragrafo\lipsum[1]\subsectionUn sottoparagrafo\lipsum[1]\subsectionUn sottoparagrafo

\sectionUn paragrafo\labelsec:esempio\lipsum[1]

Page 220: L'arte di scrivere con LaTeX _ Pantieri

198 GALLERIA DEGLI ORRORI

% Bibliografia\beginthebibliography9\bibitempantieri:arte\textscL.~Pantieri (2009),\emphL’arte di scrivere con \LaTeX,\urlhttp://www.lorenzopantieri.net/LaTeX_files/ArteLaTeX.pdf.\endthebibliography

\enddocument

Un esempio di curriculum vitae composto con LATEX.

% Un CV scritto con LaTeX\documentclassscrartcl % classe article di KOMA\usepackage[LabelsAligned]currvita % un buon pacchetto per CV\usepackage[italian]babel % per scrivere in italiano\usepackageurl % per gli indirizzi Internet\usepackage[nochapters]classicthesis % stile ClassicThesis

\renewcommand\cvheadingfont\LARGE\colorMaroon\renewcommand\cvlistheadingfont\large\renewcommand\cvlabelfont\qquad

\begindocument\begincv\spacedallcapsCurriculum vitae

\begincvlist\spacedlowsmallcapsDati personali\item Lorenzo Pantieri\item Nato a Cesena il 30 gennaio 1973\item \urlhttp://www.lorenzopantieri.net/

\endcvlist

\begincvlist\spacedlowsmallcapsEsperienze lavorative\item \dots

\endcvlist\endcv

\enddocument

Page 221: L'arte di scrivere con LaTeX _ Pantieri

B I B L I O G R A F I A

American Mathematical Society (1999), Manuale d’uso del pac-chetto amsmath, http://tug.ctan.org/tex-archive/info/italian/amsldoc/itamsldoc.pdf.

Beccari, C. (2009), Introduzione all’arte della composizione tipografi-ca con LATEX, http://www.guit.sssup.it/downloads/GuidaGuIT.pdf.(Citato alle pagine 5, 18, 43, 98, 109, 169 e 189.)

Bringhurst, R. (2001, ed. or. 1992), Gli Elementi dello Stile Tipografico,Sylvestre Bonnard, Milano. (Citato alle pagine 49, 152 e 201.)

Busdraghi, F. (2004), Documentazione del pacchetto layaureo, http://www.guit.sssup.it/downloads/layaureo.pdf. (Citato a pagina 50.)

Caucci, L. e Spadaccini, M. (2000), Gestione di figure e tabelle conLATEX, http://www.guit.sssup.it/downloads/fig_tut.pdf. (Citatoa pagina 91.)

Cevolani, G. (2006), «Norme tipografiche per l’italiano in LATEX»,ArsTEXnica, (1), http://www.guit.sssup.it/arstexnica/. (Citato apagina 169.)

Fairbairns, R. (2007), The uk TEX faq, http://www.tex.ac.uk/tex-archive/help/uk-tex-faq/newfaq.pdf. (Citato alle pagine 50,110, 123, 182 e 189.)

Fear, S. (2005), Publication quality tables in LATEX, Manuale d’uso del pac-chetto booktabs, http://www.ctan.org/tex-archive/macros/latex/contrib/booktabs/booktabs.pdf. (Citato a pagina 76.)

Flynn, P. (2005), «In my opinion», PracTEX Journal, (1), http://tug.org/pracjourn/2005-1/flynn/. (Citato a pagina 9.)

Goossens, M., Mittelbach, F. e Braams, J. (2004), The LATEXCompanion, Addison-Wesley, Reading (Massachusetts).

Gregorio, E. (2003), Galleria degli orrori: Come maltrattare LATEX e ren-dere infelice un copy editor, http://profs.sci.univr.it/~gregorio/orrori.pdf. (Citato a pagina 181.)

Gregorio, E. (2008a), Appunti di programmazione in LATEX e TEX, http://profs.sci.univr.it/~gregorio/introtex.pdf.

Gregorio, E. (2008b), LATEX: breve guida ai pacchetti di uso più comune,http://profs.sci.univr.it/~gregorio/breveguida.pdf. (Citatoalle pagine 40, 79 e 105.)

Guiggiani, M. e Mori, L. F. (2008), «Consigli su come non maltrattarele formule matematiche», ArsTEXnica, (5), http://www.guit.sssup.it/arstexnica/. (Citato alle pagine 189, 192 e 195.)

199

Page 222: L'arte di scrivere con LaTeX _ Pantieri

200 BIBLIOGRAFIA

Knuth, D. E. (1973), Computer Programming as an Art, vol. 3, Addison-Wesley, Reading (Massachusetts). (Citato a pagina vii.)

Knuth, D. E. (1984), The TEXbook, Addison-Wesley, Reading(Massachusetts).

Lamport, L. (1994), LATEX: a document preparation system, Addison-Wesley, Reading (Massachusetts).

Mittelbach, F., Pignalberi, G. e Walden, D. (2007), «Intervistaa Frank Mittelbach», ArsTEXnica, (3), http://www.guit.sssup.it/arstexnica/. (Citato a pagina 9.)

Mori, L. F. (2006), «Tabelle su LATEX 2ε: pacchetti e metodi da uti-lizzare», ArsTEXnica, (2), http://www.guit.sssup.it/arstexnica/.(Citato a pagina 75.)

Mori, L. F. (2007), «Scrivere la tesi di laurea con LATEX 2ε», ArsTEXnica,(3), http://www.guit.sssup.it/arstexnica/. (Citato alle pagine 17,52, 92, 101 e 152.)

Mori, L. F. (2008), «Gestire la bibliografia con LATEX», ArsTEXnica, (6),http://www.guit.sssup.it/arstexnica/.

Mori, L. F. e Himmelmann, M. (2007), «Scrivere il curriculum vitae»,ArsTEXnica, (4), http://www.guit.sssup.it/arstexnica/.

Oetiker, T., Partl, H., Hyna, I. e Schlegl, E. (2000), Una (mica tan-to) breve introduzione a LATEX 2ε, http://www.ctan.org/tex-archive/info/italian/lshort/itlshort.pdf (è disponibile anche la ver-sione in inglese, aggiornata al 2008: ftp://tug.ctan.org/pub/tex-archive/info/lshort/english/lshort.pdf). (Citato allepagine 43, 45 e 133.)

Pakin, S. (2008), The Comprehensive LATEX Symbol List, http://www.ctan.org/tex-archive/info/symbols/comprehensive/symbols-a4.pdf.(Citato a pagina 133.)

Pantieri, L. (2008a), Introduzione allo stile ClassicThesis, http://www.lorenzopantieri.net/LaTeX_files/ClassicThesis.pdf. (Citatoalle pagine 27, 43, 49 e 61.)

Pantieri, L. (2008b), Manuale d’uso del pacchetto ArsClassica,http://www.ctan.org/tex-archive/macros/latex/contrib/arsclassica/ArsClassica.pdf. (Citato a pagina 43.)

Trettin, M. e Zannarini, E. (2005), Elenco dei “peccati” degli utenti diLATEX 2ε, ftp://ftp.dante.de/tex-archive/info/l2tabu/italian/l2tabuit.pdf. (Citato alle pagine 50, 110, 123, 182 e 189.)

Wilson, P. (2004), The memoir class, Manuale d’uso della classe me-moir, http://tug.ctan.org/tex-archive/macros/latex/contrib/memoir/memman.pdf. (Citato a pagina 49.)

Zannarini, E. e Vavassori, E. G. (2005), LATEX e i font: in-stallazione pratica, http://www.guit.sssup.it/guitmeeting/2005/articoli/zannarini-vavassori.pdf. (Citato a pagina 174.)

Page 223: L'arte di scrivere con LaTeX _ Pantieri

COLOPHONQuesto lavoro è stato realizzato con LATEX 2ε su Mac OS X usando un’o-riginale rielaborazione dello stile ClassicThesis, di André Miede. Lostile ClassicThesis, ispirato all’opera di Robert Bringhurst Gli Elementidello Stile Tipografico [1992], è disponibile su CTAN. La veste grafica diquesta guida può essere riprodotta caricando il pacchetto ArsClassica,anch’esso presente su CTAN.

NOTA: Il lavoro è composto con la famiglia di font Palatino, di Her-mann Zapf. Le formule matematiche sono state composte con i fontAMS Euler, di Hermann Zapf e Donald Knuth. Il font a larghezzafissa è il Bera Mono, originariamente sviluppato da Bitstream Inc. co-me “Bitstream Vera”. I font senza grazie sono gli Iwona, di JanuszM. Nowacki.

Versione finale: 1 giugno 2009.

Page 224: L'arte di scrivere con LaTeX _ Pantieri
Page 225: L'arte di scrivere con LaTeX _ Pantieri

I N D I C E A N A L I T I C O

Aa4paper, 27

a5paper, 27

\AA, 59

\aa, 59

abbrv, 149, 150

\abs, 116

\abstractname, 167

Accentimatematici, 115, 116, 133

testuali, 23, 59, 170, 171

Acronimi, 52, 69, 147, 179, 180

acronym, 69

\acute, 133

\addcontentsline, 58, 142, 149

address, 144, 145

\adjustmtc, 54

Adobe Acrobat, 94

Adobe Reader, 17, 37, 43, 94

Adobe, inc., xvi, xviii, xix, 17,94

\AE, 59

\ae, 59

Alberolocale, 31

personale, 32, 151, 157

principale, 31

\aleph, 137

algorithm, 69

Algoritmi, 68, 69

algpseudocode, 69

align, 123, 124, 190

align*, 124

aligned, xi, 124

\alpha, 114, 133

alpha, 148, 150

\alsoname, 167

\amalg, 134

Ambientealign, 123, 124, 190

align*, 124

aligned, xi, 124

array, 76

Bmatrix, 121

bmatrix, 121

cases, 125, 192

CD, 131

center, 65, 83, 97, 101, 187,188

comment, 25

ctable, 88

description, 64

enumerate, 64

eqnarray, 123, 190

eqnarray*, 190

equation, 110, 123, 124,131

equation*, 110, 124

figure, 96–101, 103, 107

figure*, 98

flushleft, 65

flushright, 65

gather, 123, 124

gather*, 124

gathered, xi, 124

itaitemize, 161

itemize, 64, 142

lstlisting, 69

matrix, 121

multicols, 157

multline, 123, 191

multline*, 123

otherlanguage, 41

otherlanguage*, 41

picture, 92

pmatrix, 121

proof, 129

savenotes, 87

SCfigure, 107

SCfigure*, 107

SCtable, 107

SCtable*, 107

sidewaystable, 85, 86

smallmatrix, 122

split, 123, 191

subequations, 125

table, 82, 84, 85, 87, 96,98–100, 103, 107

table*, 98

203

Page 226: L'arte di scrivere con LaTeX _ Pantieri

204 INDICE ANALITICO

tabular, 33, 76–78, 82–84,86–88, 90, 96, 97, 121

thebibliography, 141–143,153, 154, 180

theindex, 157

thesitography, 154

titlepage, 61

verse, 67

Vmatrix, 121

vmatrix, 121

wrapfloat, 105, 106

xtabular, 86

Ambienti personalizzati, 161

\AmS, 58

AMS Euler, 114, 115

amscd, 131

amsmath, 33, 58, 109, 110, 118,123, 190–196, 199

amssymb, 33, 110, 139, 195

amsthm, 33, 128, 129

\and, 60

\angle, 137

ansinew, 42

Anteprima, 43, 93, 94

\ap, 127

Apici, 54, 112, 113, 117, 118,127, 172

Apostrofo, 23, 170–172

Appendici, 51, 52

\appendix, 51

\appendixname, 167

Apple, inc., xvii, xixapplemac, 42

\approx, 134

\approxeq, 138

Aquamacs, 15, 16

\arccos, 119

\arcsin, 119

\arcsinh, 118

\arctan, 119

\arg, 119

array, 33, 78–80, 88, 185

array, 76

\arraybackslash, 81

\Arrowvert, 135

\arrowvert, 135

\Ars, 24, 58, 142

ArsClassica, 200, 201

\arte, 160

article, 27, 28, 34, 35, 51, 58, 142,149, 154

\ast, 134

Asterisco, 53, 60, 172, 174

\asymp, 134

Asymptote, 92

\author, 60

author, 144–147

B\b, 59

b5paper, 27

babel, 29, 33, 39, 40, 47, 55, 127,166, 167, 169, 172

\backepsilon, 138

\backmatter, 51

\backprime, 137

backref, 33, 36, 153

\backsim, 138

\backsimeq, 138

\backslash, 135

\bar, 115, 133, 193

Barre, 115, 116, 121, 172, 174,179

\barwedge, 138

\Bbbk, 137

\because, 138

Bera Mono, 201

Berners-Lee, T., xvii\beta, 114, 133

\beth, 137

\between, 138

\bfseries, 80, 162

\bibitem, 142

Bibliografia, 36, 52, 141–151,153, 154, 175, 180

\bibliography, 148

\bibliographystyle, 148, 149,151

\bibname, 154, 167

BibTEX, 36, 37, 141, 144, 146–149, 151, 153, 154,180

bibunits, 153

\Big, 119

\big, 119

\bigcap, 135

\bigcirc, 134

\bigcup, 135

\Bigg, 119

\bigg, 119

\Biggl, 119

\biggl, 119, 191

\Biggr, 119

\biggr, 119, 191

Page 227: L'arte di scrivere con LaTeX _ Pantieri

INDICE ANALITICO 205

\Bigl, 119

\bigl, 119

\bigodot, 135

\bigoplus, 135

\bigotimes, 135

\Bigr, 119

\bigr, 119

\bigskip, 46

\bigstar, 137

\bigtriangledown, 134

\bigtriangleup, 134

\biguplus, 135

\bigvee, 135

\bigwedge, 135

binding, 50

\binom, 120, 193

\blacklozenge, 137

\blacksquare, 137

\blacktriangle, 137

\blacktriangledown, 137

\blacktriangleleft, 138

\blacktriangleright, 138

bm, 121, 126

\bm, 121, 126

Bmatrix, 121

bmatrix, 121

\bmod, 118

bmp, 93

bmpsize, 93

book, 27, 28, 35, 51, 53, 58, 142,149, 153, 165

booklet, 144

bookmarks, 56, 58

booktabs, 33, 75, 77, 184–187,199

booktitle, 145

\bot, 137

\bottomrule, 77, 184

“bounding box”, 94

\bowtie, 134

\Box, 137

\boxdot, 138

\boxminus, 138

\boxplus, 138

\boxtimes, 138

\Bra, 120

\bracevert, 135

\Braket, 120

braket, 120

\breve, 133

Bringhurst, R., 49, 50, 201

\bullet, 134

\Bumpeq, 138

\bumpeq, 138

C\c, 59

Campoaddress, 144, 145

author, 144–147

booktitle, 145

chapter, 145

edition, 144, 145

editor, 144, 145, 147

howpublished, 144, 145

institution, 145, 146

journal, 144

key, 144, 145

month, 144–146

note, 144–146

number, 144, 145

organization, 145

pages, 144, 145

publisher, 144–146

school, 145

series, 144, 145

title, 144–146

type, 145

volume, 144, 145

year, 144–146

\Cap, 138

\cap, 134

Capolettera, 69, 70

Capoversi, 22, 44–46, 73, 175,176

caption, 33, 83, 103, 105, 187

\caption, 82, 83, 100, 103, 188

Caratteri speciali, 22, 23

cases, 125, 192

\ccname, 167

CD, 131

\cdot, 134

\cdots, 137

\cellcolor, 91

center, 65, 83, 97, 101, 187, 188

\centerdot, 138

\centering, 81, 83, 101, 187, 188

\chapter, 41, 51, 53, 54, 165

chapter, 145

\chapter*, 53, 54

\chaptermark, 165

\chaptername, 167

\check, 133

\chi, 133

Page 228: L'arte di scrivere con LaTeX _ Pantieri

206 INDICE ANALITICO

Chiavebinding, 50

bookmarks, 56, 58

citecolor, 57

colorlinks, 56

filecolor, 57

font, 103

format, 103

height, 95

labelfont, 103

linkcolor, 57

pdfauthor, 56

pdffitwindow, 56

pdfmenubar, 56

pdfnewwindow, 56

pdftitle, 56

pdftoolbar, 56

tablehead, 86

tabletail, 86

unicode, 56, 59

urlcolor, 57

width, 95, 188

chngpage, 33, 50

\circ, 134

\circeq, 138

\circlearrowleft, 136

\circlearrowright, 136

\circledast, 138

\circledcirc, 138

\circleddash, 138

\circledS, 137

Citazionifuori corpo, 67, 176

in corpo, 67

\cite, 34, 142, 144, 148, 149

\citeauthor, 152

citecolor, 57

\citep, 152

\citep*, 152

\citet, 152

\citet*, 152

\citeyear, 152

\citeyearpar, 152

Classearticle, 27, 28, 34, 35, 51, 58,

142, 149, 154

book, 27, 28, 35, 51, 53, 58,142, 149, 153, 165

KOMA-Script, 27, 60, 83

letter, 27

memoir, 200

report, 27, 28, 34, 35, 51, 58,142, 149, 153

classic, 152

ClassicThesis, vii, 27, 42, 61,200, 201

\cleardoublepage, 102, 142

\clearpage, 142, 149

\clubsuit, 137

CM-Super, 43, 70

\cmidrule, 78

cmyk, xvi, 89

Codici, 68

Codifica dei font, 33, 42, 43, 170

\colon, 116

color, 88

colorlinks, 56

colortbl, 88–91

\columncolor, 88–91

\columnwidth, 81, 98

Comandi personalizzati, 159,160

comment, 25

Commenti, 24, 25

\complement, 137

Computer Modern, xvi, 9, 42,43

conference, 144

\cong, 134

\contentsname, 167

\coprod, 135

\copyright, 137

Corpodei font, 51, 103, 125, 127,

162–164

del documento, 25, 26

del testo, 49, 67, 102, 110

Corsivomatematico, 110, 117, 126,

127

testuale, 63, 110, 162,173–175, 177, 180

\cos, 117, 119

\cosh, 119

\cot, 119

\coth, 119

\cov, 193

cp850, 42

crop, 50

\csc, 119

ctable, 88

ctable, 88

\Cup, 138

Page 229: L'arte di scrivere con LaTeX _ Pantieri

INDICE ANALITICO 207

\cup, 134

\curlyeqprec, 138

\curlyeqsucc, 138

\curlyvee, 138

\curlywedge, 138

\curvearrowleft, 136

\curvearrowright, 136

D\d, 59

\dag, 137

\dagger, 134

\daleth, 137

\dashleftarrow, 136

\dashrightarrow, 136

\dashv, 134

\date, 60

dcolumn, 81, 186

\ddag, 137

\ddagger, 134

\ddot, 133

\ddots, 122, 137

\DeclareMathOperator, 118, 193

Dedica, 52, 66

definition, 128, 129

\deg, 119

\Delta, 114, 133

\delta, 114, 133

Derivate, 113

description, 64

Descrizioni, 64

\det, 119

\dfrac, 127

\diagdown, 137

Diagrammi commutativi, 131

\diagup, 137

\Diamond, 137

\diamond, 134

\diamondpar, 70

\diamondsuit, 137

Didascalieabbreviate, 100

laterali, 106

personalizzate, 33, 103

\digamma, 137

\dim, 119

Dimostrazioni, 128–130

\displaystyle, 127

\div, 134

\divideontimes, 138

\documentclass, 26, 27, 35, 46

Documenti corposi, 37

\dominitoc, 54

\dot, 133

\Doteq, 138

\doteq, 134

\doteqdot, 138

\dotplus, 138

\dots, 26, 55, 116, 137, 174, 196

\doublebarwedge, 138

\doublecap, 138

\doublecup, 138

\doublespacing, 50

\Downarrow, 135, 136

\downarrow, 135, 136

\downdownarrows, 136

\downharpoonleft, 136

\downharpoonright, 136

draft, 28, 46

dvi, xvi, xx, 11, 15, 17, 18, 37,43

dvipdfmx, 18

dvips, 18

EEC, xvi, 43

edition, 144, 145

EditorAquamacs, 15, 16

Emacs, 16

Kile, 16

LEd, 13, 15

TEXmaker, 17

TEXnicCenter, 13, 14

TEXShop, 15

Vim, 17

WinEdt, 13, 14

editor, 144, 145, 147

Elenchinumerati, 64

puntati, 64

Elencodei siti Web consultati, 153

delle figure, 36, 100, 105

delle tabelle, 36, 82, 100,105

\ell, 137

Emacs, 16

\emph, 24

empheq, 132

empty, 34

emptypage, 165

\emptyset, 137

\enclname, 167

Page 230: L'arte di scrivere con LaTeX _ Pantieri

208 INDICE ANALITICO

endfloats, 102

\enlargethispage, 72

enumerate, 64

enumitem, 33, 65

Enunciati, 33, 128–131

Epigrafi, 69

epigraph, 69

eps, xvi, 17, 19, 35, 92, 93

\epsilon, 133

\eqcirc, 138

eqnarray, 123, 190

eqnarray*, 190

\eqref, 110, 196

\eqslantgtr, 138

\eqslantless, 138

equation, 110, 123, 124, 131

equation*, 110, 124

\equiv, 134

Escher, M. C., ii, 77, 95, 97,103–107, 111, 156, 160,189

esp2pdf, 93

esptopdf, 93

\eta, 133

\eth, 137

eucal, 139

\euro, 60

eurosym, 33, 60

executivepaper, 27

\exists, 137

\exp, 119

F\fallingdotseq, 138

fancyhdr, 33, 35, 165, 166

feynmf, 132

figure, 96–101, 103, 107

figure*, 98

\figurename, 167

filecolor, 57

final, 28

\Finv, 137

\flat, 137

fleqn, 27, 123, 189

float, 33, 98, 103

\FloatBarrier, 103

flushleft, 65

flushright, 65

FontAMS Euler, 114, 115

Bera Mono, 201

CM-Super, 43, 70

Computer Modern, xvi, 9,42, 43

EC, xvi, 43

Iwona, 201

Latin Modern, 43, 70

matematici, 110, 125–127,139

Palatino, 115, 201

Times New Roman, 9

font, 103

fontenc, 33, 43, 70, 170

footmisc, 33, 63

footnote, 87

\footnote, 87

\footnotesize, 163, 164

\forall, 137

\foreignlanguage, 41

format, 103

Formatobmp, 93

dvi, xvi, xx, 11, 15, 17, 18,37, 43

eps, xvi, 17, 19, 35, 92, 93

gif, xvii, 92

jpg, xviii, 19, 35, 93

pdf, xviii, 11, 15, 17–19, 32,35, 37, 43, 92–94

png, xvii, xviii, 19, 35, 92,93

ps, xvi, xviii, 17, 92, 93

tiff, xix, 92

Formuleevidenziate, 132

fuori corpo, 110, 111, 122,123, 130, 131, 190

in corpo, 22, 110

non numerate, 110, 123,124

numerate, 110

Formule chimiche, 131, 132

\frac, 113

Frazioni, 112, 113, 174, 179

Frecce, 115–117, 131, 136

\frenchspacing, 48

Frontespizio, 52, 60, 61

frontespizio, 60, 61

\frontmatter, 51, 53

\frown, 134

G\Game, 137

\Gamma, 114, 133

Page 231: L'arte di scrivere con LaTeX _ Pantieri

INDICE ANALITICO 209

\gamma, 114, 133

gather, 123, 124

gather*, 124

gathered, xi, 124

\gcd, 119

\ge, 134

geometry, 29, 33, 50, 182

\geq, 134

\geqq, 138

\geqslant, 138

\gets, 136

\gg, 134

\ggg, 138

\gggtr, 138

Ghostscript, 13, 17, 93

Ghostview, 17, 93, 94, 96

gif, xvii, 92

\gimel, 137

Gimp, 17, 93, 94

Glossari, 69

glossaries, 69

\glossaryname, 167

\gnapprox, 139

\gneq, 139

\gneqq, 139

\gnsim, 139

Gnuplot, 16, 92

Grafici di Feynman, 131

\graphicspath, 96

graphicx, 18, 28, 29, 33, 84, 94,95, 164

\grave, 133

gray, 89

Gregorio, E., i, vii, xxii, 60

GSview, 13, 17, 93, 94, 96

\gtrapprox, 138

\gtrdot, 138

\gtreqless, 138

\gtreqqless, 138

\gtrless, 138

\gtrsim, 138

\GuIT, 58

guit, 24, 29, 58, 142

\GuIT*, 58

\gvertneqq, 139

H\H, 59

\hat, 133

\hbar, 137

\hdotsfor, 122

headings, 35, 53

\headtoname, 167

\heartpar, 70

\heartsuit, 137

height, 95

\hline, 77, 184

\hoffset, 182

\hom, 119

\hookleftarrow, 136

\hookrightarrow, 136

howpublished, 144, 145

\href, 57

\hslash, 137

html, xvii, xviii, 7

\Huge, 163, 164

\huge, 163, 164

hyperref, 18, 33, 36, 56, 58, 59,153, 183

\hypersetup, 56

\hyphenation, 46, 47, 182

I\i, 59

icomma, 179

\idotsint, 113

\iff, 117, 136

\iiiint, 113

\iiint, 113

\iint, 113

\Im, 137

ImageMagick, 93

\imath, 137

Immaginiaffiancate, 103

bitmap, 17, 19, 91–94

con sfondo colorato, 164,165

fuori testo, 96–98

in testo, 96, 97

vettoriali, 19, 91–94

\implies, 117

\in, 114, 134

inbook, 145

\include, 37, 38

\includegraphics, 95–97, 106,188

\includeonly, 38

incollection, 145

indentfirst, 34, 49, 67, 176

\index, 156, 157

\indexname, 167

Indice analitico, 34, 36, 52,155–157

Page 232: L'arte di scrivere con LaTeX _ Pantieri

210 INDICE ANALITICO

Indice generale, 26, 36, 40,52–54, 142, 149

Indirizzi Internet, 34, 56, 153,183

\inf, 119

\infty, 113, 137

Inkscape, 92

innercaption, 106

inproceedings, 144, 145

\input, 37, 38

inputenc, 34, 42, 54, 169, 170,182

Insiemi numerici, 113

institution, 145, 146

\int, 113, 135

Integrali, 113, 195

\intercal, 138

Intercitazioni, 67, 173

Interlinea, 50, 67, 110, 163, 164

\iota, 133

itaitemize, 161

italian, 47, 55, 127, 169, 172

\item, 64

itemize, 64, 142

\itshape, 80, 162

Iwona, 201

J\j, 59

\jmath, 137

\Join, 134

journal, 144

jpg, xviii, 19, 35, 93

K\kappa, 133

\ker, 119

\Ket, 120

key, 144, 145

Kile, 16

Knuth, D. E., vii, 3–6, 9, 201

KOMA-Script, 27, 60, 83

kuvio, 131

L\L, 59

\l, 59

\label, 34, 61, 62, 83, 100, 105,110, 142, 188

labelfont, 103

\Lambda, 133

\lambda, 133

Lamport, L., 5, 6, 9

\land, 117, 134

\langle, 135

\LARGE, 163, 164

\Large, 163, 164

\large, 163, 164

\LaTeX, 58

\LaTeXe, 58

Latin Modern, 43, 70

latin1, 42

latin9, 42

\latino, 159, 160

layaureo, 29, 50, 182, 199

\lbrace, 135

\lbrack, 135

\lceil, 135

\le, 134

\leadsto, 136

LEd, 13, 15

\left, 119, 191, 193

\Leftarrow, 136

\leftarrow, 136

\leftarrowtail, 136

leftcaption, 106

\leftharpoondown, 136

\leftharpoonup, 136

\leftleftarrows, 136

\leftmark, 165

\Leftrightarrow, 136

\leftrightarrow, 136

\leftrightarrows, 136

\leftrightharpoons, 136

\leftrightsquigarrow, 136

\leftthreetimes, 138

legalpaper, 27

\leq, 134

leqno, 27

\leqq, 138

\leqslant, 138

\lessapprox, 138

\lessdot, 138

\lesseqgtr, 138

\lesseqqgtr, 138

\lessgtr, 138

\lesssim, 138

letter, 27

Lettere greche, 114, 115, 133

letterpaper, 27, 28

lettrine, 70

\lfloor, 135

\lg, 119

\lgroup, 135

Page 233: L'arte di scrivere con LaTeX _ Pantieri

INDICE ANALITICO 211

\lhd, 134

\lim, 119

\liminf, 119

Limiti, 113, 118

\limsup, 119

\linespread, 51

\linewidth, 98

Linguaggiohtml, xvii, xviii, 7

xml, xviii, xx, 7, 10

sgml, xvii, xviii, xx, 7

linkcolor, 57

\listfigurename, 167

listings, 34, 68, 69

\listof, 98

\listoffigures, 105

\listoftables, 82, 105

\listtablename, 167

\ll, 134

\llcorner, 135

\Lleftarrow, 136

\lll, 138

\llless, 138

\lmoustache, 135

\ln, 119

\lnapprox, 139

\lneq, 139

\lneqq, 139

\lnot, 117, 137

\lnsim, 139

\log, 117, 119

Loghi, 58, 59

\Longleftarrow, 136

\longleftarrow, 136

\Longleftrightarrow, 136

\longleftrightarrow, 136

\longmapsto, 136

\Longrightarrow, 136

\longrightarrow, 136

\looparrowleft, 136

\looparrowright, 136

\looseness, 71–73

\lor, 117, 134

\lozenge, 137

\lrcorner, 135

\Lsh, 136

\lstinline, 69

lstlisting, 69

\ltimes, 138

\lVert, 116

\lvert, 115

\lvertneqq, 139

MMacTEX, ix, 15, 18, 30, 31

\mail, 58

\mainmatter, 51, 53

Maiuscoletto, 70, 152, 162, 174,175, 180

makeidx, 34, 155

MakeIndex, 36, 69, 157

\maketitle, 26, 60

manual, 144, 145

\mapsto, 117, 136

Margini di pagina, 28, 29, 33,49, 50, 67, 182

\markboth, 35, 53

\markright, 35

mastersthesis, 144, 145

\mathbb, 113, 139

\mathbf, 121, 126, 139

\mathcal, 126, 139, 194

Mathematica, 92

\mathit, 139

\mathnormal, 139

\mathrm, 127, 139

mathrsfs, 139

\mathscr, 139

\mathsf, 139

mathtools, 116, 192

\mathtt, 139

Matrici, 121, 122

matrix, 121

\max, 119

\mbox, 72

\mcescher, 160

\measuredangle, 137

\medskip, 46, 83

memoir, 200

METAFONT, 9, 58

METAPOST, 58, 92

\MF, 58

mflogo, 58

mhchem, 132

\mho, 137

microtype, 18, 34, 48

\mid, 115, 134

\midrule, 77, 184

Miede, A., vii, 201

MiKTEX, ix, xx, 11–13, 29–32,40, 43

MiKTEX Package Manager, 29,30

\min, 119

Miniindici, 34, 36, 54

Page 234: L'arte di scrivere con LaTeX _ Pantieri

212 INDICE ANALITICO

minitoc, 34, 36, 54

\minitoc, 54

misc, 145, 154

Modello di colorecmyk, xvi, 89

gray, 89

named, 89

RGB, xvi, xviii, 89

rgb, xvi, xviii, 89

\models, 134

month, 144–146

\MP, 58

\mp, 111, 134

mparhack, 62

\mtcskip, 54

\mu, 133

multibib, 154

multicol, 34, 157

multicols, 157

\multicolumn, 77–79

\multimap, 136

multirow, 78

\multirow, 78, 79

multline, 123, 191

multline*, 123

myheadings, 35

N\nabla, 137

named, 89

natbib, 34, 151, 152

natbib_ita, 150, 152

\natural, 137

\ncong, 139

\ne, 134

\nearrow, 136

\neg, 137

\neq, 134

Neretto, 126, 129, 174, 175

\newcolumntype, 79, 89

\newcommand, 160, 161

\newenvironment, 161

\newfloat, 98

\newline, 46

\newpage, 73

\newtheorem, 128

\newtheoremstyle, 129

\nexists, 137

\ngeq, 139

\ngeqq, 139

\ngeqslant, 139

\ngtr, 139

\ni, 134

nicefrac, 179

\nLeftarrow, 139

\nleftarrow, 139

\nLeftrightarrow, 139

\nleftrightarrow, 139

\nleq, 139

\nleqq, 139

\nleqslant, 139

\nless, 139

\nmid, 139

\nocite, 149

Norma, 116

\norma, 116

\normalsize, 163, 164

Norme iso-uni, 109, 117, 121,169, 171

\notag, 124

Notea margine, 62

a piè di pagina, 33, 60, 62,72, 174, 183

dentro a tabelle, 87

note, 144–146

\notin, 114, 134

notitlepage, 27

Nowacki, J. M., 201

\nparallel, 139

\nprec, 139

\npreceq, 139

\nRightarrow, 139

\nrightarrow, 139

\nshortmid, 139

\nshortparallel, 139

\nsim, 139

\nsubseteq, 139

\nsubseteqq, 139

\nsucc, 139

\nsucceq, 139

\nsupseteq, 139

\nsupseteqq, 139

\ntriangleleft, 139

\ntrianglelefteq, 139

\ntriangleright, 139

\ntrianglerighteq, 139

\nu, 133

number, 144, 145

numbers, 152

numprint, 178

\nVDash, 139

\nVdash, 139

\nvDash, 139

Page 235: L'arte di scrivere con LaTeX _ Pantieri

INDICE ANALITICO 213

\nvdash, 139

\nwarrow, 136

O\O, 59

\o, 59

\oddsidemargin, 50, 182

\odot, 134

\OE, 59

\oe, 59

Oggetti mobili, 33, 69, 82, 96,98–103, 188

\oint, 135

\Omega, 133

\omega, 133

\ominus, 134

Omissis, 55, 173, 174

OmniGraffle, 92

\onehalfspacing, 50

oneside, 27, 28, 35

openany, 27, 28

openright, 27, 28, 165

Operatori, 117–119, 123, 135,193

\oplus, 134

Opzione10pt, 27, 28, 164

11pt, 27, 164

12pt, 27, 164

a4paper, 27

a5paper, 27

ansinew, 42

applemac, 42

b5paper, 27

cp850, 42

draft, 28, 46

executivepaper, 27

final, 28

fleqn, 27, 123, 189

innercaption, 106

italian, 47, 55, 127, 169,172

latin1, 42

latin9, 42

leftcaption, 106

legalpaper, 27

leqno, 27

letterpaper, 27, 28

notitlepage, 27

numbers, 152

oneside, 27, 28, 35

openany, 27, 28

openright, 27, 28, 165

outercaption, 106

ragged, 106

raggedleft, 106

raggedright, 106

rightcaption, 106

sort, 152

sort&compress, 152

square, 152

T1, 43, 170

table, 90

tablecaptionabove, 83

tight, 54

titlepage, 27, 28

twocolumn, 27

twoside, 27, 28

utf8, 42

utf8x, 42

Orfane, 73

organization, 145

\oslash, 134

otherlanguage, 41

otherlanguage*, 41

\otimes, 134

outercaption, 106

\overbrace, 119

\overline, 115, 193

\overrightarrow, 115

\overset, 114

\owns, 134

P\P, 137

Pacchettoacronym, 69

algorithm, 69

algpseudocode, 69

amscd, 131

amsmath, 33, 58, 109, 110,118, 123, 190–196, 199

amssymb, 33, 110, 139, 195

amsthm, 33, 128, 129

array, 33, 78–80, 88, 185

ArsClassica, 200, 201

babel, 29, 33, 39, 40, 47, 55,127, 166, 167, 169, 172

backref, 33, 36, 153

bibunits, 153

bm, 121, 126

bmpsize, 93

booktabs, 33, 75, 77, 184–187, 199

Page 236: L'arte di scrivere con LaTeX _ Pantieri

214 INDICE ANALITICO

braket, 120

caption, 33, 83, 103, 105,187

chngpage, 33, 50

color, 88

colortbl, 88–91

comment, 25

crop, 50

ctable, 88

dcolumn, 81, 186

empheq, 132

emptypage, 165

endfloats, 102

enumitem, 33, 65

epigraph, 69

eucal, 139

eurosym, 33, 60

fancyhdr, 33, 35, 165, 166

feynmf, 132

float, 33, 98, 103

fontenc, 33, 43, 70, 170

footmisc, 33, 63

footnote, 87

frontespizio, 60, 61

geometry, 29, 33, 50, 182

glossaries, 69

graphicx, 18, 28, 29, 33, 84,94, 95, 164

guit, 24, 29, 58, 142

hyperref, 18, 33, 36, 56, 58,59, 153, 183

icomma, 179

indentfirst, 34, 49, 67, 176

inputenc, 34, 42, 54, 169,170, 182

kuvio, 131

layaureo, 29, 50, 182, 199

lettrine, 70

listings, 34, 68, 69

makeidx, 34, 155

mathrsfs, 139

mathtools, 116, 192

mflogo, 58

mhchem, 132

microtype, 18, 34, 48

minitoc, 34, 36, 54

mparhack, 62

multibib, 154

multicol, 34, 157

multirow, 78

natbib, 34, 151, 152

nicefrac, 179

numprint, 178

parskip, 176

pgf, 92

placeins, 103

pst-pdf, 18

PSTricks, 18, 92

rotating, 85

setspace, 50, 51

shapepar, 70

showidx, 157

showkeys, 34

sidecap, 106, 107

siunitx, 131, 179

subfig, 34, 103, 104

subfigure, 103

syntonly, 38

tabularx, 34, 80–82, 86

type1ec, 70

ucs, 42

url, 34, 56, 154, 183

varioref, 34, 62

verse, 68

wrapfig, 34, 105

xcolor, 34, 88–90, 132, 164

xfrac, 179

xspace, 24, 160

xtab, 34, 86, 98

XyMTeX, 132

xypic, 92, 131

\pagebreak, 73

\pagename, 167

\pageref, 61

pages, 144, 145

Pagine bianche, 165

Palatino, 115, 201

\par, 45, 163, 164

\paragraph, 51

\parallel, 116, 134

Parentesi, 118–120

Parole evidenziate, 63, 175

Parole straniere, 173, 175–177

parskip, 176

\part, 51

\partial, 137

\partname, 167

pdf, xviii, 11, 15, 17–19, 32, 35,37, 43, 92–94

pdfauthor, 56

\pdfbookmark, 58

pdffitwindow, 56

pdfmenubar, 56

pdfnewwindow, 56

Page 237: L'arte di scrivere con LaTeX _ Pantieri

INDICE ANALITICO 215

pdftitle, 56

pdftoolbar, 56

\ped, 127

Pedici, 112, 113, 117, 118, 127

\perp, 134

pgf, 92

phdthesis, 145

\Phi, 133

\phi, 133

\Pi, 133

\pi, 133

Piè di pagina, 34, 95, 165

picture, 92

\pitchfork, 138

placeins, 103

plain, 34, 53, 128, 129, 148, 149

plain_ita, 150, 151

plainnat, 152

\pm, 111, 134

pmatrix, 121

\pmod, 118

png, xvii, xviii, 19, 35, 92, 93

\pounds, 137

\Pr, 119

Preambolodel documento, 25

di una tabella, 76

\prec, 134

\precapprox, 138

\preccurlyeq, 138

\preceq, 134

\precnapprox, 139

\precneqq, 139

\precnsim, 139

\precsim, 138

\prefacename, 167

\prime, 137

proceedings, 145

\prod, 112, 135

Prodotti, 112

ProgrammaAdobe Acrobat, 94

Adobe Reader, 17, 37, 43,94

Anteprima, 43, 93, 94

Asymptote, 92

BibTEX, 36, 37, 141, 144,146–149, 151, 153, 154,180

dvipdfmx, 18

dvips, 18

esp2pdf, 93

esptopdf, 93

Ghostscript, 13, 17, 93

Ghostview, 17, 93, 94, 96

Gimp, 17, 93, 94

Gnuplot, 16, 92

GSview, 13, 17, 93, 94, 96

ImageMagick, 93

Inkscape, 92

MakeIndex, 36, 69, 157

Mathematica, 92

METAFONT, 9, 58

METAPOST, 58, 92

MiKTEX Package Manager,29, 30

OmniGraffle, 92

ps2pdf, 18

SumatraPDF, 18

TEX Live Manager, 30, 31

TEX Live Utility, 30

WinFIG, 92

Xfig, 16, 92

Xpdf, 43

Yap, xx, 37

proof, 129

\proofname, 167

\propto, 134

proTEXt, 13

ps, xvi, xviii, 17, 92, 93

ps2pdf, 18

\Psi, 133

\psi, 133

pst-pdf, 18

PSTricks, 18, 92

publisher, 144–146

Punti ellittici, 26, 54, 55, 116,122, 172, 174, 196

Q\qedhere, 130

\qquad, 111

\quad, 111

RRadici, 112

ragged, 106

\raggedbottom, 51

\raggedleft, 81

raggedleft, 106

\raggedright, 81

raggedright, 106

Raggruppamenti, 112

\rangle, 135

Page 238: L'arte di scrivere con LaTeX _ Pantieri

216 INDICE ANALITICO

\rbrace, 135

\rbrack, 135

\rceil, 135

\Re, 118, 137

Recordarticle, 144

book, 144

booklet, 144

conference, 144

inbook, 145

incollection, 145

inproceedings, 144, 145

manual, 144, 145

mastersthesis, 144, 145

misc, 145, 154

phdthesis, 145

proceedings, 145

techreport, 145

unpublished, 145

\ref, 34, 61, 62, 83, 100, 188

\refname, 154, 167

remark, 128, 129

\renewcommand, 160

\renewenvironment, 161

report, 27, 28, 34, 35, 51, 58, 142,149, 153

\resizebox, 84, 85

\rfloor, 135

RGB, xvi, xviii, 89

rgb, xvi, xviii, 89

\rgroup, 135

\rhd, 134

\rho, 114, 133

Rientro, 27, 34, 44, 46, 49, 64, 65,67, 103, 123, 129, 175,176

Riferimenti bibliograficiautore-anno, 151, 152

finali, 153

Riferimenti incrociati, 34, 36,61, 62

Riferimenti ipertestuali, 18, 33,56–58, 69

\right, 119, 191, 193

\Rightarrow, 136

\rightarrow, 136

\rightarrowtail, 136

rightcaption, 106

\rightharpoondown, 136

\rightharpoonup, 136

\rightleftarrows, 136

\rightleftharpoons, 136

\rightmark, 165

\rightrightarrows, 136

\rightsquigarrow, 136

\rightthreetimes, 138

\risingdotseq, 138

\rmfamily, 80, 162

\rmoustache, 135

rotating, 85

\rowcolor, 90, 91

\Rrightarrow, 136

\Rsh, 136

\rtimes, 138

\rVert, 116

\rvert, 115

S\S, 137

savenotes, 87

\scalebox, 84

SCfigure, 107

SCfigure*, 107

school, 145

\scriptscriptstyle, 127

\scriptsize, 163, 164

\scriptstyle, 127

\scshape, 162

SCtable, 107

SCtable*, 107

\searrow, 136

\sec, 119

\section, 51, 165

\sectionmark, 165

\seename, 167

Segnalibri, 18, 36, 56–59

series, 144, 145

\Set, 120

\setminus, 116, 134

setspace, 50, 51

\sffamily, 162

sgml, xvii, xviii, xx, 7

shapepar, 70

\sharp, 137

\shortmid, 138

\shortparallel, 138

showidx, 157

showkeys, 34

sidecap, 106, 107

\sidecaptionrelwidth, 107

sidewaystable, 85, 86

Sigle, 147, 179

\Sigma, 133

\sigma, 114, 133

Page 239: L'arte di scrivere con LaTeX _ Pantieri

INDICE ANALITICO 217

Sillabazione, 40, 43, 46, 47

\sim, 134

\simeq, 134

\sin, 117, 119

\singlespacing, 50

\sinh, 119

siunitx, 131, 179

\slshape, 80, 162

\small, 86, 163, 164

\smallfrown, 138

smallmatrix, 122

\smallsetminus, 138

\smallskip, 46

\smallsmile, 138

\smile, 134

Somme, 112

sort, 152

sort&compress, 152

\spadesuit, 137

Spaziodi un “quadrato”, 111

di un “quadratone”, 111

in fine di periodo, 44, 48

insecabile, 48

sottile, 111, 113, 117, 118,172, 178, 179

tra capoversi, 46, 51

tra parole, 46, 48

\sphericalangle, 137

split, 123, 191

\sqcap, 134

\sqcup, 134

\sqrt, 112

\sqsubset, 134, 138

\sqsubseteq, 134

\sqsupset, 134, 138

\sqsupseteq, 134

\square, 137

square, 152

Stallman, R., xvii\star, 134

Stile bibliograficoabbrv, 149, 150

alpha, 148, 150

classic, 152

natbib_ita, 150, 152

personalizzato, 151

plain, 148, 149

plain_ita, 150, 151

plainnat, 152

unsrt, 148

Stile dei font, 125–127, 159, 162,174

Stile di enunciatodefinition, 128, 129

plain, 128, 129

remark, 128, 129

Stile di paginaempty, 34

headings, 35, 53

myheadings, 35

plain, 34, 53

subequations, 125

subfig, 34, 103, 104

subfigure, 103

\subfloat, 103

\subparagraph, 51

\subsection, 51

\Subset, 138

\subset, 134

\subseteq, 134

\subseteqq, 138

\subsetneq, 139

\subsetneqq, 139

\substack, 120

\subsubsection, 51

\succ, 134

\succapprox, 138

\succcurlyeq, 138

\succeq, 134

\succnapprox, 139

\succneqq, 139

\succnsim, 139

\succsim, 138

\sum, 112, 135

SumatraPDF, 18

\sup, 119

\Supset, 138

\supset, 134

\supseteq, 134

\supseteqq, 138

\supsetneq, 139

\supsetneqq, 139

\surd, 137

\swarrow, 136

syntonly, 38

T\t, 59

T1, 43, 170

Tabelleaffiancate, 103

colorate, 88–91

Page 240: L'arte di scrivere con LaTeX _ Pantieri

218 INDICE ANALITICO

fuori testo, 96–98

grandi, 82

in testo, 96, 97

table, 82, 84, 85, 87, 90, 96,98–100, 103, 107

table*, 98

tablecaptionabove, 83

tablehead, 86

\tablename, 167

\tableofcontents, 26, 54, 100

tabletail, 86

tabular, 33, 76–78, 82–84,86–88, 90, 96, 97, 121

\tabularnewline, 81

tabularx, 34, 80–82, 86

\tan, 119

\tanh, 119

\tau, 133

techreport, 145

Tesi di laurea, 52, 60, 180, 200

Testatina, 34, 35, 95, 162, 165

\TeX, 58

TEX Live Manager, 30, 31

TEX Live Utility, 30

TEX Live, ix, 11–13, 15, 16,29–31, 40, 43

TEXmaker, 17

TEXnicCenter, 13, 14

\texorpdfstring, 59

TEXShop, 15

\text, 111, 125, 127, 190, 192

\textasciicircum, 23

\textasciitilde, 23

\textbackslash, 23

\textbf, 159, 162

\textheight, 95

\textit, 159, 162

\textrm, 162

\textsc, 162

\textsf, 162

\textsl, 162

\textstyle, 127

\texttt, 162

\textup, 126, 127

\textwidth, 50, 81, 98, 182

\tfrac, 127

\thanks, 60

thebibliography, 141–143, 153,154, 180

theindex, 157

\theoremstyle, 129

\therefore, 138

thesitography, 154

\Theta, 133

\theta, 133

\thickapprox, 138

\thicksim, 138

tiff, xix, 92

tight, 54

\tilde, 133

\times, 134

Times New Roman, 9

\tiny, 163, 164

\title, 60

title, 144–146

titlepage, 27, 28, 61

Titolo del documento, 26, 27, 60

\tmark, 88

\to, 117, 136

\today, 24

\top, 137

\toprule, 77, 184

Tratti, 48, 54, 55, 172, 174

\triangle, 137

\triangledown, 137

\triangleleft, 134

\trianglelefteq, 138

\triangleq, 138

\triangleright, 134

\trianglerighteq, 138

\ttfamily, 80, 162

twocolumn, 27

\twoheadleftarrow, 136

\twoheadrightarrow, 136

twoside, 27, 28

type, 145

type1ec, 70

U\u, 59

ucs, 42

\ulcorner, 135

\underbrace, 119

\underline, 115

\underset, 114, 115

Unicode, xix, 42

unicode, 56, 59

Unità di misura, 131, 179

\unlhd, 134

unpublished, 145

\unrhd, 134

unsrt, 148

\Uparrow, 135, 136

\uparrow, 135, 136

Page 241: L'arte di scrivere con LaTeX _ Pantieri

INDICE ANALITICO 219

\Updownarrow, 135, 136

\updownarrow, 135, 136

\upharpoonleft, 136

\upharpoonright, 136

\uplus, 134

\Upsilon, 133

\upsilon, 133

\upuparrows, 136

\urcorner, 135

url, 34, 56, 154, 183

urlcolor, 57

\usepackage, 35, 56, 161

utf8, 42

utf8x, 42

V\v, 59

Valore assoluto, 116

\varepsilon, 133

Variante asterisco, 46, 52, 53

varioref, 34, 62

\varkappa, 137

\varnothing, 137

\varphi, 133

\varpi, 133

\varpropto, 138

\varrho, 114, 133

\varsigma, 114, 133

\varsubsetneq, 139

\varsubsetneqq, 139

\varsupsetneq, 139

\varsupsetneqq, 139

\vartheta, 133

\vartriangle, 137

\vartriangleleft, 138

\vartriangleright, 138

\Vdash, 138

\vDash, 138

\vdash, 134

\vdots, 122, 137

\vec, 115, 121, 133

Vedove, 73

\vee, 134

\veebar, 138

verse, 68

verse, 67

Versi, 66, 68

\Vert, 116, 135

\vert, 115, 135

Vettori, 121

Vim, 17

Virgolette, 23, 54, 67, 172, 173,180

Vmatrix, 121

vmatrix, 121

volume, 144, 145

\vref, 62, 83, 100, 188

\vspace, 46

\vspace*, 46

\Vvdash, 138

W\wedge, 134

\widehat, 116, 133

\widetilde, 116, 133

width, 95, 188

WinEdt, 13, 14

WinFIG, 92

\wp, 137

\wr, 134

wrapfig, 34, 105

wrapfloat, 105, 106

Xxcolor, 34, 88–90, 132, 164

Xfig, 16, 92

xfrac, 179

\Xi, 133

\xi, 133

\xleftarrow, 117

xml, xviii, xx, 7, 10

Xpdf, 43

\xrightarrow, 117

xspace, 24, 160

xtab, 34, 86, 98

xtabular, 86

XyMTeX, 132

xypic, 92, 131

YYap, xx, 37

year, 144–146

ZZapf, H., 201

\zeta, 133