Commit 63dacc9e authored by Dominik Kaaser's avatar Dominik Kaaser
Browse files

added proposal option that produces a denser version to be used as a thesis proposal

parent d959bff9
Loading
Loading
Loading
Loading
+86 −28
Changes for thesis/thesis.cls: 86 added lines, 28 removed lines.
Original line number Diff line number Diff line
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{idethesis}[2022/09/30 Dominik's thesis class]
\ProvidesClass{thesis}[2022/09/30 Dominik's thesis class]

\LoadClass[numbers=noenddot,paper=a4,fontsize=11pt,american,headsepline=0.4pt:130mm,chapterprefix]{scrbook}
\newif\ifproposal\proposalfalse
\DeclareOption{proposal}{%
\proposaltrue%
}
\ProcessOptions\relax


\ifproposal
\PassOptionsToClass{openany,chapterprefix=false}{scrbook}%
\else
\PassOptionsToClass{openright,chapterprefix=true}{scrbook}%
\fi

\LoadClass[numbers=noenddot,paper=a4,fontsize=11pt,american,headsepline=0.4pt:130mm]{scrbook}
\ifproposal
\def\dedication#1{}
\def\frontmatter{}
\def\mainmatter{}
\def\backmatter{}
\let\orig@subject\subject
\def\subject#1{\orig@subject{#1 Proposal}}
\fi

\PassOptionsToPackage{a4paper, right=40mm, left=20mm, top=40mm, bottom=40mm, headsep=10mm, footskip=20mm, headheight=10mm, nomarginpar, bindingoffset=20mm}{geometry}
\RequirePackage{geometry}
\ifproposal
\else
\setlength{\parskip}{0.25\baselineskip}
\fi
\setlength{\parindent}{1em}
\emergencystretch=1.4em
\setcounter{tocdepth}{1}
@@ -13,7 +37,7 @@
\addtokomafont{disposition}{\rmfamily}
\addtokomafont{dedication}{\itshape}

\PassOptionsToPackage{draft=false,headsepline=0.4pt:130mm}{scrlayer-scrpage}
\PassOptionsToPackage{draft=false,headsepline=0.5pt:130mm}{scrlayer-scrpage}
\RequirePackage{scrlayer-scrpage}

\RequirePackage[utf8]{inputenc}
@@ -42,11 +66,14 @@
\usetikzlibrary{calc}
\definecolor{tuhh}{HTML}{00C1D4}%

\ifproposal
\else
\extratitle{
\begin{center}
\Large \@title
\end{center}
}
\fi
\lowertitleback{
\begin{minipage}{12cm}
\begin{flushleft}
@@ -63,11 +90,12 @@ Germany

\noindent\textbf{\@author}\newline
\textit{\@title}\newline
\@date{} $ \cdot $ commit \StrLeft{\commit}{7}\ on branch \branch
\@date{}\ifproposal\else $ \cdot $ commit \StrLeft{\commit}{7}\ on branch \branch\fi
\end{flushleft}
\end{minipage}
}

\ifproposal
\else
\usepackage{xstring}
\usepackage{catchfile}

@@ -77,23 +105,54 @@ Germany
\IfFileExists{../.git/refs/heads/\branch}{%
    \CatchFileDef{\commit}{../.git/refs/heads/\branch}{}}{%
    \newcommand{\commit}{unknown}}

\fi
% Define location field
\def\location#1{\gdef\@location{#1}}
\def\@location{}

% Define supervisors field
\def\supervisors#1{%
\publishers{\begin{minipage}{17cm}%
Supervisors:\\%
{%
\def\and{\\}%
#1%
}%
\ifproposal
\long\def\@dcm@s#1{\@ifnextchar\and{}{\@ifnextchar\@dcm@end{\@gobble}{\@dcm@s}}}

\long\def\supervisors#1{%
\publishers{\large\raggedright Proposal submitted to the Institute for Data Engineering\newline at the Hamburg University of Technology.

\vspace{2cm}

\begin{minipage}[t]{6cm}
\@location, \@date 
\end{minipage}\hfill
\begin{minipage}[t]{6cm}\raggedleft
\rule{6cm}{0.5pt} \\
\@author \\[1cm]
\rule{6cm}{0.5pt} \\
\begingroup
\let\@dcm@nl\\
\def\and{\@dcm@nl[1cm]\rule{6cm}{0.5pt}\@dcm@nl}
\def\@dcm@end{}
\long\def\\{\@dcm@s}
#1\@dcm@end
\endgroup
\end{minipage}%
}%
}
}%
\else
\def\supervisors#1{%
\publishers{\large\raggedright Thesis submitted to the Institute for Data Engineering\newline at the Hamburg University of Technology.

\vspace{2cm}
\raggedleft

\begin{minipage}[t]{6cm}
Supervisors:
\end{minipage}\hfill
\begin{minipage}[t]{6cm}\raggedleft
\def\and{\\[1cm]}
#1
\end{minipage}%
}%
}%
\fi

