preambel.tex 9.9 KB

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