Files
phd-thesis/utils/commands.tex
2024-06-26 10:33:39 +02:00

225 lines
5.7 KiB
TeX

%% Packages required
\usepackage[export]{adjustbox} % For valign in subfigs
\usepackage[caption=false]{subfig} % Good looking subfigs
%% Abbreviations
\newcommand{\etal}{\textit{et al.}}
\newcommand{\eg}{\textit{e.g.},\ }
\newcommand{\ie}{\textit{i.e.},\ }
\newcommand{\ns}{\textit{n.s.}}
\newcommand{\x}{\texttimes\ }
\newcommand{\vs}{\textit{vs.}\ }
%% Citations
\newcommand{\citeauthorcite}[1]{\citeauthor*{#1}~\cite{#1}}
%% Figures
% example: \fig[1]{universe}{The Universe}[Short title for list of figures]
% reference later with: \figref{universe}
\NewDocumentCommand{\fig}{O{0.8} O{htbp} m m O{#4}}{%
\begin{figure}[#2]
\centering%
\includegraphics[width=#1\linewidth]{#3}%
\caption[#5]{#4}%
\label{fig:#3}%
\end{figure}%
}
\NewDocumentCommand{\figwide}{O{1} O{htbp} m m O{#4}}{%
\begin{figure*}[#2]
\centering%
\includegraphics[width=#1\linewidth]{#3}%
\caption[#5]{#4}%
\label{fig:#3}%
\end{figure*}%
}
\newcommand{\figref}[1]{Fig.~\ref{fig:#1}}
%% Sub-figures
% example:
% \begin{subfigs}{label}{Title}[Short title for list of figures]
% \subfig[1]{hands-none}[None]%
% \subfig[1]{hands-occlusion}[Occlusion]%
% \end{subfigs}
% reference later with: \figref{label}
\NewDocumentEnvironment{subfigs}{O{htbp} m m O{#3}}{%
\begin{figure}[#1]%
\centering%
}{%
\caption[#4]{#3}%
\label{fig:#2}%
\end{figure}%
}
\NewDocumentEnvironment{subfigswide}{O{htbp} m m O{#3}}{%
\begin{figure*}[#1]%
\centering%
}{%
\caption[#4]{#3}%
\label{fig:#2}%
\end{figure*}%
}
\NewDocumentCommand{\subfig}{O{0.2} o O{b} m}{%
\IfValueTF{#2}{%
\subfloat[#2\label{fig:#4}]{\includegraphics[width=#1\linewidth,valign=#3]{#4}}%
}{%
\subfloat{\includegraphics[width=#1\linewidth,valign=#3]{#4}}%
}%
\hfill%
}
\newcommand{\topleftsubcaption}{%
\captionsetup[subfigure]{
position=top,
justification=raggedright,
singlelinecheck=off, % do not center single line captions
labelfont={scriptsize,sf,md,up}, % smallest size, sans-serif, bold, upright
%labelformat=simple, % do not add parentheses
farskip=0pt, % no space between caption and figure
captionskip=0pt, % no space between caption and subfigure
margin=3pt % align caption with subfigure
}%
}
\newcommand{\hidesubcaption}{%
\captionsetup[subfigure]{
position=top,
justification=raggedright,
labelfont={scriptsize}, % smallest size
farskip=0pt, % no space between caption and figure
captionskip=-10pt, % no space between caption and subfigure
margin=4pt % align caption with subfigure
}%
}
%% Footnotes
\newcommand{\footnoteurl}[1]{\footnote{\ \url{#1}}}
%% Lists
\renewcommand{\descriptionlabel}[1]{\hspace{\labelsep}\textit{#1}} % Use italics instead of bold for descriptions
%% Maths
\newcommand{\eqref}[1]{Eq.~\ref{eq:#1}}
\newcommand{\measure}[3]{$\mathrm{#1} = \qty{#2}{#3}$}
\newcommand{\chisqr}[3]{$\chi^2(#1, N=#2) = #3$}
\newcommand{\anova}[3]{$\mathrm{F(#1, #2)} = #3$}
\newcommand{\ci}[2]{$[#1, #2]$}
\newcommand{\friedman}[1]{$\chi^2 = #1$}
\newcommand{\geomean}[2]{\measure{GM}{#1}{#2}}
\newcommand{\iqr}[2]{\measure{IQR}{#1}{#2}}
\newcommand{\kendall}[1]{\measure{\tau}{#1}{}}
\newcommand{\kruskal}[1]{\measure{H}{#1}{}}
\newcommand{\mean}[2]{\measure{M}{#1}{#2}}
\newcommand{\median}[2]{\measure{Mdn}{#1}{#2}}
\newcommand{\p}[2][=]{$\mathrm{p} #1 #2$}
\newcommand{\pinf}[1]{\p[<]{#1}}
\newcommand{\percent}[1]{\qty{#1}{\%}}
\newcommand{\pearson}[1]{\measure{r}{#1}{}}
\newcommand{\sd}[1]{\measure{SD}{#1}{}}
\newcommand{\spearman}[1]{\measure{r_s}{#1}{}}
\newcommand{\tabCI}[2]{{[}#1{,}\,#2{]}}
\newcommand{\ttest}[2]{$\mathrm{t}(#1) = #2$}
\newcommand{\wilcoxon}[1]{\measure{W}{#1}{}}
% From https://tex.stackexchange.com/a/95842
\newenvironment{conditions}{%
\par% maybe you want the list to start with a new line
\vspace{\abovedisplayskip}% some space before
\noindent% don't indent
\tabularx{\linewidth}{>{$}l<{$} @{${}={}$} X@{}}% three columns left-aligned; first one is math-mode, the middle is an equals sign, and the last one is normal
}{%
\endtabularx%
\par% maybe you want the list to end with a new line
\vspace{\belowdisplayskip}% some space after
}
%% References
\newcommand{\secref}[1]{Sec.~\ref{sec:#1}}
%% Structure
\newcommand{\chapterstartoc}[1]{\chapter*{#1}\addcontentsline{toc}{chapter}{#1}}
\newcommand{\chapterstarbookmark}[1]{\pdfbookmark[chapter]{#1}{#1}\chapter*{#1}}
\newcommand{\sectionstartoc}[1]{\section*{#1}\addcontentsline{toc}{section}{#1}}
\newcommand{\sectionstarbookmark}[1]{\pdfbookmark[section]{#1}{#1}\section*{#1}}
\newcommand{\subsectionstartoc}[1]{\subsection*{#1}\addcontentsline{toc}{subsection}{#1}}
\newcommand{\subsectionstarbookmark}[1]{\pdfbookmark[subsection]{#1}{#1}\subsection*{#1}}
\newcommand{\subsubsubsection}[1]{\paragraph*{\textit{#1}}}
%% Tables
% example:
% \begin{tab}{label}{Title}
% \begin{tabular}{cc}
% \hline
% \textbf{1} & \textbf{2} \\ \hline
% 3 & 4 \\ \hline
% \end{tabular}
% \end{tab}
% reference later with: \tabref{label}
\NewDocumentEnvironment{tab}{m m}{%
\begin{table}%
\begin{center}
\caption{#2}%
\label{tab:#1}%
}{%
\end{center}%
\end{table}%
}
\NewDocumentEnvironment{tabwide}{m m}{%
\begin{table*}%
\begin{center}
\caption{#2}%
\label{tab:#1}%
}{%
\end{center}%
\end{table*}%
}
\newcommand{\tabrow}[1]{#1 \\ \hline}
\newcommand{\tabref}[1]{Table~\ref{tab:#1}}
%% User studies
\newcommand{\factor}[1]{\textsc{#1}}
\newcommand{\level}[1]{\textsl{#1}}
\newcommand{\response}[1]{\textit{#1}}