laforge-slides/2002/tex-introduction-cc2002/tex-einfuehrung.tex

431 lines
13 KiB
TeX

\documentstyle[german,a4]{article}
\pagestyle{plain}
\setlength{\oddsidemargin}{0in}
\setlength{\evensidemargin}{0in}
\setlength{\topmargin}{0.0in}
\setlength{\headheight}{0in}
\setlength{\headsep}{0in}
\setlength{\textwidth}{6.5in}
\setlength{\textheight}{9.5in}
\setlength{\parindent}{0in}
\setlength{\parskip}{0.05in}
\begin{document}
\title{The UNIX way of text processing: \LaTeX}
\author{Harald Welte $<$laforge@gnumonks.org$>$}
\maketitle
\begin{abstract}
Dieses Dokument soll als kleines Begleitschreiben zu meinem Einf"uhrungskurs in
{\LaTeX} dienen. Vervielf"altigung erlaubt und erw"unscht.
\end{abstract}
\tableofcontents
\section{Einleitung}
Viele Anwender arbeiten heute mit sogenannten {\em WYSIWYG}-Textverarbeitungen.
Dieses relativ neue Konzept erm"oglicht es, ein Textdokument am Bildschirm so
zu bearbeiten, wie es nachher auch aus dem Drucker herauskommt (zumindest
Behaupten dies die Hersteller, die Realit"at sieht meist anders aus).
Eine ganz andere Philosophie verfolgen Textsatzsysteme wie \TeX oder dessen
Erweiterung {\LaTeX}. Hier wird der Text zun"achst mit einem beliebigen
Texteditor gescrhieben, wobei bestimmte Befehle und Steuerzeichen eingebettet
werden. Anschlie"send wird dann der Textprocessor aufgerufen, der das
eigentliche Resultat generiert.
Dieser Vorgang erinnert stark an das Programmieren: Der Autor schreibt einen
Quelltext, welcher mittels eines Compilers in Maschinensprache "ubersetzt wird.
Diese Analogie ist kein Zufall, wurde TeX doch von {\em Donald E. Knuth}, einem
der renommiertesten Informatikern "ubehaupt, geschrieben. Knuth hat neben zwei
Professuren unter anderem auch 27 Ehrendoktortitel und zahlreiche Ehrungen
Namhafter Institutionen.
Knuth schreibt seit Jahrzehnten ma"sgebliche Referenzwerke der Informatik, so
z.B. die mehrteilige Reihe {\em The Art of Programming}. Um seine B"ucher
vern"unftig schreiben zu k"onnen, hat Knuth keine befriedigende Software
gefunden, und hat so kurzerhand selbst eine entwickelt.
Die ersten TeX-Versionen wurden 1978 ver"offentlicht, und der letzte bekannte
(in Erscheinung tretende) Bug wurde 1985 gefixed. Der Autor hat f"ur jeden
Bugfix eine finanzielle Belohnung ausgesetzt, welche sich mit jedem Fehler
verdoppelt (beginnend bei US\$ 1.28, heute nahe der H"ochstgrenze von
US\$327.68).
\section{Warum sollte ich {\LaTeX} verwenden?}
\begin{itemize}
\item
Professionelles Textsatzsystem v"ollig kostenlos
\item
Absolut identische Ausgabe unabh"angig von verwendeter Computerhardware, Betriebssystem, Softwareversion, Drucker
\item
Kompatibilit"at "uber Jahrzehnte. Welches propriet"are Textsyetem existiert seit 1978 und kann heute noch problemlos mit den alten Dokuenten arbeiten?
\item
Perfekte Unterst"utzung f"ur alles, was in wissenschaftlichen Dokumenten gebraucht wird: Formelnsatz, Literaturverzeichnisse, Glossar, ...
\end{itemize}
\section{Mein erstes {\LaTeX}-Dokument}
\subsection{Bearbeiten des .tex Files im Editor}
Man nehme seinen lieblings-Texteditor und schreibe folgendes:
\begin{verbatim}
\documentstyle[german,a4]{article}
\pagestyle{empty}
\begin{document}
...
\end{document}
\end{verbatim}
Die einzelnen Elemente werden sp"ater noch ausf"uhrlich besprochen. Vorerst
sollte einfach das obige Template verwendet werden. Dort wo ``....'' steht,
kann man jetzt seinen eigenen Text hinschreiben.
\subsection{Das eigentliche Tex(t)processing}
Nach eingabe des Quelltextes wird der Processor aufgerufen, welcher dann das Ergebnis produziert. Unter Unix/Linux sieht der Befehl folgendermassen aus:
\begin{verbatim}
latex meinedatei.tex
\end{verbatim}
Anschlie"send liegt eine Datei {\em meinedatei.dvi} im gleichen Verzeichnis.
Das DVI ist ein device-independent File. Das hei"st, da"s es das Dokument in
einem vom Ausgabeger"at unabh"angigen Format beschreibt.
Dieses DVI-File kann man sich unter Linux am besten mit dem Programm {\em xdvi} ansehen:
\begin{verbatim}
xdvi meinedatei.dvi
\end{verbatim}
Sollte man nnoch etwas am Dokumnt nachbessern wollen, so editiert man wieder das .tex-File, ruft {\LaTeX} auf und sieht sich das neue .dvi an.
\subsection{Das Ausgeben auf dem Drucker}
Das .dvi kann nun in das endg"ultige Ausgabeformat "uberf"uhrt werden. Zumeist ist das Postscript. F"ur die Konvertierung nach Postscript wird {\em dvips} verwendet:
\begin{verbatim}
dvips meinedatei.dvi > meinedatei.ps
\end{verbatim}
oder gleich zum Drucker schicken:
\begin{verbatim}
dvips meinedatei.dvi | lpr
\end{verbatim}
\section{Allgemeines zur Syntax}
\subsection{Leerzeichen}
Leerzeichen und ein einfacher Zeilenumbruch werden von {\LaTeX} nicht beachtet.
Ein neuer Absatz wird durch eine Leerzeile (doppelter Zeilenumbruch) begonnen.
Zeilenumbr"uche k"onnen durch $\backslash\backslash$ am Zeilenende erzeugt
werden. Es k"onnen manuell Leerr"aume eingef"ugt werden:
\begin{verbatim}
\hspace{length} % horizontaler Leerraum
\vspace{length} % vertikaler Leerraum
\end{verbatim}
\subsection{Trennung}
Die Trennung wird von {\LaTeX} automatisch vorgenommen. Hierbei werden die in
der jeweiligen Landessprache ({\em german.sty}) geltneden Trennungsregeln
verwendet. Es k"onnen jedoch vom Autor Trennungsvorgaben gemacht werden:
\begin{itemize}
\item
Zus"atzliche Trennungsm"oglichkeit: Donau$\backslash$-dampf$\backslash$-schiff
\item
Ausschliessliche Trennvorgabe: Donau\"-dampf\"-schiff
\item
Globale Trennvorgabe f"ur ein Wort: $\backslash$hyphenation\{Donau-dampf-schiff\}
\item
Keine Trennungsm"oglichkeit (im text): $\backslash$mbox\{Untrennbar\}
\item
Keine Trennungsm"oglichkeit (global): $\backslash$hyphenation\{Untrennbar\}
\item
Leerzeichen, bei dem kein Zeilenumbruch erfolgen darf: $~$
\end{itemize}
\subsection{Sonderzeichen}
Sonderzeichen k"onnen nicht einfach im Flie"stext geschrieben werden, da sie
h"aufig von Zeichensatz zu Zeichensatz unterschiedlich sind. Einige andere
Symbole werden von {\LaTeX} selbst als Steuer- und Kommandozeichen verwendet.
\subsubsection{Deutsche Umlaute}
\begin{verbatim}
"a "o "u "A "O "U "s
\end{verbatim}
"a "o "u "A "O "U "s
\subsubsection{Ausl"andische Sonderzeichen}
\begin{verbatim}
\'o \`o \^o \=o \.o \u{o} \v{o} \H{o} \t{oo} \c{c} \d{o}
\end{verbatim}
\'o \`o \^o \=o \.o \u{o} \v{o} \H{o} \t{oo} \c{c} \d{o}
\subsubsection{Sonderzeichen/Symbole}
\begin{verbatim}
\$ \& \% \# \{ \} [ ] \_ @ \S \pounds $<$ $>$ $\backslash$ @' !'
\end{verbatim}
\$ \& \% \# \{ \} [ ] \_ @ \S \pounds $<$ $>$ $\backslash$ @' !'
\section{Dokumentstruktur}
\subsection{Gliederung}
Gr"o"sere Dokumentvorlagen wie book.sty haben Teile und Kapitel. Dise k"onnen wie folgt verwendet werden:
\begin{verbatim}
\part{Teil"uberschrift}
\chapter{Kapitel"uberschrift}
\end{verbatim}
Kleinere Dokumentvorlagen wie article.sty bieten die Unterteilung in
Abschnitte, Unterabschnitte, Unter-Unterabschnitte, Abs"tze und Unterabs"atze.
Selbstverst"andlich sind diese Gliederungselemente auch in gr"o"seren
Dokumentvorlagen verwendbar.
\begin{verbatim}
\section{Abschnitts"uberschrift}
\subsection{Unterabschnitts"uberschrift}
\subsubsection{Unter-Unterabschnitts"uberschrift}
\paragraph{Absatz"uberschrift}
\subparagraph{Unterabsatz"uberschrift}
\end{verbatim}
Die einzelnen Gliederungselemente werden automatisch durchnummeriert. Wie tief die Nummerierung angezeigt wird, ist einstellbar. Standardm"a"sig wird nur bis Subsection nummeriert, d.h. subsubsection, paragraph und subparagraph erhalten keine angezeigte Nummerierung.
\begin{verbatim}
\setcounter{secnumdepth}{wert}
\end{verbatim}
\label{gliederungswerte}
Wobei {\em wert} die folgenden Werte annehmen kann:
\begin{description}
\item[-1] keine Nummern
\item[0] nur Chapter
\item[1] Chapter und Section
\item[2] Chapter bis Subsection
\item[3] Chapter bis Subsubsection
\item[4] Chapter bis Paragraph
\item[5] alle
\end{description}
\subsection{Titelseite}
Die meisten Dokumentvorlagen bieten die M"oglichkeit, automatisch eine Titelseite zu generieren. Dazu werden die folgenden Definitionen verwendet:
\begin{verbatim}
\title{Titel}
\thanks{Danksagung}
\author{Autor}
\date{Datum}
\maketitle
\end{verbatim}
\subsection{Zusammenfassung}
Eine Zusammenfassung kann dem eigentlichen Dokument vorangestellt werden:
\begin{verbatim}
\begin{abstract}
...
\end{abstract}
\end{verbatim}
\subsection{Inhaltsverzeichnis}
Aus den Gliederungselementen kann auf Wunsch automatisch ein Inhaltsverzeichnis erzeugt werden. Hierzu verwendet man den Befehl
\begin{verbatim}
\tableofcontents
\end{verbatim}
Man kann nun noch bestimmen, bis zu welcher Gliederungsebene Eintr"age im Inhaltsverzeichnis gemacht werden sollen:
\begin{verbatim}
\setcounter{tocdepth}{tiefe}
\end{verbatim}
Wobei {\em tiefe} die gleichen Werte annehmen kann, wie in Teil \ref{gliederungswerte} auf Seite \pageref{gliederungswerte} beschrieben.
\section{Formatierung}
\subsection{Schriftarten}
Man kann selbstverst"andlich auch zwischen diversen Schriftarten w"ahlen. Der Einfachheit halber werden hier jedoch nur die Standardschriften beschrieben:
\begin{itemize}
\item
{\rm Roman}: $\backslash$rm
\item
{\bf Fett}: $\backslash$bf
\item
{\it Kursiv}: $\backslash$it (Italic-Korrektur $\backslash$/)
\item
{\sl Slanted}: $\backslash$sl
\item
{\sf Sans Serif}: $\backslash$sf
\item
{\sc Small Caps}: $\backslash$sc
\item
{\tt Typewriter}: $\backslash$tt
\end{itemize}
\subsection{Schriftgr"o"sen}
\begin{itemize}
\item {\tiny $\backslash$tiny}
\item {\scriptsize $\backslash$scriptsize}
\item {\footnotesize $\backslash$footnotesize}
\item {\small $\backslash$small}
\item {\normalsize $\backslash$normalsize}
\item {\large $\backslash$large}
\item {\Large $\backslash$Large}
\item {\LARGE $\backslash$LARGE}
\item {\huge $\backslash$huge}
\item {\Huge $\backslash$Huge}
\end{itemize}
\subsection{Textausrichtung}
Standardm"a"sig formatiert {\LaTeX} immer im Blocksatz. Dies kann ge"andert
werden:
\begin{verbatim}
\begin{center}
Zentriert
\end{center}
\end{verbatim}
Es k"onnen neben {\em center} auch {\em flushleft} oder {\em flushright}
verwendet werden, um linksb"undige bzw. rechtsb"undige Ausgabe zu erhalten.
\subsection{Zitate}
Zitate k"onnen wie folgt eingebunden werden:
\begin{verbatim}
\begin{quotation}
Mahlzeit
\end{quotation}
\end{verbatim}
\section{Listen und Aufz"ahlungen}
\subsection{Listen}
Eine Liste kann wie folgt erzeugt werden:
\begin{verbatim}
\begin{itemize}
\item erster eintrag
\item zweiter eintrag
\end{itemize}
\end{verbatim}
\subsection{Aufz"ahlungen}
Eine Aufz"ahlung kann wie folgt erzeugt werden:
\begin{verbatim}
\begin{enumerate}
\item erster Eintrag
\item zweiter Eintrag
\end{enumerate}
\end{verbatim}
\subsection{Beschreibungen/Definitionen}
Eine Beschreibung kann wie folgt erzeugt werden:
\begin{verbatim}
\begin{description}
\item[Donald E. Knuth] Autor des bekannten TeX Syetems
\item[Donald Becker] Autor von zahllosen Linux-Netzwerktreibern
\end{description}
\end{verbatim}
\section{Fu"snoten, Querverweise, Literaturverzeichnis}
\subsection{Fu"snoten}
Eine Fu"snote\footnote{Fussnoten sehen so aus *g*} wird einfach in den Text
mit hineingeschrieben, an der Stelle an der sie erscheinen soll:
\begin{verbatim}
Benutzt man hingegen das Sub-Etha-Sens-O-Matic\footnote{Ein Ger"at zur
detektion in der N"ahe befindlicher Raumschiffe}, so ....
\end{verbatim}
\subsection{Querverweise}
Es k"onnen Querverweise eingef"ugt werden, welche dann automatisch auf die
jeweils aktuelle Abschnittsnummer / Seite verweisen, auch wenn sich das Ziel
des Querverweises verschiebt.
An dem Ziel des Querverweises (also wohin man verweisen m"ochte), wird
folgender Befehl eingef"ugt:
\begin{verbatim}
\label{namedeslabels}
\end{verbatim}
Ein Querverweis dorthin sieht dann wie folgt aus:
\begin{verbatim}
Wie in Abschintt \ref{namedeslabels} auf Seite \pageref{namedeslabels}
beschrieben
\end{verbatim}
\subsection{Literaturverzeichnis}
Vor allem in wissenschaftlichen Dokumenten wird ein Literaturverzeichnis
gebraucht. Es gibt zwei unterschiedliche M"oglichkeiten, ein
Literaturverzeichnis unter {\LaTeX} zu verwenden.
Die einfache, hier beschriebene Variante eignet sich f"ur kleine, einzelne
Dokumente. Wer h"aufig zu den gleichen Themen dokumente verfasst, sollte sich
mit {\em bibtex} auseinandersetzen, hier kann man sich ein zentrales
Literaturverzeichnis anlegen, worauf von allen Dokumenten aus verwiesen werden
kann.
Ein Verweis auf ein Literaturverzeichnis sieht so aus:
\begin{verbatim}
Wie in \cite[Seiten 12 ff.]{1} bescrhieben, ...
\end{verbatim}
Das Literaturverzeichnis am Ende sieht dann so aus:
\begin{verbatim}
\begin{thebibliography}{99}
\bibitem{1} Markus M"uller, {\sl Mahlzeit - das Kochbuch, Addison-Wesley, 1995}
\end{thebibliography}
\end{verbatim}
\section{Dokumentvorlagen}
Wir haben in den bisherigen Beispielen immer die Dokumentvorlage {\em article.sty} vewendet. Die zu verwendende Dokumentvorlage wird im Kopf des Dokuments mit dem {\em $\backslash$documentstyle}-Befehl angegeben.
G"angige Dokumentvorlagen:
\begin{description}
\item[article] F"r das Verfassen strukturierter Dokumente begrenzter L"ange
\item[book] Zum Verfassen eines Ganzen Buches
\item[dinbrief] Zum Verfassen eines sich exakt an der DIN-Norm orientierenden Briefes
\end{description}
Zus"atzlich werden beim {\em documentstyle}-Befehl in den eckigen Klammern noch
Optionen angegeben.
G"angige Optionen:
\begin{description}
\item[10pt, 11pt, 12pt] Standardschriftgr"o"se
\item[german] Unterst"utzung f"ur deutsche Umlaute und Trennregeln
\item[twocolumn] Zweispaltige Formatierung
\item[twoside] Zweiseitiger Druck (Seitennummern, etc.)
\end{description}
\end{document}