generated from NiccoMlt/Unibo-Tesi-Template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tesi.tex
262 lines (231 loc) · 12.5 KB
/
tesi.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
% !TeX root = ./tesi.tex
% !TeX encoding = UTF-8 Unicode
% !TeX spellcheck = it_IT
% !TeX program = arara
% !TeX options = --log --verbose --language=it "%DOC%"
% arara: lualatex: { interaction: batchmode, shell: yes }
% arara: frontespizio: { interaction: batchmode, engine: lualatex, shell: yes }
% arara: biber
% arara: lualatex: { interaction: batchmode, shell: yes }
% arara: lualatex: { interaction: nonstopmode, synctex: yes, shell: yes }
\documentclass[%
a4paper, % formato di pagina A4
12pt, % corpo del testo a 12pt
% la dimensione 12pt automaticamente imposta \footnotesize a 10pt
twoside, % (oneside|twoside) documento a singola o doppia facciata,
openright, % (openany|openright) fa cominciare un capitolo nella successiva pagina a disposizione o sempre in una pagina destra
% twocolumn, % dà a LaTeX le istruzioni per comporre l'intero documento su due colonne
titlepage, % (titlepage|notitlepage) se dopo il titolo del documento debbaavere inizio una nuova pagina
% fleqn, % allinea le formule a sinistra rispetto a un margine rientrato
% leqno, % mette la numerazione delle formule a sinistra anziché a destra
final % (draft|final) scelta tra bozza o finale, influenza il comportamento degli altri pacchetti
]{scrbook}
\usepackage{fancyvrb} % fornisce l'ambiente VerbatimOut e modifica listati di codice
\usepackage{minted} % evidenzia la sintassi dei listati di codice; richiede pygments installato e shell-escape
\usemintedstyle{xcode}
\begin{VerbatimOut}{\jobname.xmpdata}
\Title{Titolo}
\Subject{Oggetto}
\Author{Niccolò Maltoni}
\Copyright{Questo documento è fornito sotto licenza Apache License, Version 2.0}
\CopyrightURL{https://opensource.org/licenses/Apache-2.0}
\end{VerbatimOut}
\usepackage[%
english,italian % definizione delle lingue da usare
]{varioref} % introduce il comando \vref da usarsi nello stesso modo del comune \ref per i riferimenti
\usepackage[
rgb, % richiesto da pdfx
hyperref, % richiesto da pdfx
luatex,
dvipsnames,
table, % permette di colorare le tabelle
xcdraw
]{xcolor} % permette di usare colori
\usepackage[a-1b]{pdfx} % permette di generare PDF/A
\usepackage{shellesc} % aggiunge il comando \write18 necessario su Overleaf per frontespizio
\definecolor{bg}{RGB}{252,252,252}
\setminted{bgcolor=bg, fontsize=\scriptsize, frame=single, breaklines}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric, arrows}
\tikzstyle{startstop} = [rectangle, rounded corners, minimum width=3cm, minimum height=1cm,text centered, draw=black]
\tikzstyle{io} = [trapezium, trapezium left angle=70, trapezium right angle=110, minimum width=3cm, minimum height=1cm, text centered, draw=black]
\tikzstyle{process} = [rectangle, minimum width=3cm, minimum height=1cm, text centered, draw=black]
\tikzstyle{decision} = [diamond, minimum width=3cm, minimum height=1cm, text centered, draw=black]
\tikzstyle{arrow} = [thick,->,>=stealth]
\renewcommand\listingscaption{Codice}
%% Font
% non è necessario \usepackage[utf8]{inputenc} perché luaLaTeX accetta solo UTF-8
\usepackage{fontspec}
\setmainfont[%
Ligatures=TeX % abilita legature classiche di LaTeX
]{Latin Modern Roman} % imposta il font con grazie per il testo principale
\setsansfont[%
Ligatures=TeX % abilita legature classiche di LaTeX
]{Latin Modern Sans} % imposta il font senza grazie
\setmonofont[%
Ligatures=TeX % abilita legature classiche di LaTeX
]{Latin Modern Mono} % imposta il font teletype monospaziato
%% Matematica
\usepackage{amsmath}
% non bisogna assolutamente invocare il pacchetto amssymb
\usepackage[%
math-style=ISO % per scrivere la matematica delle scienze sperimentali bisogna seguire le norme ISO
]{unicode-math} % implementazione di glifi Unicode per caratteri matematici
\setmathfont[%
Ligatures=TeX % abilita legature classiche di LaTeX
]{Latin Modern Math}
\usepackage[%
output-decimal-marker={,}, % le convenzioni tipografiche italiane prevedono la virgola e non il punto
binary-units % abilita le espressioni per bit e byte
]{siunitx} % permette di definire numeri con unità di misura
%% Lingue
\usepackage[%
strict=true, % converte tutti i warning in errori
autostyle=true, % adatta continuamente lo stile delle virgolette alla lingua
english=american, % imposta lo stile per l'inglese
italian=guillemets % imposta lo stile per l'italiano
]{csquotes} % configura le virgolette secondo gli stnadard della lingua
\usepackage{polyglossia}
\setmainlanguage[%
babelshorthands % attiva il carattere " come switch per virgolettature etimologiche
]{italian} % imposta l'italiano come lingua principale
\setotherlanguage[%
variant=american % imposta la variante americana dell'inglese
]{english} % imposta l'inglese come lingua secondaria
% non è necessario \usepackage{indentfirst} perché con lualatex il rientro del primo capoverso è preimpostato
%% Altri pacchetti
\usepackage{graphicx} % serve per includere immagini e grafici
\graphicspath{{res/fig}} % importa la cartella res/fig/ come cartella da cui caricare le immagini
\usepackage{subcaption} % serve per ottenere sottofigure
\usepackage{caption} % permette di controllare la formattazione delle didascalie
\usepackage{adjustbox} % permette di effettuare il crop delle immagini
\usepackage{xargs}
\usepackage[
colorinlistoftodos,
prependcaption,
textsize=tiny
]{todonotes} % permette di definire note a margine di cose da fare
\newcommandx{\unsure}[2][1=]{\todo[linecolor=red,backgroundcolor=red!25,bordercolor=red,#1]{#2}}
\newcommandx{\change}[2][1=]{\todo[linecolor=blue,backgroundcolor=blue!25,bordercolor=blue,#1]{#2}}
\newcommandx{\info}[2][1=]{\todo[linecolor=OliveGreen,backgroundcolor=OliveGreen!25,bordercolor=OliveGreen,#1]{#2}}
\newcommandx{\improvement}[2][1=]{\todo[linecolor=Plum,backgroundcolor=Plum!25,bordercolor=Plum,#1]{#2}}
% \usepackage{ctable} % permette di migliorare la spaziatura dell'ambiente tabular standard
% \usepackage{flafter} % impedisce alle figure di apparire prima della loro definizione nel testo
\usepackage{scrhack} % risolve incompatibilità tra KOMA e pacchatti vari (float, listings, ...)
\usepackage{float} % permette di forzare il posizionamento dell’oggetto nel punto in cui è situato con l’opzione H
\usepackage{afterpage} % permette di eseguire qualcosa nella pagina successiva con \afterpage{...} (ad esempio, figure)
% \usepackage{placeins} % permette di mettere delle barriere invalicabili per le figure con \FloatBarrier
\usepackage[%
write, % (write|nowrite) genera o meno il file
standard, % (standard|suftesi) specifica tipo di frontespizio
normal, % (normal|sans) usa font con grazie anziché senza
noinputenc, % non carica inputenc (poiché usa lualatex)
% norules, % non vengono inseriti filetti nel frontespizio
nouppercase, % con questa opzione verrà rispettato il maiuscolo e il minuscolo
driver=luatex % imposta la chiamata di graphicx nel documento frn per l'uso di un driver diverso da dvips o pdftex
]{frontespizio}
\usepackage{geometry} % permette la modifica della gabbia del documento
\geometry{
a4paper, % formato di pagina
heightrounded, % modifica di poco le dimensioni della gabbia per contenere un numero intero di righe
hmargin=2.5cm, % dimensioni margini destro-sinistro
vmargin=2.5cm % dimensioni margini superiore-inferiore
}
\usepackage{setspace} % serve a fornire comandi di interlinea standard
\onehalfspacing{} % imposta interlinea a 1,5 ed equivale a \linespread{1,5}
%% Definizioni di comandi e ambienti
%% Definisco un nuovo comando per enfatizzare il testo in inglese %%%%%%%%%%%
\newcommand{\engEmph}[1] {\emph{\foreignlanguage{english}#1}}
%% Aggiunge pagine bianche vuote %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\clearemptydoublepage}{\newpage{\pagestyle{empty}%
%\cleardoublepage}}
\clearpage}}
%% Definisce l'environment abstract per la classe book %%%%%%%%%%%%%%%%%%%%%%
\newenvironment{abstract}%
{\cleardoublepage%
\thispagestyle{empty}%
\null\vfill\begin{center}%
\bfseries\abstractname\end{center}}%
{\vfill\null}
\usepackage[%
maxcitenames=2, % massimo numero di nomi nelle citazioni
mincitenames=2, % minimo numero di nomi nelle citazioni
maxbibnames=99, % massimo numero di nomi nella blibliografia
minbibnames=99, % minimo numero di nomi nella blibliografia
style=ieee, % imposta lo stile della blibliografia (numeric|alphabetic|authoryear|authortitle|verbose|...)
giveninits=true,
backend=biber % specifica il backend per la bibliografia
]{biblatex} % si interfaccia con bibtex e biber per la bibliografia
\addbibresource{biblio.bib}
\usepackage[%
% page, % Aggiunge una pagina con la scritta Appendices
% toc, % Aggiunge un campo Appendices nell'indice
titletoc, % Aggiunge la parola Appendice per ogni capitolo dell'appendice nell'indice
title% % Aggiunge la parola Appendice per ogni capitolo dell'appendice
]{appendix} % modifica la gestione dell'appendice, e aggiunge l'ambiente appendices alternativo al comando \appendix
% \usepackage[htt]{hyphenat} % permette la sillabazione dei blocchi di testo monospaziato
% \usepackage{enumerate} % aggiunge un argomento opzionale che determina come comporre l’etichetta numerata delle liste
\usepackage{microtype} % gestisce la microtipografia
% \usepackage{hyperref} % gestisce tutte le cose ipertestuali del pdf; importato automaticamente
\hypersetup{%
pdfpagemode={UseNone},
hidelinks, % nasconde i collegamenti (non vengono quadrettati)
hypertexnames=false,
linktoc=all, % inserisce i link nell'indice
unicode=true, % usa solo caratteri Latini nei segnalibri di Acrobat
pdftoolbar=false, % nasconde la toolbar di Acrobat
pdfmenubar=false, % nasconde il menu di Acrobat
plainpages=false,
breaklinks,
pdfstartview={Fit},
pdflang={it}
}
\usepackage[%
english,italian, % definizione delle lingue da usare
nameinlink % inserisce i link nei riferimenti
]{cleveref} % permette di usare riferimenti migliori dei \ref e dei varioref
\newcommand{\euler}{e}
\usepackage{tabularx}
\usepackage{listings}
\lstset{
frame=tblr,
tabsize = 4, %% set tab space width
showstringspaces = false, %% prevent space marking in strings, string is defined as the text that is generally printed directly to the console
numbers = left, %% display line numbers on the left
commentstyle = \color{green}, %% set comment color
keywordstyle = \color{blue}, %% set keyword color
stringstyle = \color{red}, %% set string color
rulecolor = \color{black}, %% set frame color to avoid being affected by text color
basicstyle = \small \ttfamily, %% set listing font and size
breaklines = true, %% enable line breaking
numberstyle = \tiny,
}
\newcommand\blankpage{%
\null
\thispagestyle{empty}%
\addtocounter{page}{-1}%
\newpage}
\begin{document}
\frontmatter{}
\pagenumbering{Roman}
\pagestyle{empty}
\input{src/1-frontmatter/frontespizio.tex}
\mainmatter{}
\pagenumbering{arabic}
\pagestyle{headings}
\setcounter{page}{1}
\Crefname{listing}{Codice}{Codice}
\input{src/2-mainmatter/keywords.tex}
\input{src/2-mainmatter/abstract.tex}
\tableofcontents
\input{src/2-mainmatter/introduzione.tex}
\input{src/2-mainmatter/chapter-1.tex}
\input{src/2-mainmatter/chapter-2.tex}
\input{src/2-mainmatter/chapter-3.tex}
\input{src/2-mainmatter/chapter-4.tex}
\input{src/2-mainmatter/chapter-5.tex}
\input{src/2-mainmatter/chapter-conclusion.tex}
\backmatter{}
\input{src/3-backmatter/bibliografia.tex}
\input{src/3-backmatter/ringraziamenti.tex}
\end{document}