LaTeX Kurs

LaTeX Kurs

Was ist LaTeX?


Warum überhaupt LaTeX?

TLDR: Word ist Quatsch (für Mathe)

Warum nicht Word, OpenOffice, LibreOffice, …?

Wo liegt der Unterschied?

Grundstruktur

Befehle

Beispiel: \LaTex kompiliert zu $\LaTeX$

Beispiel: \documentclass{amsart}

Beispiel: \documentclass{amsart}[a4paper, 12pt] oder \foo[bar]{FUBAR}

Beispiel: \frac{1}{2} wird zu $\frac{1}{2}$


Besondere Symbole



Dokumente

\documentclass{article}
% Präambel
\begin{document}
Hallo Welt!
\end{document}

Umgebungen

Beispiel:

\begin{document}
    \begin{center}
        Dieser Text ist zentriert
    \end{center}
    Dieser Text ist wieder linksbündig
\end{document}

Wird Kompiliert zu:


Beispiel:

\begin{document}
    \begin{itemize}
        \item Stichpunkt 1
        \item Stichpunkt 2
    \end{itemize}
    % \item würde hier einen Fehler werfen
\end{document}

Wird Kompiliert zu:

  • Stichpunkt 1
  • Stichpunkt 2

Beispiel Analog zum vorherigen Beispiel kompiliert

\begin{enumerate}
    \item Stichpunkt 1
    \item Stichpunkt 2
\end{enumerate}

zu

  1. Stichpunkt 1
  2. Stichpunkt 2

und


Beispiel

\begin{description}
    \item[Stichpunkt] 1
    \item{Stichpunkt} 2
\end{description}

Stichpunkt 1 Stichpunkt 2


Beispiel

\begin{figure}[h]
    \includegraphics{pfad/zum/bild.jpg}
    \caption{Bildbeschreibung}
\end{figure}

Innerhalb der figure Umgebung kann man z.B. Bilder anzeigen lassen und diese mit Beschriftungen versehen. Die Option [h] sagt dem \(\LaTeX\) compiler, dass man das Bild an Stelle wie im Quellcode angegeben positioniert haben möchte. Es gibt die Optionen

Mit einem ! kann man die \(\LaTeX\) internen Parameter zur Positionierung überschreiben.


Beispiel

\begin{table}[h]
    \begin{tabular}[c | c | c]
        1.1 & 1.2 & 1.3 \\ \hline
        2.1 & 2.2 & 2.3 \\ \hline
        3.1 & 3.2 & 3.3
    \end{tabular}
\end{table}

Der Syntax für Tabellen in \(\LaTeX\) ist schmutz, dafür gibt es tools wie https://www.tablesgenerator.com/

Mathe Umgebung


Beispiel:

Hier ist das Integral \( \int_a^b f(x) d x \) direkt im Fließtext und hier 
\[
    \int_a^b f(x) d x
\]
in einer gesonderten Zeile

kompiliert zu:

Hier ist das Integral \(\int_a^b f(x) d x \) direkt im Fließtext und hier \[\int_a^b f(x) d x\] in einer gesonderten Zeile.


Beispiel

\[ \left( \sum_{i=0}^n i \right) \quad \text{vs.} \quad (\sum_{i=0}^n i) \]

\[ \left( \sum_{i=0}^n i \right) \quad \text{vs.} \quad (\sum_{i=0}^n i) \]


Gleichungen

