Select Git revision
HsH-article.cls
-
Jan Wille authored
this happend when using `\include` (which produces the first clearpage) for the abstract (which clears the page when entering the env) as the chapter started inside the `\quotation`, both pageclears executed fully and an empty page was shipped to the pdf.
Jan Wille authoredthis happend when using `\include` (which produces the first clearpage) for the abstract (which clears the page when entering the env) as the chapter started inside the `\quotation`, both pageclears executed fully and an empty page was shipped to the pdf.
HsH-article.cls 21.42 KiB
%%
%% This is file `HsH-article.cls',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% HsH-classes.dtx (with options: `article,localisation')
%%
%% Copyright (C) 2024 by Jan Wille <mail@janiwlle.de>
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License (LPPL), either
%% version 1.3c of this license or (at your option) any later
%% version. The latest version of this license is in the file:
%%
%% http://www.latex-project.org/lppl.txt
%%
\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesClass{HsH-article}
[2024-08-10 3.03.dev0 HsH-class based on KOMA]
\let\HsHClassName\@currname
\def\HsHClassName@ParrentClass{%
scrartcl%
}
\RequirePackage{scrbase}
\RequirePackage{setspace}
\DefineFamily{HsH}
\DefineFamilyMember{HsH}
\newcommand{\HsH@Options@PassToParrent}[1]{%
\ClassInfoNoLine{\HsHClassName}{passing option to parrent class: #1}%
\PassOptionsToClass{#1}{\HsHClassName@ParrentClass}%
}
\newcommand{\HsH@Options@DeclareAlias}[3][HsH]{%
\DeclareOption{#2}{\FamilyExecuteOptions{#1}{#3}}%
}
\DefineFamilyKey{HsH}{fontfamily}{
\begingroup
\FamilySetNumerical{HsH}{parskip}{@tmp}{%
{sans}{0}, {sans-serif}{0},%
{roman}{1}, {serif}{1},%
}{#1}
\ifx\FamilyKeyState\FamilyKeyStateProcessed
\aftergroup\FamilyKeyStateProcessed
\ifcase\@tmp% 0
\endgroup
\renewcommand{\familydefault}{\sfdefault}
\if@atdocument\AfterKOMAoptions{\selectfont}\fi
\or% 1
\endgroup
\renewcommand{\familydefault}{\rmdefault}
\if@atdocument\AfterKOMAoptions{\selectfont}\fi
\else% should never be
\endgroup
\fi
\else
\endgroup
\FamilyKeyStateUnknownValue
\fi
}
\HsH@Options@DeclareAlias{sans}{fontfamily=sans}
\HsH@Options@DeclareAlias{roman}{fontfamily=roman}
\DefineFamilyKey{HsH}{linespacing}{
\begingroup
\FamilySetNumerical{HsH}{linespacing}{@tempa}{%
{single}{0},%
{onehalf}{1},%
{double}{2},%
}{#1}
\ifx\FamilyKeyState\FamilyKeyStateProcessed
\aftergroup\FamilyKeyStateProcessed
\ifcase\@tempa% 0
\endgroup
\if@atdocument\singlespacing\else\AtEndOfClass{\singlespacing}\fi
\or% 1
\endgroup
\if@atdocument\onehalfspacing\else\AtEndOfClass{\onehalfspacing\AfterTOCHead{\singlespacing}}\fi
\or% 2
\endgroup
\if@atdocument\doublespacing\else\AtEndOfClass{\doublespacing\AfterTOCHead{\singlespacing}}\fi
\else% should never be
\endgroup
\fi
\else
\endgroup
\FamilyKeyStateUnknownValue
\fi
}
\HsH@Options@DeclareAlias{singlespacing}{linespacing=single}
\HsH@Options@DeclareAlias{onehalfspacing}{linespacing=onehalf}
\HsH@Options@DeclareAlias{doublespacing}{linespacing=double}
\DefineFamilyKey{HsH}{parskip}{%
\begingroup
\FamilySetNumerical{HsH}{parskip}{@tempa}{%
{never+}{0},%
{never*}{1},%
}{#1}
\if@atdocument
\ClassError{\HsHClassName}{
option `parskip' can only be configured in preamble!
}
\fi
\ifx\FamilyKeyState\FamilyKeyStateProcessed
\aftergroup\FamilyKeyStateProcessed
\ifcase\@tempa% 0
\endgroup
\AtEndOfClass{\setparsizes{\z@}{\z@}{.3333\linewidth \@plus 1fil}}
\or% 1
\endgroup
\AtEndOfClass{\setparsizes{\z@}{\z@}{.25\linewidth \@plus 1fil}}
\else% should never be
\endgroup
\fi
\else
\endgroup
\HsH@Options@PassToParrent{parskip=#1}
\FamilyKeyStateProcessed
\fi
}
\def\HsH@opt@headheight{}
\FamilyStringKey{HsH}{headheight}{\HsH@opt@headheight}
\AtEndOfClass{%
\headheight=\HsH@opt@headheight%
}
\newif\if@HsH@option@abstract@show@keywords
\def\HsH@abstract@heading{%
\addsec*%
}
\DefineFamilyKey{HsH}{abstract}{%
\begingroup
\FamilySetNumerical{HsH}{abstract}{@tempa}{%
{keywords}{0},%
{nokeywords}{1},%
{totoc}{2},{toc}{2},%
{notoc}{3},{nottotoc}{3},%
}{#1}
\ifx\FamilyKeyState\FamilyKeyStateProcessed
\aftergroup\FamilyKeyStateProcessed
\ifcase\@tempa% 0
\endgroup
\@HsH@option@abstract@show@keywordstrue
\or% 1
\endgroup
\@HsH@option@abstract@show@keywordsfalse
\or% 2
\endgroup
\def\HsH@abstract@heading{%
\addsec%
}
\or% 3
\endgroup
\def\HsH@abstract@heading{%
\addsec*%
}
\else% should never be
\endgroup
\fi
\else
\endgroup
\fi
}
\DefineFamilyKey{HsH}{toc}{%
\begingroup
\FamilySetNumerical{HsH}{toc}{@tempa}{%
{totoc}{0},{toc}{0},%
{notoc}{1},{nottotoc}{1},%
{abstract}{2},%
{noabstract}{3},%
}{#1}
\ifx\FamilyKeyState\FamilyKeyStateProcessed
\aftergroup\FamilyKeyStateProcessed
\ifcase\@tempa% 0
\endgroup
\AtEndOfClass{\setuptoc{toc}{totoc}}
\or% 1
\endgroup
\AtEndOfClass{\unsettoc{toc}{totoc}}
\or% 2
\endgroup
\FamilyExecuteOptions{HsH}{abstract=totoc}
\or% 3
\endgroup
\FamilyExecuteOptions{HsH}{abstract=nottotoc}
\else% should never be
\endgroup
\fi
\else
\endgroup
\HsH@Options@PassToParrent{toc=#1}
\FamilyKeyStateProcessed
\fi
}
\DefineFamilyKey{HsH}{twoside}[semi]{%
\HsH@Options@PassToParrent{twoside=#1,BCOR=1cm}
\FamilyKeyStateProcessed
}
\def\HsH@opt@language{nil}
\FamilyStringKey{HsH}{language}{\HsH@opt@language}
\HsH@Options@DeclareAlias{english}{language=english}
\HsH@Options@DeclareAlias{german}{language=ngerman}
\HsH@Options@DeclareAlias{ngerman}{language=ngerman}
\def\HsH@opt@faculty{1}
\FamilyNumericalKey{HsH}{faculty}{HsH@opt@faculty}{%
{0}{1}, {none}{1}, {false}{1}, {off}{1},%
{1}{2}, {f1}{2},%
{2}{3}, {f2}{3},%
{3}{4}, {f3}{4},%
{4}{5}, {f4}{5},%
{5}{6}, {f5}{6},%
}
\HsH@Options@DeclareAlias{f1}{faculty=f1}
\HsH@Options@DeclareAlias{f2}{faculty=f2}
\HsH@Options@DeclareAlias{f3}{faculty=f3}
\HsH@Options@DeclareAlias{f4}{faculty=f4}
\HsH@Options@DeclareAlias{f5}{faculty=f5}
\FamilyBoolKey{HsH}{todos}{@todos}
\DefineFamilyKey{HsH}{@else@}{
\HsH@Options@PassToParrent{#1}
\FamilyKeyStateProcessed
}
\DeclareOption*{
\HsH@Options@PassToParrent{\CurrentOption}
}
\FamilyExecuteOptions{HsH}{%
fontfamily=sans-serif,
fontsize=11pt,
language=ngerman,
parskip=never+,
linespacing=single,
headheight=2.15\baselineskip,
toc=listof,
toc=bibliography,
abstract=keywords,
faculty=none,
}
\FamilyProcessOptions{HsH}\relax
\LoadClass{\HsHClassName@ParrentClass}
\RequirePackage[T1]{fontenc}
\RequirePackage{type1ec}
\RequirePackage[main=\HsH@opt@language]{babel}
\RequirePackage[autostyle=true]{csquotes}
\MakeOuterQuote{"}
\iflanguage{ngerman}{\RequirePackage{ziffer}}{}
\RequirePackage[hidelinks]{hyperref} % must load before `bookmarks'
\RequirePackage{bookmark}
\AtBeginDocument{
\hypersetup{
pdfinfo={
Title={\@title},
Author={\@author},
Subject={\@subject},
Keywords={\@keywords}
}
}
}
\RequirePackage[hypcap=true]{caption}
\RequirePackage{graphicx}
\RequirePackage{amsmath,amssymb,amsfonts}
\RequirePackage{enumitem}
\if@todos
\PassOptionsToPackage{svgnames}{xcolor}
\AtEndOfClass{\RequirePackage{xcolor}}
\RequirePackage[
textsize=small,
figwidth=.6\textwidth
]{todonotes}
\setuptodonotes{
backgroundcolor=orange!20!white,
linecolor=orange,
bordercolor=orange!60!white,
}
\else
\newcommand{\listoftodos}[1]{}
\newcommand{\todo}[2][]{}
\newcommand{\missingfigure}[2][]{}
\fi
\RequirePackage{xcolor}
\PassOptionsToPackage{
backend=biber,
bibwarn=true,
url=true,
isbn=false,
}{biblatex}
\AddToHook{package/biblatex/after}{
\renewcommand*{\mkbibacro}[1]{\MakeUppercase{#1}}
}
\PassOptionsToPackage{free-standing-units}{siunitx}
\AddToHook{package/siunitx/after}{
\sisetup{
tight-spacing=true,
per-mode=symbol,
exponent-mode=engineering,
round-mode=places,
round-precision=3,
}
\iflanguage{ngerman}{
\sisetup{output-decimal-marker={,}}
}{}
}
\RequirePackage{scrhack}
\AddToHook{package/listings/before}{\RequirePackage{xcolor}}
\AddToHook{package/listings/after}{
\lstset{
commentstyle=\color{gray},
keywordstyle=\color{FireBrick}\bfseries,
stringstyle=\color{DodgerBlue},
showstringspaces=false,
basicstyle=\ttfamily,
tabsize=4,
escapeinside={(*@}{@*)},
}
\RequirePackage{lstautogobble}\lstset{autogobble=true}
\iflanguage{ngerman}{
\lstset{literate={Ö}{{\"O}}1{Ä}{{\"A}}1{Ü}{{\"U}}1{ß}{{\ss}}1{ü}{{\"u}}1{ä}{{\"a}}1{ö}{{\"o}}1}
}{}
}
\PassOptionsToPackage{l3}{csvsimple}
\AddToHook{package/csvsimple/after}{
\csvstyle{every csv}{separator=semicolon}
}
\AddToHook{package/pgfplots/after}{
\usepgfplotslibrary{fillbetween}
\usetikzlibrary{patterns}
\pgfplotsset{
compat=1.16,
/pgf/number format/read comma as period,
tick label style={font=\tiny},
legend style={font=\footnotesize},
MyPlots/.style = { % Style for all plots
width=.6\textwidth,
grid=major,
grid style={loosely dotted,gray!50},
legend pos=outer north east,
FM1/.style = {blue, thick, mark=x, mark size=1.5,samples=100}, % Format 1
FM2/.style = {orange, thick, mark=*, mark size=1,samples=100}, % Format 2
FM3/.style = {green, thick, mark=square*, mark size=1,samples=100}, % Format 3
FM4/.style = {red, thick, mark=diamond*, mark size=1,samples=100}, % Format 4
FM5/.style = {pink, thick, mark=triangel*, mark size=1,samples=100},% Format 5
errBars/.style = {error bars/.cd, y dir=both, y explicit, % ermöglicht Fehlerbalken
error mark options={mark size=1pt,rotate=90}},
}
}
\iflanguage{ngerman}{
\pgfplotsset{/pgf/number format/use comma}
}{}
}
\AddToHook{package/pgfplotstable/after}{
\pgfplotstableset{
col sep=semicolon, % global seperator for csv files
}
}
\PassOptionsToPackage{
european,
EFvoltages,
straightvoltages,
betterproportions
}{circuitikz}
\AddToHook{package/circuitikz/after}{
\ctikzset{
font=\footnotesize,
bipole annotation style/.style={font=\tiny ,inner sep=1pt},
}
}
\AtBeginDocument{
\makeatletter
\InputIfFileExists{HsH-classes.cfg}{
\ClassInfo{\HsHClassName}{Local config file HsH-classes.cfg used.}
}{
\ClassInfo{\HsHClassName}{No HsH-classes.cfg!! I hope you configered it yourself.}
}
\makeatother
}
\newcommand{\HsHlogoPath}{HSH-Logo.pdf}
\newcommand{\HsHlogoPage}{\HsH@opt@faculty}
\newcommand{\includeHsHlogohere}[1][5cm]{
\IfFileExists{\HsHlogoPath}{
\includegraphics[width=#1,page=\HsHlogoPage]{\HsHlogoPath}
}{
\ClassError{\HsHClassName}{\HsHlogoPath\space not found!}{
The HsH Logo is necasary for the titlepage! Try putting it next to your source file or use \HsHlogoPath to define the file location
}
}
}
\renewcommand{\title}[2][]{
\gdef\@title{#2}
\gdef\@shorttitle{#1}
}
\def\@shorttitle{\@empty}
\def\gdef@with@and@as@comma#1#2{{\def\and{,}\xdef#1{#2}}}
\renewcommand{\author}[1]{\gdef@with@and@as@comma\@author{#1}}
\let\@author\@empty
\newcommand{\matrikelnr}[1]{\gdef@with@and@as@comma\@matrikelnr{#1}}
\def\@matrikelnr{\@empty}
\newcommand{\professor}[1]{\gdef\@professor{#1}}
\def\@professor{\@empty}
\newcommand{\firstexaminer}[1]{\gdef\@firstexaminer{#1}}
\def\@firstexaminer{\@empty}
\newcommand{\secondexaminer}[1]{\gdef\@secondexaminer{#1}}
\def\@secondexaminer{\@empty}
\newcommand{\keywords}[1]{\gdef\@keywords{#1}}
\def\@keywords{\@empty}
\RequirePackage{pgffor}
\newcommand{\declarationofauthorship}[1][b]{
\if#1b
\vspace*{\fill}
\hrule
\else\if#1t
\vspace*{2em}
\else
\ClassError{\HsHClassName}{Wrong Parameter for `\declarationofauthorship'}{
`\string\declarationofauthorship' only accepts `t' and `b' as parameters.
}
\fi\fi
\vskip 3em
{\centering\bfseries\usekomafont{section}{\decofauthname}\par}
\vskip 3em
\decofauthtext\par
\begingroup
\renewcommand{\thanks}{\sbox0}
\raggedleft
\foreach \tmp@ in \@author {
\if\tmp@\empty\else
\hskip 1em \parbox{4cm}{
\vskip 4em
\hrule\vskip 4pt
\raggedleft\footnotesize\tmp@
}%
\fi
}\par
\endgroup
}
\newif\if@singleauthor
\AtBeginDocument{
\begingroup
\newcount\count@
\count@=\z@
\@for\tmp@:=\@author\do{\advance\count@\@ne}
\ifnum\count@>\@ne\global\@singleauthorfalse\else\global\@singleauthortrue\fi
\endgroup
}
\newcommand{\ifsingleauthor}[2]{\if@singleauthor#1\else#2\fi}
\def\declarationAuthorship{%
\ClassWarning{\HsHClassName}{%
Command \string\declarationAuthorship\space is deprecate.\MessageBreak
Replace it with \string\declarationofauthorship.
}%
\declarationofauthorship%
}
\newlist{checklist}{itemize}{2}
\setlist[checklist]{label=$\square$}
\newcommand{\abs}[1]{\ensuremath{\left\vert#1\right\vert}}
\def\@subinrm#1{\sb{\mathrm{#1}}}
{\catcode`\_=13 \global\let_=\@subinrm}
\newcommand\upsubscripts{\catcode`\_=12}
\newcommand\normalsubscripts{\catcode`\_=8}
\RequirePackage{lmodern}
\areaset[current]{0.75\paperwidth}{0.8\paperheight}
\if@todos
\addtolength\paperwidth{5cm}
\addtolength\marginparwidth{5cm}
\fi
\renewcommand{\fps@figure}{h!t}
\renewcommand{\fps@table}{h!t}
\g@addto@macro\@floatboxreset\centering
\setcapwidth{0.8\textwidth}
\defcaptionname{english}\figurename{Fig.}
\defcaptionname{german,ngerman}\figurename{Abb.}
\defcaptionname{english}\tablename{Tab.}
\defcaptionname{german,ngerman}\tablename{Tab.}
\AtBeginDocument{
\makeatletter
\@ifpackageloaded{subfigure}{
\let\subfigureautorefname\figureautorefname
}{}%
\makeatother
}
\renewcommand{\labelitemi}{\raisebox{.3ex}{\scalebox{0.7}{$\bullet$}}}
\renewcommand{\labelitemii}{\raisebox{.3ex}{\scalebox{0.7}{$\circ$}}}
\renewcommand{\labelitemiii}{\raisebox{-.1ex}{\scalebox{1.3}{$\cdot$}}}
\renewcommand{\labelitemiv}{\raisebox{.1ex}{-}}
\renewenvironment{abstract}{
\begingroup
\edef\raggedsection{\raggedsection%
\hskip\leftmargini}
\HsH@abstract@heading{\abstractname}
\endgroup
\quotation
\setparsizes{\z@}{\z@}{.25\linewidth \@plus 1fil}\selectfont
}{%
\ifx\@keywords\@empty\else\if@HsH@option@abstract@show@keywords
\par\bigskip
\noindent\textbf{\keywordsname}\hskip 2em\@keywords
\fi\fi\par
\endquotation
}
\upsubscripts
\raggedbottom
\RequirePackage{scrlayer-scrpage}
\FamilyOptions{KOMA}{headsepline,singlespacing=true}
\let\layercontentsmeasure\relax
\newpagestyle{HsHheadings}{
{
\parbox[b]{\sls@headwidth}{
\LaTeXraggedright
\ifx\@shorttitle\@empty\@title\else\@shorttitle\fi
}%
}
{
\parbox[b]{\sls@headwidth}{
\LaTeXraggedleft
\leftmark
}%
}
{
\parbox[b]{.45\sls@headwidth}{
\LaTeXraggedright
\ifx\@shorttitle\@empty\@title\else\@shorttitle\fi
}%
\hfill
\parbox[b]{.45\sls@headwidth}{
\LaTeXraggedleft
\headmark
}%
}
(\textwidth,.1pt)
}{
{\pagemark}
{\hfill\pagemark}
{\hfill\pagemark}
}
\clearpairofpagestyles
\ofoot*{\pagemark}
\pagestyle{HsHheadings}
\automark{section}
\renewcommand\maketitle[1][c]{
\if#1l\@maketitle{#1}\else%
\if#1c\@maketitle{#1}\else%
\if#1r\@maketitle{#1}\else%
\ClassWarning{\HsHClassName}{unkown option for \maketitle}
\thispagestyle{empty}\null\clearpage
\fi\fi\fi
}
\newtoks\@tabtoks
\newcommand\addtabtoks[1]{\global\@tabtoks\expandafter{\the\@tabtoks#1}}
\newcommand\eaddtabtoks[1]{\edef\mytmp{#1}\expandafter\addtabtoks\expandafter{\mytmp}}
\newcommand*\printtabtoks{\the\@tabtoks}
\addtokomafont{publishers}{\normalsize}
\g@addto@macro\titlepage{\singlespacing}
\renewcommand*\@maketitle[1]{
\expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
\else
\def\and{%
\end{tabular}
\hskip 1em \@plus.17fil
\begin{tabular}[t]{c}%
}
\fi
\par
\ifx\@uppertitleback\@empty\else
\ClassWarning{\KOMAClassName}{%
non empty \string\uppertitleback\space ignored
by \string\maketitle\MessageBreak
in `titlepage=false' mode%
}
\fi
\ifx\@lowertitleback\@empty\else
\ClassWarning{\KOMAClassName}{%
non empty \string\lowertitleback\space ignored
by \string\maketitle\MessageBreak
in `titlepage=false' mode%
}
\fi
\begingroup
\let\titlepage@restore\relax
\renewcommand*\thefootnote{\@fnsymbol\c@footnote}%
\let\@oldmakefnmark\@makefnmark
\renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
\next@tdpage
\ifx\@extratitle\@empty
\ifx\@frontispiece\@empty\else \mbox{}\fi
\else
\@makeextratitle
\fi
\ifx\@frontispiece\@empty
\ifx\@extratitle\@empty\else\next@tdpage\fi
\else
\next@tpage
\@makefrontispiece
\next@tdpage
\fi
\global\@topnum=\z@
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
\vspace*{1cm}
\begin{minipage}[t]{\textwidth}%
\ifx\@titlehead\@empty \else
\usekomafont{titlehead}{\@titlehead}%
\fi
\hfill
\raisebox{0pt}[\ht\strutbox][\dp\strutbox]{\includeHsHlogohere}
\end{minipage}
\raisebox{10pt}{\rule{\textwidth}{0.5pt}}
\null
\vskip 2em
\begingroup
\if#1c\centering\fi
\if#1r\raggedleft\fi
\ifx\@subject\@empty\else
{\usekomafont{subject}{\@subject\par}}
\vskip 1.5em
\fi
{\usekomafont{title}{\huge\@title\par}}
\vskip .5em
{\ifx\@subtitle\@empty\else\usekomafont{subtitle}\@subtitle\par\fi}
\vskip 4em
{\ifx\@matrikelnr\@empty
\if\@author\@empty\else\usekomafont{author}{
\parbox{\dimexpr\linewidth}{
\if#1c\centering\fi
\if#1r\raggedleft\fi
\@author
}
}\fi
\else
\if\@author\@empty\else
% sneeky comma needed after \@matrikelnr to deal with single item lists
\foreach \x [count=\i,evaluate=\i as \y using {{\@matrikelnr,}[\i-1]}] in \@author {\eaddtabtoks{\x & \y\protect\\}}
\usekomafont{author}{
\def\arraystretch{1.2}
\if#1l\begin{tabular}{@{}l l}\fi
\if#1c\begin{tabular}{l l}\fi
\if#1r\begin{tabular}{r r@{}}\fi
\printtabtoks
\end{tabular}
}%
\fi
\fi}
\vskip 1em
{\usekomafont{date}{\@date\par}}
\vskip 1em
\usekomafont{publishers}{
\def\arraystretch{1.2}
\if#1l\begin{tabular}{@{}l l}\fi
\if#1c\begin{tabular}{l l}\fi
\if#1r\begin{tabular}{r r@{}}\fi
\if\@professor\@empty\else\textbf{\professorname:}&\@professor\\\fi
\if\@firstexaminer\@empty\else\textbf{\firstexaminername:}&\@firstexaminer\\\fi
\if\@secondexaminer\@empty\else\textbf{\secondexaminername:}&\@secondexaminer\\\fi
\end{tabular}
}
\ifx\@dedication\@empty\else
\vskip 2em
{\usekomafont{dedication}{\@dedication \par}}%
\fi
\par
\endgroup
\vskip 2em
\ifx\titlepagestyle\@empty\else\thispagestyle{\titlepagestyle}\fi
\@thanks\global\let\@thanks\@empty
\endgroup
\setcounter{footnote}{0}
\expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
\let\thanks\relax
\let\maketitle\relax
\let\@maketitle\relax
\global\let\@thanks\@empty
\global\let\@author\@empty
\global\let\@date\@empty
\global\let\@title\@empty
\global\let\@subtitle\@empty
\global\let\@extratitle\@empty
\global\let\@frontispiece\@empty
\global\let\@titlehead\@empty
\global\let\@subject\@empty
\global\let\@publishers\@empty
\global\let\@uppertitleback\@empty
\global\let\@lowertitleback\@empty
\global\let\@dedication\@empty
\global\let\@matrikelnr\@empty
\global\let\@professor\@empty
\global\let\author\relax
\global\let\title\relax
\global\let\extratitle\relax
\global\let\titlehead\relax
\global\let\subject\relax
\global\let\publishers\relax
\global\let\uppertitleback\relax
\global\let\lowertitleback\relax
\global\let\dedication\relax
\global\let\date\relax
\global\let\matrikelnr\relax
\global\let\professor\relax
\fi
\global\let\and\relax
}
\defcaptionname{german,ngerman}\abstractname{Abstract}
\newcaptionname{english}\professorname{Professor}
\newcaptionname{german,ngerman}\professorname{Professor(in)/Lehrbeauftragte(r)}
\newcaptionname{english}\firstexaminername{First examiner}
\newcaptionname{german,ngerman}\firstexaminername{Erstpr{\"u}fer(in)}
\newcaptionname{english}\secondexaminername{Second examiner}
\newcaptionname{german,ngerman}\secondexaminername{Zweitpr{\"u}fer(in)}
\newcaptionname{english}\decofauthname{Declaration of Authorship}
\newcaptionname{german,ngerman}\decofauthname{Selbstst{\"a}ndigkeitserkl{\"a}rung}
\newcaptionname{english}\decofauthtext{%
\ifsingleauthor{I}{We} hereby certify that the work \ifsingleauthor{I}{we}
\ifsingleauthor{am}{are} submitting is entirely of \ifsingleauthor{my}{our}
own making except where otherwise indicated. \ifsingleauthor{I}{We}
\ifsingleauthor{am}{are} aware of regulations concerning plagiarism,
including disciplinary actions that may result from it. Any use of the
works of any other author, in any form, is properly acknowledged at
their point of use.
}
\newcaptionname{german,ngerman}\decofauthtext{%
Hiermit best{\"a}tige\ifsingleauthor{}{n} \ifsingleauthor{ich}{wir},
dass die folgende Arbeit eigenst{\"a}ndig von \ifsingleauthor{mir}{uns}
allein erstellt und unter Ber{\"u}cksichtigung der zur Verf{\"u}gung
gestellten Aufgabenstellung sowie dem Arbeitsmaterial unter Angabe aller
verwendeten Quellen erarbeitet wurde. Die Regelungen und Konsequenzen
eines Plagiats, inklusive disziplinarischer Ma{\ss}nahmen, sind
\ifsingleauthor{mir}{uns} bewusst. Insbesondere wurden alle Zitate und
gedanklichen {\"U}bernahmen als solche kenntlich gemacht.
}
\newcaptionname{english}\keywordsname{Keywords}
\newcaptionname{german,ngerman}\keywordsname{Schl{\"u}sselw{\"o}rter}
\endinput
%%
%% End of file `HsH-article.cls'.