\titlehead{
\begin{tikzpicture}[overlay,remember picture]
@@ -114,38 +173,31 @@ Supervisors:\\%
    at ($(current page.south) + (0cm,2cm)$)
    {\minipage{7cm}\endminipage};

    %\node[inner sep=0pt,anchor=north west] (title)
    %at ($(current page.north west) + (1.5cm,-1.5cm)$)
    %{\minipage[t][3cm][t]{12cm}\raggedright\Huge \@title \par \Large \@subtitle \endminipage};

\end{tikzpicture}%
}

% Chapter Headlines
\ifproposal
\RedeclareSectionCommand[style=section]{chapter}
\else
\renewcommand*{\chapterformat}{%
\pagestyle{scrheadings}%
\color{gray} \raggedleft \bfseries\fontsize{120}{0}\selectfont\thechapter \vskip 1cm
}
\renewcommand*{\chapterheadstartvskip}{\vskip 2cm}
\renewcommand*{\chapterheadendvskip}{\vskip 1cm}

\fi
\renewcommand*{\chaptermarkformat}{%
  \thechapter\autodot\enskip%
}

% Abstract
\newenvironment{abstract}{
\markboth{Abstract}{}
\chapter*{Abstract}
\addcontentsline{toc}{chapter}{Abstract}
}{
\cleardoublepage
}

\newenvironment{preface}[1]{\markboth{#1}{}%
\chapter*{#1}%
\addcontentsline{toc}{chapter}{#1}}
{\cleardoublepage}
{\ifproposal\else\cleardoublepage\fi}

\newenvironment{abstract}{\preface{Abstract}}{\endpreface}

% Biblatex
\PassOptionsToPackage{style=alphabetic,
@@ -285,6 +337,11 @@ backend=biber}{biblatex}
\printfield{edition}%
}{}{}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\ifproposal
\def\insertdeclaration{}
\else
\def\insertdeclaration{
\chapter*{Eidesstattliche Erklärung}
\thispagestyle{empty}
@@ -295,3 +352,4 @@ Hiermit versichere ich an Eides statt, dass die vorliegende Arbeit selbstständi

\noindent \@location, am \@date \hfill \@author
}
\fi
+6 −1
Changes for thesis/thesis.tex: 6 added lines, 1 removed line.
Original line number Diff line number Diff line
%\documentclass[proposal]{thesis} % use for a thesis proposal
\documentclass{thesis}

\usepackage{lipsum}
@@ -8,7 +9,11 @@
\author{Author}
\date{Date}
\location{Hamburg}
\supervisors{Supervisor 1 \and Supervisor 2}
\supervisors{
Supervisor 1\\ Institute for Data Engineering\\ TU Hamburg
\and
Supervisor 2\\ Institute for Data Engineering\\ TU Hamburg
}
\dedication{to the reader}

\addbibresource{references.bib}