preambel.tex 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. % Dokumententyp und benutzte Pakete
  2. \documentclass[open=right, % Kapitel darf nur auf rechten Seite beginnen
  3. paper=a4, % DIN-A4-Papier
  4. fontsize=12pt, % Schriftgöße
  5. headings=small, % Kleine Überschriften
  6. headsepline=true, % Trennlinie am Kopf der Seite
  7. footsepline=false, % Keine Trennlinie am Fuß der Seite
  8. bibliography=totoc, % Literaturverzeichnis in das Inhaltsverzeichnis aufnehmen
  9. DIV=7, % Verhältnis der Ränder zum bedruckten Bereich
  10. chapterprefix=true, % Kapitel x vor dem Kapitelnamen
  11. cleardoublepage=plain]{scrbook}
  12. % Pakete einbinden, die benötigt werden
  13. \usepackage{ifthen} % Logische Bedingungen mit ifthenelse
  14. \usepackage{scrlayer-scrpage} % Erweiterte Einstellungen an scrbook zulassen
  15. \usepackage[utf8]{inputenc} % Dateien in UTF-8 benutzen
  16. \usepackage[T1]{fontenc} % Zeichenkodierung
  17. \usepackage{graphicx} % Bilder einbinden
  18. \usepackage{enumitem} % Eigene Listen definieren können
  19. \usepackage{setspace} % Abstände korrigieren
  20. % Setzen von Optionen abhängig von der gewählten Sprache. Die Sprache wird
  21. % in thesis.tex gesetzt.
  22. \ifthenelse{\equal{\hsmasprache}{de}}%
  23. {%
  24. \usepackage[main=ngerman, english]{babel} % Deutsche Sprachunterstützung
  25. \usepackage[autostyle=true,german=quotes]{csquotes} % Deutsche Anführungszeichen
  26. \usepackage[pagebackref=false,german]{hyperref} % Hyperlinks
  27. \newcommand{\hsmasortlocale}{de_DE} % Sortierung der Literatur
  28. }%
  29. {%
  30. \usepackage[main=english, ngerman]{babel} % Englische Sprachunterstützung
  31. \usepackage[autostyle=true,english=american]{csquotes} % Englische Anführungszeichen
  32. \usepackage[pagebackref=false,english]{hyperref} % Hyperlinks
  33. \newcommand{\hsmasortlocale}{en_US} % Sortierung der Literatur
  34. }%
  35. % Setzen von Optionen abhängig von der Abgabeform. Die Abgabeform wird
  36. % in thesis.tex gesetzt.
  37. \ifthenelse{\equal{\hsmaabgabe}{papier}}%
  38. {%
  39. \KOMAoptions{twoside=true}
  40. \newcommand{\hsmafenster}{45mm}
  41. }%
  42. {%
  43. \KOMAoptions{twoside=false}
  44. \newcommand{\hsmafenster}{38.5mm}
  45. }%
  46. \usepackage{xcolor} % Unterstützung für Farben
  47. \usepackage{amsmath} % Mathematische Formeln
  48. \usepackage{amsfonts} % Mathematische Zeichensätze
  49. \usepackage{amssymb} % Mathematische Symbole
  50. \usepackage{float} % Fließende Objekte (Tabellen, Grafiken etc.)
  51. \usepackage{booktabs} % Korrekter Tabellensatz
  52. \usepackage[printonlyused]{acronym} % Abkürzungsverzeichnis [nur verwendete Abkürzungen]
  53. \usepackage{makeidx} % Sachregister
  54. \usepackage{listings} % Quelltexte
  55. \usepackage{listingsutf8} % Quelltexte in UTF8
  56. \usepackage[hang,font={sf,footnotesize},labelfont={footnotesize,bf}]{caption} % Beschriftungen
  57. \usepackage[scaled]{helvet} % Schrift Helvetia laden
  58. \usepackage[absolute]{textpos} % Absolute Textpositionen (für Deckblatt)
  59. \usepackage{calc} % Berechnung von Positionen
  60. \usepackage{blindtext} % Blindtexte
  61. \usepackage[bottom=40mm,left=35mm,right=35mm,top=30mm]{geometry} % Ränder ändern
  62. \usepackage{scrhack} % tocbasic Warnung entfernen
  63. \usepackage[all]{hypcap} % Korrekte Verlinkung von Floats
  64. \usepackage{tabularx} % Spezielle Tabellen
  65. \usepackage[backend=biber,
  66. isbn=false, % ISBN nicht anzeigen, gleiches geht mit nahezu allen anderen Feldern
  67. sortlocale=\hsmasortlocale, % Sortierung der Einträge für Deutsch
  68. % de_DE: für Deutsch
  69. % en_US: für Englisch
  70. autocite=inline, % regelt Aussehen für \autocite
  71. % inline: Zitat in Klammern (\parancite)
  72. % footnote: Zitat in Fußnoten (\footcite)
  73. % plain: Zitat direkt ohne Klammern (\cite)
  74. style=authoryear, % Legt den Stil für die Zitate fest
  75. % ieee: Zitate als Zahlen [1]
  76. % alphabetic: Zitate als Kürzel und Jahr [Ein05]
  77. % authoryear: Zitate Author und Jahr [Einstein (1905)]
  78. hyperref=true, % Hyperlinks für Zitate
  79. firstinits=false % Vornamen abkürzen (Maier, M. anstatt Maier, Markus)?
  80. % true: abkürzen
  81. % false: nicht abkürzen
  82. ]{biblatex} % Literaturverwaltung mit BibLaTeX
  83. \usepackage{rotating} % Seiten drehen
  84. \usepackage{harveyballs} % Harveyballs
  85. \usepackage{chngcntr} % Counter (Zähler) ändern können - für Fußnotennummern
  86. \usepackage{longtable} % Tabellen, die mehr als eine Seite umfassen
  87. % Einstellungen zu den Fußnoten
  88. \renewcommand{\footnotesize}{\fontsize{9}{10}\selectfont} % Größe der Fußnoten
  89. \setlength{\footnotesep}{8pt} % Abstand zwischen den Fußnoten
  90. % Kommentieren Sie diese Zeile ein, wenn Sie eine "durchlaufende" Nummerierung bei den
  91. % Fußnoten wünschen, d.h. wenn die Fußnoten nicht bei jedem Kapitel wieder bei 1
  92. % beginnen sollen.
  93. %\counterwithout{footnote}{chapter}
  94. \setlength{\bibitemsep}{1em} % Abstand zwischen den Literaturangaben
  95. \setlength{\bibhang}{2em} % Einzug nach jeweils erster Zeile
  96. % Trennung von URLs im Literaturverzeichnis (große Werte [> 10000] verhindern die Trennung)
  97. \defcounter{biburlnumpenalty}{10} % Strafe für Trennung in URL nach Zahl
  98. \defcounter{biburlucpenalty}{500} % Strafe für Trennung in URL nach Großbuchstaben
  99. \defcounter{biburllcpenalty}{500} % Strafe für Trennung in URL nach Kleinbuchstaben
  100. % Farben definieren
  101. \definecolor{linkblue}{RGB}{0, 0, 100}
  102. \definecolor{linkblack}{RGB}{0, 0, 0}
  103. \definecolor{comment}{RGB}{63, 127, 95}
  104. \definecolor{darkgreen}{RGB}{14, 144, 102}
  105. \definecolor{darkblue}{RGB}{0,0,168}
  106. \definecolor{darkred}{RGB}{128,0,0}
  107. \definecolor{javadoccomment}{RGB}{0,0,240}
  108. % Einstellungen für das Hyperlink-Paket
  109. \hypersetup{
  110. colorlinks=true, % Farbige links verwenden
  111. % allcolors=linkblue,
  112. linktoc=all, % Links im Inhaltsverzeichnis
  113. linkcolor=linkblack, % Querverweise
  114. citecolor=linkblack, % Literaturangaben
  115. filecolor=linkblack, % Dateilinks
  116. urlcolor=linkblack % URLs
  117. }
  118. % Einstellungen für Quelltexte
  119. \lstset{
  120. xleftmargin=0.2cm,
  121. basicstyle=\footnotesize\ttfamily,
  122. keywordstyle=\color{darkgreen},
  123. identifierstyle=\color{darkblue},
  124. commentstyle=\color{comment},
  125. stringstyle=\color{darkred},
  126. tabsize=2,
  127. lineskip={2pt},
  128. columns=flexible,
  129. inputencoding=utf8,
  130. captionpos=b,
  131. breakautoindent=true,
  132. breakindent=2em,
  133. breaklines=true,
  134. prebreak=,
  135. postbreak=,
  136. numbers=none,
  137. numberstyle=\tiny,
  138. showspaces=false, % Keine Leerzeichensymbole
  139. showtabs=false, % Keine Tabsymbole
  140. showstringspaces=false,% Leerzeichen in Strings
  141. morecomment=[s][\color{javadoccomment}]{/**}{*/},
  142. literate={Ö}{{\"O}}1 {Ä}{{\"A}}1 {Ü}{{\"U}}1 {ß}{{\ss}}2 {ü}{{\"u}}1 {ä}{{\"a}}1 {ö}{{\"o}}1
  143. }
  144. \urlstyle{same}
  145. % Einstellungen für Überschriften
  146. \renewcommand*{\chapterformat}{%
  147. \Large\chapapp~\thechapter % Große Schrift
  148. \vspace{0.3cm} % Abstand zum Titel des Kapitels
  149. }
  150. % Abstände für die Überschriften setzen
  151. \renewcommand{\chapterheadstartvskip}{\vspace*{2.6cm}}
  152. \renewcommand{\chapterheadendvskip}{\vspace*{1.5cm}}
  153. % Vertikale Abstände für die Überschriften etwas verkleinern
  154. \RedeclareSectionCommand[
  155. beforeskip=-1.8\baselineskip,
  156. afterskip=0.25\baselineskip]{section}
  157. \RedeclareSectionCommand[
  158. beforeskip=-1.8\baselineskip,
  159. afterskip=0.15\baselineskip]{subsection}
  160. \RedeclareSectionCommand[
  161. beforeskip=-1.8\baselineskip,
  162. afterskip=0.15\baselineskip]{subsubsection}
  163. % In der Kopfzeile nur die kurze Kapitelbezeichnung (ohne Kapitel davor)
  164. \renewcommand*\chaptermarkformat{\thechapter\autodot\enskip}
  165. \automark[chapter]{chapter}
  166. % Einstellungen für Schriftarten
  167. \setkomafont{pagehead}{\normalfont\sffamily}
  168. \setkomafont{pagenumber}{\normalfont\sffamily}
  169. \setkomafont{paragraph}{\sffamily\bfseries\small}
  170. \setkomafont{subsubsection}{\sffamily\itshape\bfseries\small}
  171. \addtokomafont{footnote}{\footnotesize}
  172. \setkomafont{chapter}{\LARGE\selectfont\bfseries}
  173. % Wichtige Abstände
  174. \setlength{\parskip}{0.2cm} % 2mm Abstand zwischen zwei Absätzen
  175. \setlength{\parindent}{0mm} % Absätze nicht einziehen
  176. \clubpenalty = 10000 % Keine "Schusterjungen"
  177. \widowpenalty = 10000 % Keine "Hurenkinder"
  178. \displaywidowpenalty = 10000 % Keine "Hurenkinder"
  179. % Siehe: https://de.wikipedia.org/wiki/Hurenkind_und_Schusterjunge
  180. % Index erzeugen
  181. \makeindex
  182. % Einfacher Font-Wechsel über dieses Makro
  183. \newcommand{\changefont}[3]{
  184. \fontfamily{#1} \fontseries{#2} \fontshape{#3} \selectfont}
  185. % Eigenes Makro für Bilder. Das label (für \ref) ist dann einfach
  186. % der Name der Bilddatei
  187. \newcommand{\bild}[3]{
  188. \begin{figure}[ht]
  189. \centering
  190. \includegraphics[width=#2]{#1}
  191. \caption{#3}
  192. \label{#1}
  193. \end{figure}}
  194. % Wo liegt Sourcecode?
  195. \newcommand{\srcloc}{src/}
  196. % Wo sind die Bilder?
  197. \graphicspath{{bilder/}}
  198. % Makros für typographisch korrekte Abkürzungen
  199. \newcommand{\zb}[0]{z.\,B.}
  200. \newcommand{\dahe}[0]{d.\,h.}
  201. \newcommand{\ua}[0]{u.\,a.}
  202. % Flags für Veröffentlichung und Sperrvermerk
  203. \newboolean{hsmapublizieren}
  204. \newboolean{hsmasperrvermerk}
  205. \newcommand{\hsmacc}{}
  206. % Tabellenzellen mit mehreren Zeilen
  207. \newcolumntype{L}{>{\raggedright\arraybackslash}X}
  208. \newcolumntype{b}{l}
  209. \newcolumntype{s}{>{\hsize=.3\hsize}l}
  210. \newcolumntype{F}{>{\hsize=\dimexpr2\hsize+2\tabcolsep+\arrayrulewidth\relax}X}
  211. % Checklisten mit zwei Ebenen
  212. \newlist{checklist}{itemize}{2}
  213. \setlist[checklist]{label=$\square$}