123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373 |
- %!TEX root = l2kurz.tex
- % Siehe https://github.com/texdoc/l2kurz
- \section{Eingabefile}
- Das Eingabefile für \LaTeX{} ist ein Textfile mit der Endung \lstinline+.tex+.
- Es wird mit einem Editor erstellt und enthält sowohl den Text, der gedruckt
- werden soll, als auch die Befehle, aus denen \LaTeX\ erfährt, wie der Text
- gesetzt werden soll. Als Editor bietet sich ein spezieller \LaTeX-Editor an
- wie beispielsweise Texmaker (\href{http://www.xm1math.net/texmaker}{\nolinkurl
- {www.xm1math.net/texmaker}}). Diese Editoren bieten neben Syntaxhervorhebung
- und "=überprüfung auch vordefinierte Arbeitsabläufe, so dass der Benutzer sich
- auf die Erstellung des Texts konzentrieren kann. Es ist aber auch möglich und
- gängige Praxis, \emph{normale} Texteditoren wie emacs, vim oder notepad++ zu
- benutzen.
- \subsection{Leerstellen}
- "`Unsichtbare"' Zeichen wie das Leerzeichen, Tabulatoren und das Zeilenende
- werden von \LaTeX{} einheitlich als Leerzeichen behandelt. \emph{Mehrere}
- Leerzeichen werden wie \emph{ein} Leerzeichen behandelt. Wenn man andere als
- die normalen Wort- und Zeilenabstände will, kann man dies also nicht durch die
- Eingabe von zusätzlichen Leerzeichen oder Leerzeilen erreichen, sondern nur mit
- entsprechenden \LaTeX-Befehlen.
- Eine Leerzeile zwischen Textzeilen bedeutet das Ende eines Absatzes.
- \emph{Mehrere} Leerzeilen werden wie \emph{eine} Leerzeile behandelt.
- \subsection{\LaTeX-Befehle und Gruppen}
- Die meisten \LaTeX-Befehle haben eines der beiden folgenden Formate: Entweder
- sie beginnen mit einem Backslash~(\lstinline|\|) und haben dann einen nur aus
- Buchstaben bestehenden Namen, der durch ein oder mehrere Leerzeichen oder
- durch ein nachfolgendes Sonderzeichen beendet wird; oder sie bestehen aus
- einem Backslash und genau einem Sonderzeichen. Groß- und Kleinbuchstaben haben
- auch in Befehlsnamen \emph{verschiedene} Bedeutung. Wenn man nach einem
- Befehlsnamen eine Leerstelle erhalten will, muss man~\lstinline|{}| zur
- Beendigung des Befehlsnamens oder einen eigenen Befehl für die Leerstelle
- verwenden.
- % PG: würde ich drin lassen
- %\renewcommand{\today}{31.~Mai 2012} % to make sure that the
- % line breaks look good, regardless of the date of printing.
- %MD: obeylines zu besseren Darstellung eingefuegt
- %MD: Redefinition von \today lokal halten
- \begin{LTXexample}[firstline=4]
- \renewcommand*\today{%
- \the\numexpr\year-1978\relax.~Mai \the\year}
- \obeylines
- Heute ist der \today.
- Oder: Heute ist der \today .
- Falsch ist:
- Am \today regnet es.
- Richtig ist:
- Am \today{} scheint die Sonne.
- Oder: Am \today\ schneit es.
- \end{LTXexample}
- Manche Befehle haben Parameter, die zwischen geschwungenen Klammern angegeben
- werden müssen. Manche Befehle haben Parameter, die weggelassen oder zwischen
- eckigen Klammern angegeben werden können. Manche Befehle haben Varianten, die
- durch das Hinzufügen eines Sterns an den Befehlsnamen unterschieden werden.
- Geschwungene Klammern können auch dazu verwendet werden, Gruppen (\emph{groups})
- zu bilden. Die Wirkung von Befehlen, die innerhalb von Gruppen oder Umgebungen
- (\emph{environments}) angegeben werden, endet immer mit dem Ende der Gruppe
- bzw.\ der Umgebung. Im obigen Beispiel ist~\lstinline|{}| eine leere Gruppe, die
- außer der Beendigung des Befehlsnamens \texttt{today} keine Wirkung hat.
- \subsection{Kommentare}
- Alles, was hinter einem Prozentzeichen (\lstinline|%|) steht (bis zum Ende der
- Eingabezeile), wird von \LaTeX{} ignoriert. Dies kann für Notizen des Autors
- verwendet werden, die nicht oder noch nicht ausgedruckt werden sollen.
- \begin{LTXexample}
- Das ist ein % dummes
- % Besser: ein lehrreiches <----
- Beispiel.
- \end{LTXexample}
- \subsection{Aufbau}
- Der erste Befehl in einem \LaTeX-Eingabefile muss der Befehl
- \begin{lstlisting}
- \documentclass
- \end{lstlisting}
- sein. Er legt fest, welche Art von Schriftstück überhaupt erzeugt werden soll
- (Bericht, Buch, Brief usw.). Danach können weitere Befehle folgen bzw.
- deklariert werden, die für das gesamte Dokument gelten sollen. Dieser Teil des
- Dokuments wird auch als \emph{Vorspann} oder \emph{Präambel} bezeichnet. Mit dem
- Befehl
- \begin{lstlisting}
- \begin{document}
- \end{lstlisting}
- endet der Vorspann, und es beginnt das Setzen des Schriftstücks. Nun folgen der
- Text und alle \LaTeX-Befehle, die das Ausdrucken des Schriftstücks bewirken.
- Die Eingabe muss mit dem Befehl
- \begin{lstlisting}
- \end{document}
- \end{lstlisting}
- beendet werden. Falls nach diesem Befehl noch Eingaben folgen, werden sie von
- \LaTeX{} ignoriert.
- Listing~\ref{mini} zeigt ein \emph{minimales} \LaTeX-File. Ein etwas
- komplizierteres File ist in Listing~\ref{dokument} skizziert.
- \begin{example}[caption={Ein minimales \LaTeX-File},label={mini}]
- \documentclass{article}
- \begin{document}
- Small is beautiful.
- \end{document}
- \end{example}
- \begin{example}[caption={Aufbau eines Artikels},label={dokument}]
- \documentclass[11pt,a4paper,ngerman]{article}
- \usepackage[utf8]{inputenc}
- \usepackage[T1]{fontenc}
- \usepackage{babel}
- \date{29. Februar 1998}
- \author{H.~Partl}
- \title{Über kurz oder lang}
- \begin{document}
- \maketitle
- \tableofcontents
- \section{Start}
- Hier beginnt mein schönes Werk ...
- \section{Ende}
- ... und hier endet es.
- \end{document}
- \end{example}
- \subsection{Dokumentklassen}\label{docsty}
- Die am Beginn des Eingabefiles mit
- \begin{lstlisting}
- \documentclass[<optionen>]{<klasse>}
- \end{lstlisting}
- definierte "`Klasse"' eines Dokumentes enthält Vereinbarungen über das Layout
- und die logischen Strukturen, z.\,B.\ die Gliederungseinheiten (Kapitel etc.\@),
- die für alle Dokumente dieses Typs gemeinsam sind.
- Zwischen den geschwungenen Klammern \emph{muss} genau eine Dokumentklasse
- angegeben werden. Tabelle~\vref{docstyles} führt
- Klassen auf, die in jeder vollständigen \LaTeX-Installation existieren.
- Zwischen den eckigen Klammern \emph{können}, durch Kommas getrennt, eine oder
- mehrere Optionen für das Klassenlayout angegeben werden. Die wichtigsten
- Optionen für die Standardklassen sind in der Tabelle~\vref{options} angeführt.
- Das Eingabefile für diese Beschreibung beginnt z.\,B.\ mit:
- \begin{lstlisting}
- \documentclass[11pt,a4paper]{article}
- \end{lstlisting}
- \begin{longtable}[c]{@{}>{\raggedright\arraybackslash\ttfamily}p{2.2cm}%
- p{\dimexpr 0.95\linewidth-2.2cm-2\tabcolsep\relax}@{}}
- \caption{Dokumentklassen}\label{docstyles} \\\toprule
- \endfirsthead
- \caption[]{Dokumentklassen}\\\toprule
- \endhead
- \multicolumn{2}{r}{\small Forsetzung nächste Seite}\\
- \endfoot
- \endlastfoot
- article &
- für Artikel in wissenschaftlichen Zeitschriften, kürzere Berichte u.\,v.\,a.
- \\
- report &
- für längere Berichte, die aus mehreren Kapiteln bestehen, Diplomarbeiten,
- Dissertationen u.\,ä.
- \\
- book &
- für Bücher
- \\
- scrartcl, scrreprt, scrbook &
- Die sog. KOMA-Klassen sind Varianten der o.\,g. Klassen mit besserer Anpassung
- an DIN-Papierformate und "`europäische"' Typographie. Zudem erlauben sie
- mittels Optionen die Anpassung des Layouts. Entgegen den Standardklassen
- existiert eine deutsche und englische Dokumenation (siehe \cite{scrguide})
- \\
- beamer &
- für Präsentationen
- \\
- \bottomrule
- \end{longtable}
- \begin{longtable}[c]{@{}>{\raggedright\arraybackslash\ttfamily}p{2.2cm}%
- p{\dimexpr 0.95\linewidth-2.2cm-2\tabcolsep\relax}@{}}
- \caption[Klassenoptionen]{Klassenoptionen für die Standardklassen}\label{options} \\\toprule
- \endfirsthead
- \caption[]{Klassenoptionen für die Standardklassen}\\\toprule
- \endhead
- \multicolumn{2}{r}{\small Forsetzung nächste Seite}\\
- \endfoot
- \endlastfoot
- 10pt 11pt 12pt &
- wählt die normale Schriftgröße des Dokuments aus. 10\,pt hohe Schrift ist die
- Voreinstellung; diese Beschreibung benutzt 11\,pt.
- \\
- a4paper &
- für Papier im DIN\,A4-Format. Ohne diese Option nehmen die Standardklassen das
- amerikanisches Papierformat.
- \\
- fleqn &
- für linksbündige statt zentrierte mathematische Gleichungen
- \\
- leqno &
- für Gleichungsnummern links statt rechts von jeder nummerierten Gleichung
- \\
- titlepage notitlepage &
- legt fest, ob Titel und Zusammenfassung auf einer eigenen Seite erscheinen
- sollen. \texttt{titlepage} ist die Voreinstellung für die Klassen
- \texttt{report} und \texttt{book}.
- \\
- onecolumn twocolumn &
- für ein- oder zweispaltigen Satz. Die Voreinstellung ist immer
- \texttt{onecolumn}.
- \\
- oneside twoside &
- legt fest, ob die Seiten für ein- oder zweiseitigen Druck gestaltet werden
- sollen. \texttt{oneside} ist die Voreinstellung für alle Klassen außer
- \texttt{book}.
- \\\bottomrule
- \end{longtable}
- \subsection{Pakete}\label{packages}
- Mit dem Befehl
- \begin{lstlisting}
- \usepackage[<optionen>]{<paket>}
- \end{lstlisting}
- können im Vorspann ergänzende Makropakete (\emph{packages}) geladen werden, die das
- Layout der Dokumentklasse modifizieren oder zusätzliche Funktionalität
- bereitstellen. Eine Auswahl von Paketen findet sich in der Tabelle~\vref{pack}. Der Befehl \lstinline+\usepackage+ erlaubt das Laden
- mehrerer Pakete, wobei eine Optionenübergabe nicht möglich ist, bzw. die Optionen für alle Pakete gelten.
- \begin{longtable}[c]{@{}>{\raggedright\arraybackslash\ttfamily}p{2.2cm}%
- p{\dimexpr 0.95\linewidth-2.2cm-2\tabcolsep\relax}@{}}
- \caption{Pakete (eine Auswahl)}\label{pack} \\\toprule
- \endfirsthead
- \caption[]{Pakete (eine Auswahl)}\\\toprule
- \endhead
- \multicolumn{2}{r}{\small Fortsetzung nächste Seite}\\
- \endfoot
- \endlastfoot
- amsmath, amssymb &
- Mathematischer Formelsatz mit erweiterten Fähigkeiten, zusätzliche
- mathematische Schriften und Symbole; Beschreibung siehe \cite{mathmode}.
- \\
- array &
- Verbesserte und erweiterte Versionen der Umgebungen \texttt{array},
- \texttt{tabular} und \texttt{tabular*}.
- \\
- babel &
- Anpassungen für viele verschiedene Sprachen. Die gewählten Sprachen werden
- als Optionen angegeben.
- \\
- csquotes & Mächtiges Paket zum korrekten Setzen (fremdsprachlicher) Anführungszeichen \\
- fontenc &
- Erlaubt die Verwendung von Schriften mit unterschiedlicher Kodierung
- (Zeichenvorrat, Anordnung).
- \\
- geometry &
- Manipulation des Seitenlayouts.\\
- graphicx &
- Einbindung von extern erzeugten Graphiken. Die umfangreichen Möglichkeiten
- dieses Pakets werden in~\cite{grfguide} und~\cite{grfcomp} beschrieben.
- \\
- hyperref &
- Ermöglicht Hyperlinks zwischen Textstellen und zu externen Dokumenten;
- besonders sinnvoll einsetzbar, wenn mit \TeX\ eine Ausgabedatei im
- \textsc{pdf}- oder \textsc{html}-Format erzeugt wird.
- \\
- imakeidx &
- Unterstützt das Erstellen eines Index.
- \\
- listings & Flexible Erweiterung der \texttt{verbatim}-Umgebung.
- \\
- longtable &
- für Tabellen über mehrere Seiten mit automatischem Seitenumbruch.
- \\
- microtype & Verändert den Absatzumbruch leicht, um bessere Zeilenumbrüche zu erzeugen; optischer Randausgleich. \\
- multicol &
- Mehrspaltiger Satz mit Kolumnenausgleich.
- \\
- selinput &
- Deklaration der Zeichenkodierung im Eingabefile.
- \\
- siunitx & Formatierung von Zahlen und physikalischen Einheiten \\
- tabularx &
- für Tabellen mit automatisch an den vorhandenen Platz angepasster Breite der
- Spalten.
- \\
- textcomp &
- Bindet Schriften mit zusätzlichen Textsymbolen ein.
- \\
- xcolor &
- Unterstützung für Farbausgabe; Beschreibung siehe~\cite{grfguide}
- und~\cite{grfcomp}.
- \\
- \bottomrule
- \end{longtable}
- \subsection{Eingabezeichensatz}\label{inputenc}
- Bei jedem \LaTeX-System dürfen mindestens die folgenden Zeichen zur Eingabe von
- Text verwendet werden:
- \begin{quote}
- \ttfamily
- a\dots z A\dots Z 0\dots 9 \\
- . : ; , ? ! ` ' ( ) [ ] - / * @ + =
- \end{quote}
- Die folgenden Eingabezeichen haben für \LaTeX{} eine Spezialbedeutung oder sind
- nur innerhalb von mathematischen Formeln erlaubt:
- \begin{quote}
- \verb.$ & % # _ { } ~ ^ " \ | < >.
- \end{quote}
- Für Zeichen, die über obige Liste hinausgehen, beispielsweise die Umlaute, sind
- unterschiedliche Kodierungen in
- Gebrauch. Die Kodierung ist hierbei vom Betriebssystem sowie vom Editor
- abhängig. Um Umlaute direkt zu nutzen ohne auf spezielle Kodierung einzugehen,
- bietet sich das Paket \texttt{selinput} an. Es ermittelt während des
- Kompilierungsvorgangs die verwendete Kodierung. Um dies sicher zu stellen, muss
- das Paket wie folgt in der Präambel eingebunden werden:
- \begin{example}[caption={Bestimmung der Kodierung für die Nutzung von Umlauten},]
- \usepackage{selinput}
- \SelectInputMappings{
- adieresis={ä},
- germandbls={ß},
- }
- % Wörter mit Umlauten werden getrennt:
- \usepackage[T1]{fontenc}
- \end{example}
- Neben dem Paket \texttt{selinput} existiert auch das Paket \texttt{inputenc}.
- Hier gibt man die zu verwendende Kodierung als Paketoption vor, diese muss man
- jedoch dafür in Erfahrung bringen, was nicht immer einfach ist. Im Falle von
- UTF-8 als Eingabekodierung ist das:
- \begin{beispiel}
- \lstinline+\usepackage[utf8]{inputenc}+
- \end{beispiel}
- Falls \LaTeX{} ein eingegebenes Zeichen nicht darstellen kann, was meist für die
- sogenannten "`Pseudografik-Zeichen"' gilt, bekommt man eine entsprechende
- Fehlermeldung. Auch sind manche Zeichen nur im Text, andere nur in
- mathematischen Formeln erlaubt.
- Man beachte, dass der in der \emph{Ausgabe} darstellbare Zeichenvorrat von
- \LaTeX{} nicht davon abhängt, welche Zeichen als \emph{Eingabe} erlaubt sind:
- Für jedes überhaupt darstellbare Zeichen -- also auch diejenigen, die nicht im
- Zeichensatz des jeweiligen Betriebssystems enthalten sind -- gibt es einen
- \LaTeX-Befehl oder eine Ersatzdarstellung, die ausschließlich mit ASCII-Zeichen
- auskommt. Näheres darüber erfahren Sie in Abschnitt \ref{spezial}.
- \endinput
|