initial commit
This commit is contained in:
261
Rapport/packages/sleek.sty
Normal file
261
Rapport/packages/sleek.sty
Normal file
@@ -0,0 +1,261 @@
|
||||
\ProvidesPackage{packages/sleek}[2023/09/18 v1.2.3 Sleek]
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Settings %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
% Encoding
|
||||
|
||||
\RequirePackage[utf8]{inputenc}
|
||||
|
||||
% Font
|
||||
|
||||
% \RequirePackage{lmodern}
|
||||
\RequirePackage{mlmodern}
|
||||
% \RequirePackage{libertinus}
|
||||
\RequirePackage[T1]{fontenc}
|
||||
\RequirePackage{microtype}
|
||||
|
||||
% Layout
|
||||
|
||||
\RequirePackage{geometry}
|
||||
\RequirePackage{fancyhdr}
|
||||
\RequirePackage[bottom]{footmisc}
|
||||
\RequirePackage{lscape}
|
||||
|
||||
\geometry{margin=2.5cm}
|
||||
|
||||
\pagestyle{fancy}
|
||||
\fancyhead[L]{}
|
||||
\fancyhead[R]{}
|
||||
\fancyfoot[C]{\thepage}
|
||||
\renewcommand*{\headrulewidth}{0pt}
|
||||
|
||||
% Code blocks
|
||||
|
||||
\RequirePackage[newfloat]{minted}
|
||||
|
||||
% https://tex.stackexchange.com/a/254177
|
||||
% Non-floating listing environment (w/ page breaks)
|
||||
\newenvironment{longlisting}{\captionsetup{type=listing}}{}
|
||||
% Floating listing environment (w/o page breaks)
|
||||
\SetupFloatingEnvironment{listing}{}
|
||||
|
||||
% Text
|
||||
|
||||
\RequirePackage{csquotes}
|
||||
\RequirePackage[inline]{enumitem}
|
||||
\RequirePackage{eurosym}
|
||||
\RequirePackage[parfill]{parskip}
|
||||
\RequirePackage[dvipsnames]{xcolor}
|
||||
|
||||
% Links
|
||||
|
||||
\RequirePackage[
|
||||
pdfusetitle,
|
||||
colorlinks=true,
|
||||
citecolor=purple,
|
||||
filecolor=black,
|
||||
linkcolor=blue,
|
||||
urlcolor=blue,
|
||||
linktoc=page,
|
||||
]{hyperref}
|
||||
\RequirePackage{bookmark}
|
||||
\RequirePackage{qrcode}
|
||||
|
||||
% Mathematics
|
||||
|
||||
\RequirePackage{amsmath}
|
||||
\RequirePackage{amssymb}
|
||||
\RequirePackage{bm}
|
||||
\RequirePackage{esint}
|
||||
\RequirePackage{mathtools}
|
||||
|
||||
% Units
|
||||
|
||||
\RequirePackage{siunitx}
|
||||
|
||||
\sisetup{separate-uncertainty}
|
||||
\sisetup{separate-uncertainty-units=single}
|
||||
|
||||
% Markers
|
||||
|
||||
\RequirePackage{circledsteps}
|
||||
\pgfkeys{/csteps/inner color=white}
|
||||
\pgfkeys{/csteps/fill color=black}
|
||||
|
||||
% Figures
|
||||
|
||||
\RequirePackage{float}
|
||||
\RequirePackage[skip=1.5ex]{caption}
|
||||
\RequirePackage{subcaption}
|
||||
|
||||
\captionsetup{labelsep=period} % 'Figure 1.2.' instead of 'Figure 1.2:'
|
||||
|
||||
% Tables
|
||||
|
||||
\RequirePackage{array}
|
||||
\RequirePackage{booktabs}
|
||||
\RequirePackage{tabularx}
|
||||
\RequirePackage{multirow}
|
||||
|
||||
\renewcommand{\arraystretch}{1.1}
|
||||
|
||||
\newcolumntype{Z}{>{\centering\arraybackslash}X} % Tabular text-wrapping column
|
||||
\renewcommand\tabularxcolumn[1]{m{#1}} % Vertical centering of text in X columns
|
||||
|
||||
% Algorithms
|
||||
|
||||
\RequirePackage[ruled]{algorithm}
|
||||
\RequirePackage[noend]{algpseudocode}
|
||||
|
||||
\makeatletter
|
||||
\renewcommand\fs@ruled{% https://ctan.org/pkg/float
|
||||
\def\@fs@cfont{\bfseries}\let\@fs@capt\floatc@ruled%
|
||||
\def\@fs@pre{\hrule height \heavyrulewidth depth 0pt \kern 4pt}%
|
||||
\def\@fs@mid{\kern 4pt \hrule height \heavyrulewidth depth 0pt \kern 4pt}%
|
||||
\def\@fs@post{\kern 4pt \hrule height \heavyrulewidth depth 0pt \relax}%
|
||||
\let\@fs@iftopcapt\iftrue%
|
||||
}
|
||||
\makeatother
|
||||
|
||||
\algrenewcommand{\algorithmiccomment}[1]{\hfill #1}
|
||||
\algrenewcommand{\alglinenumber}[1]{\footnotesize{#1}}
|
||||
|
||||
\algnewcommand\Input{\item[\textbf{Input:}]}
|
||||
\algnewcommand\Output{\item[\textbf{Output:}]}
|
||||
|
||||
\algnewcommand\Break{\textbf{break}}
|
||||
\algnewcommand\Continue{\textbf{continue}}
|
||||
|
||||
% Glossaries
|
||||
|
||||
\RequirePackage[
|
||||
automake,
|
||||
nonumberlist,
|
||||
toc=false
|
||||
]{glossaries-extra}
|
||||
|
||||
\setglossarysection{section}
|
||||
|
||||
% Bibliography
|
||||
|
||||
\RequirePackage[
|
||||
hyperref,
|
||||
backend=biber,
|
||||
style=numeric,
|
||||
% sorting=none,
|
||||
% maxcitenames=1,
|
||||
% maxbibnames=3,
|
||||
% backref=true
|
||||
]{biblatex}
|
||||
|
||||
\setlength\bibitemsep{1ex}
|
||||
|
||||
\DeclareFieldFormat*{title}{\enquote{#1}}
|
||||
\DeclareFieldFormat*{citetitle}{\enquote{#1}}
|
||||
|
||||
\DefineBibliographyStrings{english}{
|
||||
backrefpage = {page},
|
||||
backrefpages = {pages}
|
||||
}
|
||||
|
||||
\DefineBibliographyStrings{french}{
|
||||
backrefpage = {page},
|
||||
backrefpages = {pages}
|
||||
}
|
||||
|
||||
\DefineBibliographyStrings{german}{
|
||||
backrefpage = {Seite},
|
||||
backrefpages = {Seiten}
|
||||
}
|
||||
|
||||
% Others
|
||||
|
||||
\RequirePackage{comment}
|
||||
|
||||
%%%%%%%%%%%
|
||||
% Options %
|
||||
%%%%%%%%%%%
|
||||
|
||||
\DeclareOption{header}{
|
||||
\geometry{top=3.5cm, bottom=2.5cm, right=2.5cm, left=2.5cm}
|
||||
\fancyhead[R]{\leftmark}
|
||||
}
|
||||
|
||||
\DeclareOption{french}{
|
||||
%% Babel
|
||||
\frenchbsetup{StandardLists=true}
|
||||
\frenchbsetup{SmallCapsFigTabCaptions=false}
|
||||
|
||||
%% Macros
|
||||
\def\cad{c.-à-d.\@}
|
||||
\def\Cad{C.-à-d.\@}
|
||||
}
|
||||
|
||||
\ProcessOptions\relax
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Commands %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
% Abbreviations
|
||||
|
||||
\def\cf{\emph{cf.}\@} % confer
|
||||
\def\eg{\emph{e.g.}\@} % exempli gratia
|
||||
\def\ie{\emph{i.e.}\@} % id est
|
||||
|
||||
% Table of contents
|
||||
|
||||
\newcommand*{\romantableofcontents}{ % table of contents with roman (i, ii, ...) numbering of the pages
|
||||
\newpage
|
||||
\pagenumbering{roman}
|
||||
\tableofcontents
|
||||
\newpage
|
||||
\pagenumbering{arabic}
|
||||
}
|
||||
|
||||
% Mathematics
|
||||
|
||||
\DeclarePairedDelimiter\rbk{(}{)} % round brackets (parentheses)
|
||||
\DeclarePairedDelimiter\cbk{\{}{\}} % curly brackets {braces}
|
||||
\DeclarePairedDelimiter\sbk{[}{]} % square brackets [brackets]
|
||||
|
||||
\DeclarePairedDelimiter\abs{\lvert}{\rvert} % absolute value |x|
|
||||
\DeclarePairedDelimiter\norm{\lVert}{\rVert} % norm ||x||
|
||||
\DeclarePairedDelimiter\ceil{\lceil}{\rceil} % ceil ⌈x⌉
|
||||
\DeclarePairedDelimiter\floor{\lfloor}{\rfloor} % floor ⌊x⌋
|
||||
|
||||
\newcommand*{\fact}[1]{#1!} % factorial x!
|
||||
|
||||
\renewcommand*{\d}[1]{\operatorname{d}\!{#1}} % upright 'd' for differential
|
||||
|
||||
\DeclareMathOperator{\tr}{tr} % trace
|
||||
\DeclareMathOperator{\diag}{diag} % diagonal
|
||||
|
||||
% Figures
|
||||
|
||||
\newcommand*{\noskipcaption}[1]{\caption{#1}\vspace{-\intextsep}} % caption without additional vertical space
|
||||
|
||||
% Footnotes
|
||||
|
||||
\makeatletter
|
||||
\def\blindfootnote{\gdef\@thefnmark{}\@footnotetext} % footnote without number
|
||||
\makeatother
|
||||
|
||||
\endinput
|
||||
|
||||
% In-PDF comments
|
||||
|
||||
\newboolean{showcomments}
|
||||
\setboolean{showcomments}{true}
|
||||
|
||||
\ifthenelse{\boolean{showcomments}}
|
||||
{ \newcommand{\mynote}[3]{
|
||||
\fbox{\bfseries\sffamily\scriptsize#1}
|
||||
{\small$\blacktriangleright$\textsf{\emph{\color{#3}{#2}}}$\blacktriangleleft$}}}
|
||||
{ \newcommand{\mynote}[3]{}}
|
||||
\newcommand{\shrink}[1]{}
|
||||
|
||||
\newcommand{\jb}[1]{\mynote{Jalil}{#1}{red}}
|
||||
\newcommand{\vl}[1]{\mynote{Vincent}{#1}{blue}}
|
||||
Reference in New Issue
Block a user