2019-05-06 09:31:36 +02:00

308 lines
9.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="layout-content-only">
<div class="layout-content">
<h1>Grundstruktur eines L<sup style="font-weight: bold; font-size: 73%; margin-left: -.25em; margin-right: -.05em; position: relative; top: .2em">A</sup>T<sub style="font-size: 100%; margin-left: -.1em">E</sub>X-Dokuments</h1>
</div>
</div>
---
<div class="layout-content-and-preview">
<div class="layout-content">
<h3>Präambel und Dokumentumgebung</h3>
<p>👁 Ein mit LaTeX gesetztes Dokument besteht aus zwei Teilen.</p>
<ul class="fragment">
<li><b>Präambel</b>: globale Einstellungen (Dokumentklasse, Encoding, Sprache, Seitenformat, zusäzliche Pakete, ...) und</li>
<li><b>Dokumentumgebung</b>: textueller Inhalt des Dokuments.</li>
</ul>
</div>
<div class="layout-preview">
<pre class="lang-tex hljs" data-sourcefile="hallo.tex"><code>\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\begin{document}
Hallo, Welt!
\end{document}</code></pre>
<figure>
<img src="sections/german/03/hallo-crop.svg">
</figure>
</div>
</div>
---
<div class="layout-content-only">
<div class="layout-content">
<h2>Dokumentklasse</h2>
Befehlsstruktur
<pre class="lang-tex hljs"><code>\documentclass[parameter]{dokumentklasse}</code></pre>
konkret zum Beispiel
<pre class="lang-tex hljs"><code>\documentclass[10pt,a5paper,landscape]{scrartcl}</code></pre>
<p class="fragment">
<ul>
<li><b><code>scrartcl, article</b></code> für einfache Dokumente</li>
<li><b><code>scrreport, report</b></code> für komplexere Dokumente</li>
<li><b><code>scrbook, book</b></code> für Bücher</li>
<li><b><code>beamer</b></code> für Präsentationen</li>
</ul>
</p>
</div>
</div>
---
<div class="layout-content-only">
<div class="layout-content">
<h2>Encoding</h2>
Befehle:
<pre class="lang-tex hljs"><code>\usepackage[utf8]{inputenc}
\usepackage[t1]{fontenc}</code></pre>
<p class="fragment">
<ul>
<li>Die Zeichenkodierung bestimmt, welche Zeichen verfügbar sind.</li>
<li><b>ASCII</b> enthält kaum Sonderzeichen wie deutsche Umlaute.</li>
<li><b>UTF8</b> ist eine universelle Kodierung.</li>
</ul>
</p>
</div>
</div>
---
<div class="layout-content-only">
<div class="layout-content">
<h2>Sprache</h2>
Befehl:
<pre class="lang-tex hljs"><code>\usepackage[ngerman]{babel}</code></pre>
<p class="fragment">
<ul>
<li>Das Paket <b><code>babel</code></b> stellt sprachspezifische Informationen (z.B. Silbentrennung, Sonderzeichen, Wechsel zwischen Fonts, Übersetzung von Labels wie 'Kapitel', 'Inhaltsverzeichnis' oder 'Abbildung') bereit.</li>
<li><b><code>ngerman</code></b> steht für die neue deutsche Rechschreibung.</li>
</ul>
</p>
</div>
</div>
---
<div class="layout-content-only">
<div class="layout-content">
<h2>Sprache<em>n</em></h2>
Es können auch mehrere Sprachen im Dokument verwendet werden:
<pre class="lang-tex hljs"><code>\usepackage[ngerman, swedish, russian,
greek, english]{babel}</code></pre>
<div class="fragment">
Umschalten zwischen Sprachen:
<pre class="lang-tex hljs"><code>\selectlanguage{Sprache A}
\selectlanguage{Sprache B}</code></pre>
Eingebetteter Tex in andere Sprache:
<pre class="lang-tex hljs"><code>\selectlanguage{Sprache A}
\foreignlanguage{Sprache B}{Hier steht
Text in Sprache B innerhalb eines Textes
in Sprache A}</code></pre>
</div>
</div>
---
<div class="layout-content-and-preview">
<div class="layout-content">
<h2>Sprachen Ein Beispiel</h2>
<pre class="lang-tex hljs"><code>\today
\selectlanguage{ngerman}
\today
\selectlanguage{swedish}
\today
\selectlanguage{russian}
\today
\selectlanguage{greek}
\today
\selectlanguage{english}
\today
</code></pre>
</div>
<div class="layout-preview">
<img src="sections/german/03/languages-crop.svg">
</div>
</div>
---
<div class="layout-content-and-preview">
<div class="layout-content">
<h2>Absätze</h2>
<pre class="lang-tex hljs"><code>Fließtext kann direkt in den Quelltext ↲
geschrieben werden. ↲
Einfache Zeilenumbrüche ↲
werden dabei ignoriert ↲
genau wie mehrere Leerzeichen. ↲
Leerzeilen erzeugen einen neuen Absatz, ↲
standardmäßig mit Einzug. ↲
Manuelle Zeilenumbrüche können mit ↲
zwei Backslashes erzwungen werden, ↲
haben in Fließtext aber eigentlich \\\\ ↲
nichts verloren.</code></pre>
</div>
<div class="layout-preview">
<img src="sections/german/03/absätze-crop.svg">
</div>
</div>
---
<div class="layout-content-and-preview">
<div class="layout-content">
<h2 data-category="Achtung!">Reservierte Zeichen</h2>
<p>Bestimmte Zeichen lösen in LaTeX Dinge aus:</p>
<p>`# $ % ^ & _ { } ~ \`</p>
<pre class="lang-tex hljs"><code>50% sind die Hälfte.</code></pre>
<p>Lösung: `\` voranstellen:</p>
<pre class="lang-tex hljs"><code>50\% sind die Hälfte.</code></pre>
<p>Funktioniert nicht mit `\\`, Lösung dafür später.</p>
</div>
<div class="layout-preview">
TODO
</div>
</div>
---
<div class="layout-content-and-preview">
<div class="layout-content">
<h2>Abschnitte und Kapitel</h2>
<p>Texte werden durch Überschriften in Abschnitte und Kapitel unterteilt. Immer verfügbar:</p>
<pre class="lang-tex hljs"><code>\section{Ebene 1}
\subsection{Ebene 2}
\subsubsection{Ebene 3}
\paragraph{Ebene 4}
\subparagraph{Ebene 5}</code></pre>
<p>Je nach Dokumentenklasse zusätzlich:</p>
<pre class="lang-tex hljs"><code>\chapter{Kapitel}
\part{Teil}</code></pre>
</div>
<div class="layout-preview">
<img src="sections/german/03/abschnitte-crop.svg">
</div>
</div>
---
<div class="layout-content-and-preview">
<div class="layout-content">
<h2>Abschnitte und Kapitel</h2>
<p>Mit Sternchen fällt bei allen diesen Befehlen die Nummerierung und der Eintrag im Inhaltsverzeichnis weg:</p>
<pre class="lang-tex hljs"><code>\section*{Kein Verzeichniseintrag}</code></pre>
<p>Außerdem kann für das Inhaltsverzeichnis ein alternativer Titel angegeben werden:</p>
<pre class="lang-tex hljs"><code>\section[Titel im Verzeichnis]
{Kapitelüberschrift}</code></pre>
</div>
<div class="layout-preview">
<img src="sections/german/03/abschnitte-anders-crop.svg">
</div>
</div>
---
<div class="layout-content-and-preview">
<div class="layout-content">
<h2>Titelei</h2>
<pre data-source="title.tex"><code class="lang-tex hljs">\documentclass[ngerman]{scrartcl}
\usepackage{babel}
\author{Fooboar Rüssel}
\title{Die Welt der Trüffel}
\date{\today}
\begin{document}
\maketitle
\section{Trüffelsuche}
\subsection{Suche mit Schwein}
\subsection{Suche ohne Schwein}
Wer macht denn sowas?
\section{Trüffelrezepte}
Mein Lieblingsrezept
\end{document}</code></pre>
</div>
<div class="layout-preview">
<img src="sections/german/03/title-crop.svg">
</div>
</div>
---
<div class="layout-content-only">
<div class="layout-content">
<h2>Inhaltsverzeichnis</h2>
<p>automatisch generiert mit <pre class="lang-tex hljs"><code>\tableofcontents</code></pre>
<ul>
<li>Nummerierung erfolgt automatisch</li>
<li>Viele Anpassungsmöglichkeiten (Aufzählungszeichen, -tiefe, automatische Benennung, ...)</li>
<li>(Unter-)Kapitel, die nicht im Verzeichnis aufgeführt werden sollen, werden mit einem \* versehen, also z. B. <code>\section\*{}</code>.</li>
<li>Am besten zweimal kompilieren</li>
</ul>
</p>
</div>
</div>
---
<div class="layout-content-and-preview">
<div class="layout-content">
<h2>Inhaltsverzeichnis</h2>
<pre data-source="title.tex"><code class="lang-tex hljs">\documentclass[ngerman]{scrartcl}
\usepackage{babel}
\begin{document}
\tableofcontents
\section{Trüffelsuche}
Der erste Abschnitt.
\subsection{Suche mit Schwein}
Ein Unterabschnitt.
\subsection{Suche ohne Schwein}
Ein weiterer Unterabschitt.
\subsubsection[But why?]{Wer macht denn sowas?}
Unter-Unterabschnitt.
\section{Trüffelrezepte}
Mein Lieblingsrezept
\end{document}</code></pre>
</div>
<div class="layout-preview">
<img src="sections/german/03/contents-crop.svg">
</div>
</div>
---
<div class="layout-content-only">
<div class="layout-content">
<h2>Weitere Verzeichnisse</h2>
<p>Abbildungsverzeichnis und Tabellenverzeichnis
<pre class="lang-tex hljs"><code>\listoffigures
\listoftables</code></pre>
<ul>
<li>Fügt das gewählte Verzeichnis an der entsprechenden Stelle ins Dokument ein.</li>
<li>Es wird die jeweilige Bild- bzw. Tabellenunterschrift aufgeführt. Es kann aber auch ein Kurztitel angegeben werden, der dann für das Verzeichnis verwendet wird. </li>
</ul>
</p>
</div>
</div>
---
<div class="layout-content-only">
<div class="layout-content">
<h2>Spielwiese</h2>
<p>TODO:</p>
<ul>
<li>Was passiert, wenn man verschiedene Dinge ändert?</li>
<li>Umgang mit Fehlermeldungen</li>
</ul>
</div>
</div>