655 lines
20 KiB
TeX
655 lines
20 KiB
TeX
\ProvidesClass{HMA}[2023/09/07 v 0.3 Thesis Template]
|
||
|
||
\RequirePackage{etoolbox}
|
||
\PassOptionsToPackage{internalonly}{scrbase}
|
||
\def\@clearglobaloption#1{%
|
||
\def\@tempa{#1}%
|
||
\def\@tempb{\@gobble}%
|
||
\@for\next:=\@classoptionslist\do
|
||
{\ifx\next\@tempa
|
||
\message{Cleared option \next\space from global list}%
|
||
\else
|
||
\edef\@tempb{\@tempb,\next}%
|
||
\fi}%
|
||
\let\@classoptionslist\@tempb
|
||
\expandafter\ifx\@tempb\@gobble
|
||
\let\@classoptionslist\@empty
|
||
\fi}
|
||
|
||
|
||
\newif\ifpapier
|
||
\newif\ifdigital
|
||
\newif\ifen
|
||
\newif\ifcclicense
|
||
\newif\ifhslicense
|
||
\newif\ifstudlicense
|
||
\newif\ifsperrvermerk
|
||
\newif\ifgender
|
||
\newif\ifsourcecode
|
||
\newif\ifsymbols
|
||
\newif\ifglossar
|
||
\newif\iftc
|
||
|
||
|
||
|
||
%\DeclareOption{papier}{\papiertrue\digitalfalse\@clearglobaloption{papier}}
|
||
\DeclareOption{de}{\PassOptionsToPackage{english,main=ngerman}{babel}\enfalse} % Deutsche Sprachunterstützung
|
||
\DeclareOption{en}{\PassOptionsToPackage{english}{babel}\entrue} % Englische Sprachunterstützung
|
||
\DeclareOption{papier}{\papiertrue\digitalfalse}
|
||
\DeclareOption{digital}{\digitaltrue\papierfalse}
|
||
%Veröffentlichung und Sperrvermerk
|
||
\DeclareOption{opensource}{\cclicensetrue\hslicensetrue\sperrvermerkfalse}
|
||
\DeclareOption{hs}{\cclicensefalse\hslicensetrue\sperrvermerkfalse}
|
||
\DeclareOption{stud}{\cclicensefalse\hslicensefalse\sperrvermerkfalse}
|
||
\DeclareOption{vertraulich}{\cclicensefalse\hslicensefalse\sperrvermerktrue}
|
||
|
||
%Genderhinweis
|
||
\DeclareOption{gender}{\gendertrue}
|
||
\DeclareOption{nogender}{\genderfalse}
|
||
%Listingsverzeichnis ausgeben
|
||
\DeclareOption{sourcecode}{\sourcecodetrue}
|
||
\DeclareOption{nosourcecode}{\sourcecodefalse}
|
||
%Symbolverzeichnis ausgeben
|
||
\DeclareOption{symbole}{\symbolstrue}
|
||
\DeclareOption{nosymbole}{\symbolsfalse}
|
||
%Glossar ausgeben
|
||
\DeclareOption{glossar}{\glossartrue}
|
||
\DeclareOption{noglossar}{\glossarfalse}
|
||
%Track Changes
|
||
\DeclareOption{tc}{\tctrue}
|
||
\DeclareOption{notc}{\tcfalse}
|
||
|
||
|
||
%\newtoggle{papier}
|
||
|
||
\ExecuteOptions{en, papier, digital, publizieren, sperrvermerk, gender}
|
||
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrbook}}
|
||
|
||
%% Process given options
|
||
\ProcessOptions\relax
|
||
|
||
|
||
\LoadClass[%
|
||
open=right, % Kapitel darf nur auf rechten Seite beginnen
|
||
a4paper, % DIN-A4-Papier
|
||
fontsize=12pt, % Schriftgöße
|
||
headings=small, % Kleine Überschriften
|
||
headsepline=true, % Trennlinie am Kopf der Seite
|
||
footsepline=false, % Keine Trennlinie am Fuß der Seite
|
||
bibliography=totoc, % Literaturverzeichnis in das Inhaltsverzeichnis aufnehmen
|
||
DIV=7, % Verhältnis der Ränder zum bedruckten Bereich
|
||
chapterprefix=true, % Kapitel x vor dem Kapitelnamen
|
||
cleardoublepage=plain,
|
||
numbers=noenddot, % Keine Endpunkte bei der Überschriftennummerierung
|
||
listof=totoc %Einträge ins Inhaltsverzeichnis aufnehmen
|
||
]{scrbook}
|
||
|
||
\RequirePackage{blindtext}
|
||
\RequirePackage{xparse}
|
||
|
||
|
||
|
||
%% Diese Option MUSS!! vor Geometry stehen, da sonst das Layout der Seitenränder durch KOMAOptions überschrieben wird!
|
||
%%Abgabe in Papier oder digital
|
||
\ifpapier
|
||
\newcommand{\hsmafenster}{4mm}
|
||
\KOMAoptions{twoside=true}
|
||
|
||
\else%
|
||
\newcommand{\hsmafenster}{0mm}
|
||
\KOMAoptions{twoside=false}
|
||
\fi%
|
||
|
||
|
||
|
||
\RequirePackage[bottom=40mm,left=30mm,right=30mm,top=30mm]{geometry} % Ränder ändern
|
||
\RequirePackage{babel}
|
||
\RequirePackage[hang,font={sf,footnotesize},labelfont={footnotesize,bf}]{caption} % Beschriftungen
|
||
\RequirePackage{zref-totpages}
|
||
|
||
% Schriftarten für PDFLaTeX und LuaTex
|
||
\RequirePackage{iftex}
|
||
\ifpdftex% Unterstützung für PDFTeX
|
||
\RequirePackage{tgtermes} % Tex Gyre Termes (qtm (Times) als Font für Fließtext)
|
||
\RequirePackage[utf8]{inputenc} % Dateien in UTF-8 benutzen
|
||
\RequirePackage[T1]{fontenc} % Zeichenkodierung
|
||
|
||
|
||
|
||
\RequirePackage{morewrites} % Verhindert Fehlermeldung: No more writes
|
||
\RequirePackage[scaled]{helvet} % Schrift Helvetia laden
|
||
\RequirePackage{amssymb} % Mathematische Symbole
|
||
|
||
%% Graphiken als pdf einfügen
|
||
\pdfoptionpdfminorversion=8
|
||
|
||
\else\ifluatex
|
||
%LuaTex erwartet standardmäßig utf8
|
||
\RequirePackage{fontspec} %Font Unterstützung für LuaTex, welche das Laden von OpenType fonts erlaubt. Fonts müssen im OS verfügbar sein.
|
||
\defaultfontfeatures{Ligatures=TeX}
|
||
\RequirePackage{unicode-math}
|
||
\setromanfont[
|
||
Extension=.otf,
|
||
UprightFont={*-Regular},
|
||
BoldFont={*-Bold},
|
||
ItalicFont={*-Italic},
|
||
BoldItalicFont={*-BoldItalic}
|
||
]{texgyretermes}
|
||
|
||
\setsansfont[
|
||
Scale=MatchLowercase,% or MatchUppercase
|
||
Extension=.otf,
|
||
UprightFont=*-regular,
|
||
ItalicFont=*-italic,
|
||
BoldFont=*-bold,
|
||
BoldItalicFont=*-bolditalic,
|
||
]{texgyreheros}
|
||
|
||
\fi\fi
|
||
|
||
\RequirePackage[headsepline]{scrlayer-scrpage}
|
||
|
||
% Einstellungen für Schriftarten
|
||
\setkomafont{pagehead}{\normalfont\sffamily}
|
||
\setkomafont{pagenumber}{\normalfont\sffamily}
|
||
\setkomafont{paragraph}{\sffamily\bfseries\small}
|
||
\setkomafont{subsubsection}{\sffamily\itshape\bfseries\small}
|
||
\addtokomafont{footnote}{\footnotesize}
|
||
\setkomafont{chapter}{\sffamily\bfseries\LARGE}
|
||
|
||
% Wichtige Abstände
|
||
\setlength\parindent{0pt}
|
||
\clubpenalty = 10000 % Keine "Schusterjungen"
|
||
\widowpenalty = 10000 % Keine "Hurenkinder"
|
||
\displaywidowpenalty = 10000 % Keine "Hurenkinder"
|
||
% Siehe: https://de.wikipedia.org/wiki/Hurenkind_und_Schusterjunge
|
||
|
||
|
||
\RequirePackage{scrhack} % tocbasic Warnung entfernen
|
||
|
||
%Fortlaufende Nummerierung der Fußzeile d.h. wenn die Fußnoten nicht bei jedem Kapitel wieder bei 1 beginnen sollen.
|
||
\counterwithout{footnote}{chapter}
|
||
|
||
|
||
\RequirePackage[useregional=numeric]{datetime2} % Datumsformat einstellen
|
||
\RequirePackage{ifthen} % Logische Bedingungen mit ifthenelse
|
||
\RequirePackage{calc} % Berechnung von Positionen
|
||
\RequirePackage{setspace} % Abstände korrigieren
|
||
\RequirePackage{graphicx} % Bilder einbinden
|
||
\RequirePackage{rotating} % Seiten drehen
|
||
\RequirePackage[inline]{enumitem} % eigene Aufzählungen verwenden
|
||
|
||
|
||
|
||
|
||
\RequirePackage[dvipsnames,svgnames,hyperref,table]{xcolor} % Unterstützung für Farben
|
||
|
||
% Farben definieren
|
||
\definecolor{HMA-linkblue}{RGB}{0, 0, 100}
|
||
\definecolor{HMA-linkblack}{RGB}{0, 0, 0}
|
||
\definecolor{HMA-comment}{RGB}{63, 127, 95}
|
||
\definecolor{HMA-darkgreen}{RGB}{14, 144, 102}
|
||
\definecolor{HMA-darkblue}{RGB}{0,0,168}
|
||
\definecolor{HMA-darkred}{RGB}{128,0,0}
|
||
\definecolor{HMA-javadoccomment}{RGB}{0,0,240}
|
||
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
|
||
|
||
|
||
\RequirePackage{amsmath} % Mathematische Formeln
|
||
\RequirePackage{amsfonts} % Mathematische Zeichensätze
|
||
\RequirePackage{siunitx} % Darstellung von Einheiten
|
||
|
||
\RequirePackage[inline]{enumitem} % Eigene Listen definieren können und diese auch innerhalb des Textes nutzen können
|
||
|
||
\RequirePackage{tikz}
|
||
\usetikzlibrary{intersections,decorations.text}
|
||
|
||
|
||
\RequirePackage{url}
|
||
|
||
|
||
\expandafter\def\expandafter\UrlBreaks\expandafter{\UrlBreaks% save the current one
|
||
\do\a\do\b\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j%
|
||
\do\k\do\l\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t%
|
||
\do\u\do\v\do\w\do\x\do\y\do\z\do\A\do\B\do\C\do\D%
|
||
\do\E\do\F\do\G\do\H\do\I\do\J\do\K\do\L\do\M\do\N%
|
||
\do\O\do\P\do\Q\do\R\do\S\do\T\do\U\do\V\do\W\do\X%
|
||
\do\Y\do\Z\do\/\do-}
|
||
|
||
|
||
\RequirePackage[backend=biber,
|
||
sorting = none,
|
||
%sortlocale=\hsmasortlocale, % Sortierung der Einträge für Deutsch
|
||
autocite=inline, % regelt Aussehen für \autocite
|
||
% inline: Zitat in Klammern (\parancite)
|
||
% footnote: Zitat in Fußnoten (\footcite)
|
||
% plain: Zitat direkt ohne Klammern (\cite)
|
||
style=numeric, % Legt den Stil für die Angabe im Literaturverzeichnis fest
|
||
% numeric: Quellen mit Zahlen [1]
|
||
% ieee: Quellen mit Zahlen [1], nach IEEE-Regeln
|
||
% alphabetic: Quellen als Kürzel und Jahr [Ein05]
|
||
% authoryear: Quellen Author und Jahr [Einstein (1905)]
|
||
citestyle=numeric-comp, % Legt den Stil für die Zitate im Text fest
|
||
% numeric: Zitate mit Zahlen [1]
|
||
% numeric-comp: Kompakte Variante von numeric. [1, 2, 3] wird zu [1-3]
|
||
% ieee: Zitate mit Zahlen [1], nach IEEE-Regeln
|
||
% alphabetic: Zitate als Kürzel und Jahr [Ein05]
|
||
% authoryear: Zitate Author und Jahr [Einstein (1905)]
|
||
hyperref=true, % Hyperlinks für Zitate
|
||
maxbibnames=999, % Maximale Anzahl der Autoren-Namen im Literaturverzeichnis
|
||
maxcitenames=2, % Maximale Anzahl von Namen in einem Zitat
|
||
mincitenames=1 % Minimale Anzahl von Namen in einem Zitat
|
||
]{biblatex} % Literaturverwaltung mit BibLaTeX
|
||
|
||
|
||
% Trennung von URLs im Literaturverzeichnis (große Werte [> 10000] verhindern die Trennung)
|
||
\defcounter{biburlnumpenalty}{10} % Strafe für Trennung in URL nach Zahl
|
||
\defcounter{biburlucpenalty}{500} % Strafe für Trennung in URL nach Großbuchstaben
|
||
\defcounter{biburllcpenalty}{500} % Strafe für Trennung in URL nach Kleinbuchstaben
|
||
|
||
|
||
|
||
% Index erzeugen
|
||
\RequirePackage{imakeidx}%
|
||
|
||
\makeindex[%
|
||
options={-g -s hmaindex.ist},%
|
||
intoc=true]%
|
||
|
||
|
||
|
||
\RequirePackage{array}
|
||
\RequirePackage{tabularx} % Spezielle Tabellen
|
||
\RequirePackage{longtable} % Tabellen, die mehr als eine Seite umfassen
|
||
\RequirePackage{booktabs} % Korrekter Tabellensatz
|
||
|
||
|
||
% Tabellenzellen mit mehreren Zeilen
|
||
\newcolumntype{L}{>{\raggedright\arraybackslash}X}
|
||
\newcolumntype{s}{>{\hsize=.3\hsize}l}
|
||
\newcolumntype{F}{>{\hsize=\dimexpr2\hsize+2\tabcolsep+\arrayrulewidth\relax}X}
|
||
|
||
|
||
|
||
\RequirePackage{harveyballs} % Harveyballs
|
||
|
||
|
||
|
||
|
||
\RequirePackage[acronym,symbols, toc]{glossaries}
|
||
|
||
\renewcommand*{\glspostdescription}{}
|
||
|
||
\renewcommand{\glsnamefont}[1]{\textbf{#1}} % Fette Schrift für Abkürzungen
|
||
\setlength\LTleft{0pt} %Linksbündige Formatierung
|
||
\setlength\LTright{0pt}
|
||
\setlength\glsdescwidth{0.8\hsize}
|
||
|
||
\newglossary[slg]{symbolslist}{syi}{syg}{Symbolslist} % Erstellen Symbolverzeichnis
|
||
\glsaddkey{unit}{\glsentrytext{\glslabel}}{\glsentryunit}{\GLsentryunit}{\glsunit}{\Glsunit}{\GLSunit}
|
||
|
||
\newglossarystyle{symbunitlong}{%
|
||
\setglossarystyle{long3col}% base this style on the list style
|
||
\renewenvironment{theglossary}{% Change the table type --> 3 columns
|
||
\begin{longtable}{lp{0.6\glsdescwidth}>{\centering\arraybackslash}p{2cm}}}%
|
||
{\end{longtable}}%
|
||
%
|
||
\renewcommand*{\glossaryheader}{% Change the table header
|
||
\bfseries \hsmasymbsign & \bfseries \hsmasymbdescription & \bfseries \hsmasymbunit \\
|
||
\hline
|
||
\endhead}
|
||
\renewcommand*{\glossentry}[2]{% Change the displayed items
|
||
\glstarget{##1}{\glossentryname{##1}} %
|
||
& \glossentrydesc{##1}% Description
|
||
& \glsunit{##1} \tabularnewline
|
||
}
|
||
}
|
||
|
||
\makeglossaries
|
||
|
||
|
||
|
||
\RequirePackage{listings} % Quelltexte
|
||
%%% Das Paket listings kann keine Multibyte-codierten Zeichen verarbeiten. -> LuaTex :-)
|
||
% Einstellungen für Quelltexte
|
||
|
||
|
||
% Richtige Titel für das Quellcodeverzeichnis
|
||
\renewcommand\lstlistingname{\hsmalistingcaption}
|
||
\renewcommand\lstlistlistingname{\hsmalistings}
|
||
|
||
\lstset{
|
||
backgroundcolor=\color{backcolour},
|
||
xleftmargin=0.4cm,
|
||
basicstyle=\footnotesize\ttfamily,
|
||
keywordstyle=\color{HMA-darkgreen},
|
||
identifierstyle=\color{HMA-darkblue},
|
||
commentstyle=\color{HMA-comment},
|
||
stringstyle=\color{HMA-darkred},
|
||
tabsize=2,
|
||
lineskip={2pt},
|
||
columns=flexible,
|
||
inputencoding=utf8,
|
||
captionpos=b,
|
||
breakautoindent=true,
|
||
breakindent=2em,
|
||
breaklines=true,
|
||
prebreak=,
|
||
postbreak=,
|
||
numbers=left,
|
||
numberstyle=\tiny,
|
||
numbersep=5pt,
|
||
showspaces=false, % Keine Leerzeichensymbole
|
||
showtabs=false, % Keine Tabsymbole
|
||
showstringspaces=false,% Leerzeichen in Strings
|
||
morecomment=[s][\color{HMA-javadoccomment}]{/**}{*/},
|
||
literate={Ö}{{\"O}}1 {Ä}{{\"A}}1 {Ü}{{\"U}}1 {ß}{{\ss}}2 {ü}{{\"u}}1 {ä}{{\"a}}1 {ö}{{\"o}}1
|
||
}
|
||
|
||
\iftc
|
||
\RequirePackage[commandnameprefix=always,todonotes={textsize=tiny}]{changes}
|
||
|
||
\definechangesauthor[name={Betreuer 1}, color=orange]{B1}
|
||
\definechangesauthor[name={Betreuer 2}, color=blue]{B2}
|
||
\definechangesauthor[name={Author}, color=green]{A}
|
||
\else
|
||
\RequirePackage[commandnameprefix=always,todonotes={textsize=tiny}, final]{changes}
|
||
|
||
\definechangesauthor[name={Betreuer 1}, color=orange]{B1}
|
||
\definechangesauthor[name={Betreuer 2}, color=blue]{B2}
|
||
\definechangesauthor[name={Author}, color=green]{A}
|
||
\fi
|
||
|
||
\RequirePackage{pdfpages}
|
||
|
||
|
||
|
||
% Datum auf Titelblatt
|
||
\makeatletter
|
||
\newcommand{\hsmajahr}{%
|
||
\@dtm@year
|
||
}
|
||
|
||
\DTMsavedate{Abgabe}{\hsmaabgabedatum} %Umwandlung des Datums in DateTimeFormat
|
||
\newcommand{\hsmadatum}{\DTMusedate{Abgabe}}
|
||
|
||
|
||
% Abschlüsse
|
||
% *******************************************************************
|
||
\newcommand{\hsmabsc}{Bachelor of Science (B.Sc.)}
|
||
\newcommand{\hsmaba}{Bachelor of Arts (B.A.)}
|
||
\newcommand{\hsmamaster}{Master of Science (M.Sc.)}
|
||
\newcommand{\hsmamastera}{Master of Arts (M.A.)}
|
||
\newcommand{\hsmamasterba}{Master of Business Administration (MBA)}
|
||
\newcommand{\hsmakoerperschaften}{University of Applied Sciences Mannheim}
|
||
\newcommand{\hsmakoerperschaftde}{Technische Hochschule Mannheim}
|
||
\newcommand{\hsmakoerperschaftdegenitiv}{Technischen Hochschule Mannheim}
|
||
|
||
%%Dokumentinformationen
|
||
\newcommand{\hsmaabstracttitlede}{Abstrakt}
|
||
\newcommand{\hsmaabstracttitleen}{Abstract}
|
||
|
||
\newcommand{\hsmaautorbib}{\hsmaautornname, \hsmaautorvname} % Autor Nachname, Vorname
|
||
\newcommand{\hsmaautor}{\hsmaautorvname \ \hsmaautornname} % Autor Vorname Nachname
|
||
|
||
|
||
|
||
%%Sprachdefinitionen
|
||
\ifen
|
||
\newcommand{\hsmatyp}{\hsmatypen}%
|
||
\newcommand{\hsmathesistype}{for the acquisition of the academic degree \hsmagrad}%
|
||
\newcommand{\hsmakoerperschaft}{\hsmakoerperschaften}%
|
||
\newcommand{\hsmastudiengangname}{Course of Studies: \hsmastudienganglang}%
|
||
\newcommand{\hsmastudienganglang}{\hsmastudienganglangen}%
|
||
\newcommand{\hsmatitel}{\hsmatitelen}%
|
||
\newcommand{\hsmatutor}{Tutors}
|
||
\newcommand{\hsmafakultaetlang}{\hsmafakultaetlangen}%
|
||
\newcommand{\hsmalistoftables}{List of Tables}%
|
||
\newcommand{\hsmalistoffigures}{List of Figures}%
|
||
\newcommand{\hsmalistings}{Listings}%
|
||
\newcommand{\hsmalistingcaption}{Source Code}% or Listing?
|
||
\newcommand{\hsmaindex}{Index}%
|
||
\newcommand{\hsmasymbsign}{Sign}
|
||
\newcommand{\hsmasymbdescription}{Description}
|
||
\newcommand{\hsmasymbunit}{Unit}
|
||
\newcommand{\hsmaabbreviations}{List of Abbreviations}%
|
||
\newcommand{\hsmalistofsymbols}{List of Symbols}
|
||
\newcommand{\hsmaglossary}{Glossary}
|
||
\newcommand{\hsmasnowcardanforderung}{Requirement}%
|
||
\newcommand{\hsmasnowcardno}{\#}%
|
||
\newcommand{\hsmasnowcardart}{Type}%
|
||
\newcommand{\hsmasnowcardprio}{Prio}%
|
||
\newcommand{\hsmasnowcardtitel}{Title}%
|
||
\newcommand{\hsmasnowcardherkunft}{Origin}%
|
||
\newcommand{\hsmasnowcardkonflikt}{Conflicts}%
|
||
\newcommand{\hsmasnowcardbeschreibung}{Description}%
|
||
\newcommand{\hsmasnowcardfitkriterium}{Fit Criterion}%
|
||
\newcommand{\hsmasnowcardmaterial}{Supporting Material}%
|
||
\newcommand{\hsmaqasanforderung}{QAS}%
|
||
\newcommand{\hsmaqasno}{\#}%
|
||
\newcommand{\hsmaqasart}{Type}%
|
||
\newcommand{\hsmaqasprio}{Prio}%
|
||
\newcommand{\hsmaqastitel}{Title}%
|
||
\newcommand{\hsmaqasquelle}{Source}%
|
||
\newcommand{\hsmaqasstimulus}{Stimulus}%
|
||
\newcommand{\hsmaqasartefakt}{Artifact}%
|
||
\newcommand{\hsmaqasumgebung}{Environment}%
|
||
\newcommand{\hsmaqasantwort}{Response}%
|
||
\newcommand{\hsmaqasmass}{Response Measure}%
|
||
\else%
|
||
\newcommand{\hsmatyp}{\hsmatypde}%
|
||
\newcommand{\hsmathesistype}{zur Erlangung des akademischen Grades \hsmagrad}%
|
||
\newcommand{\hsmakoerperschaft}{\hsmakoerperschaftde}%
|
||
\newcommand{\hsmastudiengangname}{Studiengang \hsmastudienganglangde}%
|
||
\newcommand{\hsmastudienganglang}{\hsmastudienganglangde}%
|
||
\newcommand{\hsmatitel}{\hsmatitelde}%
|
||
\newcommand{\hsmatutor}{Betreuer}%
|
||
\newcommand{\hsmafakultaetlang}{\hsmafakultaetlangde}%
|
||
\newcommand{\hsmalistoftables}{Tabellenverzeichnis}%
|
||
\newcommand{\hsmalistoffigures}{Abbildungsverzeichnis}%
|
||
\newcommand{\hsmalistings}{Quellcodeverzeichnis}%
|
||
\newcommand{\hsmalistofsymbols}{Symbolverzeichnis}
|
||
\newcommand{\hsmaglossary}{Glossar}
|
||
\newcommand{\hsmalistingcaption}{Quellcode}% oder Listing?
|
||
\newcommand{\hsmasymbsign}{Symbol}
|
||
\newcommand{\hsmasymbdescription}{Beschreibung}
|
||
\newcommand{\hsmasymbunit}{Einheit}
|
||
\newcommand{\hsmaindex}{Index}%
|
||
\newcommand{\hsmaabbreviations}{Abkürzungsverzeichnis}%
|
||
\newcommand{\hsmasnowcardanforderung}{Anforderung}%
|
||
\newcommand{\hsmasnowcardno}{Nr}%
|
||
\newcommand{\hsmasnowcardart}{Art}%
|
||
\newcommand{\hsmasnowcardprio}{Prio}%
|
||
\newcommand{\hsmasnowcardtitel}{Titel}%
|
||
\newcommand{\hsmasnowcardherkunft}{Herkunft}%
|
||
\newcommand{\hsmasnowcardkonflikt}{Konflikte}%
|
||
\newcommand{\hsmasnowcardbeschreibung}{Beschreibung}%
|
||
\newcommand{\hsmasnowcardfitkriterium}{Fit-Kriterium}%
|
||
\newcommand{\hsmasnowcardmaterial}{Weiteres Material}%
|
||
\newcommand{\hsmaqasanforderung}{QAS}%
|
||
\newcommand{\hsmaqasno}{Nr}%
|
||
\newcommand{\hsmaqasart}{Art}%
|
||
\newcommand{\hsmaqasprio}{Prio}%
|
||
\newcommand{\hsmaqastitel}{Titel}%
|
||
\newcommand{\hsmaqasquelle}{Quelle}%
|
||
\newcommand{\hsmaqasstimulus}{Stimulus}%
|
||
\newcommand{\hsmaqasartefakt}{Artefakt}%
|
||
\newcommand{\hsmaqasumgebung}{Umgebung}%
|
||
\newcommand{\hsmaqasantwort}{Antwort}%
|
||
\newcommand{\hsmaqasmass}{Maß für Antwort}%
|
||
\fi%
|
||
|
||
|
||
% Makros für typographisch korrekte Abkürzungen
|
||
\newcommand{\zb}[0]{z.\,B.}
|
||
\newcommand{\dahe}[0]{d.\,h.}
|
||
\newcommand{\ua}[0]{u.\,a.}
|
||
|
||
|
||
\ifen
|
||
\RequirePackage[autostyle=true,english=american]{csquotes} % Englische Anführungszeichen
|
||
\RequirePackage[english,breaklinks=true,pdfproducer={},pdfcreator={},plainpages=false,
|
||
pdfpagelabels]{hyperref} % Hyperlinks
|
||
\newcommand{\hsmasortlocale}{en_US} % Sortierung der Literatur
|
||
\else
|
||
\RequirePackage[autostyle=true,german=quotes]{csquotes} % Deutsche Anführungszeichen
|
||
\RequirePackage[breaklinks=true,pdfproducer={},pdfcreator={},plainpages=false,
|
||
pdfpagelabels]{hyperref} % Hyperlinks
|
||
\newcommand{\hsmasortlocale}{de_DE}
|
||
\fi%
|
||
|
||
|
||
|
||
|
||
|
||
%Hyperref muss vor DocLicense geladen werden!
|
||
\newcommand{\hsmacc}{by-sa}
|
||
\RequirePackage[type={CC},modifier={\hsmacc},version={4.0}]{doclicense}
|
||
|
||
|
||
% Einstellungen für das Hyperlink-Paket
|
||
\hypersetup{
|
||
colorlinks=true, % Farbige links verwenden
|
||
% allcolors=linkblue,
|
||
linktoc=all, % Links im Inhaltsverzeichnis
|
||
%Highlight Links in Dokument
|
||
linkcolor=HMA-linkblue, % Querverweise
|
||
citecolor=HMA-linkblue, % Literaturangaben
|
||
filecolor=HMA-linkblue, % Dateilinks
|
||
urlcolor=HMA-linkblue % URLs
|
||
}
|
||
|
||
\RequirePackage[atend]{bookmark}
|
||
|
||
\ExplSyntaxOn
|
||
\NewDocumentCommand{\printfilelist}{}
|
||
{
|
||
\cleardoublepage
|
||
\section*{Used ~ packages}
|
||
\setlength{\LTleft}{0pt}
|
||
\footnotesize
|
||
\begin{longtable}{@{} >{\ttfamily}l l >{\raggedright}p{.6\textwidth} @{}}
|
||
\toprule
|
||
\multicolumn{1}{@{}l}{\bfseries File~name} &
|
||
\multicolumn{1}{c}{\bfseries Date} &
|
||
\bfseries File~info
|
||
\tabularnewline
|
||
\midrule
|
||
\endhead
|
||
\bottomrule
|
||
\endfoot
|
||
\nobbz_print_filelist:
|
||
\end{longtable}
|
||
}
|
||
|
||
\tl_new:N \l_nobbz_filelist_body_tl
|
||
\tl_new:N \l_nobbz_fileinfo_tl
|
||
|
||
\cs_new_protected:Npn \nobbz_print_filelist:
|
||
{
|
||
\clist_map_inline:cn { @filelist }
|
||
{
|
||
\nobbz_print_fileinfo:n { ##1 }
|
||
}
|
||
\tl_use:N \l_nobbz_filelist_body_tl
|
||
}
|
||
|
||
\cs_new_protected:Npn \nobbz_print_fileinfo:n #1
|
||
{
|
||
\regex_match:nnT { \.(sty|cls)\Z } { #1 }
|
||
{
|
||
\nobbz_print_pkginfo:n { #1 }
|
||
}
|
||
}
|
||
|
||
\cs_new_protected:Npn \nobbz_print_pkginfo:n #1
|
||
{
|
||
\tl_set_eq:Nc \l_nobbz_fileinfo_tl { ver@#1 }
|
||
\tl_replace_once:Nnn \l_nobbz_fileinfo_tl { ~ } { & }
|
||
\tl_put_right:Nx \l_nobbz_filelist_body_tl
|
||
{
|
||
\exp_not:n { #1 }
|
||
&
|
||
\exp_not:V \l_nobbz_fileinfo_tl
|
||
\exp_not:N \tabularnewline
|
||
}
|
||
}
|
||
\ExplSyntaxOff
|
||
|
||
|
||
|
||
|
||
%% Beinhaltet den Style der Titelseite und des Vor-Text-Teils
|
||
\RequirePackage{titlepage}
|
||
|
||
\AtBeginDocument{%
|
||
\setstretch{1.2}
|
||
%Schreibe geladene .cls and .sty files in Dokument für Debugging
|
||
\listfiles
|
||
% Titelblatt, Vor-Text-Teil erzeugen
|
||
\input{studiengaenge}
|
||
\frontmatter
|
||
|
||
\titlepg
|
||
\newpage
|
||
\bibinfo
|
||
\newpage
|
||
\signaturepage
|
||
\newpage
|
||
\abstractpage
|
||
\newpage
|
||
\tableofcontents
|
||
\newpage
|
||
|
||
% Abkürzungsverzeichnis ausgeben
|
||
\printglossary[type=\acronymtype, nonumberlist, title=\hsmaabbreviations,style=long]
|
||
\newpage
|
||
|
||
% Abbildungsverzeichnis erzeugen
|
||
\listoffigures
|
||
|
||
% Tabellenverzeichnis erzeugen
|
||
\listoftables
|
||
|
||
\ifsymbols
|
||
% Symbolverzeichnis ausgeben
|
||
% Wenn Sie kein Symbolverzeichnis haben, kommentieren Sie die folgende Zeile aus
|
||
\printglossary[type=symbolslist,style=symbunitlong,title=\hsmalistofsymbols]
|
||
\fi
|
||
|
||
\ifsourcecode
|
||
%Sourcecode
|
||
\lstlistoflistings
|
||
%\IfFileExists{thesis.lol}{\lstlistoflistings}{}
|
||
\fi
|
||
|
||
\newpage
|
||
\newcounter{frontmatterpage}
|
||
\setcounter{frontmatterpage}{\value{page}}
|
||
\sethyp
|
||
}
|
||
|
||
|
||
\AtEndDocument{
|
||
|
||
|
||
% \newwrite\loadedtexfiles
|
||
% \immediate\openout\loadedtexfiles=listTexFiles.txt
|
||
% \immediate\write\loadedtexfiles{\printfilelist}
|
||
% \immediate\closeout\loadedtexfiles
|
||
%
|
||
% \printfilelist
|
||
}
|
||
|
||
|
||
%\newcommand{\foo}{FOO}
|
||
%\PackageError{ethel}{%
|
||
% Your hovercraft is full of eels,\MessageBreak
|
||
% and \protect\foo\space is \foo
|
||
%}{%
|
||
% Oh dear! Something’s gone wrong.\MessageBreak
|
||
% \space \space Try typing \space «return»
|
||
% \space to proceed, ignoring \protect\foo.
|
||
%}
|
||
%\fi%
|