Files
lci/report/document.tex

212 lines
5.4 KiB
TeX
Raw Normal View History

2025-01-15 00:09:58 +01:00
\documentclass[12pt, oneside]{article}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
%% Load Packages %%
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\usepackage[
top=2cm,
bottom=2cm,
left=2cm,
right=2cm,
headheight=20pt,
centering
]{geometry}
\geometry{a4paper}
\usepackage[utf8]{inputenc} %% use UTF-8, maybe not needed since 2018
\usepackage[italian,main=english]{babel} %% language
\pagestyle{headings}
\usepackage{scrlayer-scrpage}
\usepackage{csquotes} %% correct language also for citations
\ifoot[]{}
\cfoot[]{}
\ofoot[\pagemark]{\pagemark}
\pagestyle{scrplain}
\usepackage[
backend=biber,
style=numeric,
sorting=ynt
]{biblatex} %% for citations
\addbibresource{document.bib}
\usepackage{import} %% specify path for import
%% math packages
\usepackage{graphicx} %% for pictures
\usepackage{float}
\usepackage{amssymb} %% math symbols
\usepackage{amsmath} %% math matrix etc
\usepackage{listings} %% code block
\usepackage{tabularray} %% better tables
\usepackage{booktabs} %% rules for tables
\usepackage{mathrsfs}
\usepackage{mathtools}
\usepackage{algorithm} %% for algorithms
\usepackage{algpseudocode} %% loads algorithmicx
\usepackage{amsthm}
\usepackage{thmtools} %% theorems
\usepackage{syntax} %% BNF
\usepackage{semantic} %% semantics
%% plot packages
\usepackage{pgfplots} %% plots used with \begin{tikzpicture}
\usepackage{tikz} %% for pictures
\usetikzlibrary{trees,chains,shadows.blur,fit}
\pgfplotsset{width=10cm,compat=newest}
%% design packages
\usepackage{enumitem} %% for lists and enumerating
\usepackage{color}
\usepackage{xcolor,colortbl} % xcolor for defining colors, colortbl for table colors
\usepackage{makecell} %% for multiple lines in cell of table
\usepackage{cancel}
\usepackage{pgfornament} %% ornaments
%% load last
2025-01-16 23:48:23 +01:00
\usepackage{hyperref} %% links for table of contents, load last
2025-01-15 00:09:58 +01:00
\usepackage{bookmark} %% for better table of contents
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
%% Configuration of the packages %%
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
%% \linespread{1}
\raggedbottom %% spaces if page is empty % chktex 1
%% set max table of contents recursion to subsection (3->subsubsecition)
\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{3}
%% use bar instead of arrow for vectors
\renewcommand{\vec}[1]{\bar{#1}}
%% easy norm
\newcommand{\norm}[1]{\left\lvert#1\right\rvert}
% argmin and argmax
\DeclareMathOperator*{\argmax}{argmax}
\DeclareMathOperator*{\argmin}{argmin}
%% itemize use less vertical space (use olditemize for default behaviour)
\let\olditemize=\itemize%% old itemize
\let\endolditemize=\enditemize%% old end itemize
\renewenvironment{itemize}{\olditemize\itemsep-0.2em}{\endolditemize}
%% items in itemize emph+box
%% usage: \ieb{Class:} for simple item
%% \ieb[4cm]{Class:} for specific size of box
\newcommand{\ieb}[2][2cm]{
\makebox[#1][l]{\emph{#2}}
} %% TODO: replace with description environment (? maybe)
% less vertical space around align & align*
\newcommand{\zerodisplayskips}{
\setlength{\abovedisplayskip}{0pt}
\setlength{\belowdisplayskip}{0pt}
\setlength{\abovedisplayshortskip}{0pt}
\setlength{\belowdisplayshortskip}{0pt}
}
% make dotfill use all the space available
\renewcommand{\dotfill}{
\leavevmode\cleaders\hbox to 1.00em{\hss .\hss }\hfill\kern0pt } % chktex 1 chktex 26
\setlength{\fboxsep}{-\fboxrule} % for debugging
%% PACKAGE algorithm
\floatname{algorithm}{Algorithm}
%% PACKAGE tabularray
\UseTblrLibrary{amsmath}
%% PACKAGE color
\definecolor{red}{rgb}{1, 0.1, 0.1}
\definecolor{lightgreen}{rgb}{0.55, 0.87, 0.47}
\definecolor{gray}{rgb}{0.3, 0.3, 0.3}
\newcommand{\lgt}{\cellcolor{lightgreen}} %% light green in tables
\newcommand{\gry}{\textcolor{gray}} %% gray text
\newcommand{\rd}{\textcolor{red}} %% red text
%% PACKAGE minipage
\newcommand{\thend}[1]{\begin{center}
\begin{minipage}[c][1em][c]{#1}
\dotfill{}
\end{minipage}
\end{center}}
%% PACKAGE thmtools
%% ......................................................................... %%
%% local changes
% \setcounter{secnumdepth}{0}
\newcommand{\defeq}{\vcentcolon=}
\lstdefinelanguage{miniimp}{
keywords={if, then, else, skip, while, do, for, rand},
keywordstyle=\color{blue}\bfseries,
identifierstyle=\color{black},
sensitive=false,
morecomment=[s]{(*}{*)}, % chktex 9
commentstyle=\color{gray}\ttfamily,
stringstyle=\color{red}\ttfamily,
escapeinside={£}{£},
numbers=left,
stepnumber=1
}
\lstset{
language=miniimp,
extendedchars=true,
basicstyle=\footnotesize\ttfamily,
showstringspaces=false,
showspaces=false,
tabsize=2,
breaklines=true,
showtabs=false
}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
2025-01-17 00:46:51 +01:00
\title{
\normalfont\normalsize
\textsc{University of Pisa}\\
\vspace{25pt}
\rule{\linewidth}{0.5pt}\\
\vspace{20pt}
{\huge Languages, Compilers and Interpreters Project}\\
\vspace{12pt}
\rule{\linewidth}{2pt}\\
\vspace{12pt}
}
2025-01-15 00:09:58 +01:00
\author{
Elvis Rossi
}
\date{\today}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
\begin{document}
2025-01-17 00:46:51 +01:00
\maketitle
2025-01-15 00:09:58 +01:00
\input{report}
\end{document}
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %%
%%% Local Variables:
%%% TeX-command-extra-options: "-shell-escape"
%%% End: