TEX in Stichworten
Willemers Informatik-Ecke
Weitere Seiten zum Thema TEX:

TeX ist eine Textverarbeitung der besonderen Art. Der Text wird in einem ASCII-Editor in einer Textbeschreibungssprache erfaßt. Die verwendeten Kommandos beginnen meist mit dem Backslash und gelten oft für einen Bereich, den man in geschweiften Klammern eingrenzt. Dadurch wirkt der Quelltext etwas kryptisch. Im Anschluß wird der Text übersetzt, durch einen Viewer betrachtet und ggfs. gedruckt. Während die normale Textverarbeitung treu das tut, was der Anwender ihr sagt, verwendet TeX Algorithmen, die den Text so gestalten, wie es ein Setzer täte.

Der Vorteil dieses Verfahrens liegt vor Allem in der hohen Qualität und der Ästhetik des Ergebnisses. Vor allem, wer mathematische Gleichungen setzen muß, sollte sich TeX ansehen. Aber auch die Schwäche der gängigen Textverarbeitungen bei der Bearbeitung großer Texte und die Verfügbarkeit und Portabilität der Quelltexte über alle Plattformen ist ein Argument für die Verwendung von TeX.

Der Dokumentrahmen

Der eigentliche Text wird durch \begin{document} eingeleitet und mit \end{document} abgeschlossen.
\documentclass[twoside,a4paper,11pt]{article}
\usepackage{ngerman} 
\usepackage[utf8]{inputenc}

\begin{document}

\end{document}
Ganz zu Anfang wird durch die Dokumentklasse festgelegt, daß es sich um einen Artikel handelt, der zweiseitig ist, also Vorder- und Rückseite unterschiedlich behandelt.

documentclass: Das Seitenformat

Die Angabe in den rechteckigen Klammern ist die Option.
oneside
Einseitig: Die Seitennummer ist beispielsweise immer auf der rechten Seite.
twoside
Beidseitig: Die Seitennummer wechselt.
Papiergröße
a4paper, a5paper, b5paper, letterpaper,legalpaper.
landscape
Das Dokument ist im Querformat.
twocolumn
Das Dokument ist zweispaltig.
Zeichengröße
Die Größe des Standardzeichensatzes kann als 10pt, 11pt oder 12pt vorgegeben werden.

Für größere Schriften müssen die extended Versionen der Klassentexte wie extarticle, extbook etc verwendet werden. Dann gehen auch 14pt und andere Schriftgrößen.

In den geschweiften Klammern wird die Klasse des Textes festgelegt.

book
Hat als oberste Gliederungsebene Kapitel (chapter)
article
Hat als oberste Gliederungsebene Abschnitte (section)
letter
Für Briefe

Sprache deutsch

Die beiden Zeilen \usepackage sind nur für deutsche Benutzer interessant. Das Package german sorgt für einige Vorgaben, damit deutsche Besonderheiten berücksichtigt werden. Dazu gehört die vereinfachte Eingabe von Umlauten, aber auch die Trennregeln.

Statt german sollte man ngerman verwenden, um die Vorzüge der neuen Rechtschreibung genießen zu können. Das betrifft vor allem die Trennregeln.

Das Paket inputenc definiert hier, dass auch Sonderzeichen vom Zeichensatz UTF-8 verarbeitet werden. Hier könnte beispielsweise auch latin stehen, wenn der Computer kein UTF-8 beherrscht.

Die Seitengröße

TEX geht recht großzügig mit dem Papier um und lässt viel Rand. Dadurch wird der Text besser lesbar. Die Position des Textes kann durch Parameter eingestellt werden. Beispiel:
\oddsidemargin=0cm \evensidemargin=0cm
\topmargin=0cm
\textwidth=16cm \textheight=20cm
XXXsidemargin gibt an, wieviel Platz zum Heftrand gelassen werden soll. topmargin bestimmt die Position des Textes von oben. Die Parameter textwidth und textheight bestimmen die Grösse des zu bedruckenden Bereichs.

Der Titel

