\documentclass{latexkurs} \subtitle{Dokumentenklassen, Pakete und Markup} \date{\dateSecondLecture} \begin{document} \frame{\titlepage} \begin{frame} \frametitle{Ziel dieses Abschnitts} \begin{itemize} \item Dokumentenklassen \item Präambel \item Textformatierung \item Textuelles Markup \end{itemize} \end{frame} \section{Aufbau eines \LaTeX-Dokuments} \begin{frame} \frametitle{Dokumentenklasse und Präambel} \onslide<+-> \begin{block}{Allgemein} Jedes \LaTeX-Dokument beginnt mit der Spezifikation einer \emph{Dokumentenklasse} und der drauf folgenden \emph{Präambel}. \end{block} \end{frame} \begin{frame}[fragile] \frametitle{Dokumentenklassen} \onslide<+-> \begin{itemize} \item<+-> Spezifiziert das allgemeine Aussehen des Dokuments (Artikel, Report, Buch, Brief, \dots) \item<+-> Wird (im allgemeinen) als erstes im Dokument angegeben mittels \begin{lstlisting} \documentclass{\textit{dokumentenklasse}} \end{lstlisting} \item<+-> Beispiele (jeweils nur eins davon!): \begin{lstlisting} \documentclass{article} \documentclass{report} \documentclass{scrartcl} \documentclass{llncs} \end{lstlisting} \item<+-> Können Optionen bekommen \begin{lstlisting} \documentclass[a4paper,english,draft]{article} \end{lstlisting} \end{itemize} \end{frame} \begin{frame} \frametitle{Standard-Dokumentenklassen} \begin{description} \item[article] Standardklasse zum Erstellen von einfachen Dokumenten \item[report] Standardklassen zum Erstellen längerer Arbeiten \item[book] Standardklassen zum Erstellen von Büchern \item[scrartcl, scrreprt, scrbook] ~\\ KOMA-Script Varianten von article, report, book mit europäischen Standardwerten \item[memoir] Individuell anpassbare Dokumentenklasse \item[minimal] Minimale Dokumentenklasse \end{description} \end{frame} \begin{frame}[fragile] \frametitle{Die Präambel} \onslide<+-> \begin{itemize} \item<+-> Wird verwendet, um \begin{itemize} \item<+-> Pakete einzubinden \item<+-> Standardwerte des Dokuments anzupassen \item<+-> separate Befehle (\emph{Makros}) zu definieren oder zu ändern \end{itemize} \item<+-> Pakete werden eingebunden mittels \begin{lstlisting} \usepackage[\textit{option}]{\textit{paketname}} \end{lstlisting} Zum Beispiel \begin{lstlisting} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage[ngerman]{babel} \end{lstlisting} \item<+-> Standardwerte wie z.B.\,der Absatzabstand oder -einzug können angepasst werden \begin{lstlisting} \setlength{\parskip}{1ex} \setlength{\parindent}{0cm} \end{lstlisting} \end{itemize} \end{frame} \begin{frame} \frametitle{Einige Nützliche Pakete} \onslide<+-> \begin{description} \item[babel] Einstellung der Sprache \item[inputenc] Einstellung ein Eingabekodierung \item[fontenc] Einstellung der Schriftkodierung \item[geometry] Einstellung der Papier- und Seitengröße \item[microtype] Mikrotypographie \item[enumitem] Anpassung von Aufzählungen \item[array] Anpassung von Tabellen und Matrizen \item[booktabs] Schönere Trennstriche für Tabellen \item[listings] Programme \item[hyperref] Verweise im Dokument \item[amsmath, amssymb, mathtools, ntheorem] ~\\ Extra Mathematikumgebungen und Symbole \item[setspace] Zeilenabstand \end{description} \end{frame} \begin{frame}[fragile] \frametitle{Eine \enquote{Standard-Präambel}} \onslide<+-> \begin{lstlisting}[frame=none,xleftmargin=2em] \documentclass{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[ngerman]{babel} \title{Was sind und was sollen die Zahlen?} \author{Richard Dedekind} \date{1888} \setlength{\parindent}{0cm} \begin{document} \maketitle \end{document} \end{lstlisting} \end{frame} \section{Textformatierung} \begin{frame}[fragile] \frametitle{Der \enquote{Dokumentenkörper}} \onslide<+-> Das eigentliche Dokument wird nun zwischen \lstinline!\begin{document}! und \lstinline!\end{document}! angegeben. Dabei kann der Text \enquote{fast} beliebig eingegeben werden. \onslide<+-> \begin{lstlisting} \begin{document} Bei Fülltexten sollte man drauf achten, dass es nicht allzu viel Sinn macht, lange darüber nachzudenken, was man wie schreibt. \end{document} \end{lstlisting} wird zu\onslide<+-> \begin{center} \parbox{0.8\linewidth}{\rm Bei Fülltexten sollte man drauf achten, dass es nicht allzu viel Sinn macht, lange darüber nachzudenken, was man wie schreibt.} \end{center} \end{frame} \begin{frame}[fragile] \frametitle{Quelltextformatierung} \onslide<+-> Die Formatierung des Quelltextes ist \enquote{fast} beliebig. Diese Formatierung wird allerdings nicht unbedingt im Dokument widergespiegelt: \begin{itemize} \item<+-> Zeilenumbrüche werden (fast) wie Leerzeichen interpretiert: \onslide<+-> \begin{lstlisting} Ich bin ein Text. \end{lstlisting} produziert die gleiche Ausgabe wie \begin{lstlisting} Ich bin ein Text. \end{lstlisting} \item<+-> Doppelte Leerzeichen werden wie ein Leerzeichen interpretiert: \onslide<+-> \begin{lstlisting}[showspaces=true] Zwei Leerzeichen \end{lstlisting} ist das gleiche wie \begin{lstlisting}[showspaces=true] Zwei Leerzeichen \end{lstlisting} \end{itemize} \end{frame} \begin{frame}[fragile] \frametitle{Abschnitte} \begin{itemize} \item<+-> geben die Grobstruktur des Dokuments an \item<+-> In \LaTeX\ mit \begin{itemize} \item \lstinline!\part!, \lstinline!\part*! \item \lstinline!\section!, \lstinline!\section*! \item \lstinline!\subsection!, \lstinline!\subsection*! \item \lstinline!\subsubsection!, \lstinline!\subsubsection*! \item \lstinline!\paragraph!, \lstinline!\paragraph*! \item \lstinline!\subparagraph!, \lstinline!\subparagraph*! \end{itemize} \item<+-> *-Formen werden nicht nummeriert und treten auch nicht im Inhaltsverzeichnis auf \item<+-> In \lstinline|book| ist auch erlaubt \begin{itemize} \item \lstinline!\chapter!, \lstinline!\chapter*! \end{itemize} \item<+-> Inhaltsverzeichnisse mit \lstinline{\tableofcontents} und zweimaligem Übersetzen. \end{itemize} \end{frame} \begin{frame}[fragile] \frametitle{Absätze, Zeilen- und Seitenumbrüche} \onslide<+-> \begin{itemize} \item<+-> Absätze werden durch Leerzeilen oder durch \lstinline{\par} getrennt: \begin{lstlisting} Ich bin ein erster Absatz. Und ich ein zweiter. \par Und ich ein dritter. \end{lstlisting} \item<+-> Zeilenumbrüche mit folgenden Kommandos \begin{itemize} \item<+-> \lstinline{\\} und \lstinline{\newline} erzeugen Zeilenumbruch ohne Ausgleich \item<+-> \lstinline{\linebreak} erzeugt Zeilenumbruch mit Ausgleich \end{itemize} \item<+-> Gleiches mit Seitenumbrüchen \begin{itemize} \item<+-> \lstinline{\newpage} beendet die aktuelle Seite ohne Ausgleich \item<+-> \lstinline{\pagebreak} beendet die aktuelle Seite mit Ausgleich \end{itemize} \end{itemize} \end{frame} \begin{frame}[fragile,fragile] \frametitle{Ausrichtung von Text} \onslide<+-> \begin{lstlisting}[frame=none] \begin{flushleft} Dieser Text ist linksbündig. \end{flushleft} \end{lstlisting} \onslide<+-> \begin{lstlisting}[frame=none] \begin{flushright} Dieser Text ist rechtsbündig. \end{flushright} \end{lstlisting} \onslide<+-> \begin{lstlisting}[frame=none] \begin{center} Dieser Text ist zentriert \end{center} \end{lstlisting} \onslide<+-> \begin{lstlisting}[frame=none] \usepackage{ragged2e} \begin{justify} Dieser Text ist im Blocksatz gesetzt. \end{justify} \end{lstlisting} \end{frame} \begin{frame}[fragile] \frametitle{Aufzählungen} \LaTeX\ stellt standardmäßig drei Aufzählungstypen zur Verfügung% \onslide<+-> \begin{enumerate} \item<+-> \lstinline{itemize} für unnummerierte Aufzählungen \item<+-> \lstinline{enumerate} für nummerierte Aufzählungen \item<+-> \lstinline{description} für Definitionslisten \end{enumerate} \onslide<+-> \begin{Beispiel} \begin{columns} \begin{column}{0.4\linewidth} \begin{lstlisting} \begin{itemize} \item Eins \item Zwei \item Drei \end{itemize} \end{lstlisting} \end{column} \onslide<+-> \begin{column}{0.4\linewidth} \begin{itemize} \item Eins \item Zwei \item Drei \end{itemize} \end{column} \end{columns} \end{Beispiel} \end{frame} \begin{frame}[fragile] \frametitle{Aufzählungen} \onslide<+-> \begin{Beispiel} \begin{columns} \begin{column}{0.4\linewidth} \begin{lstlisting} \begin{enumerate} \item Eins \item Zwei \item Drei \end{enumerate} \end{lstlisting} \end{column} \begin{column}{0.4\linewidth} \begin{enumerate}[1. ] \item Eins \item Zwei \item Drei \end{enumerate} \end{column} \end{columns} \onslide<+-> \begin{columns} \begin{column}{0.4\linewidth} \begin{lstlisting} \begin{description} \item[Eins] eine Zahl \item[Zwei] die Zahl danach \item[Drei] noch eine Zahl \end{description} \end{lstlisting} \end{column} \begin{column}{0.4\linewidth} \hspace*{-4em} \parbox{\linewidth}{ \begin{description} \item[Eins] eine Zahl \item[Zwei] die Zahl danach \item[Drei] noch eine Zahl \end{description} } \end{column} \end{columns} \end{Beispiel} \end{frame} \begin{frame}[fragile] \frametitle{Weitere Standard-Umgebungen} \onslide<+-> \begin{itemize} \item<+-> Zitate mittels \lstinline|quote| oder \lstinline|quotation| \begin{lstlisting} \begin{quote} ... \end{quote} \end{lstlisting} \item<+-> wortwörtlicher Text mittels \lstinline|verbatim| \begin{lstlisting} \begin{verbatim} Alles was hier steht kommt auch \so in \die Ausgabe!! \end{verbatim} \end{lstlisting} \item<+-> \lstinline!array!, \lstinline!equation!, \lstinline!figure!, \lstinline!list!, \lstinline!minipage!, \lstinline!picture!, \lstinline!tabbing!, \lstinline!table!, \lstinline!tabular!, \lstinline!thebibliography!, \lstinline!theorem!, \lstinline!titlepage!. \end{itemize} \end{frame} \section{Textuelles Markup} \begin{frame}[fragile] \frametitle{Sonderregeln} \onslide<+-> Einige Zeichenfolgen werden von \TeX\ (und damit auch von \LaTeX) speziell interpretiert: \begin{itemize} \item<+-> \lstinline!,,Hallo''! wird zu: ,,Hallo'' \item<+-> \lstinline!``Hello''! wird zu: ``Hello'' \item<+-> \lstinline!<>! wird zu: <> \item<+-> \lstinline!1--2! wird zu: 1--2 \item<+-> \lstinline!thus---he thought! wird zu: thus---he thought \item<+-> \lstinline!%! leitet einen Kommentar ein \end{itemize} \onslide<+-> Für Anführungsstriche ist aber das Paket \lstinline!csquotes! besser: \begin{lstlisting} \enquote{Ich habe das \enquote{anders} gemeint} \end{lstlisting} \onslide<+-> wird zu: \enquote{Ich habe das \enquote{anders} gemeint}. \end{frame} \begin{frame}[fragile] \frametitle{\textbf{Fett}, \textit{Kursiv} und \textsc{Ähnliches}} \onslide<+-> Für das Markup einzelner Wörter oder Sätze stehen die folgenden Kommandos zur Verfügung: \bigskip \centering \begin{tabular}[c]{lcl} \lstinline!\textbf{Text}! & $\leadsto$ & \textbf{Text}\\ \lstinline!\textsc{Text}! & $\leadsto$ & \textsc{Text}\\ \lstinline!\emph{Text}! & $\leadsto$ & \emph{Text}\\ \lstinline!\textsf{Text}! & $\leadsto$ & \textsf{Text}\\ \lstinline!\textit{Text}! & $\leadsto$ & \textit{Text}\\ \lstinline!\textnormal{Text}! & $\leadsto$ & \textnormal{Text}\\ \lstinline!\textrm{Text}! & $\leadsto$ & \textrm{Text}\\ \lstinline!\textsl{Text}! & $\leadsto$ & \textsl{Text}\\ \lstinline!\texttt{Text}! & $\leadsto$ & \texttt{Text}\\ \end{tabular} \end{frame} \begin{frame}[fragile] \frametitle{Schriftgröße} \onslide<+-> Schriftgrößen werden \emph{logisch} angegeben: \onslide<+-> \begin{center} \begin{tabular}[c]{cc} \lstinline!\tiny Text! & \tiny Text \\ \lstinline!\scriptsize Text! & \scriptsize Text \\ \lstinline!\footnotesize Text! & \footnotesize Text \\ \lstinline!\small Text! & \small Text \\ \lstinline!\normalsize Text! & \normalsize Text \\ \lstinline!\large Text! & \large Text \\ \lstinline!\Large Text! & \Large Text \\ \lstinline!\LARGE Text! & \LARGE Text \\ \lstinline!\huge Text! & \huge Text \\ \lstinline!\Huge Text! & \Huge Text \\ \end{tabular} \end{center} \onslide<+-> Manuelle Größeneinstellung auch möglich (\lstinline!graphicx!) \end{frame} \begin{frame}[fragile] \frametitle{Farben} \onslide<+-> Farben werden durch das Paket \lstinline{xcolor} bereitgestellt. \onslide<+-> \begin{lstlisting} \usepackage{xcolor} \textcolor{blue}{Blauer Text} \textcolor{green}{Grüner Text} \textcolor{red!50!blue}{Text blau-rot gemischt} \color{gray} Alles, was jetzt noch kommt ist grau \end{lstlisting} wird zu\onslide<+-> \textcolor{blue}{Blauer Text} \textcolor{green}{Grüner Text} \textcolor{red!50!blue}{Text blau-rot gemischt} \color{gray} Alles, was jetzt noch kommt ist grau \end{frame} \end{document} %%% Local Variables: %%% mode: latex %%% TeX-master: t %%% TeX-engine: luatex %%% ispell-local-dictionary: "de_DE" %%% End: % LocalWords: Textuelles Gliederungsstufe scrartcl scrreprt scrbook Script microtype % LocalWords: Mikrotypographie geometry fontenc inputenc babel enumitem array booktabs % LocalWords: listings hyperref amsmath amssymb mathtools ntheorem fragile einzug % LocalWords: Quelltextformatierung Seitenumbrüche Aufzählungstypen Formelelemente % LocalWords: Textformatierung Dokumentenkörper Absatzabstand Größeneinstellung