269 lines
7.2 KiB
TeX
269 lines
7.2 KiB
TeX
|
% Add further definitions and additional packages here
|
|||
|
\usetikzlibrary{positioning, arrows, shapes, shadows, calc, fit}
|
|||
|
\usepackage{subcaption}
|
|||
|
\usepackage{csquotes}
|
|||
|
|
|||
|
% Avoid warning about deprecated packages
|
|||
|
\usepackage{scrhack}
|
|||
|
|
|||
|
% Math packages
|
|||
|
\usepackage{amssymb}
|
|||
|
\usepackage{mathtools}
|
|||
|
|
|||
|
% Settings for sublistings
|
|||
|
\usepackage{newfloat,caption}
|
|||
|
\usepackage{subcaption}
|
|||
|
\DeclareFloatingEnvironment[fileext=frm,placement={!ht},name=Listing,within=section]{listing}
|
|||
|
|
|||
|
% Reference packages
|
|||
|
\usepackage{nameref}
|
|||
|
\newcommand*{\Appendixautorefname}{appendix}
|
|||
|
\def\equationautorefname{equation}
|
|||
|
\def\subsectionautorefname{subsection}
|
|||
|
\def\sectionautorefname{section}
|
|||
|
\def\chapterautorefname{chapter}
|
|||
|
|
|||
|
\let\orgautoref\autoref
|
|||
|
\providecommand{\Autoref}[1]{%
|
|||
|
\begingroup%
|
|||
|
\def\chapterautorefname{Chapter}%
|
|||
|
\def\sectionautorefname{Section}%
|
|||
|
\def\subsectionautorefname{Subsection}%
|
|||
|
\def\appendixautorefname{Appendix}%
|
|||
|
\def\listingautorefname{Listing}%
|
|||
|
\def\figureautorefname{Figure}%
|
|||
|
\def\tableautorefname{Table}%
|
|||
|
\def\equationautorefname{Equation}%
|
|||
|
\orgautoref{#1}%
|
|||
|
\endgroup
|
|||
|
}
|
|||
|
\makeatletter
|
|||
|
\def\tagform@#1{\maketag@@@{\ignorespaces#1\unskip\@@italiccorr}}
|
|||
|
\let\orgtheequation\theequation
|
|||
|
\def\theequation{(\orgtheequation)}
|
|||
|
\makeatother
|
|||
|
|
|||
|
\newcommand{\autorefap}[1]{{\hyperref[#1]{appendix}~\ref{#1}}}
|
|||
|
\newcommand{\Autorefap}[1]{{\hyperref[#1]{Appendix}~\ref{#1}}}
|
|||
|
|
|||
|
% Use subcaption packet
|
|||
|
\usepackage{subcaption}
|
|||
|
|
|||
|
% Define listing styles
|
|||
|
\definecolor{custom_gray}{RGB}{250, 250, 250}
|
|||
|
\definecolor{number_gray}{RGB}{135, 135, 135}
|
|||
|
\lstdefinestyle{customc}{
|
|||
|
numbers=left,
|
|||
|
frame=single,
|
|||
|
backgroundcolor=\color{custom_gray},
|
|||
|
numberstyle=\color{number_gray},
|
|||
|
captionpos=b,
|
|||
|
language=C,
|
|||
|
showstringspaces=false,
|
|||
|
basicstyle=\footnotesize\ttfamily,
|
|||
|
keywordstyle=\bfseries\color{green!40!black},
|
|||
|
commentstyle=\itshape\color{purple!40!black},
|
|||
|
identifierstyle=\color{blue},
|
|||
|
stringstyle=\color{orange},
|
|||
|
morekeywords={uint64_t,size_t,json_t,time_t,uint32_t,pthread_t, atomic_int, ptrdiff_t}
|
|||
|
}
|
|||
|
\lstdefinestyle{customconfig}{
|
|||
|
numbers=left,
|
|||
|
frame=single,
|
|||
|
backgroundcolor=\color{custom_gray},
|
|||
|
numberstyle=\color{number_gray},
|
|||
|
captionpos=b,
|
|||
|
showstringspaces=false,
|
|||
|
basicstyle=\footnotesize\ttfamily
|
|||
|
}
|
|||
|
|
|||
|
% The bibliography
|
|||
|
\usepackage[style=alphabetic, backend=biber]{biblatex}
|
|||
|
\addbibresource{bibliography.bib}
|
|||
|
|
|||
|
% Table packages
|
|||
|
\usepackage{multirow}
|
|||
|
\usepackage{makecell}
|
|||
|
\usepackage{longtable}
|
|||
|
\usepackage{hhline}
|
|||
|
\usepackage{boldline}
|
|||
|
\usepackage{diagbox}
|
|||
|
\usepackage{adjustbox}
|
|||
|
|
|||
|
\definecolor{table_gray}{HTML}{E8E8E8}
|
|||
|
\definecolor{table_green}{HTML}{BCED91}
|
|||
|
\definecolor{table_red}{HTML}{FA8072}
|
|||
|
\definecolor{plot_gray}{HTML}{808080}
|
|||
|
\definecolor{plot_blue}{HTML}{00549f}
|
|||
|
\definecolor{plot_light_blue}{HTML}{8ebae5}
|
|||
|
\newcommand{\graycell}[1]{{\cellcolor{table_gray}#1}}
|
|||
|
\newcommand{\greencell}[1]{{\cellcolor{table_green}#1}}
|
|||
|
\newcommand{\redcell}[1]{{\cellcolor{table_red}#1}}
|
|||
|
\newcommand{\graycellleftline}[1]{{\multicolumn{1}{p{0.6cm}}{\cellcolor{table_gray}#1}}}
|
|||
|
\newcommand{\graycellright}[1]{{\multicolumn{1}{p{1.3cm}}{\cellcolor{table_gray}#1}}}
|
|||
|
|
|||
|
\usepackage{adjustbox}
|
|||
|
\usepackage{array}
|
|||
|
\newcolumntype{R}[2]{%
|
|||
|
>{\adjustbox{angle=#1,lap=\width-(#2)}\bgroup}%
|
|||
|
l%
|
|||
|
<{\egroup}%
|
|||
|
}
|
|||
|
\newcommand*\rot{\footnotesize\multicolumn{1}{R{58}{0mm}}}% no optional argument here, please!
|
|||
|
\newcommand*\rotright{\footnotesize\multicolumn{1}{R{58}{1em}}}% no optional argument here, please!
|
|||
|
|
|||
|
|
|||
|
% define "struts", as suggested by Claudio Beccari in
|
|||
|
% a piece in TeX and TUG News, Vol. 2, 1993.
|
|||
|
\newcommand\Tstrut{\rule{0pt}{2.6ex}} % = `top' strut
|
|||
|
\newcommand\Bstrut{\rule[-0.9ex]{0pt}{0pt}} % = `bottom' strut
|
|||
|
\newcommand\Bstrutlarger{\rule[-1.4ex]{0pt}{0pt}} % = `bottom' strut
|
|||
|
|
|||
|
% Fix underscore
|
|||
|
\newcommand{\undershort}{{\fontfamily{ptm}\selectfont\textunderscore}}
|
|||
|
|
|||
|
% Math commands
|
|||
|
\DeclarePairedDelimiter{\ceil}{\lceil}{\rceil}
|
|||
|
|
|||
|
% Nomenclature
|
|||
|
%\usepackage[toc, acronym]{glossaries-extra}
|
|||
|
\usepackage[toc, acronym]{glossaries}
|
|||
|
\makeglossaries
|
|||
|
|
|||
|
\newacronymstyle{long-short-emph}%
|
|||
|
{%
|
|||
|
\ifglshaslong{\glslabel}%
|
|||
|
{% acronym
|
|||
|
% This is an adaptation of \glsgenacfmt
|
|||
|
\ifdefempty\glscustomtext
|
|||
|
{%
|
|||
|
\ifglsused\glslabel
|
|||
|
{%
|
|||
|
\glsifplural
|
|||
|
{%
|
|||
|
\glscapscase
|
|||
|
{%
|
|||
|
\acronymfont{\glsentryshortpl{\glslabel}}\glsinsert
|
|||
|
}%
|
|||
|
{%
|
|||
|
\acronymfont{\Glsentryshortpl{\glslabel}}\glsinsert
|
|||
|
}%
|
|||
|
{%
|
|||
|
\mfirstucMakeUppercase
|
|||
|
{\acronymfont{\glsentryshortpl{\glslabel}}\glsinsert}%
|
|||
|
}%
|
|||
|
}%
|
|||
|
{%
|
|||
|
\glscapscase
|
|||
|
{%
|
|||
|
\acronymfont{\glsentryshort{\glslabel}}\glsinsert
|
|||
|
}%
|
|||
|
{%
|
|||
|
\acronymfont{\Glsentryshort{\glslabel}}\glsinsert
|
|||
|
}%
|
|||
|
{%
|
|||
|
\mfirstucMakeUppercase
|
|||
|
{\acronymfont{\glsentryshort{\glslabel}}\glsinsert}%
|
|||
|
}%
|
|||
|
}%
|
|||
|
}%
|
|||
|
{%
|
|||
|
\glsifplural
|
|||
|
{%
|
|||
|
\glscapscase
|
|||
|
{%
|
|||
|
\emph{\glsentrylongpl{\glslabel}\glsinsert}\space%
|
|||
|
(\firstacronymfont{\glsentryshortpl{\glslabel}})%
|
|||
|
}%
|
|||
|
{%
|
|||
|
\emph{\Glsentrylongpl{\glslabel}{\glsinsert}}\space%
|
|||
|
(\firstacronymfont{\glsentryshortpl{\glslabel}})%
|
|||
|
}%
|
|||
|
{%
|
|||
|
\mfirstucMakeUppercase
|
|||
|
{\emph{\glsentrylongpl{\glslabel}{\glsinsert}}\space%
|
|||
|
(\firstacronymfont{\glsentryshortpl{\glslabel}})}%
|
|||
|
}%
|
|||
|
}%
|
|||
|
{%
|
|||
|
\glscapscase
|
|||
|
{%
|
|||
|
\emph{\glsentrylong{\glslabel}\glsinsert}\space%
|
|||
|
(\firstacronymfont{\glsentryshort{\glslabel}})%
|
|||
|
}%
|
|||
|
{%
|
|||
|
\emph{\Glsentrylong{\glslabel}\glsinsert}\space%
|
|||
|
(\firstacronymfont{\glsentryshort{\glslabel}})%
|
|||
|
}%
|
|||
|
{%
|
|||
|
\mfirstucMakeUppercase
|
|||
|
{\emph{\glsentrylong{\glslabel}\glsinsert}\space%
|
|||
|
(\firstacronymfont{\glsentryshort{\glslabel}})}%
|
|||
|
}%
|
|||
|
}%
|
|||
|
}%
|
|||
|
}%
|
|||
|
{%
|
|||
|
\glscustomtext
|
|||
|
}%
|
|||
|
}%
|
|||
|
{% regular term
|
|||
|
\ifglsused{\glslabel}{\glsgenentryfmt}{\emph{\glsgenentryfmt}}%
|
|||
|
}%
|
|||
|
}%
|
|||
|
{%
|
|||
|
\GlsUseAcrStyleDefs{long-short}%
|
|||
|
}
|
|||
|
|
|||
|
\setacronymstyle{long-short-emph}
|
|||
|
|
|||
|
% Remove ugly borders aroung hyperlinks
|
|||
|
\hypersetup{
|
|||
|
colorlinks,
|
|||
|
linkcolor={blue!0!black},
|
|||
|
citecolor={blue!50!blue},
|
|||
|
urlcolor={blue!80!blue}
|
|||
|
}
|
|||
|
|
|||
|
% Macros
|
|||
|
\def\one{\texttt{‘1’}}
|
|||
|
\def\zero{\texttt{‘0’}}
|
|||
|
\def\comma{,~}
|
|||
|
|
|||
|
% Font
|
|||
|
\usepackage{bold-extra}
|
|||
|
|
|||
|
% SI units
|
|||
|
\usepackage[binary-units]{siunitx}
|
|||
|
\sisetup{mode=text,range-phrase = {\text{~to~}}, detect-weight=true}
|
|||
|
\DeclareSIUnit\gigabitethernet{GbE}
|
|||
|
|
|||
|
% Fix command to print SM and TM sign
|
|||
|
\renewcommand\textservicemark{\ensuremath{{}^\textsf{\scriptsize SM}}}
|
|||
|
\renewcommand\texttrademark{\ensuremath{{}^\textsf{\scriptsize TM}}}
|
|||
|
|
|||
|
% Prevent single lines to be printed on the next page
|
|||
|
\clubpenalty = 10000
|
|||
|
\widowpenalty = 10000
|
|||
|
\displaywidowpenalty = 10000
|
|||
|
|
|||
|
% Bookmark
|
|||
|
\usepackage{bookmark}
|
|||
|
\bookmarksetup{numbered}
|
|||
|
|
|||
|
% Appendix
|
|||
|
\usepackage[page,toc]{appendix}
|
|||
|
|
|||
|
% pifon
|
|||
|
\usepackage{pifont}
|
|||
|
\newcommand*\OK{\ding{51}}
|
|||
|
\newcommand*\NO{\ding{55}}
|
|||
|
|
|||
|
% font
|
|||
|
\newcommand{\textbi}[1]{{\textbf{\textit{#1}}}}
|
|||
|
|
|||
|
% hyphenation
|
|||
|
\hyphenation{at-o-mic-i-ty}
|
|||
|
\hyphenation{da-ta-path}
|
|||
|
\hyphenation{name-space}
|