Eine weitere wichtige Umgebung für mathematischen Aufschrieb ist die align-Umgebung. Innerhalb der align-Umgebung lassen sich Symbole in unterschiedlichen Zeilen ane`inander ausrichten. Beispiel:

\begin{align}
    a^2 + b^2 &= c^2 \tag{1}\\
    c^2 &= b^2 + a^2 \tag{2}
\end{align}

Wird kompiliert zu

\(\begin{align}a^2 + b^2 &= c^2 \tag{1}\ c^2 &= b^2 + a^2 \tag{2}\end{align}\)

Wenn man die Zeilen nicht nummeriert haben möchte, dann fügt man einen Stern hinzu und benutzt diealign*-Umgebung. Um die align-Umgebung nutzen zu können muss das Paket amsmath mittels \usepackage{amsmath} importiert werden.

Pakete

Über Packages kann man \(\LaTeX\) mit zusätzlichen Features und Befehlen ausstatten. Packages können wie folgt für ein Dokument importiert werden

\usepackage[optionen]{packagename}

Beispiel: Das Package geometry erlaubt es uns zum Beispiel mit \usepackage[margin=2cm]{geometry} die Abstände des Inhalts zu den Seitenrändern anzugeben. Mit \usepackage[layout=a4]{geometry} forciert man das DIN-A4 Layout.

Beispiel: Das Paket amsmath gibt euch viele verschiedene Befehele die für Mathe gedöns nützlich sind wie z.B.

\DeclareMathOperator{\rk}{rang}

Mathe Operatoren haben spezielles spacing zu anderen Symbolen im Mathe Modus, weswegen es gut ist sie zu benutzen.

\( \mathrm{rang} A \quad \text{vs.} \quad \operatorname{rang}A \)


Beispiel: Das Paket amsthm stellt euch Umgebungen für mathematischen Aufschrieb zur Verfügung wie zum Beispiel

\begin{theorem}
    Hier steht ein sehr spannender Satz für sehr spannende Mathematik
\end{theorem}

Satz 1 Hier steht ein sehr spannender Satz für sehr spannende Mathematik.

Beispiel Mit amsfonts kriegt ihr viele praktische Schriftarten und Zeichen in euren Befehlssatz.

\( \mathbb{R} \\ \mathcal{O} \\ \mathfrak{A} \)

\(\mathbb{R} \ \mathcal{O} \ \mathfrak{A} \)


Beispiel Mit inputenc lassen sich deutsche Umlaute darstellen

\usepackage[utf8]{inputenc}

Beispiel Mit enumerate lassen sich nummierte Listen erzeugen

\begin{enumerate}[(i)]
    \item Stichpunkt
    \item Zweiter Stichpunkt
\end{enumerate}

(i) Stichpunkt (ii) Zweiter Stichpunkt


Beispiel mathtools bietet eine Reihe von Funktionen, die das Erscheinungsbild von Dokumenten mit viel Mathematik verbessern sollen

Beispiel Das Paket babel übersetzt Überschriften in die spezifizierte Sprache.

Beispiel Das Paket fontenc ermöglicht es dem Benutzer, Font-Encodings auszuwählen, und bietet für jedes Encoding eine Schnittstelle zu „Font-Encoding-spezifischen“ Befehlen für jeden Font

Beispiel Mit hyperref werden z.B. die Überschriften im Inhaltsverzeichnis ‘klickbar’.

Beispiel tikz ist kein Zeichenprogramm https://en.wikibooks.org/wiki/LaTeX/PGF/TikZ

Eine Sammlung an Paketen findet sich auch auf https://www.ctan.org/.

Gliederung

Beispiel

\documentclass{scrartl}
\begin{document}
\section{Ein Abschnitt}
\section{Noch ein längerer Abschnitt}
\subsection{Ein kurzer Unterabschnitt}
\subsection{Einandererunterabschnitt}
\end{document}

1. Ein Abschnitt 2. Noch ein längerer Abschnitt 2.1 Ein kurzer Unterabschnitt 2.2 Einandererunterabschnitt


Mit der documentclass book kommt auch der Befehlt \chapter{...} einher.

\documentclass{book}
\begin{document}
\chapter{Supercoolerkapitelname}
\section{Supercoolersectionname}
\section{Auch ein SupercoolersectionnameSection}
\chapter{Auch ein Supercoolerkapitelname}
\section{Supercoolersectionname}
\end{document}

Wird kompiliert zu

1. Supercoolerkapitelname 1.1 Supercoolersectionname 1.2 auch ein Supercoolersectionname 2. Auch ein Supercoolerkapitelname 2.1 Supercoolersectionname


Mit dem Befehl \tableofcontents könnt ihr euch ein Inhaltsverzeichnis erzeugen. Das Inhaltsverzeichnis wird automatisch über die angegebenen Gliederungsbefehle erzeugt. Beispiel

\tableofcontents
\section{Ein Abschnitt}
\section{Noch ein längerer Abschnitt}
\subsection{Ein kurzer Unterabschnitt}
\subsection{Einandererunterabschnitt}

1. Ein Abschnitt 2. Noch ein längerer Abschnitt 2.1     Ein kurzer Unterabschnitt 2.2     Einandererunterabschnitt

[…]

Documentclasses

Es gibt z.B. die Klassen

Makros

Makros machen das Benutzen von nervigen Idiomen einfacher.

Makro ohne Argument definieren

\newcommand{\NAME}{ERSETZUNG}

Beispiel

\newcommand{\R}{\mathbb R}
\R

\( \mathbb R \)

Makro mit Argumenten definieren Man kann auch etwas kompliziertere Makros defineren, die selber Argumente entgegen nehmen Beispiel

\newcommand{\set}[1]{\left\{#1\right\}}
\( \set{x \in \R \mid x \leq 0} \)

\( {x \in \mathbb{R} \mid x \leq 0 }\)

Bibliographie


Beispiel:

Jede differenzierbare Funktion ist stetig \cite{Harro}.

\thebibliography

wird zu

Jede differenzierbare Funktion ist stetig [1].

[1] Harro Heuser. Lehrbuch der Analysis Teil 2. 13., durchgesehene Auflage. 2004. Vieweg+Teubner Verlag.

Hilfe zur Selbsthilfe

Aufgaben

  1. Erstellt ein einfaches Hallo Welt Dokument
    • Benutzt die Documentclass article
    • Gib den Author, Titel und ein beliebiges Datum für das Dokument an
    • Lass dir einen Titel erzeugen
  2. Fügt eurem Dokument 20 Paragraphen Blindtext ein
    • Sucht dafür nach einem geeigneten Paket und importiert dieses in euer Dokument
    • Versteht, wie die Befehle des Pakets funktionieren und welche Parameter sie übergeben bekommen
    • Fügt noch drei weitere Paragraphen Blindtext ein und formatiert jeweils einen Absatz linksbündig, zentriert und rechtsbündig.
  3. Findet heraus, wie man Text hervorheben kann. Probiert das bei euch im Dokument aus.
  4. Fügt eurem Dokument Abschnitte hinzu. Das Dokument soll im Anschluss die folgende Struktur haben:
1. Mein erster \LaTeX Abschnitt
2. Mein zweiter Abschnitt
    2.1 Eine Unterüberschrift
        2.1.1 Eine Unterunterüberschrift
  1. Erstellt ein Inhaltsverzeichnis am Anfang eures Dokuments.
  2. Findet heraus, mit welchen Optionen das Paket babel importiert werden muss, damit die Überschrift des Inhaltsverzeichnisses auf deutsch ist.
  3. Erstellt einen weiteren Abschnitt, dessen Überschrift nicht im Inhaltsverzeichnis angezeigt werden soll.
  4. Erstellt in diesem Abschnitt die folgende Liste:
    1. Hier geht es um Listen
    2. Listen kann man schön verschachteln
      • man muss dabei einiges beachten
      • \(\LaTeX\) ist eine strukturierte Sprache
        • Verschachtelung geht aber immer
        • … wie man hier sieht!
    3. man muss sich beim Eingeben nur konzentrieren, sonst passieren Fehler:
      • beliebt ist, eine enumerate Umgebung mit einer itemize Umgebung zu schließen
      • oder statt itemize itemise zu schreiben
  5. Importiert das Paket enumerate und ersetzt in der vorherigen Aufgabe die Nummerierung mit (i), (ii), (iii), …
  6. Findet heraus, wie man in der itemize Umgebung das Symbol für die \items anpasst
  7. Bindet eine beliebige Grafik aus dem Internet in euer Dokument ein.
    • Benutzt dafür die figure Umgebung
    • Gibt eurem Bild eine passende caption
    • Spielt herum mit den Optionen h, t, b, … für die figure Umgebung
  8. Erstellt eine einfache Tabelle mit 3 Spalten und 3 Zeilen. Die Tabelle soll wie folgt aussehen: Tabelle
  9. Findet die \LaTeX-Kommandos für die folgenden Symbole:
    • \( \uplus\)
    • \( \pm \)
    • \( \varphi \)
    • \( \infty \)
    • \( \oint \)
    • \( \complement \)
    • \( \succeq \)
    • \( \neq \)
    • \( \forall \)
    • \( \partial \)
    • \( \exists \)
    • \( \in \)
    • \( \varnothing \)
  10. Schreibt die Definition einer Gruppe selber auf: Definition Gruppe
  11. Stellt dieses Dokument nach Dokument.
  12. Schreibt einige Makros für eure Präambel. Hier einige Vorschläge für Nützliche Makros, die man immer mal wieder braucht:
    • \newcommand{\R}{\mathbb{R}} für \(\mathbb{R}\) (Hier bietet es sich an, das auch für andere Zahlenmengen wie \(\mathbb{N}\) zu tun.)
    • Einen Makro für den Betrag \(|x|\).
    • Einen Makro, der das Schreiben von Matrizen erleichtert, damit ihr nicht immer \begin{pmatrix}...\end{pmatrix} schreiben müsst
    • Einen Makro für das Skalarprodukt
    • Einen Makro für Mengen (beachtet hier, dass die Mengenklammern mittels \left und \right automatisch skaliert werden können)
    • Überschreibt \phi mit \varphi, weil \phi hässlich ist. (Hier kann man \renewcommand benutzen)
    • Einen Makro für die Norm \(||x||\)
  13. Erstellt euch eine Datei preamble.tex, in der ihr eure Makros und die wichtigsten Pakete, die man immer benutzt sammelt. Findet heraus, wie ihr die Datei dann in anderen .tex Dateien importiert. Diese Präambel könnt ihr im Verlauf eures Studiums weiter durchschleifen und nach belieben erweitern.