Hier kann Titel, Autor und ähnliches festgelegt werden.
\title{Ein paar Worte zu \TeX}
\author{Arnold Willemer}
\date{13.11.1999}
...
\maketitle
Erst maketitle erzeugt den Titel an der angegebenen Stelle. Entsprechend muß dieser Befehl hinter begin{document} erscheinen.

Wird \date weggelassen, erscheint das Datum des Ausdrucks.

Kopf- und Fußzeile

Man kann die Kopf- und Fußzeilen individuell anpassen. Vor dem Beginn des Dokuments muss das Paket scrlayer-scrpage eingefügt werden.
\usepackage{scrlayer-scrpage}
\pagestyle{scrheadings} % Kopf- und Fusszeilen
Anschließend, noch vor dem Dokumentbeginn, können die Bereiche oben (head) und unten (foot) gefüllt werden. Dabei wird i für links, c für die Mitte und o für rechts davor gesetzt.
\usepackage{scrlayer-scrpage}
\pagestyle{scrheadings} % Kopf- und Fusszeilen
\ihead{Kopf links}
\ohead{Kopf rechts}
\cfoot{-- \pagemark{} --}
...
\begin{document}
Für die Inhalte eignen sich folgende Variablen:

Heise: Kopfzeile in LaTeX einfügen

Gliederung

Die Überschriften werden definiert:
\chapter
Kapitel. Gibt es nicht im Artikel, sondern nur bei Büchern.
\section
Abschnitt. Ist die oberste Hierarchie bei Artikeln.
\subsection
Unterabschnitt.
TeX vergibt automatisch die Kapitelnummern und setzt die Schriften in der korrekten Größe. Auch die Abstände zu den umgebenenden Texten und die Umbrüche bleiben unbeeinflußbar.

Wo der Befehl \tableofcontents auftaucht, erstellt TeX ein vollständiges Inhaltsverzeichnis inklusive Seitenangaben und Hierarchie.

Fußnoten

Die Fußnoten\footnote{Dies steht am unteren Rand der Seite} werden wie hier einfach in den Text geschrieben und werden von TeX an die richtige Stelle geschoben. Auch die Numerierung übernimmt TeX.

Tabellen

Aufzählungen

\begin{itemize}
\item ein Gesichtspunkt
\item noch eine Sommersprosse
\end{itemize}

\begin{description}
\item[Hund] ein Haustier zur Steigerung des Egos
\item[Katze] ein Haustier zur Ersatzbefriedigung
\end{description}

\begin{enumerate}
\item erster Schritt
\item zweiter Schritt
\item Abschlu"s
\end{enumerate}
Itemize liefert eine Liste, in der jedem Eintrag ein Punkt vorangestellt wird. In der Description wird jedem Eintrag der Inhalt der eckigen Klammern vorangestellt. Enumerate liefert eine durchnummerierte Liste.

Deutsche Umlaute und Sonderzeichen

Die deutschen Umlaute werden bei einem deutschem Package einfach durch Voranstellen des Anführungszeichen erreicht.
"Osterliche Gr"u"se 
Die meisten Sonderzeichen, die in Anweisungen verwendet werden, können durch Voranstellen eines Backslash (\) dargestellt werden. Nur beim Backslash selbst muß $\backslash$ verwendet werden.

Will man direkt die Sonderzeichen von der Tastatur eingeben, muss man TeX sagen, welcher Zeichensatz verwendet wird. Im folgenden Beispiel wird der UNIX-Zeichensatz akzeptiert.

\documentclass[12pt,a4paper]{dinbrief}
\usepackage{german}
\usepackage[latin1]{inputenc}
Übrigens ist dinbrief eine Möglichkeit, mit TeX deutsche Standardbriefe zu schreiben.
ZeichenTeX-ZeichenHTML-Zeichen
\ \textbackslash{} \
| $|$ |
_ \_ _
~ \sim{} oder \textasciitilde{} ~
{ \textbraceleft{} oder \{ {
} \textbraceright{} oder \} }
[ \textbrackleft{} oder {[} [
] \textbrackright{} oder {]} ]
$ \$ $
& \& &

Trennen

