Path: blob/main/latexhints-german.tex
340 views
% !TeX root = main-german.tex1% !TeX spellcheck = de_DE2% !TeX encoding = utf83% -*- coding:utf-8 mod:LaTeX -*-45%Die Angabe des schlauen Spruchs auf diesem Wege funtioniert nur,6%wenn keine Änderung des Kapitels mittels den in preambel/chapterheads.tex7%vorgeschlagenen Möglichkeiten durchgeführt wurde.8\setchapterpreamble[u]{%9\dictum[Albert Einstein]{Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.}10}11\chapter{LaTeX-Tipps}12\label{chap:latextipps}1314In diesem Kapitel sollen allgemeine \LaTeX-Hinweise gegeben werden.1516\section{Trennung von Absätzen}1718Pro Satz eine neue Zeile.19Das ist wichtig, um sauber versionieren zu können.20In LaTeX werden Absätze durch eine Leerzeile getrennt.21Analogie zu Word: Bei Word werden neue Absätze durch einmal Eingabetaste gemacht.22Dies führt bei LaTeX jedoch nicht zu einem neuen Absatz, da LaTeX direkt aufeinanderfolgende Zeilen zu einer Zeile zusammenfügt.23Möchte man nun einen Absatz haben, muss man zweimal die Eingabetaste drücken.24Dies führt zu einer leeren Zeile.25In Word gibt es die Funktion Großschreibetaste und Eingabetaste gleichzeitig.26Wenn man dies drückt, wird einer harter Umbruch erzwungen.27Der Text fängt am Anfang der neuen Zeile an.28In LaTeX erreicht man dies durch Doppelbackslashes (\textbackslash\textbackslash) erzeugt.29Dies verwendet man quasi nie.3031Folglich werden neue Abstäze insbesondere \emph{nicht} durch Doppelbackslashes erzeugt.32Beispielsweise begann der letzte Satz in einem neuen Absatz.33Eine ausführliche Motivation hierfür findet sich in \url{http://loopspace.mathforge.org/HowDidIDoThat/TeX/VCS/#section.3}.3435Möchte man die Art des Absatzes ändern, so kann man die Dokumentklassenoption \texttt{parskip} verwenden.36Beispielsweise kann man mit \texttt{parskip=off} erreichen, dass statt eines freien Bereichs die erste Zeile des Absatzes eingezogen wird.3738\section{File-Encoding und Unterstützung von Umlauten}39\label{sec:firstsectioninlatexhints}40Die Vorlage wurde 2010 auf UTF-8 umgestellt.41Alle neueren Editoren sollten damit keine Schwierigkeiten haben.4243\section{Zitate}44Referenzen werden mittels \texttt{\textbackslash cite[key]} gesetzt.45Beispiel: \cite{WSPA} oder mit Autorenangabe: \citet{WSPA}.4647Der folgende Satz demonstriert48\begin{filecontents*}[overwrite]{\democodefile}49\begin{inparaenum}[1.]50\item die Großschreibung von Autorennamen am Satzanfang,51\item die richtige Zitation unter Verwendung von Autorennamen und der Referenz,52\item dass die Autorennamen ein Hyperlink auf das Literaturverzeichnis sind sowie53\item dass in dem Literaturverzeichnis der Namenspräfix \qq{van der} von \qq{Wil M.\,P.\ van der Aalst} steht.54\end{inparaenum}55\end{filecontents*}5657\PrintDemo{style=parallel}5859\Citet{RVvdA2016} präsentieren eine Studie über die Effektivität von Workflow-Management-Systemen.6061Der folgende Satz demonstriert, dass man mittels \texttt{label} in einem Bibliopgrahie"=Eintrag den Textteil des generierten Labels überschreiben kann, aber das Jahr und die Eindeutigkeit noch von biber generiert wird.62Die Apache ODE Engine \cite{ApacheODE} ist eine Workflow-Maschine, die \BPEL-Prozesse zuverlässig ausführt.6364Wörter am besten mittels \texttt{\textbackslash qq\{...\}} \qq{einschließen}, dann werden die richtigen Anführungszeichen verwendet.6566Beim Erstellen der Bibtex-Datei wird empfohlen darauf zu achten, dass die DOI aufgeführt wird.6768\section{Mathematische Formeln}69\label{sec:mf}70Mathematische Formeln kann man $so$ setzen. \texttt{symbols-a4.pdf} (zu finden auf \url{http://texdoc.net/pkg/symbols-a4}) enthält eine Liste der unter LaTeX direkt verfügbaren Symbole.71Beispielsweise $\mathbb{N}$ für die Menge der natürlichen Zahlen.72Für eine vollständige Dokumentation für mathematischen Formelsatz sollte die Dokumentation zu \texttt{amsmath}, \url{http://texdoc.net/pkg/amsmath} gelesen werden.7374Folgende Gleichung erhält keine Nummer, da \texttt{\textbackslash equation*} verwendet wurde.75\begin{filecontents*}[overwrite]{\democodefile}76\begin{equation*}77x = y78\end{equation*}79\end{filecontents*}8081\PrintDemo{style=parallel}8283Die Gleichung~\ref{eq:test} erhält eine Nummer:84\begin{filecontents*}[overwrite]{\democodefile}85\begin{equation}86\label{eq:test}87x = y88\end{equation}89\end{filecontents*}9091\PrintDemo{style=parallel}9293Die Vorlage bietet \verb+\abs+ an, damit die Absolutbetragsstriche richtig skalieren:94$\abs{X}$.9596Eine ausführliche Anleitung zum Mathematikmodus von LaTeX findet sich in \url{http://www.ctan.org/tex-archive/help/Catalogue/entries/voss-mathmode.html}.9798\section{Quellcode}99\Cref{lst:ListingANDlstlisting,helloworld} zeigen, wie man Programmlistings einbindet.100Mittels \texttt{\textbackslash lstinputlisting} kann man den Inhalt direkt aus Dateien lesen.101102%Listing-Umgebung wurde durch \newfloat{Listing} definiert103104\begin{Listing}105\begin{lstlisting}[language=XML]106<listing name="second sample">107<!-- comment -->108<content>not interesting</content>109</listing>110\end{lstlisting}111\caption{lstlisting in einer Listings-Umgebung, damit das Listing durch Balken abgetrennt ist}112\label{lst:ListingANDlstlisting}113\end{Listing}114115116%TODO: Currently not shown in TOC117\lstinputlisting[language=C++,label=helloworld,caption={"`hello world"' in C++.},float]{code/helloworld.cpp}118119Quellcode im \lstinline|<listing />| ist auch möglich.120121122\section{Pseudocode}123\Cref{alg:sample} zeigt einen Beispielalgorithmus.124125126\begin{Algorithmus} %Die Umgebung nur benutzen, wenn man den Algorithmus ähnlich wie Graphiken von TeX platzieren lassen möchte127\caption{Sample algorithm}128\label{alg:sample}129%EN: This is an environment from the algorithmicx package130\begin{algorithmic}131\Procedure{Sample}{$a$,$v_e$}132\State $\mathsf{parentHandled} \gets (a = \mathsf{process}) \lor \mathsf{visited}(a'), (a',c,a) \in \mathsf{HR}$133\State \Comment $(a',c'a) \in \mathsf{HR}$ denotes that $a'$ is the parent of $a$134\If{$\mathsf{parentHandled}\,\land(\mathcal{L}_\mathit{in}(a)=\emptyset\,\lor\,\forall l \in \mathcal{L}_\mathit{in}(a): \mathsf{visited}(l))$}135\State $\mathsf{visited}(a) \gets \text{true}$136\State $\mathsf{writes}_\circ(a,v_e) \gets137\begin{cases}138\mathsf{joinLinks}(a,v_e) & \abs{\mathcal{L}_\mathit{in}(a)} > 0 \\139\mathsf{writes}_\circ(p,v_e)140& \exists p: (p,c,a) \in \mathsf{HR} \\141(\emptyset, \emptyset, \emptyset, false) & \text{otherwise}142\end{cases}143$144\If{$a\in\mathcal{A}_\mathit{basic}$}145\State \Call{HandleBasicActivity}{$a$,$v_e$}146\ElsIf{$a\in\mathcal{A}_\mathit{flow}$}147\State \Call{HandleFlow}{$a$,$v_e$}148\ElsIf{$a = \mathsf{process}$} \Comment Directly handle the contained activity149\State \Call{HandleActivity}{$a'$,$v_e$}, $(a,\bot,a') \in \mathsf{HR}$150\State $\mathsf{writes}_\bullet(a) \gets \mathsf{writes}_\bullet(a')$151\EndIf152\ForAll{$l \in \mathcal{L}_\mathit{out}(a)$}153\State \Call{HandleLink}{$l$,$v_e$}154\EndFor155\EndIf156\EndProcedure157\end{algorithmic}158\end{Algorithmus}159160\clearpage161Und wer einen Algorithmus schreiben möchte, der über mehrere Seiten geht, der kann das nur mit folgendem \textbf{üblen} Hack tun:162163{164\begin{minipage}{\textwidth}165\hrule height .8pt width\textwidth166\vskip.3em%\vskip\abovecaptionskip\relax167\stepcounter{Algorithmus}168\addcontentsline{alg}{Algorithmus}{\protect\numberline{\theAlgorithmus}{\ignorespaces Description \relax}}169\noindent\textbf{Algorithmus \theAlgorithmus} Description170%\stepcounter{algorithm}171%\addcontentsline{alg}{Algorithmus}{\thealgorithm{}\hskip0em Description}172%\textbf{Algorithmus \thealgorithm} Description173\vskip.3em%\vskip\belowcaptionskip\relax174\hrule height .5pt width\textwidth175\end{minipage}176%without the following line, the text is never at the rule177\vskip-.3em178%179code goes here\\180test2\\181%182\vskip-.7em183\hrule height .5pt width\textwidth184}185186187188189\section{Abbildungen}190191Die \cref{fig:chor1} und \ref{fig:chor2} sind für das Verständnis dieses Dokuments wichtig.192Im Anhang zeigt \vref{fig:AnhangsChor} erneut die komplette Choreographie.193194%Die Parameter in eckigen Klammern sind optionale Parameter - z.B. [htb!]195%htb! bedeutet: "Liebes LaTeX, bitte platziere diese Abbildung zuerst hier ("_h_ere"). Falls das nicht funktioniert, dann bitte oben auf der Seite ("_t_op"). Und falls das nicht geht, bitte unten auf der Seite ("_b_ottom"). Und bitte, bitte bevorzuge hier und oben, auch wenn's net so optimal aussieht ("!")196%Diese sollten nach Möglichkeit NICHT verwendet werden. LaTeX's Algorithmus für das Platzieren der Gleitumgebung ist schon sehr gut!197198\begin{figure}199\centering200\includegraphics[width=\textwidth]{choreography.pdf}201\caption{Beispiel-Choreographie}202\label{fig:chor1}203\end{figure}204205206207\begin{figure}208\centering209\includegraphics[width=.8\textwidth]{choreography.pdf}210\caption[Beispiel-Choreographie]{Die Beispiel-Choreographie.211Nun etwas kleiner, damit \texttt{\textbackslash textwidth} demonstriert wird.212Und auch die Verwendung von alternativen Bildunterschriften für das Verzeichnis der Abbildungen.213Letzteres ist allerdings nur Bedingt zu empfehlen, denn wer liest schon so viel Text unter einem Bild?214Oder ist es einfach nur Stilsache?215}216\label{fig:chor2}217\end{figure}218219220\begin{figure}221\hfill222\begin{subfigure}{.3\textwidth}223\includegraphics[width=\textwidth]{choreography.pdf}224\caption{Choreografie 1}225\label{fig:subfigA}226\end{subfigure}227\hfill228\begin{subfigure}{.3\textwidth}229\includegraphics[width=\textwidth]{choreography.pdf}230\caption{Choreografie 2}231\label{fig:subfigB}232\end{subfigure}233\hfill234\begin{subfigure}{.3\textwidth}235\includegraphics[width=.9\textwidth]{choreography.pdf}236\caption{Choreografie 3}237\label{fig:subfigC}238\end{subfigure}239\caption{Beispiel um 3 Abbildung nebeneinader zu stellen nur jedes einzeln referenzieren zu können.}240\label{fig:subfig_example}241\end{figure}242243\Cref{fig:subfig_example} zeigt die Verwendung des subcaption-Pakets.244Es ist auch möglich, auf Unterabbildungen zu verweisen: \Cref{fig:subfigA}.245246Es ist möglich, SVGs direkt beim Kompilieren in PDF umzuwandeln.247Dies ist im Quellcode zu latex-tipps.tex beschrieben, allerdings auskommentiert.248249\iffalse % <-- Das hier wegnehmen, falls inkscape im Pfad ist250Das SVG in \cref{fig:directSVG} ist direkt eingebunden, während der Text im SVG in \cref{fig:latexSVG} mittels pdflatex gesetzt ist.251Falls man die Graphiken sehen möchte, muss inkscape im PATH sein und im Tex-Quelltext \texttt{\textbackslash{}iffalse} und \texttt{\textbackslash{}iftrue} auskommentiert sein.252253\begin{figure}254\centering255\includegraphics{svgexample.svg}256\caption{SVG direkt eingebunden}257\label{fig:directSVG}258\end{figure}259260\begin{figure}261\centering262\def\svgwidth{.4\textwidth}263\includesvg{svgexample}264\caption{Text im SVG mittels \LaTeX{} gesetzt}265\label{fig:latexSVG}266\end{figure}267\fi % <-- Das hier wegnehmen, falls inkscape im Pfad ist268269270\section{Weitere Illustrationen}271\Cref{fig:AnhangsChor,fig:AnhangsChor2} zeigen zwei Choreographien, die den Sachverhalt weiter erläutern sollen.272Die zweite Abbildung ist um 90 Grad gedreht, um das Paket \texttt{pdflscape} zu demonstrieren.273274\begin{figure}275\centering276\includegraphics[width=\textwidth]{choreography.pdf}277\caption{Beispiel-Choreographie I}278\label{fig:AnhangsChor}279\end{figure}280281\begin{landscape}282\begin{figure}283\centering284\includegraphics[width=\textwidth]{choreography.pdf}285\caption{Beispiel-Choreographie II}286\label{fig:AnhangsChor2}287\end{figure}288\end{landscape}289290291\iffalse292293\clearpage294295FIXME - This does not work with MiKTeX as of 2016-12-30296297TODO- demonstrate rotating package298299%hint by http://tex.stackexchange.com/a/3265/9075300%other option is to use changepage according to http://tex.stackexchange.com/a/2639/9075. This, however, has issues with landscape301\thispagestyle{empty}302303\savegeometry{koma}304305%If you only have height problems, this is not needed at all306\addtolength{\textwidth}{2cm}307\addtolength{\evensidemargin}{-1cm}308309\begin{landscape}310%sidewaysfigure311\begin{figure}312\centering313\includegraphics[width=0.9\paperheight]{choreography.pdf}314\caption{Beispiel-Choreographie, auf einer weißen Seite gezeigt wird und über die definierten Seitenränder herausragt}315\end{figure}316\end{landscape}317318%the original layout is restored.319%%\restoregeometry cannot be used as we use \addtolength320\loadgeometry{koma}321322\fi323324\IfFileExists{pgfplots.sty}{325\section{Plots with pgfplots}326Pgfplot ist ein Paket um Graphen zu plotten ohne den Umweg über gnuplot oder matplotlib zu gehen.327%hint by http://tex.stackexchange.com/a/3265/9075%other option is to use changepage according to http://tex.stackexchange.com/a/2639/9075. This, however, has issues with landscape%If you only have height problems, this is not needed at all%sidewaysfigure%the original layout is restored.%%\restoregeometry cannot be used as we use \addtolength328\begin{figure}[h]329\centering330\begin{tikzpicture}331\begin{axis}[xlabel=$x$,332ylabel=$\sin(x)$]333\addplot {sin(deg(x))}; % Sinus-Funktion zeichnen334\end{axis}335\end{tikzpicture}336\caption{$\sin(x)$ mit pgfplots.}337\end{figure}338339\begin{figure}[h]340\centering341\begin{tikzpicture}342\begin{axis}[xlabel=$x$,343ylabel=$y$]344\addplot table [x=a, y=c, col sep=comma] {data/data.csv}; % Koordinaten aus einer CSV-Datei lesen und plotten345\end{axis}346\end{tikzpicture}347\caption{Koordianten $x$ und $y$ aus einer CSV-Datei geplottet mit pgfplots.}348\end{figure}349350}{}351352\section{Figures with tikz}353TikZ ist ein Paket um Zeichnungen mittels Programmierung zu erstellen.354Dieses Paket eignet sich um Gitter zu erstellen oder andere regelmäßige Strukturen zu erstellen.355Hier gibt es sehr viele visuelle Beispiele was tikz alles kann\footnote{\url{http://texdoc.net/pkg/visualtikz}}.356357\begin{figure}[ht]358\centering359\begin{tikzpicture}360\draw(0,0) rectangle (4,4);361\foreach \x in {0.5,1,1.5,2,2.5,3,3.5}362\foreach \y in {0.5,1,1.5,2,2.5,3,3.5}363\draw(\x,\y) circle (1pt);364\end{tikzpicture}365\caption{Eine tikz-Graphik.}\label{fig:tikz_example}366\end{figure}367368369\section{UML-Diagramme mit tikz-uml}370371\Cref{fig:uml} zeigt ein Klassendiagramm, das mittels tikz-uml gesetzt wurde.372373\begin{figure}374\centering375\begin{tikzpicture}376\begin{umlpackage}{p}377\begin{umlpackage}{sp1}378\umlclass[template=T]{A}{379n : uint \\ t : float380}{}381\umlclass[y=-3]{B}{382d : double383}{384\umlvirt{setB(b : B) : void} \\ getB() : B}385\end{umlpackage}386\begin{umlpackage}[x=10,y=-6]{sp2}387\umlinterface{C}{388n : uint \\ s : string389}{}390\end{umlpackage}391\umlclass[x=2,y=-10]{D}{392n : uint393}{}394\end{umlpackage}395396\umlassoc[geometry=-|-, arg1=tata, mult1=*, pos1=0.3, arg2=toto, mult2=1, pos2=2.9, align2=left]{C}{B}397\umlunicompo[geometry=-|, arg=titi, mult=*, pos=1.7, stereo=vector]{D}{C}398\umlimport[geometry=|-, anchors=90 and 50, name=import]{sp2}{sp1}399\umlaggreg[arg=tutu, mult=1, pos=0.8, angle1=30, angle2=60, loopsize=2cm]{D}{D}400\umlinherit[geometry=-|]{D}{B}401\umlnote[x=2.5,y=-6, width=3cm]{B}{Eine Notiz f\"ur die Klasse B}402\umlnote[x=7.5,y=-2]{import-2}{Eine Anmerkung}403\end{tikzpicture}404\caption{Ein Klassendiagramm mit tikz-uml generiert. Beispiel von Nicolas Kielbasiewicz adaptiert.}405\label{fig:uml}406\end{figure}407408\section{Tabellen}409410\cref{tab:Ergebnisse} zeigt Ergebnisse und die \cref{tab:Ergebnisse} zeigt wie numerische Daten in einer Tabelle representiert werden können.411\begin{table}412\centering413\begin{tabular}{ccc}414\toprule415\multicolumn{2}{c}{\textbf{zusammengefasst}} & \textbf{Titel} \\ \midrule416Tabelle & wie & in \\417\url{tabsatz.pdf} & empfohlen & gesetzt \\418419\multirow{2}{*}{Beispiel} & \multicolumn{2}{c}{ein schönes Beispiel} \\420& \multicolumn{2}{c}{für die Verwendung von \qq{multirow}} \\421\bottomrule422\end{tabular}423\caption[Beispieltabelle]{Beispieltabelle -- siehe \url{http://www.ctan.org/tex-archive/info/german/tabsatz/}}424\label{tab:Ergebnisse}425\end{table}426427\begin{table}428\centering429\begin{tabular}{l *{8}{d{3.2}}}430\toprule431432& \multicolumn{2}{c}{\textbf{Parameter 1}} & \multicolumn{2}{c}{\textbf{Parameter 2}} & \multicolumn{2}{c}{\textbf{Parameter 3}} & \multicolumn{2}{c}{\textbf{Parameter 4}} \\433\cmidrule(r){2-3}\cmidrule(lr){4-5}\cmidrule(lr){6-7}\cmidrule(l){8-9}434435\textbf{Bedingungen} & \multicolumn{1}{c}{\textbf{M}} & \multicolumn{1}{c}{\textbf{SD}} & \multicolumn{1}{c}{\textbf{M}} & \multicolumn{1}{c}{\textbf{SD}} & \multicolumn{1}{c}{\textbf{M}} & \multicolumn{1}{c}{\textbf{SD}} & \multicolumn{1}{c}{\textbf{M}} & \multicolumn{1}{c}{\textbf{SD}} \\436\midrule437438W & 1.1 & 5.55 & 6.66 & .01 & & & & \\439X & 22.22 & 0.0 & 77.5 & .1 & & & & \\440Y & 333.3 & .1 & 11.11 & .05 & & & & \\441Z & 4444.44 & 77.77 & 14.06 & .3 & & & & \\442\bottomrule443\end{tabular}444445\caption{446Beispieltabelle f\"{u}r 4 Bedingungen (W-Z) mit jeweils 4 Parameters mit (M und SD).447Hinweis: Stets die selbe Anzahl an Nachkommastellen angeben.448}449\label{tab:Werte}450\end{table}451452453454\IfFileExists{pgfplotstable.sty}{455456\subsection{Tabellen mit pgfplots}457Mit pgfplots koennen Tabellen direkt aus einer CSV-Datei erstellt werden.458459\begin{table}[h]460\centering461\pgfplotstabletypeset[462col sep = comma,463every head row/.style={before row=\toprule,after row=\midrule},464every last row/.style={after row=\bottomrule},465display columns/0/.style={string type,column name={}}466]467{data/data.csv}468\caption{Tabelle generiert aus einer CSV-Datei mit pgfplots}469\end{table}470}{}471472473\section{Tabellen über mehere Seiten}474475\begin{longtable}{|l|l|l|}476\caption{Tabelle \"uber mehere Seiten} \label{tab:long} \\477478\hline \multicolumn{1}{|c|}{\textbf{A}} & \multicolumn{1}{c|}{\textbf{B}} & \multicolumn{1}{c|}{\textbf{B}} \\ \hline479\endfirsthead480481\multicolumn{3}{c}%482{{\bfseries \tablename\ \thetable{} -- von dor vorherigen Seite weitergeführt}} \\483\hline \multicolumn{1}{|c|}{\textbf{First column}} & \multicolumn{1}{c|}{\textbf{Second column}} & \multicolumn{1}{c|}{\textbf{Third column}} \\ \hline484\endhead485486\hline \multicolumn{3}{|r|}{{Wird auf der n\"achsten Seite fortgef\"uhrt}} \\ \hline487\endfoot488489\hline \hline490\endlastfoot491492A & B C & D \\493A & B C & D \\494A & B C & D \\495A & B C & D \\496A & B C & D \\497A & B C & D \\498A & B C & D \\499A & B C & D \\500A & B C & D \\501A & B C & D \\502A & B C & D \\503A & B C & D \\504A & B C & D \\505A & B C & D \\506A & B C & D \\507A & B C & D \\508A & B C & D \\509A & B C & D \\510A & B C & D \\511A & B C & D \\512A & B C & D \\513A & B C & D \\514A & B C & D \\515A & B C & D \\516A & B C & D \\517A & B C & D \\518A & B C & D \\519A & B C & D \\520A & B C & D \\521A & B C & D \\522A & B C & D \\523A & B C & D \\524A & B C & D \\525A & B C & D \\526A & B C & D \\527A & B C & D \\528A & B C & D \\529A & B C & D \\530A & B C & D \\531A & B C & D \\532A & B C & D \\533A & B C & D \\534A & B C & D \\535A & B C & D \\536A & B C & D \\537A & B C & D \\538A & B C & D \\539A & B C & D \\540A & B C & D \\541A & B C & D \\542A & B C & D \\543A & B C & D \\544A & B C & D \\545A & B C & D \\546A & B C & D \\547A & B C & D \\548A & B C & D \\549A & B C & D \\550A & B C & D \\551A & B C & D \\552A & B C & D \\553A & B C & D \\554A & B C & D \\555A & B C & D \\556A & B C & D \\557A & B C & D \\558A & B C & D \\559A & B C & D \\560A & B C & D \\561A & B C & D \\562A & B C & D \\563A & B C & D \\564A & B C & D \\565A & B C & D \\566A & B C & D \\567A & B C & D \\568A & B C & D \\569A & B C & D \\570A & B C & D \\571A & B C & D \\572\end{longtable}573574575\section{Abkürzungen}576577Beim ersten Durchlauf betrug die \gls{fr} 5.578Beim zweiten Durchlauf war die \gls{fr} 3.579Die Pluralform sieht man hier: \glspl{er}.580Um zu demonstrieren, wie das Abkürzungsverzeichnis bei längeren Beschreibungstexten aussieht, muss hier noch \glspl{rdbms} erwähnt werden.581582Mit \verb+\gls{...}+ können Abkürzungen eingebaut werden, beim ersten Aufrufen wird die lange Form eingesetzt.583Beim wiederholten Verwenden von \verb+\gls{...}+ wird automatisch die kurz Form angezeigt.584Außerdem wird die Abkürzung automatisch in die Abkürzungsliste eingefügt.585Mit \verb+\glspl{...}+ wird die Pluralform verwendet.586Möchte man, dass bei der ersten Verwendung direkt die Kurzform erscheint, so kann man mit \verb+\glsunset{...}+ eine Abkürzung als bereits verwendet markieren.587Das Gegenteil erreicht man mit \verb+\glsreset{...}+.588589Definiert werden Abkürzungen in der Datei \textit{content\\ausarbeitung.tex} mithilfe von \verb+\newacronym{...}{...}{...}+.590591Mehr Infos unter: \url{http://tug.ctan.org/macros/latex/contrib/glossaries/glossariesbegin.pdf}592593594\section{Verweise}595Für weit entfernte Abschnitte ist \qq{varioref} zu empfehlen:596\qq{Siehe \vref{sec:mf}}.597Das Kommando \texttt{\textbackslash{}vref} funktioniert ähnlich wie \texttt{\textbackslash{}cref} mit dem Unterschied, dass zusätzlich ein Verweis auf die Seite hinzugefügt wird.598\texttt{vref}: \qq{\vref{sec:firstsectioninlatexhints}}, \texttt{cref}: \qq{\cref{sec:firstsectioninlatexhints}}, \texttt{ref}: \qq{\ref{sec:firstsectioninlatexhints}}.599600Falls \qq{varioref} Schwierigkeiten macht, dann kann man stattdessen \qq{cref} verwenden.601Dies erzeugt auch das Wort \qq{Abschnitt} automatisch: \cref{sec:mf}.602Das geht auch für Abbildungen usw.603Im Englischen bitte \verb1\Cref{...}1 (mit großem \qq{C} am Anfang) verwenden.604605606%Mit MiKTeX Installation ab dem 2012-01-16 nicht mehr nötig607%Falls ein Abschnitt länger als eine Seite wird und man mittels \texttt{\textbackslash{}vref} auf eine konkrete Stelle in der Section608%verweisen möchte, dann sollte man \texttt{\textbackslash{}phantomsection} verwenden und dann wird609%auch bei \texttt{vref} die richtige Seite angeben.610611%%The link location will be placed on the line below.612%%Tipp von http://en.wikibooks.org/wiki/LaTeX/Labels_and_Cross-referencing#The_hyperref_package_and_.5Cphantomsection613%\phantomsection614%\label{alabel}615%Das Beispiel für \texttt{\textbackslash{}phantomsection} bitte im \LaTeX{}-Quellcode anschauen.616617%Hier das Beispiel: Siehe Abschnitt \vref{hack1} und Abschnitt \vref{hack2}.618619620\section{Definitionen}621\begin{definition}[Title]622\label{def:def1}623Definition Text624\end{definition}625626\Cref{def:def1} zeigt \ldots627628\section{Fußnoten}629Fußnoten können mit dem Befehl \verb+\footnote{...}+ gesetzt werden\footnote{\label{fussnote}Diese Fußnote ist ein Beispiel.630}.631Mehrfache Verwendung von Fußnoten ist möglich indem man zu erst ein Label in der Fußnote setzt \verb+\footnote{\label{...}...}+ und anschließend mittels \verb+\cref{...}+ die Fußnote erneut verwendet\cref{fussnote}.632633634\section{Verschiedenes}635\label{sec:diff}636\ifdeutsch637Ziffern (123\,654\,789) werden schön gesetzt.638Entweder in einer Linie oder als Minuskel-Ziffern.639Letzteres erreicht man durch den Parameter \texttt{osf} bei dem Paket \texttt{libertine} bzw.\ \texttt{mathpazo} in \texttt{fonts.tex}.640\fi641642\begin{compactenum}[I.]643\item Man kann auch die Nummerierung dank paralist kompakt halten644\item und auf eine andere Nummerierung umstellen645\end{compactenum}646647Die Wörter \qq{Workflow} und \qq{Auflage} lassen sich im PDF kopieren und in eine Textdatei einfügen.648649Bei der Nutzung von \LuaLaTeX{} wird bei \qq{Auflage} automatisch keine Ligatur bei \qq{f\/l} (im Gegensatz zu \qq{fl} bei \qq{workflow}) gesetzt.650In anderen Worten: \qq{Auflage} und \qq{Auf\/lage} sehen im Falle der Nutzung von \LuaLaTeX{} im PDF gleich aus.651Weiterhin setzt dieses Vorgehen die Duden-Regeln bezüglich \qq{Ligaturen} \cite[S.\ 96]{Duden2001} um.652653\section{Schlusswort}654Verbesserungsvorschläge für diese Vorlage sind immer willkommen.655Bitte bei GitHub ein Ticket eintragen (\url{https://github.com/latextemplates/scientific-thesis-template/issues}).656657658