Unify references

This commit is contained in:
Knoch 2021-01-18 11:02:16 +01:00
parent e12441f4ea
commit 848a509385
15 changed files with 95 additions and 94 deletions

View File

@ -1,19 +1,19 @@
\section{Absatzformatierung} % (fold)
\label{sec:absatzformatierung}
\label{sec:formatting-paragraphs}
\subsection*{Flattersatz}
\label{sub:flattersatz}
\label{sub:ragged-alignment}
Standardmäßig setzt \LaTeX{} Fließtext im Blocksatz.
Flattersatz\footnote{Bekannt als links, rechts oder zentriert ausgerichteter Text in Programmen wie Word.} ist aber auch möglich.
Die Befehle \mintinline{tex}|\raggedright|, \mintinline{tex}|\raggedleft| und \mintinline{tex}|\centering| können dazu verwendet werden.
Diese Befehle beeinflussen die Umgebung, in der sie verwendet werden.
Dies kann zum Beispiel die \texttt{document}-Umgebung sein, dementsprechend würde sämtlicher Text des Dokuments beeinflusst werden.
Alternativ existieren Umgebungen, welche die Absatzformatierung beeinflussen (\cref{lst:flattersatz}).
Alternativ existieren Umgebungen, welche die Absatzformatierung beeinflussen (\cref{lst:ragged-alignment}).
\example{lst:flattersatz}{absatzformatierung/flattersatz}{Flattersatz}
\example{lst:ragged-alignment}{absatzformatierung/flattersatz}{Flattersatz}
\subsection*{Einzüge und Abstände}
\label{sub:einzüge_und_abstände}
\label{sub:indents-and-parskips}
Absätze werden standardmäßig durch Einzüge in der ersten Zeile des Absatzes verdeutlicht (\mintinline{tex}{\parindent}).
Stattdessen können auch vertikale Abstände zwischen den Absätzen verwendet werden (\mintinline{tex}{\parskip}).
Für beide Varianten gibt es einstellbare Parameter:

View File