Normalerweise trennt TeX ja ganz ordentlich. Sollte er aber denn doch einmal daneben greifen, gibt es die Möglichkeit, Trennungen explizit anzugeben. Man kann im Text in einem Wort direkt durch die Zeichenfolge \- angeben, wo TeX Trennstellen erlaubt sind. Das Wort Ur\-instinkt würde dann nur an eben dieser und nicht an der anderen denkbaren, aber nicht wünschenswerten Stelle getrennt. Soll die Trennregel nur einmal pro Text definiert werden, hilft der Befehl \hyphenation{}. Beispiel:
\hyphenation{Ur-instinkt}
Worte mit Bindestrich werden von TeX normalerweise ab diesem nicht mehr getrennt, insbesondere nicht am Bindestrich. Man kann das ändern, indem statt dem Bindestrich ein Anführungszeichen gefolgt von einem Gleichheitszeichen verwendet wird. Beispielsweise im Wort UNIX"=Workstation.

Schriftarten

Grundlegende Schriftarten sind Serifenschriften (textrm) und serifenlose Schriften (textsf). Daneben gibt es noch die Schreibmaschinenschrift (texttt).

\textrm{Serifenschrift} ist anders als \textsf{serifenlose Schrift}
\textbf fett
\textit kursiv
\textsl schräg
\textsc Kapitälchen
\underline unterstrichen

Schriftgröße

\tiny etwa halb so groß
\small etwas verkleinert
\large vergrößert
\Large noch einmal vergrößert
\huge etwa doppelt so groß
\Huge \huge vergrößert

Absätze nebeneinander stellen

Minipages ermöglichen es, Textboxen nebeneinander zu stellen. Wichtig ist, dass zwischen den Miniboxen keine Leerzeile ist, weil sonst die Zeile, in der die Boxen nebeneinander stehen sollen vorher beendet wurde.
\begin{minipage}{.6\linewidth}
blablabla
\end{minipage}
\begin{minipage}{.3\linewidth}
blablabla
\end{minipage}
Dies liefert:

blablablablablabla

Anschließend wird die Breite der Box festgelegt. Die Angaben können in cm oder in pt angegeben werden. Man kann aber auch \linewidth für die Zeilenbreite angeben und diese durch Faktoren prozentual bestimmen. Im Beispiel oben nimmt die erste Box 60 Prozent und die zweite 30 Prozent der Zeile ein.

Wenn es keine begin-end-Umgebung sein darf, kann auch der Befehl \parbox verwendet werden.

\parbox{5cm}{blablabla}
\parbox{3cm}{blablabla}

Ausichtung an der oberen Kante

Die Inhalte der minipage werden normalerweise vertikal zentriert ausgerichtet. Das führt dazu, dass zwei nebeneinander stehende Absätze selten auf gleicher Höhe beginnen.

Die vertikale Ausrichtung kann durch einen Parameter in rechteckigen Klammern gesetzt werden. Dabei steht ein t für eine Ausrichtung am oberen Rand und ein b für unten.

\begin{minipage}[t]{.60\linewidth}
bla bla bla

In manchen Fällen funktioniert das aber nicht. Dann hilft es meist, indem man dem Absatz, der etwas tiefer beginnt, eine zustätzliche Zeile spendiert:

\begin{minipage}{.60\linewidth}
\vspace{-\ht\strutbox}
bla bla bla

Absätze einrahmen

fbox und parbox

Der Befehl \fbox umrahmt den Text in geschweiften Klammern. Damit der Text nicht rechts aus dem Rand läuft, muss er durch eine \parbox eingerahmt werden. Deren erster Parameter ist die Breite, die mit \linewidth auf die Breite der Zeile gesetzt werden kann.
\fbox{\parbox{8cm}{
blablabla
}}
Wird dies durch ein weiteres \fbox eingerahmt, erhält man einen doppelten Rahmen. Als Parameter kann statt 8cm auch die Seitenbreite mit \textwidth angegeben werden.

Rahmen spannen mit framed

Mit dem Paket framed kann man einen einfachen Rahmen auch um komplexere Strukturen legen.
\usepackage{framed}
...
\begin{document}
...
\begin{framed}
Der zu umrahmende Text...
\end{framed}