summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/iodhbwm
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/iodhbwm
Initial commit
Diffstat (limited to 'macros/latex/contrib/iodhbwm')
-rw-r--r--macros/latex/contrib/iodhbwm/README.md36
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/abstract/iodhbwm-auto-sections-with-abstract.pdfbin0 -> 321222 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/abstract/iodhbwm-auto-sections-with-abstract.tex81
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/abstract/my-abstract.inc.tex19
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/acronyms/iodhbwm-acro.pdfbin0 -> 167754 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/acronyms/iodhbwm-acro.tex42
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix-auto.pdfbin0 -> 168050 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix-auto.tex38
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix.pdfbin0 -> 269843 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix.tex62
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-custom-option.pdfbin0 -> 271768 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-custom-option.tex39
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-footcite.pdfbin0 -> 178915 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-footcite.tex26
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-rename-heading.pdfbin0 -> 106171 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-rename-heading.tex31
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-style-option.pdfbin0 -> 277478 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-style-option.tex31
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-print.pdfbin0 -> 147016 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-print.tex51
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-replace-part-naming.pdfbin0 -> 226207 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-replace-part-naming.tex47
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-roman-numbers.pdfbin0 -> 311487 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-roman-numbers.tex46
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-advanced-starter.pdfbin0 -> 229791 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-advanced-starter.tex75
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-recommended-starter.pdfbin0 -> 227148 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-recommended-starter.tex55
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-simple-starter.pdfbin0 -> 207446 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-simple-starter.tex63
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings-color.pdfbin0 -> 173543 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings-color.tex89
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings.pdfbin0 -> 174059 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings.tex68
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-hyperref.pdfbin0 -> 164362 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-hyperref.tex51
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-references.pdfbin0 -> 84883 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-references.tex33
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/titlepages/img/penguin-158298-pixabay.pngbin0 -> 145319 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-custom-titlepage.pdfbin0 -> 87976 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-custom-titlepage.tex31
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-titlepage-logo.pdfbin0 -> 326935 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-titlepage-logo.tex44
-rw-r--r--macros/latex/contrib/iodhbwm/doc/examples/titlepages/my-titlepage.tex15
-rw-r--r--macros/latex/contrib/iodhbwm/doc/iodhbwm.pdfbin0 -> 634846 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/doc/iodhbwm.tex721
-rw-r--r--macros/latex/contrib/iodhbwm/tex/dhbw-declaration.def35
-rw-r--r--macros/latex/contrib/iodhbwm/tex/dhbw-logo.pngbin0 -> 33897 bytes
-rw-r--r--macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-ba.def57
-rw-r--r--macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-pa.def59
-rw-r--r--macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-sa.def46
-rw-r--r--macros/latex/contrib/iodhbwm/tex/dhbw-titlepage.def74
-rw-r--r--macros/latex/contrib/iodhbwm/tex/iodhbwm-templates.sty482
-rw-r--r--macros/latex/contrib/iodhbwm/tex/iodhbwm.cls480
54 files changed, 3027 insertions, 0 deletions
diff --git a/macros/latex/contrib/iodhbwm/README.md b/macros/latex/contrib/iodhbwm/README.md
new file mode 100644
index 0000000000..d7f5937cb9
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/README.md
@@ -0,0 +1,36 @@
+# iodhbwm
+
+[![CTAN](https://img.shields.io/ctan/v/iodhbwm.svg)](https://www.ctan.org/pkg/iodhbwm)
+[![GitHub license](https://img.shields.io/github/license/faltfe/iodhbwm.svg?style=flat-square)](https://github.com/faltfe/iodhbwm/blob/master/LICENSE)
+[![Build Status](https://img.shields.io/travis/faltfe/iodhbwm/master.svg?style=flat-square)](https://travis-ci.org/faltfe/iodhbwm)
+
+---
+
+This project provides the _unofficial_ template of the [DHBW Mannheim](http://www.dhbw-mannheim.de) for the creation of bachelor thesis, studies or project work with _LaTeX_. The goal of the package is the quick creation of a basic framework without much effort.
+
+The documentation is currently only available in German.
+
+---
+
+Felix Faltin
+
+Web: <https://github.com/faltfe/iodhbwm>
+
+E-Mail: ffaltin91@gmail.com
+
+---
+
+Copyright 2018-2019 Felix Faltin
+
+This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 of this license or (at your option) any later version. The latest version of this license is in <http://www.latex-project.org/lppl.txt> and version 1.3 or later is part of all distributions of LaTeX version 2005/12/01 or later.
+
+This work has the LPPL maintenance status `maintained`.
+
+The Current Maintainer of this work is Felix Faltin.
+
+---
+
+If you have any ideas, questions, suggestions or bugs to report, please
+feel free to contact me.
+
+---
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/abstract/iodhbwm-auto-sections-with-abstract.pdf b/macros/latex/contrib/iodhbwm/doc/examples/abstract/iodhbwm-auto-sections-with-abstract.pdf
new file mode 100644
index 0000000000..29191cc358
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/abstract/iodhbwm-auto-sections-with-abstract.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/abstract/iodhbwm-auto-sections-with-abstract.tex b/macros/latex/contrib/iodhbwm/doc/examples/abstract/iodhbwm-auto-sections-with-abstract.tex
new file mode 100644
index 0000000000..e7f8f15cdd
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/abstract/iodhbwm-auto-sections-with-abstract.tex
@@ -0,0 +1,81 @@
+% ---------------------------------------------------
+% Date: 15.05.2019
+% Version: v1.1.0
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ add-tocs-to-toc, % Add LoF, LoT, etc. to ToC
+ add-bibliography, % Include bibliography (needs biber run)
+ bib-file = biblatex-examples.bib, % Set bibliography file
+ auto-intro-pages = all, % Takes care about titlepage, abstract, ToC, etc.
+ language = english, % Provide another language for the abstract
+ language = ngerman, % Set main document language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{%
+ abstract = my-abstract.inc, % Include custom abstract file
+ author = Max Mustermann,
+ thesis type = BA,
+ thesis title = Überprüfung von Bausteinen,
+ student id = 1337,
+ location = Transsilvanien,
+ institute = Lebkuchenhaus,
+ institute logo = example-image-a,
+ course/id = Txxxx,
+ supervisor = Schneewittchen,
+ processing period = {01.01.17 -- 31.01.17},
+ reviewer = Frau Holle und die sieben Zwerge,
+ course/name = {Trolltechnik},
+ bachelor degree type = {Troll of the universe},
+% bachelor degree = BoS % Bachelor of Science
+}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+
+ \Blinddocument
+
+ \chapter{Tabellen}
+ \blindtext
+
+ \begin{table}[htb]
+ \centering
+ \begin{tabular}{@{}ll@{}}
+ \toprule
+ Linke Spalte & Rechte Spalte\\\midrule
+ \dots & \dots\\
+ &\\
+ &\\\bottomrule
+ \end{tabular}
+ \caption{Leere Tabelle}
+ \end{table}
+
+ \blindtext
+
+ \chapter{Abbildungen}
+ \blindtext
+
+ \begin{figure}[htb]
+ \centering
+ \includegraphics[width=.5\linewidth]{example-image-a}
+ \caption{Random image}
+ \end{figure}
+
+ \blindtext
+
+ % Cite all elements from the passed file
+ % This is necessary because otherwise there
+ % won't be any bibliography generated.
+ \nocite{*}
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/abstract/my-abstract.inc.tex b/macros/latex/contrib/iodhbwm/doc/examples/abstract/my-abstract.inc.tex
new file mode 100644
index 0000000000..d596f45450
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/abstract/my-abstract.inc.tex
@@ -0,0 +1,19 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% Use mainlanguage first
+\section*{\abstractname}
+ \thispagestyle{empty}
+ \blindtext
+
+% Switch language to english
+\begin{otherlanguage}{english}
+ \section*{\abstractname}
+ \blindtext
+
+\end{otherlanguage}
+
+\cleardoublepage \ No newline at end of file
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/acronyms/iodhbwm-acro.pdf b/macros/latex/contrib/iodhbwm/doc/examples/acronyms/iodhbwm-acro.pdf
new file mode 100644
index 0000000000..dc9aa860d0
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/acronyms/iodhbwm-acro.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/acronyms/iodhbwm-acro.tex b/macros/latex/contrib/iodhbwm/doc/examples/acronyms/iodhbwm-acro.tex
new file mode 100644
index 0000000000..e778df7185
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/acronyms/iodhbwm-acro.tex
@@ -0,0 +1,42 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ add-tocs-to-toc, % Add LoF, LoT, etc. to ToC
+ debug, % Provide \lipsum, \blindtext
+ language = ngerman, % Set main document language
+ auto-intro-pages = custom % Takes care about titlepage, abstract, ToC, etc.
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+% Add a summary of all acronyms to the ToC
+\dhbwsetup{%
+ intro/print toc = true,
+ intro/append custom content = {%
+ \printacronyms[name=Abkürzungsverzeichnis, heading=addchap]
+ }
+}
+
+% Include acro package
+\usepackage{acro}
+% Declare an example acronym
+\DeclareAcronym{Team}{
+ short = Team,
+ long = {Toll ein anderer macht's}
+}
+
+\begin{document}
+ \chapter{Hello World}
+ Wusstest du es schon: \ac{Team}
+
+ \Blinddocument
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix-auto.pdf b/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix-auto.pdf
new file mode 100644
index 0000000000..cf34695313
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix-auto.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix-auto.tex b/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix-auto.tex
new file mode 100644
index 0000000000..8e5216b788
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix-auto.tex
@@ -0,0 +1,38 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ add-tocs-to-toc, % Add LoF, LoT, etc. to ToC
+ auto-intro-pages = custom, % Takes care about titlepage, abstract, ToC, etc.
+ language = ngerman, % Set main document language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{%
+ intro/print toc,
+ intro/append custom content = {\listofappendices}
+}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+ \Blinddocument
+
+ % ---------------------------------------------------
+ % --- --- --- --- -- Begin appendix - --- --- --- ---
+ % ---------------------------------------------------
+ \appendix
+ \chapter{Hello world}
+ \blindtext
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix.pdf b/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix.pdf
new file mode 100644
index 0000000000..36bd21baf8
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix.tex b/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix.tex
new file mode 100644
index 0000000000..be15cbca2c
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/appendix/iodhbwm-appendix.tex
@@ -0,0 +1,62 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ add-tocs-to-toc, % Add LoF, LoT, etc. to ToC
+ debug, % Provide \lipsum, \blindtext
+ language = ngerman % Set main document language
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{%
+ author = Felix Faltin,
+ thesis type = SA,
+ thesis title = Einbinden eines Anhangs,
+ student id = 12345,
+ location = Musterstadt,
+ institute = Musterwerke GmbH,
+ course/id = Txxxx,
+ supervisor = Pikachu und Enton,
+ processing period = 27.07.2018
+}
+
+% Rename appendix name
+\renewcommand{\listappendixname}{Anhangsverzeichnis}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+% Compare this example with the file
+% `iodhbwm-appendix-auto.tex` and check out the
+% benefits using the option `auto-intro-pages`.
+% ---------------------------------------------------
+\begin{document}
+
+ \dhbwtitlepage
+
+ \dhbwdeclaration
+
+ \tableofcontents
+ \listoffigures
+ \listoftables
+
+ \listofappendices
+
+ \Blinddocument
+
+ % ---------------------------------------------------
+ % --- --- --- --- -- Begin appendix - --- --- --- ---
+ % ---------------------------------------------------
+ \appendix
+ \chapter{Hello world}
+ \blindtext
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-custom-option.pdf b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-custom-option.pdf
new file mode 100644
index 0000000000..59fd79c553
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-custom-option.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-custom-option.tex b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-custom-option.tex
new file mode 100644
index 0000000000..e6fcfb5cdb
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-custom-option.tex
@@ -0,0 +1,39 @@
+% ---------------------------------------------------
+% Date: 12.11.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ add-bibliography, % Include bibliography (needs biber run)
+ bib-file = biblatex-examples.bib, % Set bibliography file
+ language = ngerman, % Set main document language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+%\usepackage[utf8]{inputenc} % UTF-8 is default at the latest release
+
+% ---------------------------------------------------
+% --- --- - Change default biblatex options - --- ---
+% ---------------------------------------------------
+% You can almost change every option with this command. There are
+% only some exception like the backend and the style.
+% If you want to change the citeystyle have a look at the custom
+% cite style example or see the documentation for biblatex/citestyle
+% option.
+% ---------------------------------------------------
+% Change the sorting and supress the DOI output
+\ExecuteBibliographyOptions{sorting=none, doi=false}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+ \Blinddocument % Dummy content
+
+ \nocite{*} % Cite every entry from the passed file
+
+ % ---------------------------------------------------
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-footcite.pdf b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-footcite.pdf
new file mode 100644
index 0000000000..5998d0cf89
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-footcite.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-footcite.tex b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-footcite.tex
new file mode 100644
index 0000000000..788fd222be
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-footcite.tex
@@ -0,0 +1,26 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ add-bibliography-, % Include bibliography (needs biber run) wihout a bibliography
+ bib-file = biblatex-examples.bib, % Set bibliography file
+ biblatex/style = authoryear, % Change used biblatex style
+ language = ngerman, % Set main language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+ \chapter{Zitat als Fußnote}
+ \blindtext \footcite{doody}
+
+ \blindtext \footfullcite{doody}
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-rename-heading.pdf b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-rename-heading.pdf
new file mode 100644
index 0000000000..5d0227d166
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-rename-heading.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-rename-heading.tex b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-rename-heading.tex
new file mode 100644
index 0000000000..bea0468d3d
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-rename-heading.tex
@@ -0,0 +1,31 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ add-bibliography, % Include bibliography (needs biber run)
+ bib-file = biblatex-examples.bib, % Set bibliography file
+ language = ngerman, % Set main language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% Rename bibliography heading depending
+% on selected language
+\DefineBibliographyStrings{ngerman}{%
+ bibliography = {Literaturverzeichnis},
+ references = {Literaturverzeichnis},
+}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+ \chapter{Einfaches Zitat}
+ \blindtext \cite{bertram}
+
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-style-option.pdf b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-style-option.pdf
new file mode 100644
index 0000000000..3cf196ddc3
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-style-option.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-style-option.tex b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-style-option.tex
new file mode 100644
index 0000000000..6fd6547da3
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/bibliography/iodhbwm-biblatex-style-option.tex
@@ -0,0 +1,31 @@
+% ---------------------------------------------------
+% Date: 12.11.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ add-bibliography, % Include bibliography (needs biber run)
+ bib-file = biblatex-examples.bib, % Set bibliography file
+ biblatex/style = alphabetic, % Change citestyle and biblatex to alphabetic
+% biblatex/citestyle = alphabetic,
+% biblatex/bibstyle = alphabetic,
+ language = ngerman, % Set main document language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+%\usepackage[utf8]{inputenc} % UTF-8 is default at the latest release
+
+\begin{document}
+
+ % ---------------------------------------------------
+ % --- --- --- --- Begin actual content -- --- --- ---
+ % ---------------------------------------------------
+ \Blinddocument % Dummy content
+
+ \nocite{*} % Cite every entry from the passed file
+
+ % ---------------------------------------------------
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-print.pdf b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-print.pdf
new file mode 100644
index 0000000000..5bb082e1f7
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-print.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-print.tex b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-print.tex
new file mode 100644
index 0000000000..38d0dec2c2
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-print.tex
@@ -0,0 +1,51 @@
+% ---------------------------------------------------
+% Date: 08.10.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates,
+ print, % alternativ print- oder auskommentieren
+ add-tocs-to-toc,
+ debug,
+ language = ngerman
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{%
+ author = Max Mustermann,
+ thesis type = SA,
+ thesis title = Überprüfung von Bausteinen,
+ thesis second title = Zweiter Titel,
+ student id = 12345,
+ location = Musterstadt,
+ institute = Musterwerke GmbH,
+ course/id = Txxxx,
+ supervisor = Gott,
+ processing period = {01.01.17 -- 31.01.17}
+}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+
+ \chapter{My listing}
+ \blindtext
+
+ \begin{lstlisting}[caption={Hello World},language=TeX]
+\newcommand{\hello}{hello}
+\newcommand{\world}{world}
+\newcommand{\print}{\hello\space\world}
+\print
+ \end{lstlisting}
+
+ \blindtext
+
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-replace-part-naming.pdf b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-replace-part-naming.pdf
new file mode 100644
index 0000000000..a893de1824
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-replace-part-naming.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-replace-part-naming.tex b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-replace-part-naming.tex
new file mode 100644
index 0000000000..5fa9f74211
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-replace-part-naming.tex
@@ -0,0 +1,47 @@
+% ---------------------------------------------------
+% Date: 08.10.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ auto-intro-pages = custom, % Takes care about titlepage, abstract, ToC, etc.
+ add-tocs-to-toc, % Add LoF, LoT, etc. to ToC
+ mainlanguage = ngerman, % Set main document language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+\dhbwsetup{intro/print toc=true}
+
+% Change the part name depending on the selected language
+% You can also use \captionsenglish if use picked English.
+\addto\captionsngerman{\renewcommand{\partname}{Thema}}
+% Use a alphabetic counter instead of a numeric counter
+\renewcommand{\thepart}{\Alph{part}}
+% Change the part format to "Thema A"
+\renewcommand*{\partformat}{\partname~\thepart}
+% Define a new part style for the toc
+\newcommand\partentrynumberformat[1]{\partname\ #1}
+% Set up the new part style
+\RedeclareSectionCommand[
+ tocentrynumberformat=\partentrynumberformat,
+ tocnumwidth=6em % Can be changed separate
+]{part}
+
+\begin{document}
+
+
+ % ---------------------------------------------------
+ % --- --- --- --- Begin actual content -- --- --- ---
+ % ---------------------------------------------------
+ \part{Grundlagenwissen}
+ \Blinddocument
+
+ \part{Hintergrundwissen}
+ \Blinddocument
+
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-roman-numbers.pdf b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-roman-numbers.pdf
new file mode 100644
index 0000000000..d0b05d7a0a
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-roman-numbers.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-roman-numbers.tex b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-roman-numbers.tex
new file mode 100644
index 0000000000..39dd7b00b2
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/customizing/iodhbwm-roman-numbers.tex
@@ -0,0 +1,46 @@
+% ---------------------------------------------------
+% Date: 15.05.2019
+% Version: v1.1.0
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ auto-intro-pages, % Takes care about titlepage, abstract, ToC, etc.
+ add-tocs-to-toc, % Add LoF, LoT, etc. to ToC
+ mainlanguage = ngerman, % Set main document language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{%
+ author = Max Mustermann,
+ thesis type = PA,
+ thesis title = Einführungsbeispiel mit empfohlenen Einstellungen,
+ student id = 12345,
+ location = Musterstadt,
+ institute = Musterwerke GmbH,
+ course/id = Txxxx,
+ supervisor = Felix Faltin,
+ processing period = {01.01.17 -- 31.01.17},
+ intro/roman page numbers
+}
+
+\begin{document}
+ \chapter{Testbild}
+ \blindtext
+
+ \begin{figure}
+ \includegraphics[width=.5\linewidth]{example-image-a}
+ \caption{Example image a}
+ \end{figure}
+
+ \blindtext
+
+ \Blinddocument
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-advanced-starter.pdf b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-advanced-starter.pdf
new file mode 100644
index 0000000000..1d569baa49
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-advanced-starter.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-advanced-starter.tex b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-advanced-starter.tex
new file mode 100644
index 0000000000..5788a6dc25
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-advanced-starter.tex
@@ -0,0 +1,75 @@
+% ---------------------------------------------------
+% Date: 15.05.2019
+% Version: v1.1.0
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ add-bibliography, % Include bibliography (needs biber run)
+ bib-file = biblatex-examples.bib, % Set bibliography file
+ add-tocs-to-toc, % Add LoF, LoT, etc. to ToC
+ language = english, % Set english as second language (\selectlanguage{english})
+ mainlanguage = ngerman, % Set main document language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{%
+ author = Max Mustermann,
+ thesis type = PA,
+ thesis title = Erweitertes Einführungsbeispiel,
+ student id = 12345,
+ location = Musterstadt,
+ institute = Musterwerke GmbH,
+ institute logo = dhbw-logo, % The file dhbw-logo.pdf is provided by the class itself.
+ course/id = Txxxx,
+ supervisor = Felix Faltin,
+ processing period = {01.01.17 -- 31.01.17}
+}
+
+\begin{document}
+
+ % ---------------------------------------------------
+ % --- --- --- Print formatted titlepage, --- --- ---
+ % --- --- --- abstract, ToC, LoF and LoT --- --- ---
+ % ---------------------------------------------------
+ % Have a look into the recommended example! There will
+ % be shown a way how to simplify all lists.
+ % ---------------------------------------------------
+ \dhbwfrontmatter % Disable page numbering and deactivate ToC, LoF, LoT numbers
+ \dhbwtitlepage % Print titlepage
+
+ \dhbwdeclaration % Print declaration
+ \dhbwabstract % Print abstract (if there exists one)
+
+ \tableofcontents % Print ToC
+ \listoffigures % Print LoF
+ \listoftables % Print LoT
+ \dhbwmainmatter % Enable page numbering and active ToC numbers again
+
+ % ---------------------------------------------------
+ % --- --- --- --- Begin actual content -- --- --- ---
+ % ---------------------------------------------------
+ \chapter{Test Kapitel}\label{chap:test-chap}
+ \section{Test Section}\label{sec:test-sec}
+ \blindtext
+
+ Verweis auf \Cref{chap:test-chap} und auf mich selbst \Cref{sec:test-sec}~\cite{glashow}.
+
+ \lipsum
+
+ % ---------------------------------------------------
+ % --- --- --- --- End actual content --- --- --- ---
+ % ---------------------------------------------------
+ % There is no need to include the bibliography
+ % manually. The class takes care about the correct
+ % position. You only have to run
+ % pdfLaTeX -> biber -> 2x pdfLaTeX
+ % ---------------------------------------------------
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-recommended-starter.pdf b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-recommended-starter.pdf
new file mode 100644
index 0000000000..2da2871c45
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-recommended-starter.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-recommended-starter.tex b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-recommended-starter.tex
new file mode 100644
index 0000000000..74061672a3
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-recommended-starter.tex
@@ -0,0 +1,55 @@
+% ---------------------------------------------------
+% Date: 15.05.2019
+% Version: v1.1.0
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ auto-intro-pages, % Takes care about titlepage, abstract, ToC, etc.
+ add-tocs-to-toc, % Add LoF, LoT, etc. to ToC
+ add-bibliography, % Include bibliography (needs biber run)
+ bib-file = biblatex-examples.bib, % Set bibliography file
+ language = english, % Set english as second language
+ mainlanguage = ngerman, % Set main document language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{%
+ author = Max Mustermann,
+ thesis type = PA,
+ thesis title = Einführungsbeispiel mit empfohlenen Einstellungen,
+ student id = 12345,
+ location = Musterstadt,
+ institute = Musterwerke GmbH,
+ course/id = Txxxx,
+ supervisor = Felix Faltin,
+ processing period = {01.01.17 -- 31.01.17},
+}
+
+\begin{document}
+ % ---------------------------------------------------
+ % --- --- --- --- Begin actual content -- --- --- ---
+ % ---------------------------------------------------
+ \chapter{Test Kapitel}\label{chap:test-chap}
+ \section{Test Section}\label{sec:test-sec}
+ \blindtext
+
+ Verweis auf \Cref{chap:test-chap} und auf mich selbst \Cref{sec:test-sec}~\cite{glashow}.
+
+ \lipsum
+ % ---------------------------------------------------
+ % --- --- --- --- End actual content --- --- --- ---
+ % ---------------------------------------------------
+ % There is no need to include the bibliography
+ % manually. The class takes care about the correct
+ % position. You only have to run
+ % pdfLaTeX -> biber -> 2x pdfLaTeX
+ % ---------------------------------------------------
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-simple-starter.pdf b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-simple-starter.pdf
new file mode 100644
index 0000000000..caba9dc675
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-simple-starter.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-simple-starter.tex b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-simple-starter.tex
new file mode 100644
index 0000000000..82cdcc1b5a
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/how-to-use-iodhbwm/iodhbwm-simple-starter.tex
@@ -0,0 +1,63 @@
+% ---------------------------------------------------
+% Date: 08.10.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ language = ngerman, % Set main document language
+ debug % Provide \lipsum, \blindtext
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+%\usepackage[utf8]{inputenc} % UTF-8 is default at the latest release
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{%
+ author = Max Mustermann,
+ thesis type = SA,
+ thesis title = Einfaches Einführungsbeispiel,
+ student id = 12345,
+ location = Musterstadt,
+ institute = Musterwerke GmbH,
+ course/id = Txxxx,
+ supervisor = Felix Faltin,
+ processing period = {01.01.17 -- 31.01.17}
+}
+
+\begin{document}
+ % ---------------------------------------------------
+ % --- --- - Print titlepage, ToC, LoF and LoT --- ---
+ % ---------------------------------------------------
+ \dhbwtitlepage % Print titlepage
+ \tableofcontents % Print ToC
+ \listoffigures % Print LoF
+ \listoftables % Print LoT
+
+ % ---------------------------------------------------
+ % --- --- --- --- Begin actual content -- --- --- ---
+ % ---------------------------------------------------
+ \chapter{Test Kapitel}\label{chap:test-chap}
+ \section{Test Section}\label{sec:test-sec}
+ \blindtext
+
+ Verweis auf \Cref{chap:test-chap} und auf mich selbst \Cref{sec:test-sec}~\cite{glashow}.
+
+ \lipsum
+
+ % ---------------------------------------------------
+ % --- --- --- --- End actual content --- --- --- ---
+ % ---------------------------------------------------
+ % If you want to use bibliography you have to include
+ % the required package 'biblatex' manually. The
+ % following commands are also needed
+ % \addbibresource{bibliographic resource}
+ % \printbibliography
+ % Have a look at the advanced and recommended
+ % examples to overcome this issue!
+ % ---------------------------------------------------
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings-color.pdf b/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings-color.pdf
new file mode 100644
index 0000000000..d72891bb3c
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings-color.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings-color.tex b/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings-color.tex
new file mode 100644
index 0000000000..b057ef60bf
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings-color.tex
@@ -0,0 +1,89 @@
+% ---------------------------------------------------
+% Date: 23.01.2019
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% Provided by: https://github.com/NelDav
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Necessary for correct listing style
+ language = ngerman,
+ debug
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% Change the color of the caption box of the listing
+\ifbool{iodhbwm@cls@if@templates}{%
+ % Change the color of the caption font
+ \DeclareCaptionFont{DHBWlisting}{\color{Blue}}
+ %
+ % Change the color of the caption box
+ \DeclareCaptionFormat{listing}{%
+ \colorbox{Orange}{%
+ \parbox{\dimexpr\textwidth-2\fboxsep\relax}{#1#2#3}%
+ }%
+ }
+}
+
+% Do global changes to all used listings of your document
+\lstset{
+ %Change the color of the line on the other side of the listing
+ rulecolor=\color{Orange},
+ %
+ %change the color of special words
+ commentstyle=\color{green},
+ keywordstyle=\color{blue},
+ numberstyle=\scriptsize\color{DHBW-font},
+ stringstyle=\color{purple}
+}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+
+ \lstlistoflistings
+
+ \chapter{Einfache Beispiele}
+ \section{Simple example}
+ \blindtext
+ \begin{lstlisting}[caption={Simple Java method},label=lst:whatever,language=Java]
+/*
+ * This is a test class doing nothing
+ */
+public class TestClass() {
+ public static void main(String args[]) {
+ // A simple line comment
+ system.out.println("Hello world");
+ }
+}
+ \end{lstlisting}
+
+ \section{Advanced floating}
+ \begin{lstlisting}[language={[Sharp]C},float,caption={Simple C\# method},label=lst:whatever-2]
+// If have no idea what I'm doing here
+public void Testfunc(string msg) {
+ for (var i = 0; i <= 10; i++) {
+ Console.WriteLine($"String: {msg}{i}");
+ }
+}
+ \end{lstlisting}
+ \blindtext
+
+ \section{Advanced styling}
+ \lstset{
+ captionpos=b,
+ frame=t
+ }
+ \begin{lstlisting}[language={[Sharp]C},float=htb,caption={Caption below code},label=lst:whatever-3]
+// If have no idea what I'm doing here
+ public void Testfunc(string msg) {
+ for (var i = 0; i <= 10; i++) {
+ Console.WriteLine($"String: {msg}{i}");
+ }
+}
+ \end{lstlisting}
+ \blindtext
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings.pdf b/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings.pdf
new file mode 100644
index 0000000000..d88cde7bf6
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings.tex b/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings.tex
new file mode 100644
index 0000000000..9ec47e71f8
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/listings/iodhbwm-listings.tex
@@ -0,0 +1,68 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Necessary for correct listing style
+ language = ngerman,
+ debug
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% Rename listings
+\renewcommand{\lstlistlistingname}{Quellcodeverzeichnis}
+\renewcommand{\lstlistingname}{Quellcode}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+
+ \lstlistoflistings
+
+ \chapter{Einfache Beispiele}
+ \section{Simple example}
+ \blindtext
+ \begin{lstlisting}[caption={Simple Java method},label=lst:whatever,language=Java]
+/*
+ * This is a test class doing nothing
+ */
+public class TestClass() {
+ public static void main(String args[]) {
+ // A simple line comment
+ system.out.println("Hello world");
+ }
+}
+ \end{lstlisting}
+
+ \section{Advanced floating}
+ \begin{lstlisting}[language={[Sharp]C},float,caption={Simple C\# method},label=lst:whatever-2]
+// If have no idea what I'm doing here
+public void Testfunc(string msg) {
+ for (var i = 0; i <= 10; i++) {
+ Console.WriteLine($"String: {msg}{i}");
+ }
+}
+ \end{lstlisting}
+ \blindtext
+
+ \section{Advanced styling}
+ \lstset{
+ captionpos=b,
+ frame=t
+ }
+ \begin{lstlisting}[language={[Sharp]C},float=htb,caption={Caption below code},label=lst:whatever-3]
+// If have no idea what I'm doing here
+ public void Testfunc(string msg) {
+ for (var i = 0; i <= 10; i++) {
+ Console.WriteLine($"String: {msg}{i}");
+ }
+}
+ \end{lstlisting}
+ \blindtext
+
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-hyperref.pdf b/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-hyperref.pdf
new file mode 100644
index 0000000000..ce2cbfd924
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-hyperref.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-hyperref.tex b/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-hyperref.tex
new file mode 100644
index 0000000000..f69d2c3f8d
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-hyperref.tex
@@ -0,0 +1,51 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ debug, % Provide \lipsum, \blindtext
+ language = ngerman, % Set main document language
+ auto-intro-pages = custom % Takes care about titlepage, abstract, ToC, etc.
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{
+ intro/print toc=true
+}
+
+% Define custom color
+\definecolor{DHBW-dark-red}{HTML}{93404A}
+
+% Anchor points (hooks) are used to load hyperref.
+% The settings must be set AFTER loading hyperref,
+% why \AtBeginDocument must be used.
+\AtBeginDocument{%
+ \hypersetup{%
+ linkcolor=DHBW-dark-red
+ }
+}
+
+% If all color settings are to be deactivated,
+% this can be done with the `hidelinks` option.
+% However, the class offers the options print and print-,
+% who take care of the colored display.
+%\AtBeginDocument{%
+% \hypersetup{%
+% hidelinks
+% }
+%}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+ \Blinddocument
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-references.pdf b/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-references.pdf
new file mode 100644
index 0000000000..cf8fe78809
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-references.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-references.tex b/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-references.tex
new file mode 100644
index 0000000000..9aabb55c22
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/references/iodhbwm-references.tex
@@ -0,0 +1,33 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ language = english, % Set main document language
+ auto-intro-pages = custom % Takes care about titlepage, abstract, ToC, etc.
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+%\usepackage[utf8]{inputenc} % UTF-8 is default at the latest release
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{
+ intro/print toc=true
+}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+ \chapter{Simple reference}\label{chap:ref}
+ See chapter~\ref{chap:cref} for more information.
+
+ \chapter{Reference with identifier}\label{chap:cref}
+ See \Cref{chap:ref} in comparison to \ref{chap:ref}.
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/titlepages/img/penguin-158298-pixabay.png b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/img/penguin-158298-pixabay.png
new file mode 100644
index 0000000000..8154c10ebd
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/img/penguin-158298-pixabay.png
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-custom-titlepage.pdf b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-custom-titlepage.pdf
new file mode 100644
index 0000000000..bdbf28ce2f
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-custom-titlepage.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-custom-titlepage.tex b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-custom-titlepage.tex
new file mode 100644
index 0000000000..4218c6180a
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-custom-titlepage.tex
@@ -0,0 +1,31 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates, % Allow \dhbw* commands
+ debug, % Provide \lipsum, \blindtext
+ language = ngerman % Set main document language
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+%\usepackage[utf8]{inputenc} % UTF-8 is default at the latest release
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{%
+ titlepage = my-titlepage, % Add custom titlepage (without file extention)
+}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+ \dhbwtitlepage
+
+ \blindtext
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-titlepage-logo.pdf b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-titlepage-logo.pdf
new file mode 100644
index 0000000000..a5bf1c1ad9
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-titlepage-logo.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-titlepage-logo.tex b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-titlepage-logo.tex
new file mode 100644
index 0000000000..8b28cd23d6
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/iodhbwm-titlepage-logo.tex
@@ -0,0 +1,44 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+% --- --- --- --- -- Class options -- --- --- --- ---
+% ---------------------------------------------------
+\documentclass[
+ load-dhbw-templates,
+ debug,
+ language = ngerman
+]{iodhbwm}
+\usepackage[T1]{fontenc}
+%\usepackage[utf8]{inputenc} % UTF-8 is default at the latest release
+
+% ---------------------------------------------------
+% --- --- --- --- - Necessary setup - --- --- --- ---
+% ---------------------------------------------------
+\dhbwsetup{%
+ author = Max Mustermann,
+ thesis type = PA,
+ thesis title = Überprüfung von Bausteinen,
+ student id = 12345,
+ location = Musterstadt,
+ institute = Musterwerke GmbH,
+ institute section = Planabteilung,
+ institute logo = penguin-158298-pixabay,
+ course/id = MM-MMA,
+ supervisor = Gott,
+ processing period = {01.01.17 -- 31.01.17}
+}
+
+% Extend default image path
+\graphicspath{{./img/}}
+
+% ---------------------------------------------------
+% --- --- --- --- Begin actual content -- --- --- ---
+% ---------------------------------------------------
+\begin{document}
+ \dhbwtitlepage
+
+ \blindtext
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/doc/examples/titlepages/my-titlepage.tex b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/my-titlepage.tex
new file mode 100644
index 0000000000..0ec6112099
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/examples/titlepages/my-titlepage.tex
@@ -0,0 +1,15 @@
+% ---------------------------------------------------
+% Date: 12.12.2018
+% Version: v0.1
+% Autor: Felix Faltin <ffaltin91[at]gmail.com>
+% Repository: https://github.com/faltfe/iodhbwm
+% ---------------------------------------------------
+\begin{titlepage}
+ \hspace{0pt}
+ \vfill
+
+ \centering
+ \Huge Meine Titelseite
+
+ \vfill
+\end{titlepage} \ No newline at end of file
diff --git a/macros/latex/contrib/iodhbwm/doc/iodhbwm.pdf b/macros/latex/contrib/iodhbwm/doc/iodhbwm.pdf
new file mode 100644
index 0000000000..e165761332
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/iodhbwm.pdf
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/doc/iodhbwm.tex b/macros/latex/contrib/iodhbwm/doc/iodhbwm.tex
new file mode 100644
index 0000000000..944cd3bf3b
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/doc/iodhbwm.tex
@@ -0,0 +1,721 @@
+\documentclass[babel=ngerman,highlight=false]{skdoc}
+\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenc}
+\usepackage{lmodern}
+\usepackage{enumitem}
+\usepackage[most]{tcolorbox}
+\usepackage{fontawesome}
+\usepackage[ngerman, noabbrev, nameinlink]{cleveref}
+%\usepackage{showframe}
+
+\package[vcs=https://github.com/faltfe/iodhbwm,ctan=iodhbwm]{iodhbwm}
+\version{1.1.0}
+
+\title{iodhbwm Klasse}
+\author{Felix Faltin}
+\email{ffaltin91@gmail.com}
+%\repository{https://github.com/faltfe/iodhbwm}
+
+\usepackage{geometry}
+\geometry{left=6.5cm, right=1cm, marginparwidth=2cm}
+
+%\KOMAoptions{parskip=half-}
+%\let\oldblindtext\blindtext
+%\renewcommand{\blindtext}{{\color{gray}\oldblindtext}}
+
+% -------------------------------------------------------
+% Custom command
+% -------------------------------------------------------
+
+\setlength{\parindent}{0pt}
+%\setlength{\parskip}{3pt plus 0.3pt minus 0.3pt}
+
+%\definecolorset{RGB}{}{}{
+% section,11,72,107;
+% extlink,73,10,61;
+% intlink,140,35,24;
+% sharp,250,105,0;
+% bright,198,229,217;
+% macrodesc,73,10,61;
+% keydesc,140,35,24;
+% macroimpl,73,10,61;
+% meta,11,72,107;
+% scriptcolor,140,35,24;
+% optioncolor,73,10,61;
+% opt,73,10,61
+%}
+
+\definecolor{darkgray}{HTML}{4D4D4D}
+\definecolor{lightgray}{HTML}{B3B3B3}
+\definecolor{darkred}{HTML}{8F0D0D}
+\definecolor{lightred}{HTML}{D34747}
+\definecolor{darkcyan}{HTML}{085656}
+\definecolor{lightcyan}{HTML}{2B7E7E}
+
+%\colorlet{meta}{darkred}
+
+\newtcbox{\setupOption}{%
+ enhanced,
+ breakable,
+ on line,
+ boxrule=0.4pt,
+ top=0mm,
+ bottom=0mm,
+ right=0mm,
+ left=5mm,
+ arc=1pt,
+ boxsep=1.5pt,
+ before upper={\vphantom{dlg}},
+ colframe=darkred,
+ coltext=black,
+ colback=white,
+ overlay={%
+ \begin{tcbclipinterior}
+ \fill[darkred] (frame.south west) rectangle node[text=white, font=\footnotesize] {\faCode} ([xshift=5mm]frame.north west);
+ \end{tcbclipinterior}%
+ }%
+}
+
+\newtcbox{\classOption}{%
+ enhanced,
+ breakable,
+ on line,
+ boxrule=0.4pt,
+ top=0mm,
+ bottom=0mm,
+ right=0mm,
+ left=5mm,
+ arc=1pt,
+ boxsep=1.5pt,
+ before upper={\vphantom{dlg}},
+ colframe=darkcyan,
+ coltext=black,
+ colback=white,
+ overlay={%
+ \begin{tcbclipinterior}
+ \fill[darkcyan] (frame.south west) rectangle node[text=white, font=\scriptsize] {\faFileO} ([xshift=5mm]frame.north west);
+ \end{tcbclipinterior}%
+ }%
+}
+
+\newtcblisting{sourcecode}[1][]{%
+ colframe=darkgray,
+ colback=darkgray!5!white,
+ left=6mm,
+ listing options={%
+ language={[LaTeX]TeX},
+ basicstyle=\ttfamily\color{darkgray},
+ commentstyle=\color{lightgray},
+ keywordstyle=\color{darkred},
+ numberstyle=\scriptsize\color{darkcyan},
+ identifierstyle=\color{lightcyan},
+ stringstyle=\color{purple},
+ style=tcblatex,
+ numbers=left,
+ morekeywords={%
+ dhbwsetup,
+ listofappendencies,
+ listappendixname,
+ blindtext,
+ maketitle
+ }
+ }, #1
+}
+
+% Definition von Boxen
+\newtcolorbox{warning}[2][]{
+ colback=darkred!5!white,
+ colframe=darkred,
+ fonttitle=\bfseries,
+ boxrule=1pt,
+ title=\textit{Warnung:} #2,
+ #1
+}
+\newtcolorbox{info}[2][]{
+ colback=darkgray!5!white,
+ colframe=darkgray,
+ fonttitle=\bfseries,
+ boxrule=1pt,
+ title=\textit{Allgemein:} #2,
+ #1
+}
+\newtcolorbox{hint}[2][]{
+ colback=darkcyan!5!white,
+ colframe=darkcyan,
+ fonttitle=\bfseries,
+ boxrule=1pt,
+ title=\textit{Hinweis:} #2,
+ #1
+}
+\newcommand{\Version}[1]{\marginpar[\raggedleft v#1]{\raggedright v#1}}
+
+\begin{document}
+ \changes{0.4-alpha}{Add print option, auto-intro-pages and some new commands}
+ \changes{0.4a-alpha}{Rename \opt{intro/add custom list} into \opt{intro/append custom content}}%
+ \changes{0.4.1-alpha}{Unterstützung eines Anhang wurde hinzugefügt}%
+
+ \maketitle
+
+ \begin{info}{}
+ Die Dokumentation ist derzeit nur auf Deutsch verfügbar. Es dürfen sehr gerne Übersetzungen beigetragen werden, insbesondere für Englisch.
+ \tcbline
+ The documentation is currently only available in German. Translations are very welcome, especially for English.
+ \end{info}
+
+ \vspace{2\baselineskip}
+
+ \begin{abstract}
+ Bei dem Bundle \pkg{iodhbwm} handelt es sich um eine \textbf{i}n\textbf{o}ffizielle Vorlage der \textbf{DHBW} \textbf{M}annheim zum Schreiben von Studien-, Praxis- und Bachelorarbeiten. Das Bundle stellt eine Klasse \pkg{iodhbwm} und ein Paket \pkg{iodhbwm-templates} bereit.
+
+ Die vorgenommenen Einstellungen richten sich im Wesentlichen nach den Richtlinien der DHBW Mannheim zur Erstellung wissenschaftlicher Arbeiten.
+ \end{abstract}
+
+ \clearpage
+
+ \tableofcontents
+
+ \section{Konventionen}
+% \begin{sourcecode}[listing side comment, comment={Ich bin ein Kommentar},title={Hello world example}]
+%% Hello again
+%\documentclass[%
+% add-bibliography = true,
+% bib-file = my-source.bib
+%]{iodhbwm}
+
+ \begin{description}[leftmargin=!, labelwidth=3.5cm]
+ \item[\classOption{Klassenoptionen}] Bei Klassenoptionen handelt es sich um Optionen, welche im optionalen Argument von \cs{documentclass} angegeben werden.
+ \item[\setupOption{Setupoption}] Die Klasse stellt das Makro \Macro\dhbwsetup (s.~\ref{pkg:options}) bereit, welchem die Setupoptionen übergeben werden.
+ \end{description}
+
+% \begin{info}{}
+% Hallo, ich bin nur eine allgemeine Information.
+% \end{info}
+%
+% \begin{hint}{}
+% Ich bin ein Hinweis und kann an manchen Stellen sehr hilfreich sein.
+% \end{hint}
+%
+% \begin{warning}{}
+% Ich bin eine Warnung und sollte unbedingt berücksichtigt werden.
+% \end{warning}
+
+
+ \section{Einleitung}
+ Die Entwicklung des Bundles geschah ursprünglich aus persönlichen Gründen, denn mit jeder neuen Arbeit musste ich stets die gesamte Präamble meiner letzten Arbeit kopieren und gegebenenfalls Änderungen vornehmen. Außerdem war ich es leid, mir von Kommilitonen immer die gesamte Vorlage schicken lassen zu müssen, um dann doch festzustellen, dass die Dokumente doch nicht gleich aussehen.
+
+ Deshalb kam ich zu dem Entschluss, eine einfache Klasse zu entwickeln, welche das grundlegende Design entsprechend der Richtlinien der \hyperlink{https://www.dhbw-mannheim.de/}{DHBW Mannheim} umsetzt. Zusätzlich dazu habe ich ein kleines Paket geschrieben, welches häufige Befehle definiert. Es wird empfohlen, dass das Paket in Verbindung mit der Klasse verwendet wird. Eine Voraussetzung ist es jedoch nicht.
+
+ \section{Die Klasse iodhbwm}\label{cls:iodhbwm}
+ Die Angabe der Optionen erfolgt über das optionale Argument von\\
+ \Macro\documentclass[\meta{key}\oarg{= value}]{iodhbwm}. Der Aufbau und die Bedeutung der einzelnen Optionen ist den folgenden Kapiteln zu entnehmen.
+% Dabei wird auf das \meta{key}=\meta{value} System von \pkg{pgfopts} zurückgegriffen.
+
+ \subsection{Optionen}
+ Die beschriebenen Klassenoptionen müssen direkt beim Laden der Klasse angegeben werden. Eine Änderung im Verlauf des Dokuments ist nicht vorgesehen und technisch auch nicht immer möglich.
+
+ \subsubsection{Allgemein}
+ \Option{load-preamble}\WithValues{true, false}\AndDefault{true}
+ Bei Angabe der Option \classOption{\opt{load-preamble}} werden eine Reihe von zusätzlichen Paketen geladen und teilweise vorkonfiguriert.
+
+ \begin{hint}{}
+ Die Option ist standardmäßig mit \meta{true} vorbelegt. Damit muss die Option nicht angegeben werden. Möchte man jedoch die Voreinstellungen \textbf{nicht} laden, so ist \classOption{\opt{load-preamble} = \meta{false}} zu setzen.
+ \end{hint}
+
+ \noindent Nachfolgend erfolgt eine Auflistung der geladenen Pakete:
+ \begin{description}[itemsep=1pt, style=multiline, leftmargin=3cm]
+ \item[\pkg{lmodern}] Verwendung von Latin Modern anstatt Computer Modern
+ \item[\pkg{microtype}] Verbesserungen des Schriftsatzes durch Änderungen der Abstände zwischen einzelnen Buchstaben und Wörtern
+ \item[\pkg{setspace}] Umschaltung zwischen einzeilig und anderthalbzeilig
+ \item [\pkg{scrlayer-srcpage}] Zusätzlich werden grundlegende Konfiguration zur Darstellung der Kopf- und Fußzeilen vorgenommen.
+ \item[\pkg{geometry}] Die Seitenränder werden entsprechend der Richtlinien der DHBW voreingestellt.
+ \item[\pkg{siunitx}] Paket zum Schreiben von mathematischen Einheiten unter Beachtung der korrekten Schreibweise.
+ \item[\pkg{mathtools}] Erweiterung des Standards zur Darstellung von mathematischen Ausdrücken. Das Paket lädt automatisch \pkg{amsmath}.
+ \item[\pkg{graphicx}] Möglichkeit zur Einbindung von Bildern.
+ \item[\pkg{tcolobox}] Dieses Paket lädt implizit \pkg{tikz} und \pkg{xcolor}. Dem Paket \pkg{xcolor} werden die Optionen \opt{table} und \opt{dvipsnames} übergeben.
+ \item[\pkg{tabularx}] Erweiterung der Tabellenumgebung
+ \item[\pkg{booktabs}] Möglichkeit zur Darstellung horizontaler Linien in Tabellen zur besseren Gestaltung
+ \item[\pkg{cleveref}] Das Paket erweitert die Möglichkeiten zur Referenzierung von Objekten durch die automatische Angabe derer Namen.
+ \item[\pkg{listings}] Darstellung von Quellcode unterschiedlicher Sprachen. Bei Aktivierung von \classOption{\opt{load-dhbw-templates}} wird ein Design vorgeladen.
+ \item[\pkg{csquotes}] Sprachabhängige Anführungszeichen.
+ \item[\pkg{babel}] Bezeichnungen und Trennmuster in Abhängigkeit der gewählten Sprache
+ \item[\pkg{caption}] Anpassung von Bezeichnungen (\Macro\caption)
+ \end{description}
+
+ \noindent Für den internen Gebrauch werden weitere Pakete geladen.\medskip
+
+ \Option{load-dhbw-templates}\WithValues{true, false}\AndDefault{false}
+ Bei Angabe der Option wird das Paket \pkg{iodhbwm-templates} geladen. Die dadurch bereitgestellten zusätzlichen Funktionen werden im \Cref{pkg:iodhbwm-templates} beschrieben. Für den vollständigen Funktionsumfang sollte die Option immer gesetzt werden.\medskip
+
+ \Option{add-tocs-to-toc}\WithValues{true, false}\AndDefault{false}
+ bei Aktivierung der Option werden alle Verzeichnisse (Tabellen-, Abbildungs- und Literaturverzeichnis) in das Inhaltsverzeichnis übernommen. Es ist ein zusätzlicher Lauf von pdf\LaTeX{} notwendig, damit das Literaturverzeichnis im Inhaltsverzeichnis erscheint.
+
+ \begin{info}{Verzeichnisse werden automatisch ausgeblendet}
+ Wenn die Option \classOption{\opt{add-tocs-to-toc}} aktiviert wurde und die Verzeichnisse trotzdem nicht angezeigt werden, kann es darin liegen, dass diese \textbf{leer} sind. Die Klasse überprüft, ob überhaupt Tabellen oder Abbildungen vorhanden sind. Sollte dies nicht der Fall sein, wird das entsprechende Verzeichnis \textbf{nicht} angezeigt.
+ \end{info}
+
+ \medskip
+
+ \Option{language}\WithValues{babel language}\AndDefault{empty}
+ Sprachen, welche im Dokument verwendet werden sollen, sind über diese Option anzugeben. Als Hauptsprache wird die \textbf{letzte angegebene Sprache} verwendet. Alternativ kann die Option \classOption{\opt{mainlanguage}} genutzt werden.
+
+ \begin{sourcecode}[listing only]
+\documentclass[%
+ language = english,
+ language = ngerman
+]{iodhbwm}
+ \end{sourcecode}
+
+ \begin{warning}{}
+ Wenn mehrere Sprachen verwendet werden, können diese \textbf{nicht} mit Klammern als \opt{language} = \marg{english, ngerman} übergeben werden, sondern müssen wie im Beispiel einzeln angegeben werden!
+ \end{warning}
+
+ Im Beispiel werden die Sprachen Englisch und Deutsch (neue Deutsche Rechtschreibung) geladen, wobei Deutsch automatisch als Hauptsprache verwendet wird.
+
+ Die Sprachen werden als Option an alle notwendigen Pakete (\pkg{biblatex}, \pkg{cleveref}) weiter gereicht.\medskip
+
+ \Option{mainlanguage}\WithValues{babel language}\AndDefault{empty}
+ Im Gegensatz zu \classOption{\opt{language}} wird mit der Option ausschließlich die Hauptsprache gesetzt, welche im Dokument benutzt wird. Die Sprache wird zusätzlich an entsprechende Pakete übergeben.
+
+
+
+ \begin{sourcecode}[listing only]
+\documentclass[%
+ language = english,
+ mainlanguage = ngerman
+]{iodhbwm}
+ \end{sourcecode}
+ Die Angaben der Sprachen sind äquivalent zum vorherigen Beispiel.\medskip
+
+ \subsubsection{Formatierung}\label{subsub:format}
+ Die Klasse kann bei Bedarf einige Änderungen an der Formatierung vornehmen. Insbesondere wird eine farbige Darstellung hinzugefügt. Wenn die Arbeit jedoch gedruckt wird, kann ein grau/schwarzer Druck zu unschönen Ergebnissen führen. Die beiden Optionen \classOption{\opt{print-}} und \classOption{\opt{print}} sollen hierbei Abhilfe schaffen.
+
+ \Option{print-}\WithValues{true, false}\AndDefault{false}
+ Bei Aktivierung der Option wird die farbige Darstellung von Links deaktiviert. Dies wird durch \verb|\hypersetup{hidelinks}| erreicht.\medskip
+
+ \Option{print}\WithValues{true, false}\AndDefault{false}
+ Im Gegensatz zu der Option \classOption{\opt{print-}} schaltet die Option zusätzlich noch die Darstellung von Quelltext um. Die farbige Überschrift wird entfernt und durch eine einfache Überschrift ersetzt, welche durch einen Rahmen abgegrenzt ist.
+
+ \begin{warning}{Verschiebungen von Texten}
+ Bei der Verwendung von \opt{print} wird der Quelltext anders formatiert. Dadurch kann es unter Umständen zu Verschiebungen des Layouts kommen. Dieses Verhalten ist nicht vollständig beabsichtigt, bot jedoch vorläufig die einfachste Umsetzung. An einer adäquaten Lösung wird gearbeitet.
+ \end{warning}
+
+ \subsubsection{Darstellung der Verzeichnisse}
+ Die DHBW gibt eine gewissen Struktur der Arbeit vor. Um dem Autor die Arbeit etwas zu erleichtern, bietet die Klasse drei Optionen an, welche eine automatisierte Darstellung der Verzeichnisse vornimmt. Alle Optionen sind nur in Kombination mit \classOption{\opt{load-dhbw-templates}} wirksam. Im \Cref{subsub:options-tocs} werden weitere paketseitige Einstellungen beschrieben, mit welchen die zu erstellenden Verzeichnisse angepasst werden können.\medskip
+
+ \Option{auto-intro-pages}\WithValues{none, custom, default, all}\AndDefault{default}
+ Standardmäßig erfolgt keine automatische Generierung von Verzeichnissen.
+
+ \minisec{none}
+ Wenn die Option mit dem Argument \meta{none} geladen wird, geschieht absolut gar nichts und ist gleichbedeutend mit einer nicht vorhandenen Option.
+
+ \minisec{custom}
+ Es werden \textbf{keine} automatischen Voreinstellungen für das Setzen von Verzeichnissen vorgenommen. Die Option ist ausschließlich dafür verantwortlich, dass das Kommando \Macro\dhbwprintintro direkt nach dem Beginn des Dokuments ausgeführt wird.\medskip
+
+ \minisec{default}
+ Durch Angabe von \meta{default} werden die folgenden Voreinstellungen gesetzt.
+ \begin{description}
+ \item[\setupOption{\opt{intro/print all}=\meta{true}}]
+ \item[\setupOption{\opt{intro/print abstract}=\meta{false}}]
+ \end{description}
+ Damit werden die folgenden Seiten direkt nach dem Beginn der Seite eingefügt:
+ \begin{itemize}
+ \item Titelseite
+ \item (Eigenständigkeits-) Erklärung
+ \item Inhaltsverzeichnis
+ \item Abbildungsverzeichnis\footnote{\label{fn:abb}Das Abbildungs- und Tabellenverzeichnis wird nur erstellt, wenn mindestens eine Abbildung oder Tabelle vorhanden ist.}
+ \item Tabellenverzeichnis\footref{fn:abb}
+ \item Eigene Verzeichnisse
+ \end{itemize}
+
+ \minisec{all}
+ Es wird zusätzlich zu den genannten Verzeichnissen von \meta{default} ein Abstract vor dem Inhaltsverzeichnis eingefügt. Das Abtract \textbf{muss} als Datei bereitgestellt werden (s.~Option \setupOption{\opt{abstract}} \Cref{pkg:iodhbwm-templates}).
+
+ \subsubsection{Bibliographie}
+ \Option{add-bibliography}\WithValues{true, false}\AndDefault{false}
+ Bei Aktivierung der Option wird versucht, ein Literaturverzeichnis zu erstellen, welches automatisch am Ende des Dokuments ausgegeben werden soll. Wenn die Option \classOption{\opt{bib-file}} nicht gesetzt ist, wird automatisch nach der Datei \file{dhbw-source.bib} gesucht.
+
+ Das Literaturverzeichnis wird mittel \pkg{biblatex} und biber erstellt. Es ist darauf zu achten, dass die Einstellungen in der IDE gegebenenfalls anzupassen sind!
+
+ \begin{hint}{}
+ Es existiert keine Unterstützung von bib\TeX{} für die Generierung des Literaturverzeichnisses und es wird auch zukünftig keine Implementierung einer Schnittstelle geben.
+ \end{hint}
+ \medskip
+
+ \Option{add-bibliography-}\WithValues{true, false}\AndDefault{false}
+ Die Option verhält sich ähnlich wie \classOption{\opt{add-bibliography}} mit dem Unterschied, dass am Ende des Dokuments kein Literaturverzeichnis abgebildet wird. Zusätzlich werden die Verlinkungen zum Literaturverzeichnis deaktiviert. Möchte man ein manuelles Literaturverzeichnis, so sollte die Verlinkung wieder aktiviert werden.
+
+ \begin{sourcecode}[listing only]
+\documentclass[%
+ add-bibliography-,
+ bib-file = my-source.bib
+]{iodhbwm}
+\ExecuteBibliographyOptions{hyperref=true}
+\begin{document}
+ % content
+ \printbibliography
+\end{document}
+ \end{sourcecode}
+
+ Diese Option ist gut geeignet, wenn ausschließlich Fußnoten für Zitate verwendet werden sollen und am Ende des Dokuments kein zusätzliches Literaturverzeichnis gebraucht wird.\medskip
+
+ \Option{bib-file}\WithValues{\meta{filename}}
+ Der Option kann als \meta{value} eine Datei mitgegeben werden, welche die Einträge für das Inhaltsverzeichnis beinhalten. Es ist darauf zu achten, dass die Datei \textbf{einschließlich} Dateiendung übergeben wird.
+ \begin{sourcecode}[listing only]
+\documentclass[%
+ add-bibliography,
+ bib-file = my-source.bib
+]{iodhbwm}
+ \end{sourcecode}
+ Diese Option ist nur in Verbindung mit \classOption{\opt{add-bibliography}} beziehungsweise \classOption{\opt{add-bibliography-}} wirksam.\medskip
+
+ \Option{biblatex/style}\WithValues{\meta{citation style}}\AndDefault{numeric-comp}
+ Bib\LaTeX{} bietet unterschiedliche Zitierweisen an. Diese Option erlaubt die Angabe der gewünschten Zitierweise. Wenn der Option ein Stil übergeben wird, überschreibt dieser die Optionen \classOption{\opt{biblatex/bibstyle}} und \classOption{\opt{biblatex/citestyle}}, wenn diese zuvor definiert wurden.\medskip
+
+ \Option{biblatex/bibstyle}\WithValues{\meta{citation style}}
+ Wenn sich die Zitierweise im Literaturverzeichnis von jener im Text unterscheiden soll, kann ein abweichender Stil mit dieser Option definiert werden. Es ist darauf zu achten, dass die Option zwingend nach \classOption{\opt{biblatex/style}} zu setzen ist, falls diese verwendet wird.\medskip
+
+ \Option{biblatex/citestyle}\WithValues{\meta{citation style}}
+ Wenn sich die Zitierweise im Dokument von jener im Literaturverzeichnis unterscheiden soll, kann ein abweichender Stil mit dieser Option definiert werden. Es ist darauf zu achten, dass die Option zwingend nach \classOption{\opt{biblatex/style}} zu setzen ist, falls diese verwendet wird.\medskip
+
+ \subsubsection{Entwickler und Debug}
+ \Option{debug}\WithValues{true, false}\AndDefault{false}
+ Bei Angabe der Option werden die Pakete \pkg{blindtext} und \pkg{lipsum} geladen.
+
+ \subsection{Allgemeine Makros}
+ Derzeit stellt die Klasse keine Makros zur Verfügung.
+
+ \subsection{Hintergrundinformationen}
+ Die Klasse basiert auf der KOMA-Script Klasse \pkg{scrreprt}. Eine Änderung der Klasse ist möglich (s.~\Cref{subsec:umschaltung-twoside}), es wird jedoch dringend davon abgeraten.
+
+ \section{Das Paket iodhbwm-templates}\label{pkg:iodhbwm-templates}
+ \subsection{Optionen}\label{pkg:options}
+ Das Paket wird automatisch beim Setzen der Option \classOption{\opt{load-dhbw-templates}} im Hintergrund geladen. Es wird nicht empfohlen, dass Paket manuell mittels \Macro\usepackage{iodhbwm-templates} zu laden.
+
+ \subsubsection{Angabe von Dateinamen}
+ Das Paket stellt das Makro \Macro\dhbwsetup{\meta{key}=\meta{value}} bereit, über welches alle Einstellungen (Optionen) angepasst werden können. Hierfür sind eine Reihe von \meta{key} Variablen vordefiniert.\medskip
+
+ \Option{titlepage}\WithValues{\meta{filename}}\AndDefault{dhbw-titlepage.def}
+ Mit der Option kann eine eigene Titelseite übergeben werden. Falls die angegebene Datei nicht gefunden wird, wird auf die Standardtitelseite zurückgegriffen.
+
+ Es gilt zu beachten, dass die Option \setupOption{\opt{thesis type}} eine höhere Priorität besitzt. Das bedeutet, dass bei der Angabe eines \setupOption{\opt{thesis type}} die Option \setupOption{\opt{titlepage}} überschrieben wird und stattdessen die gewählte Vorlage geladen wird.
+
+ Bei gleichzeitiger Verwendung von \Macro\dhbwdeclaration ist es notwendig, die Option \setupOption{\opt{location}} zu setzen. Alle anderen Optionen sind in Abhängigkeit der verwendeten Makros (s.~\Cref{subsec:macro}) zu wählen.\medskip
+
+ \Option{declaration}\WithValues{\meta{filename}}\AndDefault{dhbw-declaration.def}
+ Mit der Option kann eine eigene Eigenständigkeitserklärung übergeben werden. In der derzeitigen Version wird nur eine deutsche Variante bereitgestellt.\medskip
+
+ \Option{abstract}\WithValues{\meta{filename}}
+ Mit der Option kann ein Abstract übergeben werden. Wenn es sich um eine \TeX{} Datei mit der Endung \texttt{.tex} handelt, kann diese weggelassen werden.\medskip
+
+ \subsubsection{Personalisierte Angaben}
+ \Option{thesis type}\WithValues{SA, BA, PA}
+ Die Option gibt die Art der Arbeit an. Die Abkürzungen sind wie folgt zu verstehen:
+ \begin{description}[noitemsep,style=multiline,leftmargin=1cm]
+ \item[SA] Studienarbeit
+ \item[BA] Bachelorarbeit
+ \item[PA] Praxisarbeit
+ \end{description}
+ Die Angabe des Typs der Arbeit bestimmt die Gestaltung der vordefinierten Titelseiten. Bei Angabe einer eigenen \setupOption{\opt{titlepage}} muss die Option \setupOption{\opt{thesis type}} entfernt werden.\medskip
+
+ \Option{bachelor degree}\WithValues{BoE, BoA, BoS}\AndDefault{BoE}
+ Die Option gibt die Art des Bachelorabschlusses an und muss daher nur bei \setupOption{\opt{thesis type} = \meta{BA}} angegeben werden, wenn es sich \textbf{nicht} um einen \textit{Bachelor of Engineering} handelt.
+ \begin{description}[noitemsep,style=multiline,leftmargin=1cm]
+ \item[BoE] Bachelor of Engineering
+ \item[BoS] Bachelor of Sciencs
+ \item[BoA] Bachelor of Arts
+ \end{description}
+ Die gewählt Option wird automatisch an \setupOption{\opt{bachelor degree type}} übergeben.\medskip
+
+ \Option{bachelor degree type}\WithValues{\meta{value}}\AndDefault{Bachelor of Engineering}
+ Für den Fall, dass eine andere Angabe des Abschlusses gewünscht ist, kann dieser durch diese Option angegeben werden.\medskip
+
+ \Option{thesis title}\WithValues{\meta{value}}
+ Die Option ermöglicht die Angabe des Titels (Thema) der Arbeit.\medskip
+
+ \Option{thesis second title}\WithValues{\meta{value}}
+ Im Fall einer Praxisarbeit \setupOption{\opt{thesis type} = \meta{PA}} kann es vorkommen, dass zwei unterschiedliche Themen in einer Arbeit vorkommen. Das zweite Thema kann über diese Option definiert werden.\medskip
+
+ \Option{author}\WithValues{\meta{value}}
+ Mit der Option wird der Autor der Arbeit angegeben. Der Autor wird auf der Titelseite und in der Eigenständigkeitserklärung verwendet.\medskip
+
+ \Option{date}\WithValues{\meta{value}}\AndDefault{\cs{today}}
+ Mit der Option wird das Datum angegeben.\medskip
+
+ \Option{submission date}\WithValues{\meta{value}}\AndDefault{\opt{date}}
+ Mit der Option wird das Abgabedatum angegeben. Standardmäßig entspricht der Wert der Option \setupOption{\opt{date}} und hat nur Einfluss auf \setupOption{\opt{bachelor type} = \meta{BA}}.\medskip
+
+ \Option{location}\WithValues{\meta{value}}
+ Mit Setzen der Option wird der Ort angegeben, an welchem die Arbeit erstellt wurde.\medskip
+
+ \Option{institute}\WithValues{\meta{value}}
+ Mit Angabe der Option wird der Firmenname angeben.\medskip
+
+ \Option{institute section}\WithValues{\meta{value}}
+ Eine weitere Spezialisierung des Firmennamens kann durch Angabe der Abteilung beschrieben werden. Die Abteilung kann mithilfe dieser Option angegeben werden.\medskip
+
+ \Option{institute logo}\WithValues{\meta{filename}}
+ Ein Firmenlogo kann dieser Option übergeben werden. Dieses wird automatisch auf den voreingestellten Titelseiten verwendet. Der \meta{filename} sollte ohne Dateiendung angegeben werden.
+
+ \begin{hint}{Bildformat}
+ Als Formate können neben \texttt{JPG} und \texttt{PNG} auch \texttt{PDFs} verwendet werden. Letztere haben den entscheidenden Vorteil, dass diese als Vektorgrafik vorliegen und dementsprechend verlustfrei skalieren können.
+ \end{hint}
+ \medskip
+
+ \Option{student id}\WithValues{\meta{value}}
+ Mit der Option wird die Matrikelnummer des Studenten angegeben.\medskip
+
+ \Option{course/id}\WithValues{\meta{value}}
+ Mit der Option wird die Kurskennung angegeben.\medskip
+
+ \Option{course/name}\WithValues{\meta{value}}\AndDefault{Informationstechnik}
+ Mit der Option wird die Langform des Studiengangs angegeben.\medskip
+
+ \Option{supervisor}\WithValues{\meta{value}}
+ Mit der Option wird der Betreuer der Arbeit angegeben.\medskip
+
+ \Option{processing period}\WithValues{\meta{value}}
+ Mit der Option wird der Zeitraum der Arbeit angegeben. Bei Arbeiten über zwei Semester kann die Angabe beispielsweise wie folgt erfolgen:
+ \begin{sourcecode}[listing only]
+\dhbwsetup{
+ processing period = {01.01. - 31.03.17, 25.05. - 31.09.17}
+}
+ \end{sourcecode}
+ \medskip
+
+ \Option{reviewer}\WithValues{\meta{value}}
+ Bei Bachelorarbeiten \setupOption{\opt{thesis type}=\meta{BA}} ist es üblich einen Gutachter anzugeben. Dieser wird durch die Angabe eines \setupOption{\opt{reviewer}} übergeben.
+
+ \subsubsection{Angaben zur DHBW}
+ \Option{dhbw location}\WithValues{\meta{value}}\AndDefault{Mannheim}
+ \Version{1.1.0}Die Option erlaubt eine Änderung des DHBW Standortes. Als Standardeinstellung ist die DHBW Manneinheim gesetzt. Der Standort wird automatisch auf den mitgelieferten Titelseiten angepasst.
+
+ \Option{dhbw logo}\WithValues{\meta{value}}\AndDefault{dhbw-logo}
+ \Version{1.1.0}Ein alternatives Logo der DHBW kann mithilfe dieser Option angegeben werden. Die Dateiendung sollte, wie in \LaTeX{} üblich, weggelassen werden.
+
+ \begin{warning}{Abmaße beachten}
+ Wenn ein eigenes Logo gesetzt wird, müssen die Dimensionen beachtet werden. Das bereitgestellte Logo hat eine Abmessung von $540 \times 264~px$.
+ \end{warning}
+
+ \subsubsection{Optionen zur automatisierten Erstellung von Verzeichnissen}\label{subsub:options-tocs}
+ Im Abschnitt~\ref{subsub:format} wurde die Option \classOption{\opt{auto-intro-pages}} beschrieben. Durch die nachfolgenden Optionen können weitere Konfigurationen vorgenommen werden. Insbesondere handelt es sich dabei um die Möglichkeit, nur bestimmte Verzeichnisse oder Seiten anzuzeigen. Die meisten der Optionen sind selbsterklärend.\medskip
+
+ \Option{intro/print titlepage}\WithValues{true, false}\AndDefault{false}
+ Schalter zum Aktivieren der Titelseite, insbesondere in Kombination mit der Option \classOption{\opt{auto-intro-pages}=\meta{custom}}.\medskip
+
+ \Option{intro/print declaration}\WithValues{true, false}\AndDefault{false}
+ Schalter zum Aktivieren der Eigenständigkeiserklärung, insbesondere in Kombination mit der Option \classOption{\opt{auto-intro-pages}=\meta{custom}}.\medskip
+
+ \Option{intro/print abstract}\WithValues{true, false}\AndDefault{false}
+ Schalter zum Aktivieren des Abstrakts, insbesondere in Kombination mit der Option \classOption{\opt{auto-intro-pages}=\meta{custom}}.\medskip
+
+ \Option{intro/print toc}\WithValues{true, false}\AndDefault{false}
+ Erstellen des Inhaltsverzeichnisses (Table of Contents $\stackrel{\wedge}{=}$ ToC)
+ \medskip
+
+ \Option{intro/print lof}\WithValues{true, false}\AndDefault{false}
+ Erstellen des Abbildungsverzeichnisses (List of Figures $\stackrel{\wedge}{=}$ LoF)
+ \medskip
+
+ \Option{intro/print lot}\WithValues{true, false}\AndDefault{false}
+ Erstellen des Tabellenverzeichnisses (List of Tables $\stackrel{\wedge}{=}$ LoT)
+ \medskip
+
+ \Option{intro/print all lists}\WithValues{true, false}\AndDefault{false}
+ Durch Setzen der Option werden alle Verzeichnisse (ToC, LoF und LoT) automatisch generiert. Das Abbildungs- und Tabellenverzeichnis werden jedoch nur dargestellt, wenn diese mindestens einen Eintrag enthalten.
+ \medskip
+
+ \Option{intro/print all}\WithValues{true, false}\AndDefault{false}
+ Durch die Option wird \setupOption{\opt{intro/print all lists} = \meta{true}} gesetzt. Zusätzlich werden alle anderen Seiten
+
+ \begin{description}
+ \item[\setupOption{\opt{intro/print titlepage}=\meta{true}}]
+ \item[\setupOption{\opt{intro/print declaration}=\meta{true}}]
+ \item[\setupOption{\opt{intro/print all}=\meta{true}}]
+ \end{description}
+
+ aktiviert. Ein Abstract wird nur gedruckt, wenn eine Datei angegeben ist und die Datei existiert.
+ \medskip
+
+ \Option{intro/append custom content}\WithValues{\meta{value}}
+ In manchen Fällen kann es vorkommen, dass eigene Verzeichnisse hinzugefügt werden sollen. Die Option \setupOption{\opt{intro/append custom content}} nimmt als Argument gültigen \LaTeX{} Quelltext entgegen und führt diesen aus.\medskip
+
+
+ \Option{intro/roman page numbers}\WithValues{true, false}\AndDefault{false}
+ \Version{1.2.0}Bei Aktivierung der Option wird die Nummerierung innerhalb der Verzeichnisse auf Römisch umgeschaltet. Des Weiteren werden die Römischen Seitenzahlen für die Verzeichnisse ebenfalls im Inhalsverzeichnis angezeigt.
+
+ \begin{hint}{}
+ Bei Aktivierung der Option \setupOption{\opt{intro/roman page numbers}=\meta{true}} erfolgt eine Abweichung von den Richtlinien der DHBW.
+ \end{hint}
+
+ \subsection{Anhang}
+ \LaTeX{} stellt das Makro \Macro\appendix bereit, um dem Dokument mitzuteilen, dass anschließend der Anhang folgt. Die DHBW empfiehlt bei der Erstellung die folgenden Dinge zu beachten:
+
+ \begin{enumerate}
+ \item Der Anhang ist das \textit{letzte} Verzeichnis der Arbeit
+ \item Das Literaturverzeichnis sollte noch vor dem Anhang eingefügt werden
+ \end{enumerate}
+
+ Die Klasse ermöglicht die Kompatibilität mit der Option \classOption{\opt{add-bibliography}}. Wenn ein Literaturverzeichnis erstellt werden soll, wird automatisch überprüft, ob ein Anhang mit \Macro\appendix vorhanden ist.
+
+ \DescribeMacro\listofappendices{} Das Makro erstellt ein Verzeichnis mit allen Einträgen, die nach \verb|appendix| folgen. Es wird empfohlen, das Anhangsverzeichnis mit der bereitgestellten Option \setupOption{\opt{intro/append custom content}} einzubinden.
+
+ \begin{sourcecode}[listing only]
+\dhbwsetup{
+ intro/append custom content = {\listofappendices}
+}
+ \end{sourcecode}
+
+ Dies erfordert jedoch die Klassenoption \classOption{\opt{auto-intro-pages}=\meta{default|all}}, damit das Anhangsverzeichnis automatisch eingebunden und korrekt formatiert wird.
+
+ Der Name des Anhangs wird in dem Makro \Macro\listappendixname gespeichert. Wenn anstatt des Wortes \enquote{Anhang} lieber \textit{Anhangsverzeichnis} im Inhaltsverzeichnis stehen soll, kann dies durch eine Umdefinierung erfolgen.
+
+ \begin{sourcecode}[listing only]
+\renewcommand{\listappendixname}{Anhangsverzeichnis}
+ \end{sourcecode}
+
+
+ \subsection{Allgemeine Makros}\label{subsec:macro}
+ \DescribeMacro\dhbwsetup{\meta{key}=\meta{value}} Das Makro ermöglicht die Angabe aller hier aufgelisteten Optionen einzustellen. Dabei werden die Optionen als \meta{key} angegeben und der einzustellende Wert als \meta{value}.
+
+ \DescribeMacro\dhbwtitlepage{} Das Makro erstellt eine Titelseite. Dabei wird bei den vordefinierten Titelseiten (s.~\setupOption{\opt{thesis type}}) auf die \textbf{zuvor} gesetzten Optionen zurück gegriffen. Eine eigene Definition einer Titelseite kann durch die Option \setupOption{\opt{titlepage}} angegeben werden.
+
+ \DescribeMacro\dhbwdeclaration{} Für das Setzen einer allgemeinen vordefinierten Selbstständigkeitserklärung (Eigenerklärung) ist das Makro zu verwenden. Eine eigene Definition kann mittels der Option \setupOption{\opt{declaration}} übergeben werden.
+
+ \DescribeMacro\dhbwfrontmatter{} Der Befehl deaktiviert die Ausgabe einer Seitenzahl. Es erfolgt ein Aufruf durch \Macro\dhbwprintintro. Wenn die Verzeichnisse manuell erstellt werden, kann der Befehl \textit{vor} dem ersten Aufruf von \Macro\maketitle bzw. \Macro\tableofcontents verwendet werden. Das Makro ist zwingend in Kombination mit \Macro\dhbwmainmatter zu benutzen.
+
+ \DescribeMacro\dhbwmainmatter{} Das Kommando sorgt als erstes dafür, dass eine neue Seite erstellt wird. Anschließend werden die Seitenzahlen wieder aktiviert. Zusätzlich wird der Zähler für die Seitenzahlen wieder auf \textit{eins (1)} gesetzt.
+
+ \DescribeMacro\dhbwprintintro{} Sorgt für die Ausgabe der aktivierten Seiten und Verzeichnisse, welche im \Cref{subsub:options-tocs} beschrieben wurden. Durch die Option \classOption{\opt{auto-intro-pages}} wird der Befehl automatisch am Beginn des Dokuments aufgerufen.
+
+ \DescribeMacro\getAuthor{} Abfrage des Autors, welcher durch \setupOption{\opt{author}} übergeben wurde.
+
+ \DescribeMacro\getDate{} Abfrage des Datums, welches durch \setupOption{\opt{date}} übergeben wurde. Falls kein Datum angegeben wurde, wird \Macro\today als Standard verwendet.
+
+ \DescribeMacro\getSubmissionDate{} Abfrage des Abgabedatums, welches durch \setupOption{\opt{submission date}} übergeben wurde. Falls kein Abgabedatum angegeben wurde, wird der Wert der Option \setupOption{\opt{date}} als Standard verwendet.
+
+ \DescribeMacro\getThesisTitle{} Abfrage des Titels der Arbeit, welcher durch \setupOption{\opt{thesis title}} übergeben wurde.
+
+ \DescribeMacro\getThesisSecondTitle{} Abfrage des zweiten Titels, welcher durch \setupOption{\opt{thesis second title}} übergeben wurde.
+
+ \DescribeMacro\getLocation{} Abfrage des Orts, welcher durch \setupOption{\opt{location}} übergeben wurde.
+
+ \DescribeMacro\getSupervisor{} Abfrage des Betreuers, welcher durch \setupOption{\opt{supervisor}} übergeben wurde.
+
+ \DescribeMacro\getCourseId{} Abfrage des Kurses, welcher durch \setupOption{\opt{course/id}} übergeben wurde.
+
+ \DescribeMacro\getCourseName{} Abfrage des Studiengangs, welcher durch \setupOption{\opt{course/name}} übergeben wurde.
+
+ \DescribeMacro\getStudentId{} Abfrage der Matrikelnummer, welche durch \setupOption{\opt{student id}} übergeben wurde.
+
+ \DescribeMacro\getInstitute{} Abfrage des Firmennamen, welcher durch \setupOption{\opt{institute}} übergeben wurde.
+
+ \DescribeMacro\getInstituteSection{} Abfrage der Abteilung, welche durch \setupOption{\opt{institute section}} übergeben wurde.
+
+ \DescribeMacro\getProcessingPeriod{} Abfrage des Bearbeitungszeitraums, welcher durch \setupOption{\opt{author}} übergeben wurde.
+
+ \DescribeMacro\getReviewer{} Abfrage des Gutachters für eine Bachelorarbeit, welcher durch \setupOption{\opt{reviewer}} übergeben wurde.
+
+ \DescribeMacro\getBachelorDegree{} Abfrage des Bearbeitungszeitraums, welcher durch \setupOption{\opt{author}} übergeben wurde.
+
+ \DescribeMacro\getDHBWLocation{}\Version{1.1.0}Abfrage des DHBW Standorts, welcher durch die \setupOption{\opt{dhbw location}} gesetzt wurde.
+
+ \DescribeMacro\getDHBWLogo{}\Version{1.1.0}Abfrage des DHBW Logo, welches durch die \setupOption{\opt{dhbw logo}} gesetzt wurde.
+
+ \section{Beispiele und Anwendungen}
+ Alle Beispiele sind auf \url{https://github.com/faltfe/iodhbwm/tree/master/doc/examples} zu finden.
+
+ \subsection{Eigene Titelseite definieren}
+ Es kann vorkommen, dass man die Klasse verwenden möchte, jedoch die vordefinierten Titelseiten einem nicht gefallen oder modifizieren möchte. Hierzu stehen einem zwei Varianten zur Verfügung.
+
+ \minisec{Titelseite mit \cs{maketitle}}
+ Dabei wird auf das herkömmliche Makro \Macro\maketitle zurückgegriffen. Allerdings ist es dann notwendig, dass die Attribute selbstständig gesetzt werden.
+ \begin{sourcecode}[listing only]
+\title{Die DHBW ist toll}
+\author{Max Mustermann}
+\date{\today}
+...
+\maketitle
+ \end{sourcecode}
+
+ \minisec{Titelseite mit der Umgebung \env{titlepage}}
+ Diese Variante bietet eine größere gestalterische Freiheit. Das Grundgerüst kann den beiliegenden Templates entnommen werden. Anschließend kann dann über die Option \setupOption{\opt{titlepage} = \meta{filename}} die eigene Titelseite angegeben werden. Die Dateiendung kann bei Angabe des \meta{filename} weggelassen werden.
+
+ \subsection{Eigene Erklärung definieren}
+ Eine eigene (Eigenständigkeits-) Erklärung, beispielsweise in einer anderen Sprache, kann mithilfe der Option \setupOption{\opt{declaration} = \meta{filename}} übergeben werden. Auf die Angabe der Dateiendung kann verzichtet werden.
+
+ \subsection{Umschaltung auf 2-seitige Ausgabe}\label{subsec:umschaltung-twoside}
+ Die DHBW empfiehlt einen einseitigen Druck der Arbeit, weshalb dies auch die Voreinstellung ist. Möchte man jedoch einen zweiseitigen Druck haben, stehen drei Möglichkeiten zur Verfügung:
+
+ \begin{itemize}
+ \item Die Arbeit kann regulär ohne Änderungen erstellt werden und am Drucker wird der Duplexdruck (zweiseitig) aktiviert. Diese Variante besitzt jedoch den Nachteil, dass die Randabstände nicht mehr stimmen, wenn die Arbeit gebunden werden soll.
+
+ \item Da die Arbeit auf KOMAscript basiert, können sehr viele Eigenschaften über das Makro \Macro\KOMAoptions{\meta{key}} geändert werden. Die Umschaltung erfolgt durch den Option \meta{twoside}. Es kann jedoch vorkommen, dass es zu Problemen mit dem Layout kommt, da die Klasse ursprünglich auf einseitigen Druck optimiert ist.
+
+ \item Die letzte Variante ist die Umschaltung der Basisklasse von \pkg{scrreprt} auf \pkg{scrbook}. Dadurch wird im Hintergrund automatisch eine doppelseitige Ausgabe mit korrekten Seitenrändern eingestellt.
+ \begin{sourcecode}[listing only]
+\makeatletter
+ \newcommand{\iodhbwm@cls@baseclass}{scrbook}
+ % \newcommand{\iodhbwm@cls@baseclass@options}{open=right}
+\makeatother
+\documentclass{iodhbwm}
+ \end{sourcecode}
+
+ \end{itemize}
+
+ \subsection{Verwendung von Parts}
+ In manchen Arbeiten kann es vorkommen, dass mit \Macro\part{} gearbeitet werden soll. Insbesondere bei Arbeiten mit zwei oder mehreren Themen kann der Wunsch aufkommen, dass der Abschnitt auch mit dem Wort \enquote{Thema} bezeichnet werden soll. Diese Änderung ist wie folgt möglich:
+
+ \begin{sourcecode}[listing only]
+\addto\captionsngerman{\renewcommand{\partname}{Thema}}
+\renewcommand{\thepart}{\Alph{part}}
+\renewcommand*{\partformat}{\partname~\thepart}
+\newcommand\partentrynumberformat[1]{\partname\ #1}
+\RedeclareSectionCommand[
+ tocentrynumberformat=\partentrynumberformat,
+ tocnumwidth=6em
+]{part}
+ \end{sourcecode}
+
+ In den bereitgestellten Beispielen ist ebenfalls eine kommentierte Version enthalten.
+
+ \section{Erweiterungen für TeXstudio}
+ \subsection{CWL Files}
+ Eine weitere Besonderheit der Klasse ist die Bereitstellung zweier \texttt{cwl}-Dateien, welche in TeXstudio für die Autovervollständigung benutzt werden.
+
+ Um die Autovervollständigung für \thepackage{} zu aktiveren, müssen die Dateien \file{iodhbwm.cwl} und \file{iodhbwm-template.cwl} nach \path|%appdata%\texstudio\completion\user| beziehungsweise nach \path|.config/texstudio/completion/user| kopiert werden.
+
+ \section{Installation}
+ \subsection{Lokale Installation}
+ Eine eigene Installation des Pakets kann in einem lokalen texmf Ordner (lokales Repository) erfolgen. Das Bundle kann manuell aus dem Git-Repository heruntergeladen werden.
+
+ \subsection{CTAN}
+ Das Bundle wird ebenfalls über CTAN (mit Release der Version v1.0) zur Verfügung gestellt und kann deshalb über die offiziellen Paketquellen heruntergeladen und installiert werden. Diese Variante ist zu bevorzugen.
+
+ \subsubsection{MiKTeX}
+ \begin{enumerate}
+ \item Lokales Repository anlegen, welches der \href{http://tug.ctan.org/tds/tds.html}{Verzeichnisstruktur für \LaTeX{} Dateien} entspricht. Die Verzeichnisstruktur könnte wie folgt aussehen:\par \verb|C:\Users\<username>\localtexmf\tex\latex\iodhbwm|
+ \item MiKTeX Settings öffnen
+ \item Unter dem Reiter ,,Roots'' das Verzeichnis hinzufügen\par \verb|C:\Users\<username>\localtexmf|
+ \item Anschließend unter ,,General'' auf den Button Refresh FNDB klicken
+ \end{enumerate}
+
+ Der letzte Schritt muss immer wieder ausgeführt werden, wenn ein neues Release heruntergeladen wurde.
+
+ Eine ausführliche Beschreibung befindet sich auf \url{https://tex.stackexchange.com/a/69484/142408}.
+
+ \subsubsection{TeXlive}
+
+ \begin{enumerate}
+ \item \verb|path=$(kpsewhich -var-value TEXMFHOME)| Abfrage, welcher Ordner standardmäßig hinterlegt ist. \verb|$path| entspricht vermutlich dem Pfad\\ \verb|/home/<user>/texmf/|
+ \item \verb|mkdir -p $path/tex/latex| anlegen des Ordners. Es kann auch ein beliebiger Ordner gewählt werden, solange dieser eine gültige TEXMF-Struktur aufweist
+ \item \verb|cp -R iodhbwm $path/tex/latex| Kopieren des heruntergeladenen Verzeichnis
+ \item \verb|texhash $path| ausführen, um das Verzeichnis zu aktualisieren
+ \end{enumerate}
+
+ Eine ausführliche Beschreibung befindet sich auf \url{https://tex.stackexchange.com/a/73017/142408}.
+
+% \PrintChanges
+
+ \PrintIndex
+
+\end{document}
diff --git a/macros/latex/contrib/iodhbwm/tex/dhbw-declaration.def b/macros/latex/contrib/iodhbwm/tex/dhbw-declaration.def
new file mode 100644
index 0000000000..93c915f9d1
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/tex/dhbw-declaration.def
@@ -0,0 +1,35 @@
+\ifcsdef{chapter}%
+{\chapter*{Erklärung}}%
+{\section*{Erklärung}}
+
+\thispagestyle{empty}
+
+\bigskip
+
+Ich versichere hiermit, dass ich meine \getThesisType{} mit dem\bigskip
+
+\textsc{Thema \ifcsempty{iodhbwm@thesis@second@title}{}{A}}
+
+{\bfseries \getThesisTitle}
+
+\ifcsempty{iodhbwm@thesis@second@title}{}{%
+ \bigskip
+ \textsc{Thema B}\par%
+ {\bfseries \getThesisSecondTitle}%
+}{}\bigskip
+
+selbstständig verfasst und keine anderen als die angegebenen Quellen und Hilfsmittel benutzt habe.
+
+
+Ich versichere zudem, dass die eingereichte elektronische Fassung mit der gedruckten Fassung übereinstimmt.$^\ast$
+
+{\small$^\ast$ falls beide Fassungen gefordert sind}
+
+\vfill
+
+\begin{tabular}{l}
+ \hline
+ \getLocation, den \getDate
+\end{tabular}
+
+\clearpage
diff --git a/macros/latex/contrib/iodhbwm/tex/dhbw-logo.png b/macros/latex/contrib/iodhbwm/tex/dhbw-logo.png
new file mode 100644
index 0000000000..bdc004e534
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/tex/dhbw-logo.png
Binary files differ
diff --git a/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-ba.def b/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-ba.def
new file mode 100644
index 0000000000..f8e05ce8df
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-ba.def
@@ -0,0 +1,57 @@
+\begin{titlepage}
+ \centering
+ \ifcsempty{iodhbwm@institute@logo}{%
+ \includegraphics[height=1.7cm]{\getDHBWLogo}
+ }{%
+ \begin{minipage}[c]{.25\textwidth}
+ \includegraphics[width=\linewidth,keepaspectratio]{\getDHBWLogo}
+ \end{minipage}
+ \hfill
+ \begin{minipage}[c]{.25\textwidth}
+ \centering
+ \includegraphics[width=\linewidth,keepaspectratio]{\getInstituteLogo}
+ \end{minipage}
+ }
+
+ \bigskip
+
+ \rule{\textwidth}{.5mm}\bigskip
+
+ {\bfseries \getThesisTitle}\smallskip
+
+ \rule{\textwidth}{.5mm}\bigskip
+
+ \textsc{\Large Bachelorarbeit}
+
+ \bigskip
+ für die Prüfung zum
+
+ \textsc{\large \getBachelorDegree}
+
+ \bigskip
+ des Studiengangs \getCourseName\par
+ der Dualen Hochschule Baden-Württemberg \getDHBWLocation
+
+ \vfill
+
+ von\par
+ {\bfseries\large \getAuthor}\bigskip
+
+ Abgabe am \getSubmissionDate
+
+ \vfill
+
+ \small{%
+ \begin{tabularx}{\textwidth}{@{}lX@{}}
+ \toprule
+ Bearbeitungszeitraum: & \getProcessingPeriod\\
+ Matrikelnummer, Kurs: & \getStudentId, \getCourseId\\
+ \ifcsempty{iodhbwm@institute@section}{}{Abteilung: & \getInstituteSection\\}%
+ Ausbildungsfirma: & \getInstitute\\
+ \ifbool{iodhbwm@if@print@location}{Ort: & \getLocation\\}{}%
+ Betreuer der Ausbildungsfirma: & \getSupervisor\\
+ Gutachter der Dualen Hochschule: & \getReviewer\\
+ \end{tabularx}
+ }
+ \cleardoublepage
+\end{titlepage}
diff --git a/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-pa.def b/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-pa.def
new file mode 100644
index 0000000000..790563eceb
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-pa.def
@@ -0,0 +1,59 @@
+\begin{titlepage}
+ \centering
+ \ifcsempty{iodhbwm@institute@logo}{%
+ \includegraphics[height=1.5cm]{\getDHBWLogo}
+ }{%
+ \begin{minipage}[c]{.25\textwidth}
+ \includegraphics[width=\linewidth,keepaspectratio]{\getDHBWLogo}
+ \end{minipage}
+ \hfill
+ \begin{minipage}[c]{.25\textwidth}
+ \raggedleft
+ \includegraphics[width=\linewidth,keepaspectratio]{\getInstituteLogo}
+ \end{minipage}
+ }
+
+ \bigskip
+
+ \Large\textsc{Projektarbeit}
+
+ \normalsize
+ des Studiengangs \getCourseName\par
+ der Dualen Hochschule Baden-Württemberg \getDHBWLocation
+
+ \rule{\textwidth}{.5mm}\bigskip
+
+ \textsc{\large Thema \ifcsempty{iodhbwm@thesis@second@title}{}{A}}
+
+ {\bfseries \getThesisTitle}\bigskip
+
+ \ifcsempty{iodhbwm@thesis@second@title}{}{%
+ \textsc{\large Thema B}\par
+ %\tikz{\node (1) [draw, rounded rectangle] {Kolloquium};}
+ {\bfseries \getThesisSecondTitle}
+ }{}
+
+ \rule{\textwidth}{.5mm}
+
+ \vfill
+
+ \par
+ {\bfseries\large \getAuthor}\par
+ \getDate
+
+ \vfill
+
+ \small{%
+ \begin{tabularx}{\textwidth}{@{}lX@{}}
+ \toprule
+ Bearbeitungszeitraum: & \getProcessingPeriod\\
+ Matrikelnummer, Kurs: & \getStudentId, \getCourseId\\
+ \ifcsempty{iodhbwm@institute@section}{}{Abteilung: & \getInstituteSection\\}%
+ Ausbildungsfirma: & \getInstitute\\
+ \ifbool{iodhbwm@if@print@location}{Ort: & \getLocation\\}{}%
+ Betreuer: & \getSupervisor\\
+ Unterschrift Betreuer & \rule[-.5cm]{.5\columnwidth}{.5pt}
+ \end{tabularx}
+ }
+ \cleardoublepage
+\end{titlepage}
diff --git a/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-sa.def b/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-sa.def
new file mode 100644
index 0000000000..b1cab1a480
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage-sa.def
@@ -0,0 +1,46 @@
+\begin{titlepage}
+ \centering
+ \includegraphics[height=1.7cm]{\getDHBWLogo}
+
+ \Large\textsc{Studienarbeit}
+
+ \normalsize
+ des Studiengangs \getCourseName\par
+ der Dualen Hochschule Baden-Württemberg \getDHBWLocation
+
+ \rule{\textwidth}{.5mm}\bigskip
+
+ \textsc{\large Thema \ifcsempty{iodhbwm@thesis@second@title}{}{A}}
+
+ {\bfseries \getThesisTitle}\bigskip
+
+ \ifcsempty{iodhbwm@thesis@second@title}{}{%
+ \textsc{\large Thema B}\par
+ %\tikz{\node (1) [draw, rounded rectangle] {Kolloquium};}
+ {\bfseries \getThesisSecondTitle}
+ }{}
+
+ \rule{\textwidth}{.5mm}
+
+ \vfill
+
+ von\par
+ {\bfseries\large \getAuthor}\par
+ \getDate
+
+ \vfill
+
+ \small{%
+ \begin{tabularx}{\textwidth}{@{}lX@{}}
+ \toprule
+ Bearbeitungszeitraum: & \getProcessingPeriod\\
+ Matrikelnummer, Kurs: & \getStudentId, \getCourseId\\
+% Abteilung: & \getInstituteSection\\
+ Ausbildungsfirma: & \getInstitute\\
+ \ifbool{iodhbwm@if@print@location}{Ort: & \getLocation\\}{}%
+ Betreuer: & \getSupervisor\\
+% Unterschrift Betreuer & \rule[-.5cm]{.5\columnwidth}{.5pt}
+ \end{tabularx}
+ }
+ \cleardoublepage
+\end{titlepage}
diff --git a/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage.def b/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage.def
new file mode 100644
index 0000000000..33b50837a2
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/tex/dhbw-titlepage.def
@@ -0,0 +1,74 @@
+\begin{titlepage}
+ \begin{minipage}[c]{.30\textwidth}
+ \includegraphics[height=1.7cm]{dhbw-logo}
+ \end{minipage}
+ \hfill
+ \begin{minipage}[c]{.30\textwidth}
+ \centering
+ \includegraphics[height=1.7cm]{example-image}
+ \end{minipage}
+ \hfill
+ \begin{minipage}[c]{.30\textwidth}
+ \raggedleft
+ \includegraphics[height=1.7cm]{example-image}
+ \end{minipage}
+
+ \begin{center}
+ \Large\textsc{Arbeit}
+
+ \normalsize
+ des Studiengangs Informationstechnik\par
+ der Dualen Hochschule Baden-Württemberg \getDHBWLocation
+ \end{center}
+
+ \rule{\textwidth}{.5mm}\bigskip
+ % \begin{minipage}[t]{.45\textwidth}
+ % \centering\textsc{Thema A}
+ %
+ % \bfseries\large \dots
+ % \hfill
+ % \begin{minipage}[t]{.45\textwidth}
+ % \centering\textsc{Thema B}
+ %
+ % \tikz{\node (1) [draw, rounded rectangle] {Kolloquium};}\par
+ %
+ % \bfseries\large \dots
+ % \end{minipage}
+ % \\[1em]
+
+ \centering\textsc{\large Thema \ifcsempty{iodhbwm@thesis@second@title}{}{A}}
+
+ {\bfseries \getThesisTitle}\bigskip
+
+ \ifcsempty{iodhbwm@thesis@second@title}{}{%
+ \textsc{\large Thema B}\par
+ %\tikz{\node (1) [draw, rounded rectangle] {Kolloquium};}
+ {\bfseries \getThesisSecondTitle}
+ }{}
+
+ \rule{\textwidth}{.5mm}
+
+ \vfill
+
+ \begin{center}
+ von\par
+ \centering{\bfseries\large \getAuthor}\par
+ \today
+ \end{center}
+
+ \vfill
+
+ \small{%
+ \begin{tabularx}{\textwidth}{@{}lX@{}}
+ \toprule
+ Bearbeitungszeitraum: & \getProcessingPeriod\\
+ Matrikelnummer, Kurs: & \getStudentId\\
+ Abteilung: & \getInstituteSection\\
+ Ausbildungsfirma: & \getInstitute\\
+ Standort: & \getLocation\\
+ Betreuer: & \getSupervisor\\
+ Unterschrift Betreuer & \rule[-.5cm]{.5\columnwidth}{.5pt}
+ \end{tabularx}
+ }
+ \cleardoublepage
+\end{titlepage}
diff --git a/macros/latex/contrib/iodhbwm/tex/iodhbwm-templates.sty b/macros/latex/contrib/iodhbwm/tex/iodhbwm-templates.sty
new file mode 100644
index 0000000000..ec23a7f018
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/tex/iodhbwm-templates.sty
@@ -0,0 +1,482 @@
+% ----------------------------------------------------------
+% iodhbwm-templates package
+%
+% inofficial package for DHBW Mannheim to simplify writing
+% theses with the given requirements
+% ----------------------------------------------------------
+% Felix Faltin
+% E-Mail: ffaltin91@gmail.com
+% ----------------------------------------------------------
+% Copyright 2017 Felix Faltin
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Felix Faltin.
+%
+% ----------------------------------------------------------
+
+\newcommand*{\iodhbwm@pkg@version}{v1.1.0}
+\newcommand*{\iodhbwm@pkg@date}{2019-05-15}
+\newcommand*{\iodhbwm@pkg@info}{Inoffical DHBW Mannheim thesis package}
+\newcommand*{\iodhbwm@pkg@name}{iodhbwm-templates}
+
+\ProvidesPackage{\iodhbwm@pkg@name}[%
+\iodhbwm@pkg@date\space
+\iodhbwm@pkg@version\space
+\iodhbwm@pkg@info]
+\RequirePackage{etoolbox, pgfopts}
+
+%---------------------------------------------------
+% KOMA-Script settings
+%---------------------------------------------------
+\@ifundefined{KOMAClassName}{%
+ \PackageWarningNoLine{iodhbwm}{This package is designed to work with KOMA-Script. Please use either `scrartcl`, `scrreprt` or `scrbook`}
+}{}
+\RequirePackage[figure,table]{totalcount}
+\RequirePackage{xpatch}
+
+%\PassOptionsToPackage{table}{xcolor}
+%\RequirePackage{graphicx, tikz} % Required inside titlepage templates
+%\RequirePackage{tabularx, booktabs} % Required inside titlepage templates
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% OPTIONS AND FLAGS %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ----------------------------------------------------------
+% Define booleans
+% ----------------------------------------------------------
+\newbool{iodhbwm@if@hasSecondTopic}
+\newbool{iodhbwm@if@customtitlepage}
+\newbool{iodhbwm@if@customdeclaration}
+\newbool{iodhbwm@if@print@titlepage}
+\newbool{iodhbwm@if@print@declaration}
+\newbool{iodhbwm@if@print@abstract}
+\newbool{iodhbwm@if@print@toc}
+\newbool{iodhbwm@if@print@lot}
+\newbool{iodhbwm@if@print@lof}
+\newbool{iodhbwm@if@print@location}
+\newbool{iodhbwm@if@oldpagestyle}
+
+% ----------------------------------------------------------
+% Define internal commands
+% ----------------------------------------------------------
+\newcommand*{\iodhbwm@file@prefix}{dhbw}
+\newcommand*{\iodhbwm@file@ending}{.def}
+\edef\iodhbwm@file@titlepage@default{\iodhbwm@file@prefix-titlepage\iodhbwm@file@ending}
+\edef\iodhbwm@file@titlepage@ba{\iodhbwm@file@prefix-titlepage-ba\iodhbwm@file@ending}
+\edef\iodhbwm@file@titlepage@sa{\iodhbwm@file@prefix-titlepage-sa\iodhbwm@file@ending}
+\edef\iodhbwm@file@titlepage@pa{\iodhbwm@file@prefix-titlepage-pa\iodhbwm@file@ending}
+\edef\iodhbwm@file@declaration@default{\iodhbwm@file@prefix-declaration\iodhbwm@file@ending}
+\edef\iodhbwm@file@abstract@default{\iodhbwm@file@prefix-abstract.inc}
+
+\def\iodhbwm@bachelor@type@boe{Bachelor of Engineering}
+\def\iodhbwm@bachelor@type@bos{Bachelor of Science}
+\def\iodhbwm@bachelor@type@boa{Bachelor of Arts}
+
+\def\iodhbwm@thesis@type@ba{Bachelorarbeit}
+\def\iodhbwm@thesis@type@pa{Projektarbeit}
+\def\iodhbwm@thesis@type@sa{Studienarbeit}
+
+\def\iodhbwm@dhbw@location@default{Mannheim}
+\def\iodhbwm@dhbw@logo@default{dhbw-logo}
+
+%---------------------------------------------------
+% Defining package options
+%---------------------------------------------------
+\pgfkeys{
+ /dhbw/.cd,
+ titlepage/.store in = \@iodhbwm@file@titlepage,
+ titlepage/.default = \iodhbwm@file@titlepage@default,
+ titlepage = \iodhbwm@file@titlepage@default,
+ declaration/.store in = \@iodhbwm@file@declaration,
+ declaration/.default = \iodhbwm@file@declaration@default,
+ declaration = \iodhbwm@file@declaration@default,
+ abstract/.store in = \@iodhbwm@file@abstract,
+ abstract/.default = \iodhbwm@file@abstract@default,
+ abstract = = \iodhbwm@file@abstract@default,
+ bachelor degree type/.store in = \iodhbwm@bachelor@degree,
+ bachelor degree type/.default = \iodhbwm@bachelor@type@boe,
+ bachelor degree type = \iodhbwm@bachelor@type@boe,
+ bachelor degree/.is choice,
+ bachelor degree/BoE/.estyle = {/dhbw/bachelor degree type = \iodhbwm@bachelor@type@boe},
+ bachelor degree/BoS/.estyle = {/dhbw/bachelor degree type = \iodhbwm@bachelor@type@bos},
+ bachelor degree/BoA/.estyle = {/dhbw/bachelor degree type = \iodhbwm@bachelor@type@boa},
+ thesis type name/.store in = \iodhbwm@thesis@type,
+ thesis type name/.default = \iodhbwm@thesis@type@ba,
+ thesis type name = \iodhbwm@thesis@type@ba,
+ thesis type/.is choice,
+ thesis type/BA/.estyle = {%
+ /dhbw/titlepage = \iodhbwm@file@titlepage@ba,%
+ /dhbw/thesis type name = \iodhbwm@thesis@type@ba%
+ },
+ thesis type/SA/.estyle = {%
+ /dhbw/titlepage = \iodhbwm@file@titlepage@sa,%
+ /dhbw/thesis type name = \iodhbwm@thesis@type@sa%
+ },
+ thesis type/PA/.estyle = {%
+ /dhbw/titlepage = \iodhbwm@file@titlepage@pa,%
+ /dhbw/thesis type name = \iodhbwm@thesis@type@pa%
+ },
+ thesis title/.store in = \iodhbwm@thesis@title,
+ thesis title = {},
+ thesis second title/.store in = \iodhbwm@thesis@second@title,
+ thesis second title = {},
+ author/.store in = \iodhbwm@author,
+ author = {},
+ date/.code = {%
+ \def\iodhbwm@date{#1}%
+ \def\iodhbwm@date@submission{#1}%
+ },
+ date = \today,
+ submission date/.store in = \iodhbwm@date@submission,
+ location/.store in = \iodhbwm@location,
+ location = {},
+ dhbw location/.store in = \iodhbwm@dhbw@location,
+ dhbw location/.default = \iodhbwm@dhbw@location@default,
+ dhbw location = \iodhbwm@dhbw@location@default,
+ dhbw logo/.store in = \iodhbwm@dhbw@logo,
+ dhbw logo/.default = \iodhbwm@dhbw@logo@default,
+ dhbw logo = \iodhbwm@dhbw@logo@default,
+ institute/.store in = \iodhbwm@institute,
+ institute section/.store in = \iodhbwm@institute@section,
+ institute section = {},
+ institute logo/.store in = \iodhbwm@institute@logo,
+ institute logo = {},
+ student id/.store in = \iodhbwm@student@id,
+ student id = {},
+ course/name/.store in = \iodhbwm@course@name,
+ course/name = {Informationstechnik},
+ course/id/.store in = \iodhbwm@course@id,
+ course/id = {},
+ supervisor/.store in = \iodhbwm@supervisor,
+ supervisor = {},
+ processing period/.store in = \iodhbwm@processing@period,
+ processing period = {},
+ reviewer/.store in = \iodhbwm@reviewer,
+ reviewer = {},
+ titlepage/print location/.is if = iodhbwm@if@print@location,
+ intro/print titlepage/.is if = iodhbwm@if@print@titlepage,
+ intro/print abstract/.is if = iodhbwm@if@print@abstract,
+ intro/abstract file/.search also = {/dhbw/abstract},
+ intro/print declaration/.is if = iodhbwm@if@print@declaration,
+ intro/print toc/.is if = iodhbwm@if@print@toc,
+ intro/print lof/.is if = iodhbwm@if@print@lof,
+ intro/print lot/.is if = iodhbwm@if@print@lot,
+ intro/print all lists/.style = {%
+ /dhbw/intro/print toc = true,
+ /dhbw/intro/print lot = true,
+ /dhbw/intro/print lof = true
+ },
+ intro/print all/.style = {%
+ /dhbw/intro/print all lists = true,
+ /dhbw/intro/print titlepage = true,
+ /dhbw/intro/print declaration = true,
+ /dhbw/intro/print abstract = true
+ },
+ intro/append custom content/.store in = \iodhbwm@append@custom@content,
+ intro/append custom content = {},
+ intro/roman page numbers/.is if = iodhbwm@if@oldpagestyle
+}
+
+\newrobustcmd\dhbwsetup[1]{\pgfqkeys{/dhbw}{#1}}
+
+\ProcessPgfOptions{/dhbw}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% DEFINE PACKAGE COMMANDS %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% Some of these commands are required to print
+% predefined titlepages.
+% required
+%---------------------------------------------------
+% GETTER
+%---------------------------------------------------
+\newcommand{\getAuthor}{%
+ \ifdefempty{\iodhbwm@author}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option author required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space author = {Your name}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@author}%
+}
+% required
+\newcommand{\getThesisTitle}{%
+ \ifdefempty{\iodhbwm@thesis@title}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option thesis title required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space thesis title = {Your title}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@thesis@title}%
+}
+% optional
+\newcommand{\getThesisSecondTitle}{\iodhbwm@thesis@second@title}
+
+% required
+\newcommand{\getLocation}{%
+ \ifdefempty{\iodhbwm@location}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option location required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space location = {Your location}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@location}%
+}
+% required
+\newcommand{\getCourseName}{%
+ \ifdefempty{\iodhbwm@course@name}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option course/name required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space course/name = {Your course name}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@course@name}%
+}
+\newcommand{\getCourseId}{%
+ \ifdefempty{\iodhbwm@course@id}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option course required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space course/id = {Your course id}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@course@id}%
+}
+% required
+\newcommand{\getStudentId}{%
+ \ifdefempty{\iodhbwm@student@id}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option student id required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space student id = {Your student id}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@student@id}%
+}
+% optional
+\newcommand{\getInstituteLogo}{\iodhbwm@institute@logo}
+\newcommand{\getInstitute}{%
+ \ifdefempty{\iodhbwm@institute}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option institute required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space institute = {Your institute}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@institute}%
+}
+\newcommand{\getInstituteSection}{%
+ \ifdefempty{\iodhbwm@institute@section}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option institute section required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space institute section = {Your institute section}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@institute@section}%
+}
+\newcommand{\getSupervisor}{%
+ \ifdefempty{\iodhbwm@supervisor}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option supervisor required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space supervisor = {Your supervisor}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@supervisor}%
+}
+\newcommand{\getProcessingPeriod}{%
+ \ifdefempty{\iodhbwm@processing@period}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option supervisor required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space processing period = {Your processing period}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@processing@period}%
+}
+\newcommand{\getDate}{\iodhbwm@date}
+\newcommand{\getSubmissionDate}{\iodhbwm@date@submission}
+\newcommand{\getReviewer}{%
+ \ifdefempty{\iodhbwm@reviewer}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option reviewer required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space reviewer = {Your reviewer}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@reviewer}%
+}
+\newcommand{\getBachelorDegree}{%
+ \ifdefempty{\iodhbwm@bachelorDegree}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option bachelor degree required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space bachelor degree = BoE | BoS | BoA\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@bachelor@degree}%
+}
+\newcommand{\getThesisType}{%
+ \ifdefempty{\iodhbwm@thesis@type}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option thesis type required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space thesis type = BA | SA | PA\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@thesis@type}%
+}
+\newcommand{\getDHBWLocation}{%
+ \ifdefempty{\iodhbwm@dhbw@location}{%
+ \PackageError{\iodhbwm@pkg@name}{%
+ Option dhbw location required!\MessageBreak
+ Please use\MessageBreak\protect\dhbwsetup{\MessageBreak
+ \space\space dhbw location = {Your DHBW Location}\MessageBreak
+ }}{See documentation for more information}%
+ }{\iodhbwm@dhbw@location}%
+}
+\newcommand{\getDHBWLogo}{\iodhbwm@dhbw@logo}
+
+% ----------------------------------------------------------
+% Commands for structuring
+% ----------------------------------------------------------
+
+% Makro zum Einfügen einer Titelseite
+\newcommand{\dhbwtitlepage}{%
+ \InputIfFileExists{\@iodhbwm@file@titlepage}{}{%
+ \input{\pgfkeysvalueof{/dhbw/titlepage/.@def}}%
+ \PackageWarning{\iodhbwm@pkg@name}{The passed file `\@iodhbwm@file@titlepage` was not found.\MessageBreak Used default titlepage instead.}
+ }%
+}
+
+% Makro zum Einfügen der Selbsterklärung
+\newcommand{\dhbwdeclaration}{%
+ \InputIfFileExists{\@iodhbwm@file@declaration}{}{%
+ \input{\pgfkeysvalueof{/dhbw/declaration/.@def}}%
+ \PackageWarning{\iodhbwm@pkg@name}{The passed declaration `\@iodhbwm@file@declaration` is unknown.\MessageBreak Used default declaration instead.}
+ }%
+}
+
+% Input abstract
+\newcommand{\dhbwabstract}{%
+ \InputIfFileExists{\@iodhbwm@file@abstract}{}{%
+ \PackageInfo{\iodhbwm@pkg@name}{The passed abstract `\@iodhbwm@file@abstract` could not be found.}
+ }%
+}
+
+% Remove page number in toc from lof/lot/...loX
+%https://tex.stackexchange.com/questions/440188/remove-page-numbers-of-lof-lot-in-toc
+\RedeclareSectionCommand[
+ tocpagenumberformat=\tocchapterpagenumberformat
+]{chapter}
+\newbool{iodhbwm@if@toc@unnumbered}
+\newcommand*{\tocchapterpagenumberformat}[1]{%
+ {\ifbool{iodhbwm@if@toc@unnumbered}{}{\usekomafont{chapterentrypagenumber}#1}}%
+}
+
+% Switch pagestyle
+% Deactivate page numbers in ToC
+\newcommand{\dhbwfrontmatter}{%
+ \ifbool{iodhbwm@if@oldpagestyle}{%
+ \pagenumbering{Roman}%
+ }{%
+ \pagestyle{empty}%
+ \renewcommand*{\chapterpagestyle}{empty}%
+ \hypersetup{pageanchor=false}%
+ \addtocontents{toc}{\booltrue{iodhbwm@if@toc@unnumbered}}%
+ }%
+}
+
+% Switch pagestyle
+% Start page numbering
+% Set linespacing
+% Activate page numbers in ToC
+\newcommand{\dhbwmainmatter}{%
+ \cleardoubleoddpage
+ \pagestyle{scrheadings}
+ \renewcommand*{\chapterpagestyle}{plain}
+ \hypersetup{pageanchor=true}
+ \pagenumbering{arabic}
+ \onehalfspacing
+ \addtocontents{toc}{\boolfalse{iodhbwm@if@toc@unnumbered}}
+}
+
+% Print default structure
+\newcommand{\dhbwprintintro}{%
+ \dhbwfrontmatter
+
+ \ifbool{iodhbwm@if@print@titlepage}{\dhbwtitlepage}{}
+ \ifbool{iodhbwm@if@print@declaration}{\dhbwdeclaration}{}
+ \ifbool{iodhbwm@if@print@abstract}{\dhbwabstract}{}
+ \ifbool{iodhbwm@if@print@toc}{\tableofcontents}{}
+ % Print lof only if at least one figure is available
+ \ifbool{iodhbwm@if@print@lof}{%
+ \iftotalfigures
+ \listoffigures
+ \fi
+ }{}
+ % Print lot only if at least one table is available
+ \ifbool{iodhbwm@if@print@lot}{%
+ \iftotaltables
+ \listoftables
+ \fi
+ }{}
+ \ifcsempty{iodhbwm@custom@list}{}{\iodhbwm@append@custom@content}
+%
+ \dhbwmainmatter
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% APPENDIX %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\pretocmd\appendix{%
+ \booltrue{iodhbwm@cls@if@appendix}%
+ \singlespacing%
+ \ifbool{iodhbwm@cls@if@bib}{\iodhbwm@printbibliography}{}
+ % Add all entries from the appendix to the \listofappendices
+ \renewcommand*{\ext@toc}{atoc}%
+ \scr@ifundefinedorrelax{hypersetup}{}{\hypersetup{bookmarkstype=atoc}}%
+}{%
+ \typeout{iodhbwm patched \noexpand\appendix successfully}
+}{}
+
+% Prepend "Anhang" to chapter name
+\KOMAoptions{appendixprefix}
+
+\DeclareNewTOC[%
+ listname = {\appendixname},
+ type = appendix,
+ types = appendices
+]{atoc}
+
+% Prepend "Anhang" inside ToC
+%https://texwelt.de/wissen/fragen/2123/wie-bekomme-ich-anhang-vor-den-buchstaben-im-inhaltsverzeichnis
+\providecommand*\texorpdfstring[2]{#1}% falls hyperref nicht geladen wird
+\providecommand*\appendixmore{}% falls appendixprefix=false
+\newcommand*{\SavedOriginalchaptertocentry}{}
+\appto\appendixmore{%
+ \let\SavedOriginaladdchaptertocentry\addchaptertocentry
+ \renewcommand*{\addchaptertocentry}[2]{%
+ \ifstr{#1}{}{% Eintrag ohne Nummer
+ \SavedOriginalchaptertocentry{#1}{#2}%
+ }{% Eintrag mit Nummer
+ \SavedOriginaladdchaptertocentry{}{%
+ \texorpdfstring{
+ \string\expandafter\string\MakeUppercase\string\appendixname
+ ~#1:\string\enskip{}#2
+ }{#2}%
+ }%
+ }%
+ }%
+}
+
+\endinput
diff --git a/macros/latex/contrib/iodhbwm/tex/iodhbwm.cls b/macros/latex/contrib/iodhbwm/tex/iodhbwm.cls
new file mode 100644
index 0000000000..508c307183
--- /dev/null
+++ b/macros/latex/contrib/iodhbwm/tex/iodhbwm.cls
@@ -0,0 +1,480 @@
+% ----------------------------------------------------------
+% iodhbwm class
+%
+% inofficial package for DHBW Mannheim to simplify writing
+% theses with the given requirements
+% ----------------------------------------------------------
+% Felix Faltin
+% E-Mail: ffaltin91@gmail.com
+% ----------------------------------------------------------
+% Copyright 2017-2019 Felix Faltin
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Felix Faltin.
+%
+% ----------------------------------------------------------
+
+\newcommand*{\iodhbwm@cls@version}{v1.1.0}
+\newcommand*{\iodhbwm@cls@date}{2019-05-15}
+\newcommand*{\iodhbwm@cls@info}{Inoffical DHBW Mannheim thesis class}
+
+\ProvidesClass{iodhbwm}[%
+\iodhbwm@cls@date\space
+\iodhbwm@cls@version\space
+\iodhbwm@cls@info]
+
+\RequirePackage{etoolbox, pgfopts, scrlfile, xstring}
+
+\providecommand*{\iodhbwm@cls@baseclass}{scrreprt}
+\providecommand*{\iodhbwm@cls@baseclass@options}{}
+\let\iodhbwm@languages\@empty
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% OPTIONS AND FLAGS %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ----------------------------------------------------------
+% Define booleans
+% ----------------------------------------------------------
+\newbool{iodhbwm@cls@if@preamble}\booltrue{iodhbwm@cls@if@preamble}
+\newbool{iodhbwm@cls@if@templates}
+\newbool{iodhbwm@cls@if@bib}
+\newbool{iodhbwm@cls@if@bib@print}\booltrue{iodhbwm@cls@if@bib@print}
+\newbool{iodhbwm@cls@if@tocstotoc}
+\newbool{iodhbwm@cls@if@isdebug}
+\newbool{iodhbwm@cls@if@print@minus}
+\newbool{iodhbwm@cls@if@print}
+\newbool{iodhbwm@cls@if@auto@intro@custom}
+\newbool{iodhbwm@cls@if@auto@intro@default}
+\newbool{iodhbwm@cls@if@auto@intro@all}
+\newbool{iodhbwm@cls@if@appendix}
+
+% ----------------------------------------------------------
+% Define available options
+% ----------------------------------------------------------
+\pgfkeys{
+ iodhbwm/.cd,
+ language/.code = \appto{\iodhbwm@languages}{#1,},
+ mainlanguage/.code = {%
+ \appto{\iodhbwm@languages}{main=#1,}%
+ \def\iodhbwm@main@language{#1}%
+ },
+ load-preamble/.is if = iodhbwm@cls@if@preamble,
+ load-dhbw-templates/.is if = iodhbwm@cls@if@templates,
+ add-tocs-to-toc/.is if = iodhbwm@cls@if@tocstotoc,
+ add-bibliography/.is if = iodhbwm@cls@if@bib,
+ add-bibliography-/.code = {%
+ \booltrue{iodhbwm@cls@if@bib}%
+ \boolfalse{iodhbwm@cls@if@bib@print}%
+ },
+ bib-file/.store in = \iodhbwm@bib@file,
+ bib-file = {},
+ biblatex/bibstyle/.store in = \iodhbwm@bib@bibstyle@opt,
+ biblatex/citestyle/.store in = \iodhbwm@bib@citestyle@opt,
+ biblatex/style/.style = {biblatex/bibstyle=#1,biblatex/citestyle=#1},
+ biblatex/style = numeric-comp,
+ debug/.is if = iodhbwm@cls@if@isdebug,
+ print-/.is if = iodhbwm@cls@if@print@minus,
+ print/.code = {%
+ \booltrue{iodhbwm@cls@if@print}%
+ \booltrue{iodhbwm@cls@if@print@minus}%
+ },
+ auto-intro-pages/.is choice,
+ auto-intro-page/none/.code = {},
+ auto-intro-pages/custom/.is if = iodhbwm@cls@if@auto@intro@custom,
+ auto-intro-pages/default/.is if = iodhbwm@cls@if@auto@intro@default,
+ auto-intro-pages/all/.is if = iodhbwm@cls@if@auto@intro@all,
+ auto-intro-pages/.default = default,
+ .unknown/.code = \edef\iodhbwm@cls@baseclass@options{\pgfkeyscurrentname}
+}
+
+\ProcessPgfOptions{/iodhbwm}
+
+% ----------------------------------------------------------
+% Default class option
+% ----------------------------------------------------------
+
+% If unknown options are passed prepend a comma (,)
+% before prepend again and always the predefind options.
+\ifcsempty{iodhbwm@cls@baseclass@options}{}%
+{%
+ \preto{\iodhbwm@cls@baseclass@options}{,}%
+}
+\preto{\iodhbwm@cls@baseclass@options}{%
+ fontsize=12pt,%
+ parskip=half-%
+}%
+
+\LoadClass[\iodhbwm@cls@baseclass@options]{\iodhbwm@cls@baseclass}
+
+% ----------------------------------------------------------
+% Set KOMA options
+% ----------------------------------------------------------
+\ifbool{iodhbwm@cls@if@tocstotoc}{%
+ \KOMAoptions{%
+ listof = totoc
+ }%
+}{}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% LANGUAGE %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ----------------------------------------------------------
+% Defining language
+% ----------------------------------------------------------
+\ifcsempty{iodhbwm@languages}{}{%
+ % Delete trailing comma
+ \IfEndWith{\iodhbwm@languages}{,}{%
+ \StrGobbleRight{\iodhbwm@languages}{1}[\iodhbwm@languages@list]
+ }{\let\iodhbwm@languages@list\iodhbwm@languages}
+
+ % If no main language was set use last language
+ % as main language
+ \ifundef{\iodhbwm@main@language}{%
+ \StrCount{\iodhbwm@languages@list}{,}[\numofelem]
+ \ifnum\numofelem>0\relax
+ \StrBehind[\numofelem]{\iodhbwm@languages@list}{,}[\iodhbwm@main@language]%
+ \else
+ \let\iodhbwm@main@language\iodhbwm@languages@list%
+ \fi
+ }{}
+ \RequirePackage[\iodhbwm@languages@list]{babel}
+ \RequirePackage[autostyle]{csquotes}
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% PACKAGES %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ----------------------------------------------------------
+% Load default packages
+% ----------------------------------------------------------
+\ifbool{iodhbwm@cls@if@preamble}{%
+ \RequirePackage{lmodern}
+ \RequirePackage{microtype}
+ \RequirePackage{scrhack}
+ \RequirePackage{setspace}
+ \PassOptionsToPackage{intlimits}{amsmath}
+ \RequirePackage{mathtools}
+ \PassOptionsToPackage{
+ table,
+ dvipsnames
+ }{xcolor}
+ \RequirePackage{graphicx}
+ \RequirePackage[most]{tcolorbox}
+ \RequirePackage{tabularx}
+ \RequirePackage{booktabs}
+% \RequirePackage{multirow}
+}{}
+
+\ifbool{iodhbwm@cls@if@templates}{%
+ \RequirePackage{iodhbwm-templates}
+}{}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% DESIGN %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% ----------------------------------------------------------
+% Defining custom colors
+% ----------------------------------------------------------
+\@ifpackageloaded{xcolor}{}{\RequirePackage{xcolor}}
+
+%https://tex.stackexchange.com/questions/419842/compile-error-illegal-unit-only-with-texlive-2015
+\patchcmd{\@hex@@Hex}{f\else}{F\else}{\typeout{Patching xcolor for TL15}}{}
+\definecolor{DHBW-red}{HTML}{e2001a}
+\definecolor{DHBW-blue}{HTML}{026f93}
+\definecolor{DHBW-darkblue}{HTML}{23527c}
+\definecolor{DHBW-light}{HTML}{ffffff}
+\definecolor{DHBW-font}{HTML}{5c6971}
+\definecolor{DHBW-dark-font}{HTML}{333333}
+
+% ----------------------------------------------------------
+% Page settings
+% ----------------------------------------------------------
+\@ifpackageloaded{geometry}{}{\RequirePackage{geometry}}
+\geometry{%
+ top = 3cm, % Seitenabstand oben
+ right = 2.5cm, % Seitenabstand recht
+ bottom = 3cm, % Seitenabstand unten
+ left = 2.5cm, % Seitenabstand links
+ bindingoffset = 1cm, % Bindekorrektur
+ includeheadfoot
+}
+
+% ----------------------------------------------------------
+% Header and Footer
+% ----------------------------------------------------------
+\@ifpackageloaded{scrlayer-scrpage}{}{%
+ \RequirePackage[%
+ headsepline,
+ footsepline,
+ plainfootsepline,
+ clines,
+ automark,
+ ]{scrlayer-scrpage}
+}%
+\automark[section]{chapter}
+\automark*{section}
+\clearpairofpagestyles % Leeren von Kopf- und Fußzeile
+%\ohead{\pagemark} % Kopfzeile außen: Seitenzahl
+\ihead{\headmark} % Kopfzeile innen: chapter und section Titel
+\cfoot[-~\pagemark~-]{-~\pagemark~-} % Fußzeile mitte: Seitenzahl
+
+% ----------------------------------------------------------
+% Numbers and units
+% ----------------------------------------------------------
+\ifbool{iodhbwm@cls@if@preamble}{%
+ \@ifpackageloaded{siunitx}{}{\RequirePackage{siunitx}}%
+ \sisetup{%
+ % mode = math, % text is printed using a math font
+ detect-all,
+ separate-uncertainty = true,
+ locale = DE,
+ per-mode = fraction,
+ range-phrase= -,
+ range-units=single
+ }%
+}{}%
+
+% ----------------------------------------------------------
+% Enable references and links
+% ----------------------------------------------------------
+\AfterPackage!{hyperref}{%
+ \ifdef{\iodhbwm@main@language}{%
+ \PassOptionsToPackage{\iodhbwm@main@language}{cleveref}
+ }{}
+ \RequirePackage[%
+ noabbrev,
+ nameinlink
+ ]{cleveref}
+}
+% Load hyperref always at the end of the preambel
+% To avoid a race condition with biblatex
+% hyperref have to be placed before biblatex
+% when \AtEndPreamble is used
+% https://tex.stackexchange.com/questions/417556/hyperref-doesnt-highlight-cites
+\AtEndPreamble{%
+ \ifdef{\iodhbwm@main@language}{%
+ \PassOptionsToPackage{\iodhbwm@main@language}{hyperref}
+ }{}
+ \RequirePackage{hyperref}
+ \hypersetup{
+ pdftitle = {\ifdef{\getThesisTitle}{\getThesisTitle}{undefined}},
+ pdfsubject = {\ifdef{\getThesisTitle}{\getThesisTitle}{undefined}},
+ pdfauthor = {\ifdef{\getAuthor}{\getAuthor}{undefined}},
+ pdfcreator = {pdf\LaTeX},
+ pdfproducer = {pdf\LaTeX},
+ pdftoolbar = true,
+ pdfmenubar = false,
+ bookmarksopen = false, % bookmarksopen ODER bookmarksopenlevel!
+ }%
+ \ifbool{iodhbwm@cls@if@print@minus}{%
+ \hypersetup{hidelinks}
+ }{%
+ \hypersetup{%
+ colorlinks,
+ allcolors=DHBW-red,
+ urlcolor=DHBW-blue%
+ }%
+ }%
+}
+% hyperref loads auxhook, which does not work correctly if it is loaded
+% via \AtEndPreamble. So we load it immediately to avoid problems:
+\RequirePackage{auxhook}
+
+% ----------------------------------------------------------
+% Format captions and listings
+% ----------------------------------------------------------
+
+\@ifpackageloaded{caption}{}{\RequirePackage{caption}}
+% All captions
+\captionsetup{%
+ format=hang,
+ % singlelinecheck=false,
+ font=small,
+ labelfont=bf
+}
+
+\ifbool{iodhbwm@cls@if@templates}{%
+ \@ifpackageloaded{listings}{}{\RequirePackage{listings}}
+ % Default settings, color depend on options
+ \lstset{
+ numbers=left,
+ showstringspaces=false,
+ tabsize=2,
+ breaklines=true,
+ xleftmargin=17pt,
+ framexleftmargin=17pt,
+ }
+
+ \DeclareCaptionFont{DHBWlisting}{\color{DHBW-light}}
+ \DeclareCaptionFont{print}{\color{black}}
+ \DeclareCaptionFormat{listing}{%
+ \colorbox{DHBW-red}{%
+ \parbox{\dimexpr\textwidth-2\fboxsep\relax}{#1#2#3}%
+ }%
+ }
+
+ \DeclareCaptionFormat{listingprint}{%
+ \colorbox{white}{%
+ \parbox{\dimexpr\textwidth-2\fboxsep\relax}{#1#2#3}%
+ }%
+ }
+
+ \captionsetup[lstlisting]{%
+ format=listing,
+ singlelinecheck=false,
+ margin=0pt
+ }%
+
+ \ifbool{iodhbwm@cls@if@print}{%
+ \captionsetup[lstlisting]{%
+ format=listingprint,
+ singlelinecheck=false,
+ margin=0pt,
+ font={print,sf},
+ }%
+
+ \lstset{
+ basicstyle=\footnotesize\ttfamily\color{DHBW-dark-font},
+ backgroundcolor=\color{DHBW-light},
+ rulecolor=\color{black},
+ commentstyle=\color{DHBW-font},
+ keywordstyle=\color{DHBW-dark-font},
+ numberstyle=\scriptsize\color{DHBW-font},
+ stringstyle=\color{DHBW-dark-font},
+ frame=tb,
+ captionpos=b,
+ aboveskip=\baselineskip
+ }%
+ }{%
+ \captionsetup[lstlisting]{%
+ format=listing,
+ singlelinecheck=false,
+ margin=0pt,
+ font={DHBWlisting,sf},
+ }%
+
+ \lstset{
+ basicstyle=\footnotesize\ttfamily\color{DHBW-dark-font},
+ backgroundcolor=\color{DHBW-light},
+ rulecolor=\color{DHBW-red},
+ commentstyle=\color{DHBW-font},
+ keywordstyle=\color{DHBW-darkblue},
+ numberstyle=\scriptsize\color{DHBW-font},
+ stringstyle=\color{purple},
+ frame=b,
+ captionpos=t,
+ }
+ }
+}{}
+
+% ----------------------------------------------------------
+% Auto import titlepage, tocs, ...
+% ----------------------------------------------------------
+\ifboolexpr{bool {iodhbwm@cls@if@templates} and (bool {iodhbwm@cls@if@auto@intro@custom} or bool {iodhbwm@cls@if@auto@intro@default} or bool {iodhbwm@cls@if@auto@intro@all})}{%
+ \ifbool{iodhbwm@cls@if@auto@intro@default}{%
+ \dhbwsetup{%
+ intro/print all,
+ intro/print abstract = false
+ }%
+ }{}
+ \ifbool{iodhbwm@cls@if@auto@intro@all}{%
+ \dhbwsetup{intro/print all}%
+ }{}
+ \AfterEndPreamble{%
+ \dhbwprintintro%
+ }%
+}{}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% BIBLIOGRAPHY %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand{\iodhbwm@printbibliography}{%
+ \ifboolexpr{bool {iodhbwm@cls@if@tocstotoc} and bool {iodhbwm@cls@if@bib@print}}{%
+ \printbibliography[heading=bibintoc]%
+ }{%
+ \ifbool{iodhbwm@cls@if@bib@print}{%
+ \printbibliography%
+ }{}%
+ }%
+}
+
+% Load biblatex if option add-bibliography is set
+% The bibliography is printed at the end of the document. If the option bib-file is set then
+% the class is searching for the given file. Otherwise it try to load dhbw-source.bib.
+% If no file is found a warning is thrown.
+\ifbool{iodhbwm@cls@if@bib}{%
+ \AtEndDocument{%
+ \singlespacing%
+
+ % Don't print the bibliography again.
+ % The appendix takes care about the printing
+ % The congiguration is still required
+ \ifbool{iodhbwm@cls@if@appendix}{}{%
+ \iodhbwm@printbibliography
+ }
+ }%
+ \ifbool{iodhbwm@cls@if@bib@print}{}{\PassOptionsToPackage{hyperref=false}{biblatex}}
+ \RequirePackage[%
+ backend = biber, % bibtex oder biber [default]
+ bibstyle = \iodhbwm@bib@bibstyle@opt,
+ citestyle = \iodhbwm@bib@citestyle@opt,
+ sorting = nty, % Sortierung (Name, Titel, Jahr)
+ natbib = true, % Kompatibilität mit Natbib-Bibliothek
+ block = space, % kleiner horizontaler Platz zwischen den Feldern
+ backrefstyle = three+, % fasst Seiten zusammen, z.B. S. 2f, 6ff, 7-10
+ date = short, % Datumsformat
+ bibwarn = true,
+ texencoding = auto, % auto-detect the input encoding
+ bibencoding = auto, % (auto (equal to tex), <encoding>)
+ isbn = false
+ ]{biblatex}%
+ \ifdefempty{\iodhbwm@bib@file}{%
+ \IfFileExists{dhbw-source.bib}{%
+ \pgfkeys{/iodhbwm/bib-file = dhbw-source.bib}%
+ }{%
+ \ClassWarning{iodhbwm}{Cannot find default dbhw-source.bib file.}%
+ }%
+ }{%
+ \IfFileExists{\iodhbwm@bib@file}{}{%
+ \ClassWarning{iodhbwm}{Couldn't find passed bib file \iodhbwm@bib@file}
+ }%
+ }%
+ \addbibresource{\iodhbwm@bib@file}%
+}{\AtEndDocument{}}%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %
+% DEBUG %
+% %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifbool{iodhbwm@cls@if@isdebug}{%
+ \RequirePackage{blindtext, lipsum}
+}{}
+
+
+\endinput