12 KiB
Grundstruktur eines LATEX-Dokuments
Präambel & Dokumentumgebung
👁 Ein mit LaTeX gesetztes Dokument besteht aus:
- Präambel: globale Einstellungen (Dokumentklasse, Encoding, Sprache, Seitenformat, zusäzliche Pakete, ...) und
- Dokumentumgebung: textueller Inhalt des Dokuments.
\documentclass{scrartcl} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[ngerman]{babel}
\begin{document} Hallo, Welt! \end{document}
Dokumentklasse
\documentclass[parameter]{dokumentklasse}
Konkret zum Beispiel
\documentclass[10pt,a5paper,landscape]{scrartcl}
scrartcl,articlefür einfache Dokumentescrreport,reportfür komplexere Dokumentescrbook,bookfür Bücherbeamerfür Präsentationen
Pakete
\usepackage[optionen]{paketname}
- Pakete stellen zusätzliche Befehle und Funktionalitäten zur Verfügung.
- Es existieren verschiedene Pakete für verschiedene Anwendungsfälle (z. B. Formelsatz, Listen, ...).
- Sie müssen vor der Nutzung in der Präambel eingebunden werden.
Encoding
\usepackage[utf8]{inputenc}
\usepackage[t1]{fontenc}
- Die Zeichenkodierung bestimmt, welche Zeichen verfügbar sind.
- ASCII enthält kaum Sonderzeichen wie deutsche Umlaute.
- UTF-8 ist eine universelle Kodierung.
Sprache
\usepackage[ngerman]{babel}
- Das Paket
babelstellt sprachspezifische Informationen (z. B. Silbentrennung, Sonderzeichen, Wechsel zwischen Fonts, Übersetzung von Labels wie ›Kapitel‹, ›Inhaltsverzeichnis‹ oder ›Abbildung‹) bereit. ngermansteht für die neue deutsche Rechschreibung.
Sprachen
Es können auch mehrere Sprachen im Dokument verwendet werden:
\usepackage[ngerman, swedish, russian, greek, english]{babel}
Umschalten zwischen Sprachen:
\selectlanguage{Sprache A}
\selectlanguage{Sprache B}
Eingebetteter Text in anderer Sprache:
\selectlanguage{Sprache A}
\foreignlanguage{Sprache B}{Hier steht Text in Sprache B innerhalb eines Textes in Sprache A}
Sprachen – Ein Beispiel
\today
\selectlanguage{ngerman}
\today
\selectlanguage{swedish}
\today
\selectlanguage{russian}
\today
\selectlanguage{greek}
\today
\selectlanguage{english}
\today
Fließtext
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.
Reservierte Zeichen
Bestimmte Zeichen lösen in LaTeX Dinge aus:
`# $ % ^ & _ { } ~ \`
50% sind die Hälfte.
Lösung: `\` voranstellen:
50\% sind die Hälfte.
Funktioniert nicht mit `\\`, Lösung dafür später.
Abschnitte und Kapitel
Texte werden durch Überschriften in Abschnitte und Kapitel unterteilt. Immer verfügbar:
\section{Ebene 1}
\subsection{Ebene 2}
\subsubsection{Ebene 3}
\paragraph{Ebene 4}
\subparagraph{Ebene 5}
Je nach Dokumentenklasse zusätzlich:
\chapter{Kapitel}
\part{Teil}
Abschnitte und Kapitel
Mit Sternchen fällt bei allen diesen Befehlen die Nummerierung und der Eintrag im Inhaltsverzeichnis weg:
\section*{Kein Verzeichniseintrag}
Außerdem kann für das Inhaltsverzeichnis ein alternativer Titel angegeben werden:
\section[Titel im Verzeichnis]
{Kapitelüberschrift}
Titelei
\title{Die Welt der Trüffel}
\author{Fooboar Rüssel \\\\ Fachschaft WIAI\thanks{WIe AIn Profi},
Otto-Friedrich-Universität Bamberg}
\date{\today}
\begin{document}
\maketitle
\end{document}
- In der Präambel werden die Werte für die Einträge gespeichert.
- Das Setzen des Titels erfolgt in der Dokumentumgebung mit dem Befehl
\maketitle. - Die genaue Gestaltung hängt ab von der verwendeten Dokumentklasse.
- Mehrere Autoren werden mit
\andgetrennt. - Wird kein Datum angegeben, wird per default das aktuelle Datum gesetzt. Dies kann mit
\date{}vermieden werden.
Titelei
\documentclass[ngerman]{scrartcl}
\usepackage{babel}
\title{Die Welt der Trüffel}
\author{Fooboar Rüssel \\\\ Fachschaft
WIAI\thanks{WIe AIn Profi},
Otto-Friedrich-Universität Bamberg}
\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}
Inhaltsverzeichnis
\tableofcontents
- Nummerierung erfolgt automatisch
- Viele Anpassungsmöglichkeiten (Aufzählungszeichen, -tiefe, automatische Benennung, …)
- (Unter-)Kapitel, die nicht im Verzeichnis aufgeführt werden sollen, werden mit einem `*` versehen, also z. B.
\section\*{}. - Am besten zweimal kompilieren
Inhaltsverzeichnis
\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}
Weitere Verzeichnisse
Abbildungsverzeichnis und Tabellenverzeichnis
\listoffigures
\listoftables
- Fügt das gewählte Verzeichnis an der entsprechenden Stelle ins Dokument ein.
- 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.
Spielwiese
TODO:
- Was passiert, wenn man verschiedene Dinge ändert?
- Umgang mit Fehlermeldungen
Grundstruktur des Skripts anpassen
- Füge ein Inhaltsverzeichnis in das Skript ein.
- Füge im 1. Kapitel xxxxx mehrere neue Absätze mit
\section{}und\subsection{}ein und beobachte, was im Inhaltsverzeichnis passiert. - Provoziere absichtlich einen Fehler, indem du einen dir bereits bekannten Befehl wie
\begin{document}falsch schreibst. Sieh dir an, welche Informationen dir die Fehlermeldung liefert und behebe den Fehler wieder.