@ -3,15 +3,15 @@
Von Haus aus unterstützt \LaTeX\ drei Aufzählungstypen: ungeordnete und geordnete Listen sowie Definitionslisten.
Zu jedem dieser Typen existieren eigene Umgebungen, die aber grundsätzlich gleich aufgebaut sind.
\example{lst:UnorderedList}{aufzaehlungen/verschachtelt}{Beispielhafte ungeordnete Aufzählung}
\example{lst:unordered-list}{aufzaehlungen/verschachtelt}{Beispielhafte ungeordnete Aufzählung}
In \cref{lst:UnorderedList-code} werden verschiedene Listenelemente (\mintinline{latex}{\item}) von einer \mintinline{latex}{itemize}-Umgebung eingerahmt.
In \cref{lst:unordered-list-code} werden verschiedene Listenelemente (\mintinline{latex}{\item}) von einer \mintinline{latex}{itemize}-Umgebung eingerahmt.
Innerhalb eines Listenelements kann eine neue Listen\-umgebung eröffnet werden, um eine verschachtelte Liste zu erhalten.
Ersetzt man \mintinline{latex}{itemize} durch \mintinline{latex}{enumerate}, erhält man bei sonst gleichem Quelltext eine geordnete Liste.
Für etwas weniger gebräuchliche Definitionslisten muss die Umgebung \mintinline{latex}{description} verwendet werden.
Außerdem erhalten die Elemente in eckigen Klammern den zu definierenden Begriff (\cref{lst:DefinitionList}).
Außerdem erhalten die Elemente in eckigen Klammern den zu definierenden Begriff (\cref{lst:definition-list}).
\Example{lst:DefinitionList}{aufzaehlungen/definition}{aufzaehlungen/definition_crop}{Beispielhafte Definitionsliste}
\Example{lst:definition-list}{aufzaehlungen/definition}{aufzaehlungen/definition_crop}{Beispielhafte Definitionsliste}
Die sehr großen Abstände zwischen einzelnen Listenelementen können durch das Paket \mintinline{latex}{paralist}\footnote{\url{https://www.ctan.org/pkg/paralist}} verringert werden.
Hierzu wird nur der Umgebungsname ersetzt: \mintinline{latex}{compactitem} statt \mintinline{latex}{itemize}, \mintinline{latex}{compactenum} statt \mintinline{latex}{enumerate} und \mintinline{latex}{compactdesc} statt \mintinline{latex}{description}.

View File

@ -68,7 +68,7 @@ Für einige häufig benötigte Features haben wir euch hier eine kurze Liste pas
}
% General caption:
\caption{Beispiele zu verschiedenen Paketen}
\label{paket-beispiele}
\label{fig:package-examples}
\end{figure}

View File

@ -1,9 +1,9 @@
\section{Grafiken}
\label{sec:grafiken_einbinden}
Aufgrund der Natur (What you get is what you mean, vgl. \cref{sec:wie_funktioniert_latex_}) von \LaTeX \ stellt die Einbindung von Grafiken in ein Dokument eine interessante Aufgabe dar. Mit textuellen Befehlen zum dargestellten Bild -- wie üblich kommen bestimmte Befehle und Pakete zum Einsatz. In diesem Abschnitt werden diese Bestandteile näher erläutert.
\label{sec:include-graphics}
Aufgrund der Natur (What you get is what you mean, vgl. \cref{sec:latex-basic-functionality}) von \LaTeX \ stellt die Einbindung von Grafiken in ein Dokument eine interessante Aufgabe dar. Mit textuellen Befehlen zum dargestellten Bild -- wie üblich kommen bestimmte Befehle und Pakete zum Einsatz. In diesem Abschnitt werden diese Bestandteile näher erläutert.
\subsection{Grafiken abbilden}
\label{sub:grafiken_abbilden}
\label{sub:display-graphics}
Um Grafiken darzustellen, muss das Paket \texttt{graphicx} eingebunden werden. Zum Einfügen können dann folgende Befehle verwendet werden:
\begin{minted}[tabsize=4]{latex}
@ -21,16 +21,16 @@ Die erwünschte Höhe und Breite können hier separat angegeben werden, etwa wie
\end{minted}
\subsection{Platzierung}
\label{sub:platzierung}
\label{sub:graphics-placement}
Ein interessanter Aspekt des What-you-get-is-what-you-mean-Paradigmas ist die Art und Weise, wie Grafiken positioniert werden können.
Standardmäßig erfolgt eine automatische Platzierung an einer vom Compiler berechneten, potenziell optimalen Stelle.
Dabei werden verschiedene Layouts erstellt und danach bewertet, wie ansprechend das Ergebnis ist.
Durch das Verschieben von Grafiken können typografische Schönheitsfehler wie Schusterjungen und Hurenkinder\footnote{Die erste (letzte) Zeile eines Absatzes steht allein als letzte (erste) Zeile auf der vorherigen (nächsten) Seite, vgl. \url{https://de.wikipedia.org/wiki/Hurenkind_und_Schusterjunge}.} weitestgehend vermieden werden.
Dies bedeutet aber auch, dass eine Grafik nicht notwendigerweise zwischen den zwei Textblöcken wie im Quelltext erscheint, sondern an anderer Stelle.
Um im Text einen klaren Bezug zu einer gegebenenfalls anderswo platzierten Grafik herzustellen, können wir Labels verwenden, die wir in \cref{sec:referenzen} erklären.
Um im Text einen klaren Bezug zu einer gegebenenfalls anderswo platzierten Grafik herzustellen, können wir Labels verwenden, die wir in \cref{sec:references} erklären.
Wir können diese Verschiebungen außerdem durch Hinzufügen eines optionalen Parameters zur \mintinline{latex}{figure}-Umgebung mehr oder minder rigoros begrenzen.
Die verfügbaren Positionskürzel werden in \cref{tbl:positionskuerzel} aufgelistet.
Die verfügbaren Positionskürzel werden in \cref{tbl:placement-abbreviations} aufgelistet.
\begin{table}[h!]
\center
@ -46,7 +46,7 @@ Die verfügbaren Positionskürzel werden in \cref{tbl:positionskuerzel} aufgelis
\bottomrule
\end{tabular}
\caption{Kürzel zur Platzierung von Abbildungen}
\label{tbl:positionskuerzel}
\label{tbl:placement-abbreviations}
\end{table}
\begin{minted}[tabsize=4]{latex}

View File

@ -5,13 +5,13 @@ Im Kern besteht es immer aus zwei Teilen: einer Präambel zu Beginn sowie der un
Als \emph{Präambel} bezeichnen wir die ersten Befehle eines \LaTeX-Dokumentes, mit denen globale Einstellungen wie die Dokumentklasse, die Zeichenkodierung, die Sprache und das Seitenformat festgelegt werden.
Die \emph{Dokumentumgebung} hingegen enthält den Inhalt, der später in der fertigen \acro{PDF}-Datei erscheinen soll.
\Example{lst:grundaufbau-latex-dokument}{grundstruktur/hallowelt}{grundstruktur/hallowelt_crop}{Beispielhafter Aufbau eines einfachen \LaTeX-Dokuments mit Präambel und Dokumentumgebung}
\Example{lst:latex-document-basic-structure}{grundstruktur/hallowelt}{grundstruktur/hallowelt_crop}{Beispielhafter Aufbau eines einfachen \LaTeX-Dokuments mit Präambel und Dokumentumgebung}
\subsection{Präambel}
Beginnen wir mit der Präambel.
Eine minimale Präambel sollte die folgenden Festlegungen treffen:
\subsubsection{Dokumentklasse}\label{subsubsec:dokumentklasse}
\subsubsection{Dokumentklasse}\label{subsubsec:document-class}
\mintinline{latex}|\documentclass[<parameter>]{<dokumentklasse>}|
definiert die Dokumentklasse.
Die verbreitetsten von \LaTeX\ standardmäßig unterstützten Dokumentklassen sind \mintinline{latex}{article} für kurze und \mintinline{latex}{report} für längere Dokumente, \mintinline{latex}{book} für Bücher, \mintinline{latex}{beamer}\footnote{Präsentationen in \LaTeX\ sind ein Thema für sich, auf das wir nicht näher eingehen. Bei Interesse sei diese Einführung von Overleaf empfohlen: \url{https://www.overleaf.com/learn/latex/Beamer}} für Präsentationen sowie \mintinline{latex}{letter}\footnote{Auch auf Briefe wird in diesem Skript nicht weiter eingegangen. WikiBooks gibt eine Einführung: \url{https://en.wikibooks.org/wiki/LaTeX/Letters}} für Briefe.
@ -24,10 +24,10 @@ Während die Standard-Klassen für den Gebrauch in Amerika gedacht sind, folgen
Dem \mintinline{latex}{\documentclass}-Befehl können verschiedene optionale Parameter übergeben werden.
\mintinline{latex}{\documentclass[10pt,a5paper,landscape]{scrartcl}} etwa konfiguriert einen \acro{KOMA}-Script-Artikel mit Schriftgröße 10\,pt\footnote{Die Standardschriftgröße wäre hier 12\,pt.} auf A5-Papier\footnote{In der Voreinstellung handelte es sich um A4-Papier.} im Querformat.
Auch die Sprache kann mit übergeben werden (vgl. \cref{subsubsec:sprache}).
Auch die Sprache kann mit übergeben werden (vgl. \cref{subsubsec:language}).
\subsubsection{Exkurs: Pakete}
\label{subsub:pakete}
\label{subsubsec:packages}
\begin{minted}{latex}
\usepackage[<optionen>]{<paketname>}
\end{minted}
@ -54,15 +54,15 @@ Das Input Encoding (kurz: \mintinline{latex}{inputenc}) bezieht sich auf den Que
Konkret beeinflusst \mintinline{latex}{fontenc} die Wahl der Schriftartdatei, die verwendet wird, um den Inhalt des Dokuments darzustellen, denn auch diese muss natürlich Sonderzeichen beinhalten.\footnote{Details zur Arbeitsweise von \mintinline{latex}{fontenc} gibt dieser Beitrag: \url{https://www.texwelt.de/fragen/5537/was-macht-eigentlich-usepackaget1fontenc}}
\mintinline{latex}{T1} ist eine Kodierung, die mit einer begrenzten Anzahl an Zeichen europäische Sprachen abzubilden versucht.
\subsubsection{Sprache}\label{subsubsec:sprache}
\subsubsection{Sprache}\label{subsubsec:language}
\begin{minted}{latex}
\usepackage[ngerman]{babel}
\end{minted}
Das Paket \mintinline{latex}{babel} stellt sprachspezifische Informationen (z.\,B. Silbentrennung, Sonderzeichen, Wechsel zwischen Fonts, Übersetzung von Labels\footnote{Vgl. \cref{sec:referenzen}} wie \enquote{Kapitel}, \enquote{Inhaltsverzeichnis} oder \enquote{Abbildung}) bereit.
Das Paket \mintinline{latex}{babel} stellt sprachspezifische Informationen (z.\,B. Silbentrennung, Sonderzeichen, Wechsel zwischen Fonts, Übersetzung von Labels\footnote{Vgl. \cref{sec:references}} wie \enquote{Kapitel}, \enquote{Inhaltsverzeichnis} oder \enquote{Abbildung}) bereit.
Als optionaler Parameter kann die Sprache übergeben werden.
\mintinline{latex}{ngerman} steht hierbei für die Neue Deutsche Rechtschreibung.
Manche Pakete erfordern es, dass die Sprachangabe schon als optionaler Parameter dem \mintinline{latex}{\documentclass}-Befehl\footnote{Vgl. \cref{subsubsec:dokumentklasse}} übergeben wird.
Manche Pakete erfordern es, dass die Sprachangabe schon als optionaler Parameter dem \mintinline{latex}{\documentclass}-Befehl\footnote{Vgl. \cref{subsubsec:document-class}} übergeben wird.
In diesem Fall wird der optionale Parameter beim Einbinden von \mintinline{latex}{babel} einfach weggelassen.
In einem Dokument können auch mehrere Sprachen verwendet werden.
@ -94,14 +94,14 @@ Wir sprechen hier von einem Kommentar.
Falls tatsächlich ein Prozentzeichen erscheinen soll, könnt ihr dies durch einen Backslash erreichen: \mintinline{latex}{\%}.
Diese Lösung, die auch als Escaping bezeichnet wird, funktioniert auch für die Zeichen \#, \$, \&, \_, \{ und \}.
Für den Backslash muss der Befehl \mintinline{latex}{\textbackslash} verwendet werden.\footnote{Eine Übersicht weiterer Sonderzeichen ist im zugehörigen \cref{sec:sonderzeichen} zu finden.}
Für den Backslash muss der Befehl \mintinline{latex}{\textbackslash} verwendet werden.\footnote{Eine Übersicht weiterer Sonderzeichen ist im zugehörigen \cref{sec:special-characters} zu finden.}
\subsubsection{Abschnitte und Kapitel}
Texte werden durch Überschriften in Abschnitte und Kapitel unterteilt.
Immer nutzbar sind die in \cref{lst:ueberschriften} dargestellten Befehle.
\Example{lst:ueberschriften}{grundstruktur/ueberschriften}{grundstruktur/ueberschriften_crop}{Überschriftenebenen}
Immer nutzbar sind die in \cref{lst:headlines} dargestellten Befehle.
\Example{lst:headlines}{grundstruktur/ueberschriften}{grundstruktur/ueberschriften_crop}{Überschriftenebenen}
Je nach Dokumentklasse sind außerdem \mintinline{latex}{\chapter{Kapitel}} und \mintinline{latex}{\part{Teil}} verfügbar -- beispielsweise in Büchern.
Mit Sternchen fallen bei allen diesen Befehlen die Nummerierung und der Eintrag im Inhaltsverzeichnis\footnote{Vgl. \cref{subsubsec:inhaltsverzeichnis}} weg:
Mit Sternchen fallen bei allen diesen Befehlen die Nummerierung und der Eintrag im Inhaltsverzeichnis\footnote{Vgl. \cref{subsubsec:table-of-contents}} weg:
\begin{minted}{latex}
\section*{Kommt nicht im Inhaltsverzeichnis vor}
@ -120,13 +120,13 @@ Mehrere Autoren werden dabei mit \mintinline{latex}{\and} verbunden.
Fehlt der Befehl \mintinline{latex}{\date}, wird per default das aktuelle Datum gesetzt.
Die genaue Gestaltung hängt ab von der verwendeten Dokumentklasse.
\Example{lst:titelei}{grundstruktur/titelei}{grundstruktur/titelei_crop}{Die Titelei}
\Example{lst:titles}{grundstruktur/titelei}{grundstruktur/titelei_crop}{Die Titelei}
\subsubsection{Verzeichnisse}\label{subsubsec:inhaltsverzeichnis}
\subsubsection{Verzeichnisse}\label{subsubsec:table-of-contents}
Aus allen mit den oben genannten Befehlen eingefügten Abschnitten fügt der Befehl \mintinline{latex}{\tableofcontents} ein automatisch nummeriertes Inhaltsverzeichnis zusammen (wie zum Beispiel in \cref{lst:hauptdatei} auf \cpageref{lst:hauptdatei} zu sehen).
Aus allen mit den oben genannten Befehlen eingefügten Abschnitten fügt der Befehl \mintinline{latex}{\tableofcontents} ein automatisch nummeriertes Inhaltsverzeichnis zusammen (wie zum Beispiel in \cref{lst:main-file} auf \cpageref{lst:main-file} zu sehen).
Die Aufzählungszeichen, die Tiefe der Aufzählung und viele weitere Gestaltungselemente sind frei anpassbar.\footnote{Ein empfehlenswerter Blogpost hierzu ist unter \url{https://texblog.org/2011/09/09/10-ways-to-customize-tocloflot/} verfügbar.}
Damit \LaTeX\ das Inhaltsverzeichnis vollständig baut, muss das Projekt zweimal kompiliert werden.
Neben dem Inhaltsverzeichnis stehen auch eine \mintinline{latex}{\listoffigures} (Abbildungsverzeichnis) und eine \mintinline{latex}{\listoftables} (Tabellenverzeichnis) zur Verfügung.
Aufgeführt werden jeweils die Bild- oder Tabellenunterschriften.\footnote{Siehe hierzu \cref{sec:grafiken_einbinden} (Grafiken) und \cref{sec:tabellen} (Tabellen).}
Aufgeführt werden jeweils die Bild- oder Tabellenunterschriften.\footnote{Siehe hierzu \cref{sec:include-graphics} (Grafiken) und \cref{sec:tables} (Tabellen).}

View File

@ -1,5 +1,5 @@
\section{Literaturverwaltung}
\label{sec:literatur}
\label{sec:literature}
Um die ersten Studien- oder Abschlussarbeiten in \LaTeX\ zu setzen, fehlt uns jetzt nur noch eine Möglichkeit, Literatur zu referenzieren.
Unsere Literatursammlung liegt in der sogenannten .bib-Datei.
@ -48,7 +48,7 @@ Als hochwertige (wenn auch leider nicht vollständige) Quelle für Bib\TeX-Eintr
\end{figure}
\subsection{Zitieren}
Durch Bib\TeX{} wird \LaTeX{} um einige Befehle zum Zitieren erweitert (vgl. \cref{tab:bibtex-commands}).
Durch Bib\TeX{} wird \LaTeX{} um einige Befehle zum Zitieren erweitert (vgl. \cref{tbl:bibtex-commands}).
Zusätzlich benötigt wird das Paket \mintinline{latex}{natbib}.
\begin{table}[H]
@ -63,11 +63,11 @@ Zusätzlich benötigt wird das Paket \mintinline{latex}{natbib}.
Zitierstil ändern & \mintinline{latex}{\bibliographystyle{<zitierstil>}} \\ \bottomrule
\end{tabular}
\caption{Befehle zum Zitieren von Literatur}
\label{tab:bibtex-commands}
\label{tbl:bibtex-commands}
\end{table}
Als \mintinline{latex}{<quelle>} einer Zitation wird immer der Bib\TeX-Key angegeben.
Verfügbare Zitierstile\footnote{Eine vollständigere Liste ist bei Overleaf zu finden: \url{https://www.overleaf.com/learn/latex/Biblatex_citation_styles}} sind zum Beispiel alpha, natdin und apa.
Das Literaturverzeichnis erscheint immer an der Stelle, an der der Befehl \mintinline{latex}{\bibliography{<.bib-datei>}} aufgerufen wurde.
\Example{lst:natdin-beispiel}{literaturverwaltung/natdin-example}{literaturverwaltung/natdin-example_bib}{Beispiel für Zitationen im Stil \mintinline{latex}{natdin}.}
\Example{lst:natdin-example}{literaturverwaltung/natdin-example}{literaturverwaltung/natdin-example_bib}{Beispiel für Zitationen im Stil \mintinline{latex}{natdin}.}

View File

@ -1,15 +1,15 @@
\section{Mathematische Formeln}
\label{sec:formeln}
\label{sec:formulas}
Mathematische Formeln können nur im sogenannten Mathmode gesetzt werden, der innerhalb einer Zeile (auch als inline bekannt) durch zwei Dollarzeichen aktiviert wird.
Außerdem gibt es eine Blockumgebung (vgl. \cref{lst:SampleMathEnvironment}).
Außerdem gibt es eine Blockumgebung (vgl. \cref{lst:sample-math-environment}).
Wichtige Pakete für mathematische Zeichen sind \mintinline{latex}{amsmath}, \mintinline{latex}{amsthm} und \mintinline{latex}{amssymb} der American Mathematical Society sowie \mintinline{latex}{mathtools}.
Wie bei allen Umgebungen kann durch Angabe eines Asterisks (\textasteriskcentered) die Nummerierung der Gleichungen ausgeschaltet werden.
\example{lst:SampleMathEnvironment}{mathe/sample-math-environment}{Beispielhafte Matheumgebungen}
\example{lst:sample-math-environment}{mathe/sample-math-environment}{Beispielhafte Matheumgebungen}
\subsection{Einige Beispiele}
Die \cref{tab:MathsCommonCommands,tab:MathsLogicSetsBraces} listen einige häufig in Formeln verwendeten Befehle auf.
Die \cref{tbl:maths-common-commands,tbl:maths-logic-sets-braces} listen einige häufig in Formeln verwendeten Befehle auf.
\begin{table}[H]
\centering
@ -24,7 +24,7 @@ Die \cref{tab:MathsCommonCommands,tab:MathsLogicSetsBraces} listen einige häufi
\bottomrule
\end{tabular}
\caption{Häufig verwendete Befehle (Wurzel, Bruch, Exponent, Summe, Vergleichszeichen). Durch \mintinline{latex}{^{}} und \mintinline{latex}{_{}} werden die Inhalte in den Klammern hoch- oder tiefgestellt.}
\label{tab:MathsCommonCommands}
\label{tbl:maths-common-commands}
\end{table}
\begin{table}[H]
@ -42,7 +42,7 @@ Die \cref{tab:MathsCommonCommands,tab:MathsLogicSetsBraces} listen einige häufi
\mintinline{latex}{(A \cdot B) \times C} & $(A \cdot B) \times C$ \\ \bottomrule
\end{tabular}
\caption{Klammerungen, Quantoren, griechische Buchstaben, Pfeile, Operatoren}
\label{tab:MathsLogicSetsBraces}
\label{tbl:maths-logic-sets-braces}
}
\end{table}
@ -51,28 +51,28 @@ Die \cref{tab:MathsCommonCommands,tab:MathsLogicSetsBraces} listen einige häufi
Im Zusammenspiel mit Brüchen kommt es vor, dass Klammern mit ihrem Inhalt wachsen sollen.
Hierfür muss dem Befehl zum Erzeugen der Klammern (\mintinline{latex}{(}, \mintinline{latex}{)}, \mintinline{latex}{[}, \mintinline{latex}{]}, \mintinline{latex}{\lbrace} und \mintinline{latex}{\rbrace}) jeweils ein Positionsmarker (\mintinline{latex}{\left} oder \mintinline{latex}{\right}) vorangestellt werden.
\example{lst:GrowingBrackets}{mathe/growing-brackets}{Beispiel für mitwachsende Klammern}
\example{lst:growing-brackets}{mathe/growing-brackets}{Beispiel für mitwachsende Klammern}
\subsection{Darstellung von Grenzen}
Mit dem Befehl \mintinline{latex}{\limits} lassen sich die Grenzen von Integralen unter und über dem Integralzeichen darstellen.
Bei Summen, Produkten und Grenzwerten geschieht das automatisch (vgl. \cref{lst:Limits}).
Bei Summen, Produkten und Grenzwerten geschieht das automatisch (vgl. \cref{lst:limits}).
Im Fließtext eignet sich \mintinline{latex}{\limits} nur bedingt.
\example{lst:Limits}{mathe/limits}{Grenzen von Summen, Produkten, Grenzwerten und Integralen}
\example{lst:limits}{mathe/limits}{Grenzen von Summen, Produkten, Grenzwerten und Integralen}
\subsection{Ausrichtung mehrerer Gleichungen}
Die Umgebung \mintinline{latex}{align} erlaubt es, Gleichungen zum Beispiel am \texttt{=}-Zeichen auszurichten (vgl. \cref{lst:AlignExample}).
Die Umgebung \mintinline{latex}{align} erlaubt es, Gleichungen zum Beispiel am \texttt{=}-Zeichen auszurichten (vgl. \cref{lst:math-alignment-example}).
Ausgerichtet wird dabei analog zu Tabellen am \texttt{\&}-Zeichen.
Zeilenumbrüche werden durch zwei Backslashes markiert.
\Example{lst:AlignExample}{mathe/align-example}{mathe/align-example_crop}{Am Gleichheitszeichen ausgerichtete Gleichungen}
\Example{lst:math-alignment-example}{mathe/align-example}{mathe/align-example_crop}{Am Gleichheitszeichen ausgerichtete Gleichungen}
\subsection{Mengenschreibweise}
Manchmal ist es notwendig, im Zusammenhang mit der Mengenschreibweise Prädikate unter Verwendung von textuellen Beschreibungen oder längeren Funktionsnamen zu definieren.
Im Mathmode wird die Zeichensetzung von \LaTeX nicht auf Fließtext, sondern auf Formeln ausgerichtet, was zu ungünstigen Anordnungen zusammenhängender Buchstabenketten führt.
Für diesen Fall gibt es den Befehl \mintinline{latex}{\mathrm{}} (\enquote{math roman}, vgl. \cref{lst:SetBuilderNotation}).
Für diesen Fall gibt es den Befehl \mintinline{latex}{\mathrm{}} (\enquote{math roman}, vgl. \cref{lst:set-builder-notation}).
\example{lst:SetBuilderNotation}{mathe/set-builder-notation}{Probleme in der Mengenschreibweise und ihre Lösung}
\example{lst:set-builder-notation}{mathe/set-builder-notation}{Probleme in der Mengenschreibweise und ihre Lösung}

View File

@ -1,11 +1,11 @@
\section{Projektstruktur}
\label{sec:projektstruktur}
\label{sec:project-structure}
In den bisherigen Kapiteln haben wir nur sehr kurze \LaTeX{}-Beispiele gesehen. Natürlich kann \LaTeX{} aber auch verwendet werden, um größere Dokumente und Projekte zu erstellen, wie etwa eine Abschlussarbeit.
Um nicht den Überblick im Quellcode zu verlieren und zu vermeiden, dass Quelldateien zu lang werden, ist eine sinnvolle Strukturierung eines größeren \LaTeX{}-Projektes ratsam. Hierfür wird der Quellcode in verschiedene Dateien aufgeteilt, welche in den folgenden Abschnitten näher beleuchtet werden.
\subsection{Hauptdatei} Typischerweise wird bei größeren Projekten mit einer Hauptdatei gearbeitet, die gerne \texttt{main.tex} genannt wird. Sie ist sozusagen das Skelett des Projektes und enthält damit dessen Grundgerüst inklusive der Präambel. In dieser Hauptdatei werden Titel, Inhaltsverzeichnis sowie die einzelnen Kapitel einer Arbeit eingebunden (vgl. \cref{lst:hauptdatei}). Die Einbindung der einzelnen Abschnitte kann entweder mittels \mintinline{latex}{\input{...}} oder \mintinline{latex}{\include{...}} erfolgen. Beide verlangen als Argument den Pfad zur Datei, die eingebunden werden soll. Auf die Unterschiede zwischen den beiden Befehlen gehen wir später noch ein (vgl. \cref{subsec:input-vs-include}).
\subsection{Hauptdatei} Typischerweise wird bei größeren Projekten mit einer Hauptdatei gearbeitet, die gerne \texttt{main.tex} genannt wird. Sie ist sozusagen das Skelett des Projektes und enthält damit dessen Grundgerüst inklusive der Präambel. In dieser Hauptdatei werden Titel, Inhaltsverzeichnis sowie die einzelnen Kapitel einer Arbeit eingebunden (vgl. \cref{lst:main-file}). Die Einbindung der einzelnen Abschnitte kann entweder mittels \mintinline{latex}{\input{...}} oder \mintinline{latex}{\include{...}} erfolgen. Beide verlangen als Argument den Pfad zur Datei, die eingebunden werden soll. Auf die Unterschiede zwischen den beiden Befehlen gehen wir später noch ein (vgl. \cref{subsec:input-vs-include}).
\example{lst:hauptdatei}{projektstruktur/hauptdatei_crop}{Typische Struktur einer Hauptdatei in \LaTeX{}}
\example{lst:main-file}{projektstruktur/hauptdatei_crop}{Typische Struktur einer Hauptdatei in \LaTeX{}}
\todo{Kommentar und pagenumbering im Beispiel rausnehmen?}
\subsection{Abschnittsdateien}
@ -16,6 +16,6 @@ Um nicht den Überblick im Quellcode zu verlieren und zu vermeiden, dass Quellda
\label{subsec:input-vs-include}
Kommen wir nun zu den Unterschieden zwischen den beiden möglichen Befehlen zum Einbinden von \LaTeX-Dateien. Kurz zusammengefasst weisen \mintinline{latex}{\include} und \mintinline{latex}{\input} Unterschiede in den folgenden drei Aspekten auf: Die Art und Weise, wie der Pfad zur einzubindenden Datei angegeben wird, die Möglichkeit der Schachtelung von Einbindungen und ob für jeden Abschnitt eine neue Seite angefangen wird.
Benutzt man den Befehl \mintinline{latex}{\input}, kann die Dateiendung \texttt{.tex} angegeben werden, sie ist aber nicht zwingend notwendig. Außerdem kann man die Einbindung von Dateien schachteln: Eine Datei, die mit \mintinline{latex}{\input} eingebunden wurde, kann wiederum mit dem gleichen Befehl eine andere Datei einbinden. Die Dateien, die eingebunden wurden, werden im fertigen Dokument eingefügt, ohne dass dabei eine neue Seite für den eingebundenen Abschnitt angefangen wird (vgl. \cref{lst:hauptdatei}).
Benutzt man den Befehl \mintinline{latex}{\input}, kann die Dateiendung \texttt{.tex} angegeben werden, sie ist aber nicht zwingend notwendig. Außerdem kann man die Einbindung von Dateien schachteln: Eine Datei, die mit \mintinline{latex}{\input} eingebunden wurde, kann wiederum mit dem gleichen Befehl eine andere Datei einbinden. Die Dateien, die eingebunden wurden, werden im fertigen Dokument eingefügt, ohne dass dabei eine neue Seite für den eingebundenen Abschnitt angefangen wird (vgl. \cref{lst:main-file}).
Anders verhält sich der Befehl \mintinline{latex}{\include}: Hier wird die Dateiendung \texttt{.tex} für die eingebundenen Kapitel \emph{nicht} mit angegeben. Die Schachtelung von Einbindungen ist nicht möglich. Für jede eingebundene Datei wird außerdem eine neue Seite erzeugt. Der \mintinline{latex}{\include}-Befehl bietet aber einen Vorteil für größere Projekte: Man kann mit dem Befehl \mintinline{latex}{\includeonly{file1,file2,...}} direkt mehrere Dateien in der Präambel einbinden, allerdings muss hier vorher das gesamte Projekt mindestens einmal kompiliert worden sein. \todo{Ist die \mintinline{latex}{\includeonly}-Semantik korrekt?}

View File

@ -48,20 +48,20 @@ Schaut am besten mal in die Einstellungen oder bemüht eine Suchmaschine.
Jetzt kann der eigentliche Spaß losgehen.
Quelltext könnt ihr von nun an unter Angabe der Sprache in einer eigenen Umgebung setzen:
\example{lst:MintedEnvironment}{code/minted-umgebung}{Beispielhaftes Quelltext-Listing}
\example{lst:minted-environment}{code/minted-umgebung}{Beispielhaftes Quelltext-Listing}
\example{lst:MintedVariants}{code/minted-varianten}{Kurzschreibweise und Inline-Listing}
\example{lst:minted-variants}{code/minted-varianten}{Kurzschreibweise und Inline-Listing}
\noindent Außerdem gibt es eine Kurzschreibweise und eine Inline-Variante des Befehls (vgl. \cref{lst:MintedVariants}).
\noindent Außerdem gibt es eine Kurzschreibweise und eine Inline-Variante des Befehls (vgl. \cref{lst:minted-variants}).
Um Redundanz zu vermeiden, ist es manchmal praktisch, den Quelltext direkt aus der Quelldatei einzulesen.
Hierzu müssen nur die verwendete Programmiersprache und der Dateipfad an den Befehl \mintinline{latex}{\inputminted} übergeben werden (vgl. \cref{lst:MintedExternal}).
Hierzu müssen nur die verwendete Programmiersprache und der Dateipfad an den Befehl \mintinline{latex}{\inputminted} übergeben werden (vgl. \cref{lst:minted-external}).
\example{lst:MintedExternal}{code/minted-import}{Einbinden aus einer externen Datei}
\example{lst:minted-external}{code/minted-import}{Einbinden aus einer externen Datei}
\subsection{Minted konfigurieren}
Durch optionale Parameter können Zeilennummerierung, Umbrüche und Farben ausgewählt werden.
Außerdem sind zahlreiche Themes verfügbar (\cref{lst:MintedExternalStyled}).
Außerdem sind zahlreiche Themes verfügbar (\cref{lst:minted-external-styled}).
Einen umfänglichen Überblick geben die Einführung von Overleaf und die Dokumentation.\footnote{Verfügbar unter \url{https://www.overleaf.com/learn/latex/Code_Highlighting_with_minted} bzw. \url{https://ctan.kako-dev.de/macros/latex/contrib/minted/minted.pdf}.}
\example{lst:MintedExternalStyled}{code/minted-import-styled}{Themes und weitere Optionen}
\example{lst:minted-external-styled}{code/minted-import-styled}{Themes und weitere Optionen}

View File

@ -1,10 +1,11 @@
\section{Referenzen}\label{sec:referenzen}
\section{Referenzen}
\label{sec:references}
Für Querverweise der Form \enquote{Wie man in Abbildung 23 sieht, \textellipsis} bringt \LaTeX\ von Haus aus den Befehl \mintinline{latex}{\ref{label}} mit, der lästige Anpassungen an der Nummerierung der Grafiken, Tabellen etc. erspart.
Er erhält als Argument ein eindeutiges Label, das auch dem referenzierten Element zugeordnet werden muss.
Anschließend erscheint an der Stelle des Befehlsaufrufs die fortlaufende Nummer des referenzierten Elements.
\Example{lst:fooboar-lernt-latex}{referenzen/ref}{referenzen/ref_crop}{Beispiel für eine Referenzierung}
\Example{lst:fooboar-learning-latex}{referenzen/ref}{referenzen/ref_crop}{Beispiel für eine Referenzierung}
Noch smarter ist das Paket \mintinline{latex}{cleveref}.\footnote{mit nur einem \enquote{r}!}
Es bringt den Befehl \mintinline{latex}{\cref{label}} mit, dem auch -- durch Kommata getrennt -- mehrere Labels übergeben werden können.
@ -14,7 +15,7 @@ Zudem fügt \mintinline{latex}{\cref{label}} eigenständig die richtige Abkürzu
Referenziert werden können neben Grafiken und Tabellen unter anderem auch Abschnitte, Bilder, Quelltext-Listings und Gleichungen.
Viele Pakete nutzen das Label, um herauszufinden, zu welchem Objekttyp es gehört.
Aus diesem Grund ist es üblich, jedem Label ein Präfix voranzustellen (\cref{tbl:praefixe}).
Aus diesem Grund ist es üblich, jedem Label ein Präfix voranzustellen (\cref{lst:reference-prefixes}).
\begin{table}[H]
\centering
@ -27,7 +28,7 @@ Aus diesem Grund ist es üblich, jedem Label ein Präfix voranzustellen (\cref{t
eq: & Gleichungen & lst: & Quelltext-Listings \\ \bottomrule
\end{tabular}
\caption{Präfixe für Labels}
\label{tbl:praefixe}
\label{lst:reference-prefixes}
\end{table}
Bei der Verwendung von \mintinline{latex}{\cref{label}} ist zu beachten, dass die generierten Passagen in einigen Dokumentklassen erst dann auf Deutsch erscheinen, wenn bereits in der Dokumentklasse die Sprache festgelegt wurde:
@ -40,5 +41,5 @@ Bei der Verwendung von \mintinline{latex}{\cref{label}} ist zu beachten, dass di
Bei Abschnitten wird das Label direkt hinter dem Befehl angefügt:
\begin{minted}{latex}
\section{Hinweise}\label{sec:hinweise}
\section{Hinweise}\label{sec:hints}
\end{minted}

View File

@ -1,14 +1,14 @@
\section{Sonderzeichen}
\label{sec:sonderzeichen}
\label{sec:special-characters}
\subsection{Leerzeichen}
Das am häufigsten benötigte Sonderzeichen ist ein einfaches Leerzeichen als Wortzwischenraum.
Dieses Zeichen entsteht in \LaTeX, wenn im Quellcode zwischen anderen Zeichen Leerzeichen oder einzelne Zeilenumbrüche stehen.
Es gibt aber auch einige andere Arten von Leerzeichen.
Wie sie verwendet werden können, wird in \cref{lst:leerzeichen} veranschaulicht.
Wie sie verwendet werden können, wird in \cref{lst:spaces} veranschaulicht.
\example{lst:leerzeichen}{sonderzeichen/leerzeichen}{Unterschiedliche Leerzeichen in \LaTeX}
\example{lst:spaces}{sonderzeichen/leerzeichen}{Unterschiedliche Leerzeichen in \LaTeX}
\paragraph{English Spacing}
In englischsprachigen Dokumenten verwendet LaTeX das traditionelle English Spacing, also doppelte Leerzeichen nach dem Satzende.
@ -21,7 +21,7 @@ Wortzwischenräume (\mintinline[showspaces]{tex}{.\ }) oder Satzenden (\mintinli
\subsection{Striche}
Es gibt verschiedene horizontale Striche.
Am häufigsten werden der Bindestrich (-), der Halbgeviertstrich () und der Geviertstrich\footnote{Ein Geviert ist die Zeilenhöhe, die eine Bleiletter aus dem Buchdruck einnimmt.} (—) verwendet.
Diese drei Striche werden in \LaTeX{} durch unterschiedlich viele Bindestriche im Quelltext erzeugt, wie \cref{tbl:striche} zeigt.
Diese drei Striche werden in \LaTeX{} durch unterschiedlich viele Bindestriche im Quelltext erzeugt, wie \cref{tbl:bars} zeigt.
\begin{longtable}{@{}llp{7.8cm}@{}}
\toprule
@ -32,12 +32,12 @@ Diese drei Striche werden in \LaTeX{} durch unterschiedlich viele Bindestriche i
\mintinline{tex}|---| & Geviertstrich & a dash\,\,mostly used in American English \\
\bottomrule
\caption{Striche in \LaTeX}
\label{tbl:striche}
\label{tbl:bars}
\end{longtable}
Der Bindestrich wird zwar auch zur Silbentrennung verwendet, ihr solltet ihn dafür aber nicht explizit im Quellcode eingeben.
An den meisten Stellen trennt \LaTeX{} automatisch richtig, wenn ihr das passende \texttt{babel}-Paket eingebunden habt.\footnote{Vgl. \cref{subsubsec:sprache}.}
Wenn dabei etwas schiefgeht, könnt ihr mit den Codes in \cref{tbl:trennstellen} eingreifen:\footnote{Auch dafür muss \texttt{babel} eingebunden sein.}
An den meisten Stellen trennt \LaTeX{} automatisch richtig, wenn ihr das passende \texttt{babel}-Paket eingebunden habt.\footnote{Vgl. \cref{subsubsec:language}.}
Wenn dabei etwas schiefgeht, könnt ihr mit den Codes in \cref{tbl:separators} eingreifen:\footnote{Auch dafür muss \texttt{babel} eingebunden sein.}
\begin{longtable}{@{}lp{11cm}@{}}
\toprule
@ -52,11 +52,11 @@ Wenn dabei etwas schiefgeht, könnt ihr mit den Codes in \cref{tbl:trennstellen}
\mintinline{tex}|"~| & Bindestrich ohne Trennstelle: Wird verwendet, um den Bindestrich zusammen mit dem folgenden Wort umbrechen zu lassen: \emph{Vorlesungszeit und "~raum} \\
\bottomrule
\caption{Ausnahmen für die Silbentrennung}
\label{tbl:trennstellen}
\label{tbl:separators}
\end{longtable}
\subsection{Anführungszeichen}
Anführungszeichen können grundsätzlich mit den Codes in \cref{tbl:anfuehrungszeichen} erzeugt werden.
Anführungszeichen können grundsätzlich mit den Codes in \cref{tbl:quotation-marks} erzeugt werden.
Entscheidend ist dabei jeweils das Aussehen und nicht die Semantik, weshalb zum Beispiel im Deutschen die französichen Guillemets verkehrt herum verwendet werden (»french left quoation mark« rechts und umgekehrt).
\begin{table}[H]
@ -74,7 +74,7 @@ Entscheidend ist dabei jeweils das Aussehen und nicht die Semantik, weshalb zum
\bottomrule
\end{tabular}
\caption{Anführungszeichen}
\label{tbl:anfuehrungszeichen}
\label{tbl:quotation-marks}
\end{table}
Deutlich flexibler seid ihr aber mit dem Paket \mintinline{tex}{csquotes}, das den Befehl \mintinline{tex}|\enquote{<zitat>}| zur Verfügung stellt.
@ -85,7 +85,7 @@ Mit der Option \mintinline{tex}|autostyle=true| beim Paketimport setzt der Befeh
Wenn ihr Buchstaben mit diakritischen Zeichen direkt über die Tastatur eingeben könnt beispielsweise die deutschen Umlaute oder gängige Akzente auf einer deutschen Tastatur , könnt ihr das auch direkt im Quelltext tun.
Die Zeichen bleiben dann im Output erhalten.
Ansonsten können die Diakritika auch per Escape-Codes erzeugt werden.
\cref{tbl:diakritika} gibt nur einige Beispiele an die Buchstaben lassen sich natürlich austauschen, es gibt aber auch noch viele andere Diakritika.
\cref{tbl:diacritics} gibt nur einige Beispiele an die Buchstaben lassen sich natürlich austauschen, es gibt aber auch noch viele andere Diakritika.
\begin{table}[H]
\center
@ -100,13 +100,13 @@ Ansonsten können die Diakritika auch per Escape-Codes erzeugt werden.
\bottomrule
\end{tabular}
\caption{Diakritika}
\label{tbl:diakritika}
\label{tbl:diacritics}
\end{table}
\subsection{Andere Sonderzeichen}
Einige Sonderzeichen, beispielsweise das Prozentzeichen, sind für die \LaTeX{}-Syntax reserviert und können nicht als normale Zeichen verwendet werden.
Diese und viele, viele weitere Sonderzeichen können über eigene Befehle erzeugt werden.
Dabei ist zu beachten, dass manche Sonderzeichen nur in Mathe-Umgebungen (siehe \cref{sec:formeln}) funktionieren, andere brauchen zusätzliche Pakete.
Dabei ist zu beachten, dass manche Sonderzeichen nur in Mathe-Umgebungen (siehe \cref{sec:formulas}) funktionieren, andere brauchen zusätzliche Pakete.
\begin{table}[H]
\center
@ -135,7 +135,7 @@ Dabei ist zu beachten, dass manche Sonderzeichen nur in Mathe-Umgebungen (siehe
\bottomrule
\end{tabular}
\caption{Einige Sonderzeichen}
\label{tbl:sonderzeichen}
\label{tbl:special-characters}
\end{table}
Falls ihr mal ein Sonderzeichen braucht, von dem ihr nicht genau wisst, wie es heißt, hilft euch \emph{Detexify}\footnote{\url{http://detexify.kirelabs.org/classify.html}} ihr könnt das Symbol zeichnen und bekommt alle nötigen Infos.
Dass es von Keilschrift bis zu technischen Symbolen wirklich \emph{alles} gibt, stellt ihr fest, wenn ihr durch die \emph{Comprehensive \LaTeX{} Symbol List}\footnote{\url{http://tug.ctan.org/info/symbols/comprehensive/symbols-a4.pdf}} blättert.

View File

@ -1,5 +1,5 @@
\section{Tabellen}
\label{sec:tabellen}
\label{sec:tables}
Für Tabellen gibt es zwei grundlegende Umgebungen.
Die erste, \texttt{table}, ist dafür zuständig, die Tabelle insgesamt in das übrige Dokument einzubauen.
@ -21,9 +21,9 @@ Dieses Paket bringt unter anderem die Befehle \mintinline{tex}{\toprule}, \minti
Vertikale Linien können als senkrechter Strich (\texttt{|}) in die Spaltendefinition eingefügt werden, davon ist aber abzuraten.
Wenn ihr den zusätzlichen Weißraum entfernen möchtet, der standardmäßig die Spalten umgibt, könnt ihr ebenfalls zwischen den Buchstaben der Spaltendefinition die Zeichenkette \mintinline{tex}{@{}} einfügen.
Die komplette Tabelle kann dann beispielsweise so aussehen wie in \cref{lst:tabelle} abgebildet.
Die komplette Tabelle kann dann beispielsweise so aussehen wie in \cref{lst:sample-table} abgebildet.
\Example{lst:tabelle}{tabellen/beispieltabelle}{tabellen/beispieltabelle_renderbar}{Eine komplette Tabelle}
\Example{lst:sample-table}{tabellen/beispieltabelle}{tabellen/beispieltabelle_renderbar}{Eine komplette Tabelle}
\paragraph{Überlänge}
Für Tabellen, die über eine Seite hinausgehen, oder die Zeilenumbrüche innerhalb einzelner Tabellenzellen erfordern, kann zusätzlich das Paket \texttt{longtable} eingebunden werden, mit dem \texttt{booktabs} ebenfalls kompatibel ist.

View File

@ -6,7 +6,7 @@ Die einfachste semantische Auszeichnung, die auch im vorherigen Satz verwendet w
Der Befehl lässt sich auch schachteln und setzt Text normalerweise kursiv bzw. in zweiter Ebene wieder gerade.
Diese Art der Hervorhebung wird erst beim Lesen wahrgenommen und zieht nicht schon vorher Aufmerksamkeit an, wie es der farbige Befehl in diesem Absatz tut, oder Fettsatz, der eher zur Gliederung geeignet ist.
Einige optische Auszeichnungen werden in \cref{tbl:optische-auszeichnung} aufgelistet, sollten aber sehr vorsichtig verwendet werden.
Einige optische Auszeichnungen werden in \cref{tbl:visual-markup} aufgelistet, sollten aber sehr vorsichtig verwendet werden.
Grundsätzlich lassen sie sich auch untereinander schachteln, bei einigen Kombinationen werden aber die passenden Schriftschnitte fehlen.
Viele andere Programme fangen in solchen Fällen an, vorhandene Schnitte zu verzerren, um den fehlenden Schnitt zu imitieren.
Gut sieht so etwas aber nicht aus, deshalb verzichtet \LaTeX{} darauf.
@ -28,7 +28,7 @@ Gut sieht so etwas aber nicht aus, deshalb verzichtet \LaTeX{} darauf.
\bottomrule
\end{tabular}
\caption{Befehle zur optischen Textauszeichnung}
\label{tbl:optische-auszeichnung}
\label{tbl:visual-markup}
\end{table}
Normalerweise solltet ihr diese Befehle kaum brauchen, denn da, wo diese Auszeichnungen angebracht sind, tauchen sie meistens von selbst auf, wenn ihr semantische Befehle verwendet.
@ -39,7 +39,7 @@ Die Größe der Schrift im Fließtext könnt ihr mit einer Option der Dokumenten
\begin{minted}{latex}
\documentclass[9pt]{article}
\end{minted}
Darauf aufbauend erzeugt \LaTeX{} verschiedene Schriftgrade, die durch die Befehle in \cref{tbl:schriftgrade} gesetzt werden können.
Darauf aufbauend erzeugt \LaTeX{} verschiedene Schriftgrade, die durch die Befehle in \cref{tbl:type-sizes} gesetzt werden können.
Beschränkt so etwas aber besser auf Titelseiten und ähnliches.
Für den Rest könnt ihr auf die Standardeinstellungen vertrauen und euch das visuelle Durcheinander sparen.
@ -61,7 +61,7 @@ Für den Rest könnt ihr auf die Standardeinstellungen vertrauen und euch das vi
\bottomrule
\end{tabular}
\caption{Befehle zur optischen Textauszeichnung}
\label{tbl:schriftgrade}
\label{tbl:type-sizes}
\end{table}

View File

@ -20,8 +20,8 @@ Weil es einige der Vorteile begründet, die \LaTeX{} heute noch auszeichnen:
Es ist ein ausgereiftes, stabiles, verlässliches System,
das weitgehend automatisch typografisch hochwertigen Textsatz.
Da der \TeX-Code in Plaintext-Dateien abgelegt wird (siehe \cref{sec:wie_funktioniert_latex_}), ergeben sich weitere Vorteile:
Ihr könnt eure Projekte übersichtlich strukturieren (\cref{sec:projektstruktur}),
Da der \TeX-Code in Plaintext-Dateien abgelegt wird (siehe \cref{sec:latex-basic-functionality}), ergeben sich weitere Vorteile:
Ihr könnt eure Projekte übersichtlich strukturieren (\cref{sec:project-structure}),
und wann immer ihr Änderungen im Quelltext rückgängig macht, könnt ihr euch darauf verlassen, wieder die gleiche Ausgabe wie vorher zu erhalten.
Das klappt in größerem Maßstab natürlich auch in Verbindung mit Git oder anderen Quelltextversionierungstools.
Außerdem bleibt euer Quelltext langfristig zuverlässig lesbar, ohne dass ihr bestimmte Programme dafür benötigt.

View File

@ -1,5 +1,5 @@
\section{Wie funktioniert \LaTeX?}
\label{sec:wie_funktioniert_latex_}
\label{sec:latex-basic-functionality}
Programme zur Textverarbeitung und Dokumentenerstellung nutzen unterschiedliche Vorgehensweisen, um basierend auf einer bearbeiteten Datei ein Dokument zu erstellen.
Wer mit Microsoft Word vertraut ist, dem ist bekannt, dass das von der Export-Funktion erstellte Dokument (häufig einfach als \acro{PDF}-Dokument bezeichnet) genau so aussieht, wie Word das bearbeitete Dokument darstellt.
@ -14,7 +14,7 @@ Der Inhalt wird in einem Dokument in einfacher Textform platziert, zusammen mit
Bei Erstellung des Ausgabedokuments (ebenfalls ein \acro{PDF}-Dokument) werden die Befehle von einem Programm namens Compiler verarbeitet.
Der Compiler nimmt den Quelltext entgegen und liest ihn Zeile für Zeile.
Trifft er auf einen Befehl (eine bestimmte Zeichenkette, vgl. \cref{sub:die_befehle}), interpretiert er diesen und sorgt etwa für die richtige Darstellung des mit dem Befehl markierten Textes im Ausgabedokument.\footnote{Es sei an dieser Stelle bereits angemerkt, dass Befehle nicht nur genutzt werden, um einzelne Textpassagen, überschriften und so weiter auszuzeichnen. Im Laufe dieses Skriptes werden wir verschiedene Befehle kennenlernen, die ganz unterschiedliche Funktionen erfüllen.}
Trifft er auf einen Befehl (eine bestimmte Zeichenkette, vgl. \cref{subsec:command-structure}), interpretiert er diesen und sorgt etwa für die richtige Darstellung des mit dem Befehl markierten Textes im Ausgabedokument.\footnote{Es sei an dieser Stelle bereits angemerkt, dass Befehle nicht nur genutzt werden, um einzelne Textpassagen, überschriften und so weiter auszuzeichnen. Im Laufe dieses Skriptes werden wir verschiedene Befehle kennenlernen, die ganz unterschiedliche Funktionen erfüllen.}
Hervorgehebene Zeichenketten (z.\,B. \mintinline{latex}{\emph{hervorgehobener Text}}) erscheinen dann beispielsweise kursiv im Dokument (\emph{hervorgehobener Text}), während die Zeichenkette, die den Befehl bildet (\mintinline{latex}{\emph{}}), nicht in der \acro{PDF}-Datei auftaucht.
Dieses einfache Beispiel verdeutlicht eine Stärke des \acro{WYGIWYM}-Prinzips.
@ -23,7 +23,7 @@ Das Prinzip ist ähnlich zu Formatvorlagen in Office-Programmen, wenn auch konse
Basierend auf dem Text, den Befehlen und den Standard-Einstellungen des Compilers entsteht so das finale Dokument.
\subsection{Was brauchen wir dazu?}
\label{sub:was_brauchen_wir_dazu}
\label{subsec:what-we-need}
Um den Quelltext zu erstellen, auf dessen Basis der Compiler ein Dokument erstellen soll, wird ein Bearbeitungsprogramm benötigt.
Grundsätzlich ist ein einfaches Textbearbeitungsprogramm wie der Editor unter Windows oder auch Notepad++\footnote{Verfügbar unter \url{https://notepad-plus-plus.org/}.} ausreichend.
Fortgeschrittene Programme wie TeXstudio\footnote{Verfügbar unter \url{https://www.texstudio.org/}.} oder Texmaker\footnote{Verfügbar unter \url{https://www.xm1math.net/texmaker/}.} integrieren zusätzliche Funktionen, welche die Verwendung von Befehlen erleichtern.
@ -31,8 +31,8 @@ Falls ihr aus einem anderen Kontext bereits Visual Studio Code oder Atom kennt,
Zum Kompilieren des Quelltexts wird ein Compiler benötigt.
Der Compiler ist meist Teil einer Sammlung von Programmen und Paketen, die zusammen eine \LaTeX-Distribution bilden.
Die Distributionen enthalten verschiedene andere Hilfsprogramme, auf die wir für den Moment nicht näher eingehen.\footnote{Eines dieser Hilfsprogramme kommt später im Kapitel \ref{sec:literatur} zum Einsatz, wenn wir Literatur referenzieren.}
Die ebenfalls enthaltenen Pakete\footnote{Die ganz Eiligen finden in \cref{subsub:pakete} mehr Informationen.} stellen verschiedene Befehle zur Verfügung.
Die Distributionen enthalten verschiedene andere Hilfsprogramme, auf die wir für den Moment nicht näher eingehen.\footnote{Eines dieser Hilfsprogramme kommt später im Kapitel \ref{sec:literature} zum Einsatz, wenn wir Literatur referenzieren.}
Die ebenfalls enthaltenen Pakete\footnote{Die ganz Eiligen finden in \cref{subsubsec:packages} mehr Informationen.} stellen verschiedene Befehle zur Verfügung.
Manche Distributionen gibt es als normale und als vollständige Variante zum Download.
Die vollständige Variante enthält alle Pakete (und ist entsprechend wesentlich größer), während in der normalen Version Pakete erst dann heruntergeladen werden, wenn sie benötigt werden.
Die Entscheidung, ob ihr lieber zu Beginn oder später während des Arbeitens auf den Download wartet, können wir euch leider nicht abnehmen.
@ -41,7 +41,7 @@ Bekannte Distributionen sind MiK\TeX,\footnote{Für Windows, macOS und Linux. Ve
Installiert euch am besten gleich eine davon.
\subsection{Die Befehle}
\label{sub:die_befehle}
\label{subsec:command-structure}
Die in Quelltext verwendeten Befehle folgen einem allgemeinen Aufbau:
\begin{minted}{xml}
\<befehl>[<optionale_parameter>]{<obligatorische_parameter>}