158 lines
4.4 KiB
TeX
158 lines
4.4 KiB
TeX
% Chapters
|
|
\newcommand{\importchapter}[2]{% Load a chapter (#2) in a path (#1)
|
|
\glsresetall% Reset the acronyms
|
|
\graphicspath{{#1/figures/}}% Enable relative paths for images
|
|
|
|
\cleardoublepage% Start on a right page
|
|
\includefrom{#1}{#2}% Include with relative paths \input in the chapter
|
|
}
|
|
|
|
\NewCommandCopy{\oldchapter}{\chapter}
|
|
\RenewDocumentCommand{\chapter}{s o m}{% #1 = star (no number), #2 = short title, #3 = title
|
|
\IfBooleanTF{#1}{%
|
|
\oldchapter*{#3}% Starred chapter
|
|
\addcontentsline{toc}{chapter}{#3}% Add to the table of contents
|
|
}{%
|
|
\IfValueTF{#2}{%
|
|
\oldchapter[#2]{#3}% Chapter with short title
|
|
}{%
|
|
\oldchapter{#3}% Regular chapter
|
|
}%
|
|
\addcontentsline{lof}{chapter}{#3}% Add to the list of figures
|
|
%\addcontentsline{lot}{chapter}{#3}% Add to the list of tables
|
|
}%
|
|
}
|
|
|
|
\newcommand{\noindentskip}{\bigskip\noindent} % Skip a line and remove the indent
|
|
|
|
% Equations
|
|
\NewEnvironmentCopy{oldequation}{equation}
|
|
\RenewDocumentEnvironment{equation}{m}{%
|
|
\begin{oldequation}%
|
|
\label{\labelprefix:eq:#1}%
|
|
}{%
|
|
\end{oldequation}%
|
|
}
|
|
|
|
% Images
|
|
% example: \fig[1]{filename}{Caption}[Additional caption text, not shown in the list of figures]
|
|
% reference later with: \figref{filename}
|
|
% 1 = \linewidth = 150 mm
|
|
\RenewDocumentCommand{\fig}{O{1} O{htbp} m m O{}}{% #1 = width, #2 = position, #3 = filename, #4 = caption, #5 = additional caption
|
|
\begin{figure}[#2]%
|
|
\centering%
|
|
\includegraphics[width=#1\linewidth]{#3}%
|
|
\caption[#4]{#4#5}
|
|
\label{fig:#3}%
|
|
\end{figure}%
|
|
}
|
|
|
|
\RenewDocumentCommand{\figwide}{O{1} O{htbp} m m O{}}{% #1 = width, #2 = position, #3 = filename, #4 = caption, #5 = additional caption
|
|
\begin{sidewaysfigure}[#2]
|
|
\centering%
|
|
\includegraphics[width=#1\linewidth]{#3}%
|
|
\caption[#5]{#4#5}%
|
|
\label{fig:#3}%
|
|
\end{sidewaysfigure}%
|
|
}
|
|
|
|
% example:
|
|
% \begin{subfigs}{label}{Caption}[Additional caption text, not shown in the list of figures][
|
|
% \item Subfig title 1.
|
|
% \item Subfig title 2.
|
|
% ]
|
|
% \subfig{filename1}%
|
|
% \subfig[1][htbp]{filename2}%
|
|
% \end{subfigs}
|
|
% reference later with: \figref{label}
|
|
\RenewDocumentEnvironment{subfigs}{O{htbp} m m O{} o}{% #1 = position, #2 = label, #3 = caption, #4 = additional caption, #5 = subfig titles
|
|
\begin{figure}[#1]%
|
|
\centering%
|
|
}{%
|
|
\caption[#3]{%
|
|
#3#4%
|
|
\IfValueTF{#5}{%
|
|
\begin{enumerate*}[label=\textbf{(\alph*)}]%
|
|
#5%
|
|
\end{enumerate*}%
|
|
}%
|
|
}%
|
|
\label{fig:#2}%
|
|
\end{figure}%
|
|
}
|
|
|
|
\NewDocumentCommand{\subfigsheight}{m}{% Set the height of the subfigures
|
|
\setkeys{Gin}{height=#1}%
|
|
}
|
|
|
|
\RenewDocumentCommand{\subfig}{o O{b} m}{% #1 = width, #2 = valign, #3 = filename
|
|
\hfill%
|
|
\subfloat[\label{fig:#3}]{%
|
|
\IfValueTF{#1}{%
|
|
\includegraphics[width=#1\linewidth, valign=#2, keepaspectratio]{#3}%
|
|
}{%
|
|
\includegraphics[valign=#2, keepaspectratio]{#3}%
|
|
}%
|
|
}%
|
|
\hfill%
|
|
}
|
|
|
|
\captionsetup{%
|
|
labelfont={sf,bf,up}, % sans-serif, bold, upright
|
|
}
|
|
|
|
% Labels and references
|
|
% Add chapter label as prefix to all other sub-labels
|
|
\NewCommandCopy{\oldlabel}{\label}
|
|
\newcommand{\labelprefix}{main}
|
|
\newcommand{\mainlabel}[1]{%
|
|
\renewcommand{\labelprefix}{#1}%
|
|
\oldlabel{\labelprefix}%
|
|
}
|
|
\renewcommand{\label}[1]{\oldlabel{\labelprefix:#1}}
|
|
|
|
\newcommand{\chapref}[1]{Chapter~\ref{#1}}
|
|
\renewcommand{\eqref}[2][\labelprefix]{Equation~\ref{#1:eq:#2}}
|
|
\renewcommand{\figref}[2][\labelprefix]{Figure~\ref{#1:fig:#2}}
|
|
\newcommand{\partref}[1]{Part~\ref{#1}}
|
|
\renewcommand{\secref}[2][\labelprefix]{Section~\ref{#1:#2}}
|
|
\renewcommand{\tabref}[2][\labelprefix]{Table~\ref{#1:tab:#2}}
|
|
|
|
% Tables
|
|
\RenewDocumentEnvironment{tab}{O{htbp} m m O{}}{% #1 = position, #2 = label, #3 = title, #4 = additional caption
|
|
\begin{table}[#1]%
|
|
\centering%
|
|
\caption[#3]{#3#4}%
|
|
\label{tab:#2}%
|
|
}{%
|
|
\end{table}%
|
|
}
|
|
|
|
\RenewDocumentEnvironment{tabwide}{O{htbp} m m O{}}{% #1 = position, #2 = label, #3 = title, #4 = additional caption
|
|
\begin{sidewaystable}[#1]%
|
|
\centering%
|
|
\caption{#3#4}%
|
|
\label{tab:#2}%
|
|
}{%
|
|
\end{sidewaystable}%
|
|
}
|
|
|
|
% Local table of contents
|
|
\usepackage{titletoc}
|
|
\newcommand{\chaptertoc}{% Print the table of contents for the chapter
|
|
%\hypersetup{linkcolor=black}%
|
|
|
|
\vspace{-1.8em}%
|
|
\horizontalrule%
|
|
\vspace{-1.5em}%
|
|
\section*{Contents}% Add a section title
|
|
\vspace{-0.5em}%
|
|
|
|
\startcontents% Start referencing the contents
|
|
\renewcommand{\cftsecfont}{\bfseries}% Bold sections in local ToC
|
|
\printcontents{}{1}{}% Print the contents
|
|
|
|
\horizontalrule%
|
|
\vspace{2em}%
|
|
}
|