197 5 15MB
German Pages 228 Year 1997
Von der Idee zum Dokument Einführung in
TgX und LATgX Von
Stefan Katzenbeisser
2., stark erweiterte Auflage
R. Oldenbourg Verlag München Wien
Die Deutsche Bibliothek - CIP-Einheitsaufnahme Katzenbeisser, Stefan: Von der Idee zum Dokument - Einführung in TEX und LATE X / von Stefan Katzenbeisser. - 2., stark erw. Aufl. - München ; Wien : Oldenbourg, 1997 1. Aufl. u.d.T.: Katzenbeisser, Stefan: Einführung in TE X ISBN 3-486-24182-6
© 1997 R. Oldenbourg Verlag Rosenheimer Straße 145, D-81671 München Telefon: (089) 45051-0, Internet: http://www.oldaibourg.de Das Werk einschließlich aller Abbildungen ist urheberrechtlich geschützt. Jede Verwertung außerhalb der Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Das gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Bearbeitung in elektronischen Systemen. Gedruckt auf säure- und chlorfreiem Papier Gesamtherstellung: Hofmann Druck Augsburg GmbH, Augsburg ISBN 3-486-24182-6
Vorwort Werte Leserin, werter Leser! Wie oft steht man nicht vor dem Problem, in möglichst kurzer Zeit ein "druckbares" Dokument erstellen zu müssen? Mit TßX, das von Prof. Donald E. Knuth an der University of Stanford entwickelt wurde, liegt ein äußest mächtiges Programm vor, mit dem man vor allem wissenschaftliche Texte, die mathematische Formeln beinhalten, effizient setzen kann. Mit IATgX wurde von Leslie Lamport eine "Makrobibliothek" zu TgX hinzugefügt, um die Eingabe und Formatierung des Textes erheblich zu erleichtern. Aus dem akademischen Bereich ist TgX somit kaum mehr wegzudenken. Dieses Buch soll Ihnen eine Einführung in TßX und/oder IATgX geben. Es umfaßt drei große Abschnitte, die Tf^X, IATgX und eine spezielle Tp)X-Er Weiterung der American Mathematical Society beschreiben. Die ersten beiden Teile sind voneinander unabhängig; interessieren Sie sich also für lATgX, so können Sie den ersten Abschnitt getrost überblättern. Wollen Sie sich nur über TgX informieren, so finden Sie die Informationen in Abschnitt I. Ich haben mich in diesem Buch bemüht, Ihnen über beide Systeme auf etwa jeweils 100 Seiten einen Überblick zu bieten. Die beiden Abschnitte sind ähnlich strukturiert, sodaß auch Vergleiche von TgX mit JATgX möglich sind. Die Philosophie hinter diesem Buch ist "learning by doing"; deshalb enthält es zu jedem Kapitel Beispiele, die Sie selbst in Tf)X/IATgX ausprobieren sollten! Ebenso sind Sie aufgefordert, diese zu modifizieren oder zu kombinieren. Auf jeden Fall sollten Sie die Beispiele genau analysieren und mit der abgedruckten Ausgabe vergleichen. Ein Beispiel sagt oft mehr als 100 Worte; so habe ich die Kommentare oft eher kurz gehalten. So hoffe ich, daß dieses Buch seinen Zweck erfüllt und Ihnen (mit möglichst geringem Aufwand) den Textsatz mit TßX/lATgX ermöglicht. Stefan Katzenbeisser
PS: Ihnen wird vielleicht das ungewöhnliche Layout dieses Buches auffallen; jeder Abschnitt hat sein eigenes. Der Grund liegt darin, daß ich Ihnen verschiedene "Beispiellayouts" präsentieren möchte.
Inhaltsverzeichnis Abschnitt I. Einführung in plainTfjX
5
1. E i n e e r s t e Einführung
7
1.1 1.2 1.3 1.4
Anlegen eines T ß X — Files Allgemeines zu den l ^ X — Befehlen Ende der Eingabe Preview
8 8 9 9
2. T e x t s a t z
11
2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8
12 13 15 16 18 20 21 21
Das normale Druckbild Schriftenkatalog Nationale Sonderzeichen, Akzente Absatzausrichtung Zeilenausrichtung Listen Fußnoten Trennen
3. F o r m e l s a t z 3.1 Allgemeines 3.2 Exponenten und Indices 3.3 Wurzeln 3.4 Brüche 3.5 Binomialkoeffizienten 3.6 Mathematische Operatoren 3.7 Klammern 3.8 Matrizen 3.9 Formelausrichtung 3.10 Numerierte Formeln 3.11 Leerplätze im mathematischen Formelsatz 3.12 Die mathematischen Styles 3.13 Akzente 3.14 Formeltrennung 3.15 Mathematische Funktionen 3.16 Sonstige mathematische Symbole, griechische Buchstaben 4 . Tabellensatz 4.1 4.2 4.3 4.4
Tabulatoren Automatischer Tabellensatz — Musterzeile Gerahmte Tabellen Sonstige Befehle des Tabellensatzes
25 26 26 26 27 27 28 28 30 31 31 32 33 34 34 34 35 30 40 41 45 50
2
Inhaltsverzeichnis
5. M a k r o s — E i g e n e Definitionen 5.1 5.2 5.3 5.4 5.5 5.6 5.7
Einfache Makros Makros mit Parametern Praktische Anwendung von Makros Zählregister If — Anweisungen Arbeiten mit Fonttabellen Sonstige Makrobefehle
6. Ä n d e r u n g der A u s g a b e f o r m 6.1 6.2 6.3 6.4 6.5
Seitennumerierung — Fußzeile — Kopfzeile Änderung der Seitenform Boxen Fußnoten Zeilenabstand
7. E i n i g e F e h l e r m e l d u n g e n
53 54 54 55 56 57 58 59 63 64 65 65 66 66 60
7.1 Ein Beispiel
70
7.2 Sonstige Fehlermeldungen
74
A n h a n g A . L o s u n g e n zu den Ü b u n g s a u f g a b e n
75
A n h a n g B . Befehlsverzeichnis
81
B . l Steuerzeichen B.2 Steuerwörter B.3 Mathematische und nicht-mathematische Zeichen Anhang C. Fonttabellen
Abschnitt II. Einführung in ^TßX 1. E i n e e r s t e E i n f ü h r u n g 1.1 1.2 1.3 1.4
Anlegen eines IATEX-Files Der Dokumenttyp — Styles IATgX-Befehle und Umgebungen "]AT E Xen" und Preview
82 82 91 95
105 107 107 108 109 110
2. T e x t s a t z
113
2.1 2.2 2.3 2.4 2.5 2.6 2.7
113 114 114 116 117 119 119
Das normale Druckbild Die Formatierung eines Absatzes Schriftenkatalog Sonderzeichen, Akzente Zeilenausrichtung, Listen Fußnoten Trennen
Inhaltsverzeichnis
2.8 Abbildungen und Tabellen 2.9 Theoreme, Beweise, Definitionen 2.10 Der a r t i c l e - S t y l e 2.11 Die Styles r e p o r t und book 2.12 Große Dokumente 2.13 Der l e t t e r - S t y l e 3. F o r m e l s a t z 3.1 Allgemeines 3.2 Exponenten und Indices 3.3 Wurzeln 3.4 Brüche 3.5 Binomialkoeflizienten 3.6 Leerplätze in Formeln 3.7 Mathematische Operatoren 3.8 Mathematische Funktionen 3.9 Klammern 3.10 Matrizen, Fallunterscheidungen 3.11 Mehrzellige Formeln 3.12 Akzente, Relationen, Symbole 4. Tabellensatz 4.1 Tabulatoren 4.2 Die Umgebung t a b u l a r 4.3 Gerahmte Tabellen 5. M a k r o s , Definitionen 5.1 Einfache Makros 5.2 Makros mit Parametern 5.3 Zählregister 6. Ä n d e r u n g der A u s g a b e f o r m 6.1 6.2 6.3 6.4 6.5
Seitenlayout Zweispaltiger Text Randnotizen Seitenform, Absatzformatierung Boxen
7. Grafiken, Folien 7.1 7.2 7.3 7.4 7.5
Die IAT E X-picture-Umgebung Einbindung von externen Grafiken Erweiterte Grafikbefehle Farbausgabe Folien
8. Fehlermeldungen
3
120 121 122 124 131 131 135 135 136 136 137 137 137 138 139 139 140 141 142 147 147 149 151 155 155 156 158 161 161 162 162 163 163 167 167 170 172 172 173 175
4
Inhaltsverzeichnis
8.1 Ein Beispiel
175
8.2 Sonstige Fehlermeldungen
180
A n h a n g A . Losungen zu den Übungsaufgaben
181
A n h a n g B . Befehlsverzeichnis
185
B.l B.2 B.3 B.4
IAT E X-Steuerzeichen IATgX-Umgebungen lATßX-Befehle Mathematische und nicht-mathematische Zeichen
Abschnitt III. Das TfeX der AMS 1. 4a4 , bei emTgX ist es v TEXT TEXT TEXT > Will man z.B. einen Text in Fettdruck schreiben, so ist die notwendige Eingabe dazu {\bf TEXT
TEXT TEXT}
Das Unterstreichen eines Textes erfolgt durch \underbar, z.B. \underbar -{Das i s t eine Probe} liefert: Das ist eine Probe. Vergrößerung TjjX unterscheidet, ob eine Vergrößerung global oder nur lokal (für ein paar Wörter) gilt. Für die globale Vergrößerung ist folgende Eingabe nötig: \magnification=\magstep x Das x im magstep — Befehl gibt den Wert der Vergrößerung an. Diese Eingabe muß am Anfang der Datei vor der Eingabe des Textes stehen, ansonsten erhalten Sie eine Fehlermeldung. Folgende Tabelle verdeutlicht die Vergrößerung mit magstep:
magstep magstep 0 magstephalf magstep 1 magstep 2 magstep 3 magstep 4 magstep 5
Faktor 1.000 1.095 1.200 1.440 1.728 2.074 2.488
Bei einer globalen Vergrößerung ist aber meist nur der Wert "magstep 1" sinnvoll, da diese Schrift selbst schon sehr groß ist; der normale Text in diesem Buch ist mit magstep 0 gesetzt. Zu beachten ist jedoch, daß magstep nicht nur die Schrift, sondern auch edle Parameter, die eingegeben wurden, vergrößert, \vskip 7 cm erzeugt z.B. einen 7
H
2.
Textsatz
cm großen Zwischenraum, der ebenfalls um den Faktor von magstep vergrößert wird. Will man dies unterdrücken, so ist zwischen der Zahl und der Maßeinheit ein " t m e " zu setzen, z.B. \ v s k i p 7 t r u e cm dann bleibt die Größe des Zwischenraums gleich 7 cm. Für eine lokale Vergrößerung ist eine komplizierte Eingabe nötig. Man muß sich sozusagen eine neue Schriftart definieren. Dies geschieht durch \ f ont. Anschließend ist ein Name für die Schriftart einzugeben (z.B. \mf = mein font) und danach der Typ der Schrift und deren Vergrößerung: \ f o n t \mf = cmbxlO s c a l e d \magstepl Diese Definition erzeugt eine fette 10 pt - Schrift, vergrößert um magstep 1. (Übrigens cmbxlO gibt den Font an und heißt "computer-modern-bold-extended lOpt"). Der Aufruf dieser Schrift würde dann so aussehen: { \ m f TEXT} Folgende Schriften sind in plain-T^X verfügbar: cmblO cmbxi2
Das ist ein Probetext.
Das ist ein P r o b e t e x t .
Die Schriftart cmbx gibt es noch in den Vergrößerungen: 10,9,8,7,6 und 5 cmbxsllO
Das ist ein
Probetext.
cmbxtilO
Das ist ein
Probetext.
cmcscio
cmdunhlO
DAS IST EIN PROBETEXT.
Das ist ein Probetext,
cmffio
Das ist em Proöfttext.
cmfib8 cmrl7
Das ist ein Probetext.
Das ist ein Probetext.
Die Schriftart cmr gibt es noch in den Vergrößerungen: 12,10,9,8,7,6 und 5. Dies ist die Normalschrift cmrlO: cmrlO
Das ist ein Probetext.
cmsllO
Das ist ein
Piobetext.
Die Schrift cmsl gibt es noch in den Vergrößerungen 12,9 und 8. cmsslO
Das ist ein Probetext.
Die Schrift cmss gibt es noch in den Vergrößerungen 17,15,9 und 8. cmssbxlO
Das ist ein Probetext.
2.
15
Textsatz
cmssdclO
Das ist ein Probetext.
cmssilO
Das ist ein
Probetext.
Die Schrift cmssi gibt es noch in den Vergrößerungen 17,15,9 und 8. cmssq8
Das ist ein Probetext.
cmssqi8
Das ¡st ein
cmtcsclO
DAS
cmtilO
IST EIH
Probetext.
PROBETEXT.
Das ist ein
Probetext.
Die Schrift cmti gibt es noch in den Vergrößerungen 12,9,8 und 7. cmttlO
Das i s t ein Probetext.
Die Schrift cmtt gibt es noch in den Vergrößerungen 12,9 und 8. cmtt9
Das i s t e i n P r o b e t e z t .
Cmtt8
Das i s t e i n P r o b a t a x t .
cmulO
Das ist ein Probetext.
cmvttlO
Das ist ein Probetext.
2.3 Nationale Sonderzeichen, Akzente Will man z.B. ein "ä" schreiben (ä ist ein nationales Sonderzeichen) und man gibt ein ä ein, wird TßX alles andere als ein ä schreiben. Für das T^X — Programm muß die Eingabe wie folgt aussehen: für für für für
ä ü ö ß
\"a \"u \"o \ss
oder in Großbuchstaben
A \"A Ü Y'U Ö \"0
Tritt innerhalb eines Wortes ein ß auf, ist nach dem Befehl \ss ein Abstand zu lassen (z.B. Gro\ss Schreibung). (\ss ist für TßX ein Steuerwort und muß daher mit einem nicht alphabetischen Zeichen enden.) Wird dieser Abstand nicht gelassen, wird TßX eine Fehlermeldung ausgeben. Am Ende eines Wortes muß \ss\ geschrieben werden (z.B. Blumenstrau\ss\ ). Es ist nach dem zweiten \ unbedingt ein Leerzeichen einzugeben.
16
2.
Textsatz
Es gibt natürlich auch noch andere Akzente: o
Vo
ö
Vo
V o \-o
o
V'o
ö
ö
\=0
ö
\.o
ö
\u o
6
\v 0
ö
\H o
ö
\ t 00
öo
\c o
\d o
9
\b o
\oe
oe
\0E
CE
\ae
ae
\AE
JE
\aa
ä
\AA
A
\o
\1
l
\L
0 L
\ss
ß
\i
I
\j
j
o
Die Eingabe von deutschen Umlauten mittels \" ist jedoch nicht gerade bequem. In diesem Fall bietet TgX eine Möglichkeit, dieses Problem zu lösen: \catcode'\ä=\active \defäi\"a> Der Befehl \catcode definiert TßX ein neues Steuerzeichen mit dem Aussehen "ä". Dieses neue Steuerzeichen wird dann mittels \def definiert. (Mehr über Makros erfahren Sie in Kapitel 5.) Diese Definition bewirkt also, daß I ^ X jedes "ä" in Ihrem Text als Steuerzeichen interpretiert und einen Umlaut erzeugt. "ü,ö,A,0,U" kann man auf die gleiche Weise definieren. Es gibt jetzt jedoch schon eine T^X — Implementierung (German-T^X), die die deutschen Umlaute schon vordefiniert hat. Zu beachten ist, daß im Mathematik-Modus diese Akzente nicht anwendbar sind (vgl. Kapitel 3).
2.4 Absatzausrichtung Normalerweise ist der Text in Absätze gegliedert. Die Absätze werden entweder durch Leerzeilen, oder durch den Befehl \par gebildet. Eine andere Möglichkeit besteht darin, explizit Zwischenräume anzugeben. Zwischen den Absätzen läßt TßX normalerweise keinen Zwischenraum. Will man doch einen Zwischenraum einbauen, so hat man zwei Möglichkeiten zur Wahl: Man kann erstens die Variable parskip umdefinieren. Sie ist vorbesetzt mit \parskip=Opt p l u s 1 pt. Das "plus 1 p t " sagt TßX , daß es beim Seitenumbruch bis zu 1 pt zusätzlichen Platz lassen kann, um die Seite besser aufzufüllen. Die Eingabe für die zu definierende Variable "parskip" lautet: \parskip= x pt plus l p t Anstatt V ist die Größe des Zwischenraumes anzugeben. Der Befehl \parskip bewirkt dann, daß zwischen allen Absätzen automatisch ein Zwischenraum von x pt gelassen wird.
2.
17
Tezisatz Die zweite, meist öfter verwendete Möglichkeit ist die Eingabe von
\smallskip \medskip \bigskip \ v s k i p x cm
erzeugt einen kleinen Zwischenraum, erzeugt einen mittleren Zwischenraum, erzeugt einen großen Zwischenraum, hier wird ein x cm großer Zwischenraum erzeugt.
Anstatt x muß die Größenangabe des Leerraumes stehen. Tg)X rückt bei jedem Absatz automatisch um 20 pt ein (wie bei diesem). Es kann jedoch mit dem Befehl \parindent= x pt beliebig verändert werden. Will man das automatische Einrücken bei einem Absatz ganz unterdrücken, so ist dies durch \ n o i n d e n t möglich.
en > < ln
Es gibt n o c h einen Befehl, der das Aussehen eines Absatzes steuert. Dieser heißt \ p a r s h a p a . Die Syntax lautet folgend e r m a ß e n : \ p a r s h a p a = < A n z a h l d e r Z e i l e n X ei > < /i > < e2 > < ¡2 > , • • • , < > • e s t e h t f ü r d i e L ä n g e , u m d i e e i n g e r ü c k t w e r d e n soll u n d l s t e h t f ü r d i e L ä n g e e i n e r Zeile. Dieser A b s a t z wurde m i t \ p a x s h a p a = 9 0 . 4 5 \ h s i z e 0 . 2 \ h s i z a 0 . 3 0 \ h s i z a 0 . 4 \hsiza 0.20 \hslze 0.6 \hsiza 0.10 \hsiza0.8 \hsiza 0.0 \hsize 1.0 \hsiz« 0.10 \hsiza 0.8 \hsiza 0.20 \hsiza 0.6
\ h s i z a 0 . 3 0 \ h s i z a 0 . 4 \ h s i z e 0 . 4 5 \ h s i z a 0 . 2 \ h s i z a erstellt. Mit diesem Befehl können Sie Absätze in jeder beliebigen Form erstellen.
Der zweite Befehl, den ich Ihnen vorstellen möchte, heißt \ h a n g i n d e n t . Syntax lautet folgendermaßen:
Die
\ h a n g i n d e n t < Einrückung > \hangaf t e r < Zeile > Als Anwendungsbeispiel: \noindent
\hangindent 3cm\hangafterl Dies i s t e i n B e i s p i e l t e x t , d e r dazu d i e n t , den B e f e h l " h a n g a f t e r " zu e r l Y ' a u t e r n . Dies i s t e i n B e i s p i e l t e x t , d e r dazu d i e n t , den B e f e h l " h a n g a f t e r " zu e r l Y ' a u t e r n . Dies i s t e i n B e i s p i e l t e x t , d e r dazu d i e n t , den B e f e h l " h a n g a f t e r " zu e r l Y ' a u t e r n . \par
liefert: Dies ist ein Beispieltext, der dazu dient, den Befehl "hangafter" zu erläutern. Dies ist ein Beispieltext, der dazu dient, den Befehl "hangafter" zu erläutern. Dies ist ein Beispieltext, der dazu dient, den Befehl "hangafter" zu erläutern. Durch \ h a n g i n d e n t werden alle Zeilen eines Absatzes nach der angegebenen Zeile um die angegebene Länge eingerückt. Der Befehl \ h a n g i n d e n t wirkt bis zum Ende des laufenden Absatzes.
2. Textsatz
18 Noch ein Befehl ist im Zuge der Absatzausrichtung interessant: \vfill\eject
erzeugt einen Seitenumbruch. TßX füllt dann die Seite mit Leerzeilen auf und beginnt eine neue.
2.5 Zeilenausrichtung Es gibt einige Befehle, die das Aussehen einer Zeile steuern. Diese sind: \ l e f t l i n e {...} \ r i g h t l i n e {...} \centerline {...}
setzt den Text in Klammern linksbündig. setzt den Text in Klammern rechtsbündig. setzt den Text in Klammern zentriert.
Diese Befehle sind wie folgt anzuwenden: \centerline{aaa} \medskip \leitline{bbb> \medskip Xrightlineiccc} liefert: aaa bbb ccc Es gibt noch eine Zeilenform, die besonders bei Gedichten verwendet wird: die zeilenweise Ausgabe. Stellen Sie sich vor, Sie müßten jede Zeile mittels \ l e f t l i n e an den Beginn einer Zeile rücken. Da hätten Sie sehr viel zu tun. Der Befehl \ o b e y l i n e s bietet hier eine Alternative ( \ h f i l erzeugt einen dynamischen Leerplatz [siehe hinten]). {\obeylines Im Nebel ruhet noch die Welt, Noch trV'aumen Wald und Wiesen: Bald siehst du, wenn der Schleier fY'allt, Den blauen Himmel unverstellt, HerbstkrV'aftig die gedV'ampfte Welt Im warmen Golde flie\ss en. \hfil Eduard M\"orike} liefert:
2.
19
Textsatz I m Nebel ruhet noch die Welt, Noch träumen Wald und Wiesen: Bald siehst du, wenn der Schleier fällt, Den blauen Himmel unverstellt, Herbstkräftig die gedämpfte Welt I m warmen Golde fließen. Eduard Mörike
Eine andere Möglichkeit: •C\obeylines\everypar{\hfil}\parindent=Opt Im Nebel ruhet noch d i e Welt, Noch trV'aumen Wald und Wiesen: Bald s i e h s t du, nenn der S c h l e i e r f V ' a l l t , Den blauen Himmel u n v e r s t e l l t , H e r b s t k r V ' a f t i g d i e gedV'ampfte Welt Im warmen Golde f l i e X s s en. \ h f i l Eduard MVorike} liefert: Im Nebel ruhet noch die Welt, Noch träumen Wald und Wiesen: Bald siehst du, wenn der Schleier fällt, Den blauen Himmel unverstellt, Herbstkräftig die gedämpfte Welt Im warmen Golde fließen. Eduard Mörike Der Befehl \ e v e r y p a r führt an jedem Zeilenbeginn den danachfolgenden Befehl aus. Leerzeichen zwischen d e n W o r t e r n Geben Sie zum Beispiel nach einem Wort 3 Leerplätze ein, wird TgX sie als einen Leerplatz interpretieren. Mit folgenden Befehlen kann man Leerplätze zwischen zwei Wörtern erzeugen: \quad \qquad \indent \hskip x pt
Zwischenraum von 1 em Zwischenraum von 2 em Zwischenraum von " \ p a r i n d e n t " ein Zwischenraum von x pt.
"em" ist eine im Setzergewerbe gebräuchliche Einheit, sie bezeichnet die Breite des großen 'M". Die Maßeinheit em ist vom eingestellten Font abhängig. Eine zweite Methode, die sehr häufig bei Listen auftaucht, ist die, mit dem Befehl Yphantom { > einen Zwischenraum zu erzeugen, der der Länge des in der Klammer angegebenen Wortes entspricht: z.B. \ l e f t l i n e { S t e f a n Katzenbeisser: EinfV'uhrung i n \TeX> \smallskip \ l e f t l i n e { \ p h a n t o m { S t e f a n Katzenbeisser} \ c o p y r i g h t 1993} liefert:
2.
20
Textsaiz
Stefan Katzenbeisser: Einführung in TßX ©1993 E s gibt Befehle, die einen sogenannten " d y n a m i s c h e n LeerraurnP erzeugen. Diese sind: Schiebt den nachfolgenden Text in die Mitte einer Zeile Schiebt den nachfolgenden Text an das Ende einer Zeile
\hfil \hfill
Einen "•geschützten Leerraum" kann man in TgX mit dem Zeichen " (Tilde) erzeugen. An diesem Leerraum darf nicht umgebrochen werden.
2.6 Listen Für Listen gibt es in Tg^C einen sehr einfachen Befehl.
Er heißt \item.
Die
Eingabe lautet folgendermaßen: \item{ } In das Klammerpaar kommt das Zeichen, unter das eingerückt werden soll und dahinter der Text. Bis zum Ende des aktuellen Absatzes wird der Text um den Betrag von \ p a r i n d e n t nach rechts geschoben: z.B. \item \item \item \item
{-} {-> {-} {-}
100 Gramm Butter 0 . 5 Liter Milch 3 Eier 100 Gramm Zucker
liefert: -
100 Gramm Butter 0.5 Liter Milch 3 Eier 100 Gramm Zucker
Man kann mit dem \item — Befehl auch 2 x einrücken. Dann heißt der Befehl: \itemitem{ > z.B. \item { - > \itemitem \itemitem \itemitem
100 {-} {-> {-}•
Gramm Butter 0 . 5 Liter Milch 3 Eier 100 Gramm Zucker
liefert: - 100 -
Gramm Butter 0.5 Liter Milch 3 Eier 100 Gramm Zucker
Mit etwas Kenntnis der T ß X — Befehle kann man sich selbst ein \itemitemitem definieren, das ein dreifaches Einrücken bewirkt:
2.
Textsatz
21
\def \itemitemitem{\par\indent\indent \hangindent 3\par indent \textindent} Mehr über Makros erfahren Sie in Kapitel 5.
2.7 Fußnoten Fußnoten werden im TßX — Programm mit dem Befehl \f ootnote erzeugt. Die Eingabe sieht folgendermaßen aus: \f o o t n o t e O O In das erste Klammerpaar kommt das Indexzeichen und im zweiten Klammerpaar steht der Text der Fußnote, z.B.: \ f o o t n o t e { $ " l $ M D i e s i s t e i n e t y p i s c h e Fu\ss n o t e } liefert: 1 $ " 1 $ stellt eine kleine, hochgestellte 1 im Mathematikmodus dar.
2.8 Trennen Das TgX — Programm teilt Wörter automatisch ab. Werden Wörter verwendet, die T^X nicht kennt oder TgX nicht abteilen kann, wird der Text einfach über den Rand hinausgeschrieben und mit einem schwarzen Balken markiert. Weiters wird die Fehlermeldung "Overfull hbox" ausgegeben. Die folgende Textzeile demonstriert dies: Aaaaaaaaaa^iaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal Sie sehen, daß das nicht besonders schön aussieht. Diese Zeile hätte folgende Fehlermeldung produziert: O v e r f u l l \hbox ( 7 . 6 1 5 3 3 p t t o o wide) i n paragraph at l i n e s 982—984 [] Aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaa I Neben der Fehlermeldung gibt T^X in Klammer die Größe der übervollen Zeile an. Größen unter 2pt kann man getrost vergessen. Daß die Box um 2pt übervoll ist, merkt man kaum, doch der Balken stört. Diesen kann man wie folgt wegbekommen: Man kann den Befehl \overfullrule=Opt einsetzen. Dieser setzt die Breite des Balkens auf 0, somit verschwindet er ganz. Die zweite Möglichkeit ist, daß man die Variable \hfuzz anders belegt. Diese Variable speichert den Wert, ab der Uberfüllungen angezeigt werden, z.B. \hfuzz=2pt setzt die Variable \hfuzz auf 2pt. Dann werden Uberfüllungen bis zu 2pt nicht mehr protokolliert. 1
Dies ist eine typische Fußnote
2. Textsatz
22
Ist die Überfüllung aber so groß, daß man die oben genannten Methoden nicht einsetzen kann, muß man jene Stellen, an denen das Abteilen möglich ist, anzeigen. Dies geschieht mit dem Befehl \ - , z.B. Ab\-tei\-len sagt TßjX , daß es nach "Ab" und nach "Abtei" abteilen darf. Doch eine Schwierigkeit ergibt sich beim Abteilen in der deutschen Sprache: die Tatsache, daß Wörter beim Abteilen anders geschrieben werden (z.B Brücke —* Brük ke). Dazu gibt es eine Möglichkeit: \def\ck{\discretionary{k-MkHck}} Dies bewirkt bei der Eingabe B r \ " u \ c k e, daß automatisch ck in k-k getrennt wird (wenn T^X abteilen muß).
ZUSAMMENFASSUNG TeX — Befehle: \parindent \parskip \noindent \rm \ b f \ i t \ s l
\tt
\ m a g n i f i c a t i o n \magstep \font \ " a V'u \ " o \ s m a l l s k i p \ b i g s k i p \medskip \vskip \hangindent
\hangaiter
\vfill\eject \centerline \leftline \rightline \hfil \hfill \item \itemitem \footnote \ -
2.
23
Textsatz
Übungsaufgaben 2.1 Definieren Sie eine Schriftart \meinfont mit der Schriftart cmrlO und der Vergrößerung magstep4. 2.2 Schreiben Sie ein Gedicht mittels \obeylines. 2.3 Setzen Sie folgenden Text:
Einladung zu einer
Wien, am 31.02.1998
Geburtstagsfeier
Ich lade herzlich zu meiner Geburtstagsfeier am 31. Februar 1998 ein. Kommt nicht ohne Geschenke! Für reichlich Essen wird nicht gesorgt. Der Gastgeber 1 freut sich (nicht) auf Euer Erscheinen. Ich wohne in: Maierstraße 15 1240 Wien Dieses Schreiben ergeht an: - Freunde und Verwandte - Schulfreunde, Tante, Onkel,... - Feinde (daß sie sich die Haare raufen können, weil ich ein Fest gebe). Abweisend Euer Hans Melier
P.S den 31. Februar gibt ea nicht !!
3. FORMELSATZ
¿ G)'
k—O v ' f bf ( x ) d x J a
dx
z¡¡
, _
m
m
3.
26
Formelsatz
3. Formelsatz TßX ist in erster Linie für den mathematischen Formelsatz konzipiert worden. In diesem Abschnitt zeigt sich erst die Überlegenheit dieses Textsystems.
3.1 Allgemeines T e X hat für den mathematischen Formelsatz einen eigenen Modus. Dies ist der "math-mode". In diesem Modus werden alle Formeln geschrieben. Im maih-mode gibt es noch den " display-style". In diesem Style werden alle mathematischen Formeln zentriert dargestellt. Der Aufruf für den math-mode ist ein $ — Zeichen. Das Ende wird ebenfalls mit einem $ angezeigt. Nach dem zweiten $ — Zeichen kehrt TßX automatisch wieder in den normalen Modus zurück. Im math-mode wird die Schrift automatisch in umathitalic" gesetzt. Man kann aber durch die Eingabe von \rm,\bf und \ t t andere Schriftarten anwählen. Der Aufruf für den display-style ist ein $$ — Zeichen. Das Ende ist wieder durch ein $$ — Zeichen anzuzeigen. Im math-mode ist die Leerplatzsteuerung anders. Leerstellen in der Eingabe haben keine Wirkung auf die Abstände zwischen den einzelnen Formelteilen. Näheres siehe Abschnitt 3.11.
3.2 Exponenten und Indices Exponenten werden in TßX mit dem Zeichen (Dach) und Indices mit dem Zeichen (Unterstrich) gebildet. Diese Funktion wirkt nur auf das nächste Zeichen. Sollen kompliziertere Exponenten oder Indices gebildet werden, so sind diese mit Gruppenklammern einzugrenzen. Als Beispiel: $ x"2y $ liefert: x2y während $ x ~ { 2 y } $ als Ergebnis x2y liefert. Es ist auch möglich zweite Exponenten und Indices zu schreiben, die dann kleiner gedruckt werden; z.B.: $x"2$ $x_l~2$ $x"{2*{2*2}}$ $_1F_2$
x 1F2
3.3 Wurzeln Quadratwurzeln werden mit dem Befehl \sqrt { . . . } gebildet. In das Klammerpaar kommt der Ausdruck für die Wurzel. Die x-te Wurzel wird mit dem Befehl \root
...
\of { . . . }
gebildet. Dazu einige Beispiele: $\sqrt x $
3. Formelsatz $ \ s q r t { y "x+5y}$ $ \ r o o t *+3 \ o f -tb+z } $ $ \ r o o t y \ o f {x+ \ s q r t 5 >$
27 y/y* + 5y °+$
o
£j
Man kann bei Brüchen auch noch die Dicke des Bruchstrichs angeben. Dies geschieht mit \ a b o v e , z.B.: $ { a \ o v e r b}\above l p t { c \ o v e r d}$
4"
3.5 Binomialkoeffizienten Binomialkoeffizienten werden durch den Befehl \ c h o o s e erzeugt. Mit eckigen und geschwungenen Klammern versehene Ausdrücke werden durch \ b r a c k und \ b r a c e erzeugt, \ c h o o s e wirkt wieder nur auf das nächste Zeichen, es ist daher entsprechend zu klammern. $ i x - y JXchooae b $ $ {x-y >\brack b $ $ {x-y >\brace b $
(x~y) [";»]
28
3.
Formelsatz
3.6 Mathematische Operatoren Folgende Operatoren sind in TßX standardmäßig vorhanden:
/
\int \sum \prod \oint \coprod \bigcap \bigcup \bigsqcup \bigvee Ybignedge \bigodot \bigotimes \bigoplus \biguplus
E n § ii n u u V A o
e w
Man kann diese Operatoren auch mit Exponenten und Indices versehen. schieht mit den bereits bekannten Zeichen * und _ .
Dies ge-
$$ \int_a"b f(x)dx $$ liefert:
fb Ja
f(x)dx
J e nachdem ob die Formel im displaystyle steht oder nicht, erhält sie ein unterschiedliches Aussehen. Näheres siehe Abschnitt 3.12.
3.7 Klammern T ß X kennt eine Vielzahl von Klammern. Folgende sind die wichtigsten: Eingabe
Ausgabe Eingabe
Ausgabe
( [
( [ {
) ] \>
) ] }
\rgroup
j
Ybackslash
\
\lgroup / \lmoustache
^ / I
\rmouatache I
Diese Klammern sind in nahezu beliebiger Größe vorhanden. Die erste Möglichkeit, die Größe anzugeben geschieht mittels der Befehle:
S. Formelsatz
29
Ybig \Big \bigg \Bigg
etwas größere Klammer 1,5 x so große Klammer 2 x so große Klammer 2,5 x so große Klammer
Als Größen vergleich: $$\Biggl( \biggl( \Bigl( \bigl( x \bigr) \Bigr) \biggr) \Biggr)$$ liefert:
((«•»)) Bei den "big" — Befehlen ist hinten ein 1 oder ein r angehängt. Das soll "left" oder "right" heißen. Die zweite Möglichkeit, die Größe anzugeben, geschieht mittels der Befehle \ l e f t und \ r i g h t . Hier wird die Größe automatisch bestimmt. Die Eingabe dazu sieht folgendermaßen aus: $ $ \ l e f t < Klammer > < Formel > \ r i g h t < Klammer > $$ z.B. $$ \left ( 5 \over 4 \right ) $$ liefert:
5) Fallunterscheidungen werden durch den Befehl \ c a s e s erzeugt, z.B. $$ s g n ( x ) = \ c a s e s { - 1 & $ \ f o r a l l x < 0$ \ c r 0 fc $x = 0$ \cr 1 & $\forall x > 0$ \cr}$$ liefert:
sgn(x)
r-1 - 0
Das \ c r sagt TfeX, daß es eine neue Zeile beginnen soll. Das Tabulatorzeichen & bewirkt, daß der danachfolgende Text unter das Zeichen ausgerichtet wird. Jedoch ist zu beachten, daß der Text nach den & bis zum \cr im Textmodus geschrieben wird, daher muß ggf. explizit in den math-mode gewechselt werden.
3.
30
Formelsatz
3.8 Matrizen Matrizen werden im allgemeinen mit dem Befehl \matrix gebildet. Bei dieser Eingabe wird das Tabulatorzeichen & zur Trennung der Elemente der Matrix verwendet. Der Befehl \ c r wird verwendet, wenn eine Zeile zu Ende ist. Die Größe der Matrix wird automatisch durch das größte Element bestimmt. z.B.: $ $ \ m a t r i x { x ft y ft z ft 0 \ c r x ft y ft z ft 0 \ c r x & y ft z St 0 \ c r } $ $ liefert: x x x
y y y
z z z
0 0 0
Das & — Zeichen ist das Tabulatorzeichen. Natürlich ist auch folgende Matrix möglich: $ $ \ m a t r i x { x ft y ft z ft 0 \ c r ft y ft z ft 0 \ c r ft ft z ft 0 \ c r ft ft ft 0 \ c r } $ $
Es grenzt die Tabellenelemente ab.
liefert folgende Dreiecksmatrix: x
y y
z z 2
0
0 0 0
Um Matrizen mit Klammern zu versehen, gibt es zwei Möglichkeiten. Entweder kann man die Matrix mit den Befehlen \ l e f t und \ r i g h t mit Klammern eingrenzen (wie im vorigen Kapitel besprochen) oder man kann den Befehl \pmatrix verwenden. Der Befehl \pmatrix setzt um die Matrix automatisch runde Klammern, z.B.: $$ A-\lambda I = \ p m a t r i x { a _ { l l } - \ l a m b d a ft a _ { 1 2 > ft \ c d o t s ft a _ { l n > \ c r a _ { 2 1 > ft a _ { 2 2 } - \ l a m b d a ft \ c d o t s ft a _ { 2 n > \ c r \ h f i l \ v d o t a ft \ h f i l \ v d o t s ft \ddots ft \ h f i l \ v d o t s a _ { n l > ft a _ { n 2 > ft \cdots ft a_{im}-\lambda\cr >$$ liefert:
A-XI
=
/an-X 0,21 \
a„x
ai2 022 — X n2
a
flln a 2n
-
\J
\cr
3.
31
Formelsatz
3.9 Formelausrichtung Oft besteht der Wunsch, Formeln nach einem Zeichen auszurichten, wie z.B. 2z 2 + 3® - 5 1*2
Xl x2 Dafür gibt es den Befehl \eqalign. Die einzelnen Zeilen sind wieder mit einem \cr abgetrennt. Das Symbol, unter welches ausgerichtet werden soll, ist neben ein Tabulatorzeichen zu setzen. In unserem Beispiel: $$ \ e q a l i g n { 2x*2 + 3x - 5 &= 0\cr _ l x _ 2 ft= - { 3 \ o v e r 4 > \ p m \ s q r t { \ l e f t ( { 3 \ o v e r 2 } \ r i g h t ) " 2 + i 5 \ o v e r 2 » \ q q u a d \ B i g g I \ s q r t { { 4 9 > \ o v e r { 1 6 » = { 7 \ o v e r 4>\cr x _ l ft= l \ c r x_2 ft= - { 5 \ o v e r 2>\cr>$$
3.10 Numerierte Formeln Zum Numerieren von Formeln gibt es den Befehl \eqno für die rechtsseitige Numerierung b.z.w. \leqno für die linksseitige Numerierung. Die Syntax lautet folgendermaßen: $$ < Formel > \eqno < Numerierung > $$ $$ < Formel > \leqno < Numerierung > $$ z.B. $$ 5\over 4 \eqno ( 1 ) $$ liefert:
Man kann aber auch mehrzeilige, ausgerichtete Formeln numerieren. Statt \eqa l i g n wird nun der Befehl \eqalignno verwendet. Die Eingabe dazu sieht folgendermaßen aus: $ $ \ e q a l i g n n o { ft &}$$ z.B.
3.
32
Formelsatz
$$ \eqalignno{ 2x*2 + 3x - 5 ft= 0 & ( l ) \ c r _ l x _ 2 &= - { 3 \ o v e r 4 } \ p r a \ s q r t { \ l e f t ( { 3 \ o v e r 2 } \ r i g h t ) * 2 + { 5 \ o v e r 2 } } \qquad\Bigg|\sqrt{{49}\over{16»={7\over 4> & ( 2 ) \ c r x _ l &= 1 ft ( 3 ) \ c r x_2 ft= -{5\over 2> & (4)\cr>$$ liefert:
Hier werden zwei Tabulatorzeichen verwendet. Neben das erste kommt das Zeichen, unter dem ausgerichtet werden soll, und neben das zweite der Text für die Numerierung.
3.11 Leerplätze im mathematischen Formelsatz Im math-mode werden edle Leerplätze in der Eingabe ignoriert. Daher gibt es eigene Befehle, die zur Erzeugung von Leerplätzen im Mathematikmodus dienen. Neben den schon bekannten Befehlen \quad, \qquad und \hf i l gibt es noch andere Befehle, die im mathematischen Modus Abstände erzeugen: \, kleinerer Zwischenraum als \quad. \ > etwas kleinerer Zwischenraum als \quad. \; um Yä kleinerer Zwischenraum als \quad. Es gibt noch einen Befehl, der auch in dieses Kapitel hineingehört. \! erzeugt einen negativen Leerplatz. Die rechts stehenden Zeichen werden also nach links verschoben. Als Beispiel: $ $ \ i n t \ ! \ ! \ ! \ i n t _ D f ( x , y ) \ , dx \> dy $$ liefert: IID hingegen $$\int\int_D f ( x , y ) dx liefert:
dy $$
^
x , y
^
d x d y
3.
33
Formelsatz
I fDftX,y)dxdy 3 . 1 2 Die mathematischen Styles Im math-mode gibt es 4 verschiedene Styles. Der erste ist der text-style. In ihm werden alle mathematischen Formeln im normalen Text geschrieben. Der zweite ist der display-style. In diesem Modus werden alle Formeln zentriert und damit hervorgehobenen. Der dritte und vierte Style sind der scriptstyle und der scriptscriptstyle. In diesen Styles werden die Exponenten und Indices gesetzt. Die gleiche Formel hat in den verschiedenen Styles ein unterschiedliches Aussehen. Man beachte die unterschiedliche Stellung von Exponenten und Indices. Als Beispiel: Eingabe \sum
Textstyle
Displaystyle X
y k
\int*\infty -x f(x) dx
C
a \over b
a b
oo
m
d*
/ f{x)dx JX a b
Scriptstyle
Scriptscriptst.
TZ"
EI-
"
/(*) dx
"
/"/(-)
Diese Styles kann man auch durch Befehle aufrufen: Style textstyle displaystyle scriptstyle scriptscriptstyle
normaler Aufruf $
$$
1. Exponenten und Indices 2. Exponenten und Indices
anderer A u f r u f durch \textstyle \displaystyle \scriptstyle \scriptscriptstyle
Als Anwendungsbeispiel: $${5\over{\displaystyle{x+3}\over\di8playstyle 5 » $ $ liefert:
H
1
hingegen $${5\over{{x+3}\over5}}$$ liefert:
i+3 5
Wie man in diesem Beispiel sieht, wird der Bruch im Displaystyle gröfier.
3.
Formelsatz
3.13 Akzente Die Ihnen aus dem Textsatz bekannten Akzente (V,...) können Sie im mathematischen Modus nicht benützen. Im math-mode gibt es eigene Befehle zur Bildung von Akzenten: \dot z $ \ddot z $ \breve z $ Ybar z $ \check z $
z z Z z z
$\vec z $\grave $\acute $\tilde $\hat z
$ z $ z $ z $
$
z z z z z
Es gibt auch Akzente, die über mehr Zeichen stehen: $ \overrightarrow{x+y+z} $
x + y + z
$ $ $ $ $
x x x x x
\overleftarrow{x+y+z} $ \widetilde{x+y} $ \widehat{x+y} $ \overline{x+y } $ \underline{x+y } $
+ + + + +
y + z y y y y
3.14 Formeltrennung T^X trennt normalerweise Formeln automatisch nach Relationen ( = , < , > , . . . ) oder binären Operatoren (+,-,*,...). Man kann T^X aber auch die Trennstelle vorgeben. Dieser Befehl heißt \allowbreak
Dieser Befehl h a t aber nur im äußersten Klammerniveau Gültigkeit. Manchmal möchte der Autor auch das Formeltrennen untersagen. Der Befehl dazu heißt \ n o b r e a k . Hervorgehobene Formeln im Displaystyle werden nicht getrennt.
3.15 Mathematische Funktionen Sie wissen j a bereits, daß der Text im math-mode in math-italic gesetzt wird. Es gibt jedoch mathematische Funktionen, die man normalerweise nicht in italic setzt, wie z.B. "log" oder "tan". TßX hat einige Befehle, die solche Funktionen erzeugen: \across \arcsin \arctan \arg
\cos \cosh \cot \dim
\csc \deg \det \inf
\exp \gcd \hom \liminf
\ker \lg \lim \max
\limsup \min \ln \Pr \log \sec \sin
\sup Ytan \tanh
Untere b.z.w obere Grenzen werden wie üblich mit _ b.z.w. ~ angegeben,z.B. $$\liminf_{n\to\infty}x_n = 0 $$
3.
Formelsatz
35
liefert: lim inf xn = 0
3.16 Sonstige mathematische Symbole, griechische Buchstaben Folgende Zeichen sind nur im math-mode vorhanden. Zum Aufruf ist daher ein $ nötig. Griechische B u c h s t a b e n : a ß 7 6 e e
< V 6
•d
r A
s
¥
\alpha \beta \gamma \delta \epsilon \varepsilon \zeta \eta \theta \vartheta
\iota \kappa A \lambda ß \mu V \nu i \xi o o L
K
ir w
\pi \varpi \rho
P A \ Delta 5 \Xi T \Upsilon ft \Omega
\Gamma \Lambda \Sigma \Psi
\varrho \sigma \varsigma \tau V \upsilon \phi
\psi u> \omega
Q a Ç r
0
\Theta
n \Pi
\Phi
Die sonstigen griechischen Großbuchstaben sehen so wie deutsche Großbuchstaben aus, sie werden auch mit den deutschen Buchstaben aufgerufen. M a t h e m a t i s c h e Zeichen:
± *
o n n >
A A
®
t
\pm \cdot \ast \circ \cap \cqcap \triangleright \bigtriangleup \ wedge \otimes \dagger
T x • • U LI Î V © 0 t
\mp \ \times n \star o 4\bullet \cup W \sqcup < \wr O \bigtriangledown V \oplus e \oslash © \ddagger
Relationen: < Meq -< \prec ^ \preceq \geq y \succ y \succeq »\gg
= ~ ~ x
\equiv \sim \simeq \asymp
\setminus \amalg \diamond \div \uplus \triangleleft \bigcirc \vee \ominus \odot
3.
36 C Ç C G h
\subset \subseteq \sqsubseteq \in \vdash ' \ s mile ^ \frown
D \supset D \supseteq • \sqsupseteq 3 \ni H \dashv \mid \parallel
?s = XI oc |= = ±
Formelsatz
\approx \cong \bowtie \propto \models \doteq \perp
Verneinte Relationen: Alle oben genannten Relationen können auch verneint dargestellt werden. Dazu ist der Befehl \not vor den Aufruf zu setzen (z.B. \not < liefert: /,oder \not \leq liefert: ). Pfeile: \gets \Rightarrow
»$$
ft\er
liefert folgende Tabelle: Fahrpreis 1901 10 k m 20 k m 30 k m 40 k m
voll 15 30 44 58
20 % erm. 12 24 36 48
Doch hier wurden noch ein paar Befehle verwendet, die Sie noch nicht kennen: \ o f f i n t e r l i n e s k i p : Dieser Befehl setzt den zusätzlichen Leerplatz zwischen den einzelnen Zeilen auf 0. Dieser Befehl wird für die senkrechten Linien benötigt. \ s t r u t sorgt für virtuell gleich hohe Zeilen Folgende Befehle sind für den Tabellensatz noch erwähnenswert: \ o m i t bewirkt, daß die Eintragung in der Musterzeile für dieses Element ignoriert wird.
4.
Tabellensatz
\ m u l t i s p a n x : Mit diesem Befehl kann man x Spalten, etwa für Überschriften, zusammenziehen. Bei der vorigen Tabelle sei noch auf die besondere Tabulatorzeile hingewiesen. Sie beginnt mit einem &. Zwischen den Elementen steht ein && (nicht ein &). Dieses wird benötigt, weil die senkrechten Linien eigene Tabellenspalten sind. Auf ein Problem sei bei gerahmten Tabellen noch hingewiesen: Der Befehl \ n o a l i g n { \ s m a l l s k i p } kann bei gerahmten Tabellen nicht verwendet werden, da sonst Löcher in den vertikalen Linien entstehen. Man kann aber mit einer leeren Tabulatorzeile Platz lassen. Spaltenüberschriften Vielfach werden Tabellen gewünscht, die so ähnlich wie folgende aussehen: Art
Beschaffenheit X
1
2 2
5 8 6
y 9 7 3
z 11 16 9
Die Eingabe dazu sieht folgendermaßen aus: $$ \ o f f i n t e r l i n e s k i p \ t a b s k i p Opt \vbox{\halign{ \strut \vrule# k \ q u a d Ybf # k \vrule# k \quad # \quad k \vrule# k \quad # \quad k \vrule# k \ h f i l l \ q u a d # \quad k \vrule# k \ h f i l l \ q u a d # \quad k \vrule# \cr \noalign{\hrule} & Art kk \ m u l t i s p a n 7 B e s c h a f f e n h e i t &\cr &&ft x &\omit& y ft\omitft z &\omit& i = \ifnum < \ i f n u m < Z a h l i > > \ i f o d d \ifmmode \ifhmode \ifvmode \ i f Als Anwendungsbeispiel:
überprüft überprüft überprüft überprüft überprüft überprüft überprüft überprüft
ob ob ob ob ob ob ob ob
Zahli = Zahl 2 Zahli kleiner ist als Zahl 2 Zahli größer ist als Zahl 2 die Zahl ungerade ist TgX gerade im math-mode ist TßX gerade im horizontal-mode ist T^X gerade im verticaJ-mode ist Texti = Text 2
5.
58 \newcount\mycount \mycount = 5 \ i f n u m \ m y c o u n t = \ p a g e n o Wir b e f i n d e n u n s auf S e i t e 5 \ e l s e
Makros
\fi
Dieses Beispiel überprüft, ob die Seitennummer gleich 5 ist. Wenn j a , wird der Text "Wir befinden uns auf Seite 5" ausgegeben. Noch ein Beispiel möchte ich Ihnen zeigen: ein Makro, das einen Vektor der Art (xlt..., x n ) , unabhängig davon, ob man sich im math-mode befindet oder nicht, ausgibt. Hier wird der Befehl \ifmmode verwendet. \ d e f \ v e k t o r # l { \ i f m r a o d e (#1_1 . U d o t s , # l _ n )
\else
$(#l_l,\ldots,#l_n)$ \fi>
5.6 Arbeiten mit Fonttabellen In TßX sind alle Satzzeichen und mathematischen Symbole in Fonttabellen gespeichert. In jeder Fonttabelle gibt es 128 Zeichen. Als Beispiel diene die Fonttabelle der Standardschrift R o m a n (cmrlO).
'Ox 'lx '2x '3z '4x '5x '6x '7x '10x '11z '12x '13z 'ljx '15x '16x 'llx
'0 r
'1
'2
A
$ i
© n
J
¥ ß
-
i
(
)
0 8
@
H P X
-
2
3
4
B J
J C K S
i
ae
oe
» *
R
Y a
Z
i q y
J r z
b
ffi
+
[
D
L T U
s
d 1 t
-
—
c
k
ansprechen. Als Beispiel liefert die Eingabe \ c h a r ' 3 6 die Ausgabe
/
Jh.
\ i
k
t
w
\
V
A. >
'17z
*
Wenn Sie z.B. die Strukturformel des Ethens darstellen wollen, hilft Ihnen die Kenntnis dieser Fonttabelle viel (\! erzeugt einen negativen Leerraum): H
H
\ /
C =
C
/ \
H
H
Diese Strukturformel wurde erzeugt durch: \ f o n t \ p r i = l i n e l O s c a l e d \magstepO $$\vbox{ \halign{#ft#ft#ft#ft#ft#ft#\cr {\rm H> ft ft &{\pri\char'143} ft ft {\rm C> ft $ = \ ! = \ ! = $ ft ft{\pri\char'42} ft {\rm H} ft ft ft ft ft ft {\rm
\lower < G r ö ß e > < B o x > Als Beispiel:
5.
60
Makros
Dieser Text steht \raise0.2cm\hbox{oben}, der nV'achste aber \lowerO.2cm\hbox{unten}. liefert: Dieser Text steht
der nächste aber
unten
Uberdrucken Im zweiten Teil dieses Abschnitts möchte ich Ihnen zwei Befehle vorstellen, durch die man einen Text Überdrucken kann. Diese heißen \ l l a p und \ r l a p . \ l l a p druckt einen Text und geht dann wieder zurück, \ r l a p druckt den Text nach rechts hinausragend. Als Beispiel: 6\llap-{/}3 6\rlap{/}3
liefert: 03 liefert:
Mit Kenntnis dieser Befehle läßt sich viel machen. Ich möchte Ihnen folgendes Beispiel bringen: 8a2bc
_ f a h j _
^
4 ac Dieser Bruch wurde erzeugt durch: \def\8-(\rlap{/}8} \def\2{\rlap{/>2> \def\4i\rlap{/>4> \def\a{\rlap{/>a> \def\c{\rlap-(/}c} $$ {{8a-2bc}\over{4ac}}={{\8 \raiseO.lcm\hbox{2> a~{\2} b \c} \over{\4 \a \c>}= 2ab $$
ZUSAMMENFASSUNG \def -Makros
ohne
-Makros
mit
Parameter Parameter
Numerierung der Parameter Anwendungen: -transparent-Modus -Rahmen-Makro -Zählregister, if—Befehle -Arbeiten mit Fonttabellen
5. Makros
61
Übungsaufgaben 5.1 Setzen Sie folgende Formel, verwenden Sie dabei ein Makro mit Parameter:
z = (a + b) 2 + (a + b) 3 + (a + &)4 + (a + 6)5 5.2 Schreiben Sie einen beliebigen Text (mit Steuerzeichen) im
transparent-Modus.
5.3 R a h m e n Sie den Text " D a s ist ein doppelt eingerahmter T e x t " mit Hilfe des vorhin beschriebenen Makros doppelt ein (2 Rahmen = > doppelter Rahmen). 5.4 In einem Mathematiklehrbuch soll das Kürzen von Brüchen dargestellt werden. a ) Stellen Sie den folgenden Bruch in seiner ungekürzten und in seiner einfachsten Form dar: 3663a2x 6 b 2ax b) Entwickeln Sie ein Makro \ g e k mit 2 Parametern, das eine gekürzte Zahl (z.B. erzeugt. Parameter 1 ist dabei die Zahl, Parameter 2 ist dabei die gekürzte Zahl. 5.5 Stellen Sie die Strukturformel des Hexans dar: H
H
H
H
H
H
I I I I I I H — C — C — C — C — C — C — H I H
I H
I H
I H
I H
I H
6. ÄNDERUNG DER AUSGABEFORM
\def\title{6. V'Anderung der Ausgabeform} \def\no{{\it \ f o l i o » \he adline={\if odd\pageno {\t i11e\hf i11\no} \else {\no\hfill\title} \fi} \f ootline={\hss}
64
6. Änderung
der
Ausgabeform
6. Änderung der Ausgabeform Wir wollen uns in diesem Kapitel mit der Änderung der Ausgabeform einer Seite beschäftigen.
6.1 Seitennumerierung - Fußzeile - Kopfzeile Normal ist die Kopfzeile einer Seite leer und in der Fußzeile steht zentriert die Seitennumerierung. Man kann diese Einstellungen aber durch folgende Befehle verändern: \headline={ \footline={
} }
Der Befehl \ h e a d l i n e setzt den Text, der in der Klammer steht, in die Kopfzeile; der Befehl \ f o o t l i n e setzt den Text, der in der Klammer steht, in die Fußzeile. Will man die Seitennumerierung ganz abschalten, muß man den Befehl \nopagenumbers einsetzen. Doch nun zu einigen Beispielen für die Seitennumerierung: \headline={\hss\folio\hss} \footline={\hss} Diese Definition setzt in die Kopfzeile zentriert die Seitennummer, die Fußzeile ist leer. Hier sind 2 Befehle, die Sie noch nicht kennen: \hss \folio
erzeugt dynamischen Leerplatz (ähnlich \ h f i l ) setzt die aktuelle Seitennummer
Eine etwas kompliziertere Eingabe lautet z.B.: \headline={\tenrm\ifodd\pageno \ f o l i o \ h s s \else \hss\folio\fi} \footline={\hss} Diese Definition erzeugt eine wechselnde Seitennumerierung in der Kopfzeile, die Fußzeile ist leer. Die Seitennummer steht in einem Zählregister mit dem Namen \ p a g e n o . Sie können daher den Wert des Registers mit \ a d v a n c e erhöhen b.z.w. erniedrigen oder mit einer \if—Anweisung abfragen, wie es im vorigen Beispiel getan wurde. Vereinfacht ist \ f o l i o definiert durch: \def\folio{\number\pageno} Doch noch schöner sieht die Seitennumerierung folgendermaßen aus: \ d e f \ t i t l e { 6 . V'Anderung d e r Ausgabeform} \def\no{{\it \folio}} \ h e a d l i n e = { \ i f odd\pageno { \ t i t l e \ h f i l l \ n o } \else {\no\hfill\title} \fi> \footline={\hss>
6. Änderung
der
Ausgabeform
65
Diese Definition erzeugt eine Seitennumerierung, wie sie in diesem Buch verwendet wird. Zuerst wird der Titel definiert, der dann in der Kopfzeile auf einer geraden Seite rechts und auf einer ungeraden Seite links steht.
6.2 Änderung der Seitenform TßX druckt den Text normalerweise auf A4 - Größe aus. Es gibt jedoch zwei Variable \ v s i z e und \ h s i z e , mit denen man die Größe des Ausdrucks bestimmen kann. Sie sind vorbesetzt mit 8.9in b.z.w. 6.5in. Die Eingabe lautet: \vsize = x cm \hsize = x cm
Anstatt x gehört eine Längenangabe. Sie können natürlich auch andere Maßeinheiten (wie z.B. pt, in,...) verwenden. In den 8.9in \ v s i z e sind die Kopf- und Fußzeilen nicht inkludiert. Wie Sie bestimmt schon bemerkt haben, läßt T^X zwischen dem Blattrand und dem Beginn des Textes einen Zwischenraum. Die Variable \ h o f f s e t , vorbesetzt mit 1.5in, gibt den Abstand zum linken Blattrand an; ebenso gibt es die Variable \ v o f f s e t , vorbesetzt mit 24pt, die den Abstand zum oberen Blattrand angibt. Diese kann m a n natürlich verändern: \advance\hoffset by - 2 true cm \advance\voffset by -1 true cm
verschiebt z.B. den Text um 2 cm nach links und 1 cm nach oben.
6.3 Boxen Für TEX ist jeder Buchstabe eine "Box", von der Tj^X Höhe und Breite kennt. So kann es die Buchstaben optimal in einer Zeile plazieren. Der Satz "Das ist ein Beispieltext" würde als Box so aussehen:
Überigens, nicht nur Buchstaben sind Boxen, sondern auch mathematische Formeln, Tabellen, u.s.w. Es gibt auch Befehle, die Boxen erzeugen: \vbox{...} \hbox{...}
Der Befehl \vbox erzeugt eine vertikale, und der Befehl \hbox eine horizontale Box. Als Anwendungsbeispiel: 3 Beckenknochen: {\vbox{\hbox{l. Daim- }\hbox{2. Sitz- } \hbox{3. Scham- >}} bein \par
liefert: 1. Darm2. Sitz3 Beckenknochen: 3. Scham- bein Dies ist nicht gerade besonders schön. Es gibt im Mathematikmodus allerdings noch einen Befehl, der einen Text vertikal zentrieren kann. Dieser Befehl heißt \ v c e n t e r :
6. Änderung der Ausgabeform
66
3 Beckenknochen: $\vcenter{\vbox{\hbox-[l. Darm- >\hbox{2. Sitz- } \hbox{3. Scham- » > $ bein \par
liefert: 1. Darm3 Beckenknochen: 2. Sitzbein 3. Scham-
6.4 Fußnoten Das Layout von Fußnoten ist schon sehr standardisiert. Es gibt jedoch noch 2 Punkte, die man verändern könnte: Fußnotenlinie Am Anfang jeder Fußnote wird ein 2 Zoll langer Trennstrich gezogen. In T^jX ist dieser Trennstrich wie folgt definiert: \def\footnoterule{\kern -3pt \hxule nidth 2 true in \kern 2.6pt>
Der TßX— Befehl \ k e r n erzeugt einen Leerplatz an dem nicht umgebrochen werden darf. Man kann diese Definition verändern, indem man statt "2 t r u e in" eine entsprechende Längenangabe setzt. Will man einen Trennstrich über eine ganze Seite haben, ist "2 t r u e in" durch " \ h s i z e " zu ersetzen. Will man keine Trennlinie haben, hilft folgende Definition: \def \f ootnoteruleO
S chrift Wechsel Es ist auch möglich Fußnoten in einer kleineren Schrift und mit geeignetem Zeilenabstand zu setzen. Dazu ist es aber nötig das Fußnotenmakro von plain-T^X umzudefinieren: \catcode'B=ll \def\footnote#l{\edef\flsf{\spaceiactor\the\spacefactor}#l\flsf \insert\footins\bgroup\sevenrm \interlinepenaltylOO \let\par=\endgraf \leftskip=Opt \rightskip=Opt \splittopskip=10pt plus lpt minus lpt \floatingpenalty=20000 \smallskip\item{#l}\bgroup\strut\aftergroup\ - \ i n f t y \ l e f t ( l - { { x - 2 > \ o T e r { k " 2 » \ r i g h t ) \ c r > $ $ Wegen *$\sin\pi z = \pi z\prod_{k=l}*\infty\left(l-i{z-2>\oTerik-2»\right) \quad i \ r m f \ d d o t { u } r a l l e > \ , x \ i n { \ c a l R}*$ gilt also: $$ \ G a m i i a ( x ) \ c d o t \ G a i i i a a ( l - x ) = i i \ p i > \ o T e r i \ s i n \ p i x » \ q u a d { \ r m f \ d d o t { u } r } \ , 0 < x < l $$ D i e s e B e z i e h u n g l e g t e s n a h e , d i e $\Gazmia$ - F u n k t i o n f V ' u r j e d e s n e g a t i v e , n i c h t g a n z e $x$ d u r c h t$\Gaimiia(x) : = { i \ p i > \ o v e r { \ s i n \ p i x » \ c d o t { i l > \ o T e r { \ G a a m i a ( l - x ) » $ $ z u e r k l \ " a r e n . Tun v i r d i e s , s o e r h a l t e n v i r f V ' u r j e d e s d e r a r t i g e $x$: \def\vekt#l{\left ( l-i{x"2>\oTer{»l-2»\right)> $ $ \ e q a l i g n { \ G a m m a ( x ) t= \ l i m _ - C n \ t o \ i n f t y } i{(l-x)(2-x)\cdots(n-x)(n+l-x)>Wer{x\vektl\vekt2\cdots\vekt{n} n!n*il-x>»\cdot-[-Cn!n"x>\oTer-Cn!n"x»\cr k= \ l i m _ { n \ t o \ i n f t y H { n ! n - x ( l - x ) ( 2 - x ) \ c d o t s ( n - x ) } \ o v e r { x ( l " 2 - x - 2 ) (2-2-x-2)\cdots(n"2-x-2)»\cdot{{n+l-x}\over{n»\cr *= \lim_{n\to\inftyH{n!n*x}\oer{x(x+l) (x+2)\cdots(x+n)»,\cr>$$ a l s o d i e s e l b e D a r s t e l l u n g f V ' u r \Garana(x) . { \bye
Speichern Sie ihren Text a b und starten Sie TEX. Zuerst wird sich TßX mit folgender A u s g a b e melden (sie ist sehr stark von der verwendeten Implementierung b.z.w. TgX—Version abhängig, ich beziehe mich hier auf die Version 2.0 von P C T ß X ) . This is TeX, Version 2.0 (PCTeX 1.50, (c)Personal TeX, Inc 1986) (preloaded format=plain 87.8.11) ffprobe.tex (probe.tex T g X sagt uns, welche Datei es bearbeitet; es schreibt den Namen der Datei neben die beiden Sterne. In unserem Fall wird TßX danach Fehlermeldungen ausgeben, unser Text ist nicht ganz korrekt. Die erste Fehlermeldung lautet:
7. Einige
71
Fehlermeldungen
! Missing number, treated as zero.
1.1 \parindent=
P
p t
7
Hier wurde von TßX eine Zahl erwartet. In unserer Eingabe steht in der 1. Zeile \ p a r i n d e n t = p t ; zwischen = und p t erwartet T^X eine Zahl. TgX hat intern 0 eingefügt. Sie haben die Möglichkeit Hilfe anzufordern. Schreiben Sie neben das ? einfach "h". In diesem Fall wird T^X antworten: A number should have been here; I inserted '0'. (If you can't figure out why I needed to see a number, look up 'weird error' in the index to The TeXbook.)
Wenn Sie keine Hilfe anfordern wollen, drücken Sie einfach . Falls Sie das Programm abbrechen wollen, so schreiben Sie "x" neben das Fragezeichen. Die nächste Fehlermeldung lautet: ! Undefined control sequence. ..._{n\to \infty }{{n!n~x}\oer {x(x+l)(x+2)\cdots (x+n)>},... \eqalign ...laystyle {{}##}$\hfil \crcr #1 \crcr » \ , 1.32 ...\oer{x(x+l)(x+2)\cdots(x+n)}},\cr}
$$
Es wurde ein Befehl verwendet, der nicht existiert ( \ o e r anstelle von \ o v e r ) . Meist ist nur ein Leerzeichen nach einem Befehl vergessen worden oder der Befehl wurde (wie in unserem Fall) falsch geschrieben. Doch noch immer findet TgX Fehler in unserem Text: ! Missing $ inserted.
$
\Gamma 1.33 ... dieselbe Darstellung fY'ur \Gamma
(x).{ ?
Hier wurde von TgX ein $ erwartet: es wurde ein Befehl verwendet, der nur im mathematischen Modus erlaubt ist. Meist muß nur ein $—Zeichen eingefügt werden. Danach werden Sie noch einmal diese Fehlermeldung erhalten, da man TfeX auch noch das Ende des math-modes anzeigen muß. Die nächste Fehlermeldung lautet:
7. Einige
72
Fehlermeldungen
! Kissing } inserted. Cinserted text>
}
$
\par \bye ->\par \vfill \supereject \end 1.34 \bye
Hier wurde eine schließende Klammer vergessen. In unserer Eingabe steht in der vorletzten Zeile eine öffnende Klammer, die man nicht benötigt. Diese Fehlermeldungen treten häufig mehrfach auf. Doch nun kommt die erfreuliche Nachricht: El] ) Output «ritten on probe.dvi (1 page, 4100 bytes).
Nun endlich hat TgX unseren Text richtig interpretiert. Datei und bessern Sie die Fehler aus: \parindent=
Editieren Sie wieder ihre
pt
ändern Sie in \parindent= 0 pt k= \lim_{n\to\infty>{{n!n*x>\oer{x(x+l)
ändern Sie in &= \lim_{n\to\infty>{{n!n"x>\over{x(x+l)
und schließlich also dieselbe Darstellung f\"ur \Gamma(x).{
ändern Sie in also dieselbe Darstellung f\"ur $\Gainma(x)$.
(Es ist j a unverständlich, daß hier noch eine Klammer stehen sollte.) Starten Sie TßX nocheinmal. Diesmal meldet es sich mit This is TeX, Version 2.0 (PCTeX 1.50, (c)Personal TeX, Inc 1986) (preloaded format=plain 87.8.11) ••probe.tex (probe.tex [1] Output written on probe.dvi (1 page, 4100 bytes).
T^X h a t unsere Datei richtig interpretiert. Sie können sich das Ergebnis im Preview ansehen:
7. Einige Fehlermeldungen
73
Gaußsche Definition der Gammafunktion 1Für alle x > 0 ist In.1 nln T(x) = lim n-»oo x(x + 1) • • • (x + n)
Dieser Satz stiftet vermöge der Produktdarstellung von sin irx eine höchst bemerkenswerte und folgenreiche Beziehung zwischen der T - Funktion und den Sinus. Für 0 < x < 1 ist nämlich: 1
T(®)r(l -
_ x)
x(x + l ) . . . ( x + n) n-00 n\nx
(1 - x)(2 - 3 ) . . . ( n - x)(n + 1 - x) nln1"1
( l 2 - x 2 ) ( 2 2 - ® 2 ) . . . (n 2 - X 2 ) — lim xl2 -22...n2 = lim x TT ( 1 n—»00 •*••*• \ Jfc = l V
V
K l '
lim n + n—>00
1
n + l - x
n
=*m) Wegen sin irx
I I f 1 ~ T2 )
=
füralle x 6 72.
gilt also:
r(a)-r(l-x)=
.
für 0 < x < 1
Sin 7TX
Diese Beziehung legt es nahe, die T - Funktion für jedes negative, nicht ganze x durch f r ivx ) •= ' ' sin -irx
1
r(l -
x)
zu erklären. Tun wir dies, so erhalten wir für jedes derartige x: (l-x)(2-x)--.(n-x)(n+l-x) »-ooa.(i_£)(i_£)...(i_£)n!ni-. _
n ! n x ( l — x)(2 — x) • • • (n — x)
~ ™ =
x(l2
—
x 2 )(2 2
x2)
(n 2
— ••• — nln' n-.oo x(x + l)(z + 2) • • • (x + n) '
x2)
Um
also dieselbe Darstellung für T(x).
1
Vgl.: H. Heuser Lehrbuch der Analysis 2; Teubner Stuttgart 1983
n!n* n\nx n + l - x
7. Einige
Fehlermeldungen
7.2 Sonstige Fehlermeldungen Im vorigen Beispiel wurden nicht alle Fehlermeldungen gezeigt. Einige Fehlermeldungen, die häufig vorkommen, möchte ich Ihnen noch zeigen: • Runanay argument?
Hier wurde eine schließende Klammer vergessen. • Overful vbox (...) Underful vbox (...) Overful hbox (...) Underful hbox (...)
F ü r TfeX war eine Box zu groß oder zu klein. In Klammer gibt es an, u m wieviel pt die Box zu groß b.z.w. zu klein ist. Bei " U n d e r f u l vbox" oder " U n d e r f u l hbox" war zu wenig Material da, um eine Zeile, b.z.w. eine Seite, zu füllen. • Illegal unit of measure (pt inserted)
Hier haben Sie eine Maßeinheit verwendet, die TgX nicht kennt. folgende: em, ex, in, pt, pc, cm, mm, dd, cc, bp und sp.
TfjX kennt
• Extra } or forgotten {
Hier haben Sie entweder eine schließende Klammer zuviel oder Sie haben eine öffnende Klammer weiter oben im Quelltext vergessen. • Please use ...
for accents in math mode
I m Mathematikmodus sind keine Textmodus-akzente erlaubt. • TeX capacity exceeded, sorry (...)
Sie haben zuwenig Hauptspeicherkapazität, um TßX arbeiten zu lassen. TgX gibt in der Klammer den Namen des übergelaufenen Speichers an.
Anhang A. LÖSUNGEN zu DEN • •
ÜBUNGSAUFGABEN
A. Lösungen zu den Übungsaufgaben
76
A . Lösungen zu den Übungsaufgaben In diesem ersten Anhang möchte ich die Lösungen aller Übungsaufgaben bekannt geben. Versuchen Sie jedoch zuerst die Aufgaben zu lösen, bevor Sie in diesem Anhang nachsehen. Kapitel 1 1.1 Weis soll ich Ihnen hier für eine Lösung zeigen? Sie hängt doch ganz davon ab, was Sie für einen Text geschrieben haben. Aber ein Beispiel kann ich Ihnen geben, so hätte ich es gemacht (\TeX erzeugt das T ß X — L o g o ) : Das ist die erste Arbeit mit \TeX. PROBE!!! \bye 1.2 Ich weiß nicht, welchen Preview bzw. welchen Editor Sie verwenden. sehr viele!
Es gibt
Kapitel 2 2.1 Die Lösung lautet: \font\meinfont = cmrlO scaled \magstep4 2.2 Die Lösung hängt davon ab, welches Gedicht Sie geschrieben haben. 2.3 Die Lösung für die Einladung lautet: \font\nf=cmbxlO scaled \magstepl \rightline{Wien, am 31.02.1998} \smallskip \centerline{\nf Einladung} \smallskip \centerlinei\it zu einer Geburtstagsfeier} \bigskip Ich lade herzlich zu meiner Geburtstagsfeier zun 31. Februar 1998 ein. Kommt nicht ohne Geschenke! FV'ur reichlich Essen wird nicht gesorgt. \bigskip Der Gastgeber\footnote{$~l$}{das b i n ich} freut sich (nicht) auf Euer Erscheinen. \bigskip \leftline{Ich wohne in: Maierstra\ss e 15} \smallskip \leftline{\phantom{Ich wohne in:} 1240 Wien} \medskip\noindent Dieses Schreiben ergeht an: \ i t e m { — } Freunde und Verwandte \itemitem{-} Schulfreunde, Tante, Onkel,... \ i t e m { — } Feinde (da\ss\ sie sich die Haare raufen kV'onnen, weil ich ein Fest gebe).
A. Lösungen
zu den Übungsaufgaben
77
\smallskip \rightline{Abweisend Euer} \smallskip \rightline{Hans Haier} \vskip 2 true cm {\sevenrm P.S den 31. Februar gibt es nicht !!} Kapitel 3 3.1 Diese F o r m e l w u r d e d u r c h $$ P\{X\leq z\}={{l}\over{\sqrt{2\pi\sigma-2}}} \int"z_{-\infty} \exp \left\{-{l \over 2}\left({{x-\mu}\over{\sigma}}\right)"2 \right\} dx $$ erzeugt. 3.2 Die Lösung l a u t e t : $$ B(p,q)={{\Gamma (p) \Gamma (q)}\over{\Ganuna (p+q)}}$$ $$ \Gamma (q) =\int~{\infty}_0 x~{q-l} e*{-x} dx$$ 3.3 Diese M a t r i x w u r d e erzeugt d u r c h : $$ Q=\pmatrix{ \sin \theta ft \cos \theta -\cos \theta ft \sin \theta
\cr \cr}$$
3.4 Diese F o r m e l war j a feist zu leicht... $$ \int\!\!\!\int xy \>\> dx\> dy $$ 3.5 Die erste F o r m e l w ü r d e TßX ü b e r h a u p t nicht t r e n n e n . Sie s t e h t j a im Displaystyle. Die zweite Formel k ö n n t e a n allen O p e r a t o r e n (in diesem Fall + ) g e t r e n n t werden. 3.6 Die Lösung f ü r diese Formel l a u t e t : $ $ \ m i n _ { l \ l e q n } \ l o g _ 2 P _ n $$ Kapitel 4 4.1 Die Lösung f ü r diese einfache Tabelle l a u t e t : $$ \tabskip 15 pt \vbox{\halign{ # \quad ft # \quad fr # \quad ft # \quad \cr 5432 fr Abersee fr SL,0 fr s. ATB \cr 4541 fr Adelwang fr 0 fr 07258 \cr 4676 fr Aisterheim fr 0 fr s. ATB \cr 8412 fr Allerheiligen b. W. fr ST fr s. ATB \cr 2833 fr Bromberg fr NS ft s. ATB \cr 8291 fr Burgauberg fr NS fr s. ATB \cr }}$$ 4.2 Diese Tabelle ist schon schwieriger:
A. Lösungen zu den
78
Übungsaufgaben
\ o f f i n t e r l i n e s k i p \ t a b s k i p Opt \vbox{\halign{\8trut \ v r u l e width 0.8pt # & \quad # \quad & \vrule# & \quad # \quad & \vrule# & \quad # \quad 4 \vrule# & \quad # \quad &\vrule width 0.8pt # \cr \ n o a l i g n i \ h r u l e height 0.8pt> & Angebot &tc \ m u l t i s p a n 3 { \ b f K o n t i n g e n t } ftft { \ b f P r e i s } & \ c r \ o m i t \ v r u l e \ v r u l e f c & f c \ m u l t i s p a n 5 \ h r u l e f i l l &\er &&& S c h i l l i n g && k m / 2 . K l a s s e && S c h i l l i n g &\cr \noalign{\hrule height 0.8pt} & GrV'une Bank Ä& 2000 && Ate 2000 & \ c r & K i l o n i e t e r b a n k &ft - ftfc 2000 Ich 1700 & \ c r & K i l o m e t e r b a n k &fc - fc = { { \ g e k { 3 H } \ g e k { 6 H 6 } b - { \ g e k { 3 } { } } a " { \ g e k { 2 > { » x > \over { \ g e k { 6 } { > \ g e k { b } { > - 2 \ g e k { a } { > \ g e k { x > { » } = 6ab$$ 5.4b Das Makro ist schon beim vorigen Beispiel gezeigt worden. 5.5 Die Eingabe für die Strukturformel des Hexans lautet: \def\v{\hfill$\vert$\hfill} $$ \vbox{\halign{ \cr &&H&&H&&H&&H&&H&&H&& \cr ft&\vftft\v&&\vft&\vft&\v&ft\v&& \cr H & — & C & — tc C & & C & — & C & k C & & C & tc H\cr &ft\vft&\v&&\vft&\v&ft\vft&\vft& \cr ftftHftftHftftHftftHft&HftftHftft \cr}>$$ Kapitel 6 6.1 Diese Kopfzeile erfordert folgende Eingabe: \headline={\hrule\smallskip\noindent $ \ a s t $ \ h f i l l THEMA \ h f i l l $ \ a s t $ \smallskip \hrule} 6.2 Diese Pußzeile wird durch folgende Eingabe erzeugt: \footline={\tenrm\ifodd\pageno \ f o l i o \ h s s \else \hss\folio\fi>
Anhang B. BEFEHLSVERZEICHNIS
82
B.
Befehlsverzeichnis
B . Befehls Verzeichnis Ich möchte hier in diesem Anhang noch einmal alle TßX— Befehle, die Sie in diesem Buch kennengelernt haben, aufzählen und kurz erläutern. Der erste Teil dieses Anhanges widmet sich den Steuerzeichen, der zweite den Steuerwörtern und der dritte Teil zeigt alle mathematischen und nicht-mathematischen Zeichen noch einmal.
B . l Steuerzeichen V, Dieses Zeichen ist das Kommentarzeichen. Der restliche Text der Zeile, in der das Zeichen steht, und der Zeilenumbruch wird ignoriert. (Ein Prozentzeichen erhält man durch
v/.)-
# Dieses Zeichen ist der Platzhalter im Tabellensatz. An dieser Stelle wird später eine Eingabe gesetzt. Es wird aber auch als Parametersymbol bei Makros verwendet. (Ein # — Symbol erhält man durch \#). $ Mit diesem Zeichen beginnt und endet die Eingabe im mathmode. (Ein Dollarzeichen erhält man durch \$). $$ Mit diesem Zeichen beginnt und endet der displaystyle. Dies ist ein besonderer mathematischer Modus zur Erzeugung von zentrierten Formeln. & Dieses Zeichen ist der Tabulator im Tabellensatz. Zwischen den einzelnen Elementen der Tabelle muß ein Tabulatorsymbol stehen. (Ein &; — Symol erhält man durch \ft). { , } Diese Zeichen sind die Gruppenklammern. Sie grenzen zusammengehörige Teile ein. (Die Klammern {, } erhält man durch $ \{$ oder $ \}$
B . 2 Steuerwörter In diesem Abschnitt werden alle TßX— Steuerwörter besprochen. Die Befehle zum Erzeugen von mathematischen Zeichen sind nur im Abschnitt B.3 aufgenommen. \+ Dieses Zeichen leitet beim Tabellensatz eine Tabulatorzeile ein. \, Mathematik-Modus: kleiner Leerplatz. \- Textsatz: Trennungssymbol. An dieser Stelle wird, falls TßX abteilen muß, bevorzugt abgeteilt. \; Mathematik-Modus: großer Leerplatz. V/. Textsatz: liefert: — % —. \ft Textsatz: liefert: — k —. \! Mathematik-Modus: negativer Leerplatz. Die rechts stehenden Zeichen werden nach links verschoben. \"a Textsatz: deutscher Umlaut — ä —. \ " A Textsatz: deutscher Umlaut — A —. \above Mathematik-Modus: erzeugt einen Bruch mit angegebener Strichdicke des Bruchstrichs. z.B. $ 7 \above lpt 8 $ liefert:
B.
Befehlsverzeichnis
83
\acute Mathematik-Modus: mathematischer Akzent — ' — , z.B. $ \acute x $ liefert: x. \advance Dieser Befehl ist ein Additionsbefehl für Zählregister. z.B. \advance by 7 addiert zu dem Zählregister "Register" 7 dazu. \allowbreak Mathematik-Modus: zeichnet die Stelle einer Formel an, an der T e X beim Zeilenumbruch trennen kann. \ae Textsatz: skandinavisches — ae —. \AE Textsatz: skandinavisches — JE —. \atop Mathematik-Modus: Dieser Befehl setzt einen "Bruch ohne Bruchstrich", z.B. 7 \atop 8 liefert: g. Yb Textsatz: Akzent, z.B. \b o liefert: o. \backslash Mathematik-Modus: liefert: — \ —. \bar Mathematik-Modus: Akzent —~—, z.B.$\bar {x}$ liefert: x. \ b a s e l i n e s k i p regelt den Zeilenabstand im Textsatz. Vorbesetzt: \basel i n e s k i p = 12pt. Will man den Zeilenabstand ändern, so ist folgendes einzugeben: \ b a s e l i n e s k i p = pt. Ybf erzeugt fette (boldface) — Schrift. \bigz Mathematik-Modus: vergrößert die nachfolgende Klammer, z.B. $ ( ) $ liefert: (), $ \ b i g l ( \ b i g r ) $ liefert: (). Anstelle von x muß "r" (rechts) oder "1" (links) geschrieben werden. \Big Mathematik-Modus: ähnlich wie Ybig, vergrößert aber die Klammer noch mehr. \bigcap Mathematik-Modus: Operator — —. \ b i g c i r c Mathematik-Modus: Operator — O —• \bigcup Mathematik-Modus: Operator — |J —. \bigg Mathematik-Modus: ähnlich wie \Big, vergrößert aber die Klammer noch mehr. \Bigg Mathematik-Modus: ähnlich wie \bigg, vergrößert aber die Klammer noch mehr. \bigodot Mathematik-Modus: Operator — Q —• \bigoplu8 Mathematik-Modus: Operator — 0 —. \bigotimes Mathematik-Modus: Operator — —• \bigskip Textsatz: erzeugt vertikalen großen Leerraum von 12pt. \bigsqcup Mathematik-Modus: Operator — |J —. \biguplus Mathematik-Modus: Operator — (+J —. \bigvee Mathematik-Modus: Operator — V —. \bigwedge Mathematik-Modus: Operator — /\ —. \brace Mathematik-Modus: liefert einen "Binomialkoeffizienten" mit geschweiften Klammern, z.B. $ x \brace y $ liefert: \brack Mathematik-Modus: liefert einen "Binomialkoeffizienten" mit eckigen Klammern, z.B. $ x \brack y $ liefert: [*]. \breve Mathematik-Modus: Akzent —"—. Ybye Befehl für das Ende einer Datei.
B.
Befehlsverzeichnis
\ c Textsatz: Akzent, z.B. \ c o liefert: q . \ c a l Mathematik-Modus: erzeugt kalligraphische Buchstaben: A BCVS,... \ c a s e s Mathematik-Modus: erzeugt eine Fallunterscheidung. z.B. $$ x = \ c a s e s { 2 \quad wenn \ x \ gerade \ c r 3 \quad wenn \ x \ ungerade \ c r } $ $ liefert:
\catcode
\centerline \char'
\check \choose \columns
2 3
wenn x gerade wenn x ungerade
Die einzelnen Zeilen werden durch ein \ c r abgetrennt. definiert TgX ein neues Steuerzeichen, z.B. \catcode'\ä=\active \deiä{\"a> Diese Definition bewirkt, daß jedes "ä" in Ihrem Text als ein Steuerzeichen interpretiert wird. Textsatz: zentriert den danachfolgenden Text in die Mitte der Zeile. Textsatz: liefert das Zeichen mit der entsprechenden Nummer aus der aktuellen Fonttabelle, z.B. \ c h a r ' 3 6 liefert: (E. Mathematik-Modus: Akzent — " — . Mathematik-Modus: liefert Binomialkoeffizienten, z.B. $ x \ c h o o s e y $ liefert: (*). Textsatz: wird beim Tabellensatz verwendet, um die Anzahl der Spalten festzulegen, z.B. \ s e t t a b s 4 \columns
legt fest, daß die nachfolgende Tabelle 4 Spalten besitzt. \ c o p r o d Mathematik-Modus: Operator — JJ —. \ c o p y r i g h t Textsatz: Symbol — © —. \ c r Tabellensatz: Dieser Befehl zeigt das Ende einer Zeile in einer Tabelle oder Matrix an. \ d Textsatz: Akzent, z.B. \ d o liefert: 9. \ d d o t Mathematik-Modus: Akzent — " — . \ d e f Befehl zur Definition von Makros, z.B: \def\Eingabe{textbezogen} Der \ d e f — Befehl im obigen Beispiel erzeugt einen neuen Befehl mit dem Namen \Eingabe. Immer dann, wenn in der Datei dann der Befehl steht, setzt T^X den Klammerausdruck ein. \ d i s c r e t i o n a r y Dieser Befehl zeigt eine mögliche Trennstelle im Text an. Syntax: \ d i s c r e t i o n a r y { < T e x t vor Trennung;»} {> {>. \ d i s p l a y s t y l e Mathematik-Modus: die folgende Formel wird im Displaystyle gesetzt, aber nicht zentriert. \ d o t Mathematik-Modus: Akzent: — ' —.
B.
Befehlsverzeichnis
85
\ d o t f i l l füllt eine vorhandene horizontale Box mit Punkten aus. z.B. XXX \ d o t f i l l y liefert: X X X y \downbracefill ähnlich wie \ d o t f i l l , füllt aber die Box mit einer geschweiften Klammer aus, z.B. \hbox t o 3 cm {Ndownbracefill} liefert: _ ^ \ e j e c t Textsatz: erzeugt einen Seitenumbruch. (Bei einem Seitenumbruch ist aber \ v f i l l \ e j e c t vorzuziehen, da sonst möglicherweise die Fehlermeldung "Underful vbox" ausgegeben wird.) \ e l s e Dieser Befehl leitet bei einer \ i f . . \else . . . \f i — Abfrage den "falsch-Teil" ein. \eqalign Mathematik-Modus: Befehl zum Ausrichten von Formeln, z.B. $$ \ e q a l i g n { { l + 3 } \ o v e r 5 &= x \cr 4\over 5 ft= x \ c r } $ $ liefert:
1+ 3 5
= x
4 - = x 5
Die einzelnen Zeilen sind mit \cr abgetrennt, das Zeichen, unter das ausgerichtet werden soll, ist neben ein & — Symbol zu setzen. \eqalignno Mathematik-Modus: numeriert eine ausgerichtete Formel, z.B. $$ \eqalignno { { l + 3 } \ o v e r 5 ft= x &(1) \cr {4}\over 5 k= x ft(2) \ c r } $ $ liefert: 1 +
—
3
= *
H
m (1) (2)
Hier wird ein zweites ft — Symbol verwendet. \eqno Mathematik-Modus: numeriert eine Formel z.B. $$ a+b+c \eqno ( 1 ) $$ liefert: a + b+ c
(1)
\everypar Der danachfolgende Befehl wird automatisch bei jedem Absatzbeginn ausgeführt. \f i beendet eine \ i f — Abfrage. \ f i v e b f Textsatz: wählt die fönf-PU>ikt-Boidr....s \ f o l i o druckt die aktuelle Seitennummei. \ f o n t definiert eine neue Schriftart. Syntax: \ f o n t < N a m e > = < T y p > s c a l e d . \ f o o t l i n e schreibt den danachfolgenden Text in die Fußzeile (oder führt die angegebenen Befehle in der Fußzeile aus). \ f o o t n o t e Textsatz: erzeugt eine Fußnote mit dem angegebenen Indexzeichen und dem angegebenen Text. Syntax: \ f o o t n o t e { < Indexzeichen> H < Text > >. \ g r a v e Mathematik-Modus: Akzent: — ' — . \H Textsatz: Akzent, z.B. \H o liefert: — ö —. \ h a l i g n Tabellensatzbefehl. Näheres siehe Kapitel 4. \ h a n g a f t e r Textsatz, wird in Verbindung mit \ h a n g i n d e n t verwendet, z.B. \hangindent 3 cm \hangaf t e r 1 rückt alle Zeilen nach der ersten Zeile um 3 cm ein. \ h a n g i n d e n t siehe oben. \ h a t Mathematik-Modus: Akzent —~—, z.B. $ \ h a t { \ b e t a } $ liefert: ß . \hbox erzeugt eine horizontale Box mit dem danachfolgenden (in Klammern gesetzten) Inhalt. \ h e a d l i n e schreibt den danachfolgenden Text in die Kopfzeile (oder führt die danach angegebenen Befehle in der Kopfzeile aus). \hf i l Textsatz: schiebt den danachfolgenden Text in die Mitte einer Zeile (er erzeugt einen "wachsenden" Leerraum). \ h f i l l Textsatz: ähnlich wie \ h f i l , erzeugt aber einen größeren wachsenden Leerraum (der danachfolgende Text wird somit an das Ende der danachfolgenden Zeile geschoben). \ h f u z z Variable für übervolle Boxen. Der Wert gibt die Grenze an, ab der übervolle Boxen gemeldet werden (vorbesetzt mit Opt). \ h o f f s e t Textsatz: Abstand zum Unken Blattrand. \ h r u l e erzeugt in der aktuellen horizontalen Box eine horizontale Linie. \ h r u l e f i l l Textsatz: ähnlich dotf i l l , nur wird die Box mit einer Linie gefüllt, z.B. XXX \ h r u l e f i l l y liefert: XXX y \ h s k i p Textsatz: erzeugt einen horizontalen Leerraum. Syntax: \ h s k i p . \ h s s erzeugt einen dynamischen Leerplatz. \ i Textsatz: liefert: — l —. Nif überprüft, ob eine Bedingung wahr ist. Wenn sie wahr ist, werden bestimmte Befehle ausgegeben, wenn sie feilsch ist, andere. Näheres (die Syntax) siehe Kapitel 5. \ i f h m o d e If-Anweisung: überprüft, ob TgX sich in einer hbox befindet.
B.
87
Befehlsverzeichnis
\ i f mmode If-Anweisung: überprüft, ob TgX sich im math-mode befindet. \ i f n u m If-Anweisung: überprüft, ob die nachfolgenden Nummern (die Inhalte zweier Zählregister) übereinstimmen. \ i f o d d If-Anweisung: überprüft, ob die nachfolgende Ziffer ungerade ist. Nif vmode If-Anweisung: überprüft, ob T^X sich in einer vbox befindet. \ i n d e n t Textsatz: Leerplatz der Größe der Variablen \ p a r i n d e n t . \ i n p u t fügt an der Stelle die Datei mit dem nach dem \ i n p u t — Befehl angegebenen Dateinamen ein. \ i n t Mathematik-Modus: Operator: — f —. \ i t schaltet in italic-Schrift um. \ i t e r a Dieser Befehl erzeugt eine Liste. Syntax: \ i t e m { < Z e i c h e n > } . \ i t e m i t e m ähnlich \ i t e m , dieser Befehl rückt aber 2 x ein. \ j Textsatz: liefert: — j —. \ 1 Textsatz: liefert: — 1 —. \ L Textsatz: liefert: — L —. \ l d o t s Mathematik-Modus: liefert: — . . . —. \ l e f t Mathematik-Modus: erzeugt eine gleich große Klammer, wie die nächste Formel, z.B. $ $ \ l e f t ( 8\over9 \right)$$ liefert:
\ l e f t a r r o w f i l l Textsatz: ähnlich wie \ d o t f i l l , füllt eine Box aber mit einem Pfeil nach links, z.B. IXX \ l e f t a r r o w f i l l y liefert: XXX< \ l e f t l i n e Textsatz: setzt den danachfolgenden Text linksbündig. \ l g r o u p Mathematik-Modus:
y
Klammer: — ^ —.
\ l l a p Textsatz: druckt einen Text und geht dann wieder einen Schritt zurück und druckt das als Parameter angegebene Zeichen über das vorherige, z.B. zzzz\llap{/Juuuu liefert: zzz/uuuu. \ l m o u s t a c h e Mathematik-Modus:
Klammer: — J — .
\ l o s e r Textsatz: verschiebt eine angegebene horizontale Box um die angegebene Länge nach unten, z.B. \ l o w e r 3pt \ h b o x { Box > liefert: g o x . \magnif i c a t i o n erzeugt eine globale Vergrößerung des Textes und aller Längenangaben durch den angegebenen \ m a g s t e p — Wert, z.B. \magnification=\magstepl
B. vergrößert den Text \ m a g s t e p siehe oben. \ m a t r i x Mathematik-Modus: $$\matrix{ 6 k 8 7 k 8 7 k 4 liefert:
um den Wert "magstepl". setzt &0 k 1 k 9
eine Matrix ohne Klammern, z.B. \cr \cr \cr}$$ 6 7 7
\medskip \multispan \newcount \noalign
\nobreak \noindent \nopagenumbers \not \number \"0 \"o \o \0 \obeylines
Befehlsverzeichnis
8 8 4
0 1 9
Zur Abgrenzung der einzelnen Elemente wird das Tabulatorsymbol (&) verwendet. Die einzelnen Zeilen sind mit \ c r abgetrennt. Textsatz: erzeugt einen mittleren vertikalen Zwischenraum. Taheilensatz: zieht die angegebene Anzahl von Spalten zu einer zusammen. erzeugt ein neues Zählregister, z.B. \newcount \ E i n e s erzeugt ein neues Zählregister unter dem Namen \ E i n e s . Tabellensatz: erzeugt in Tabellen eine neue Zeile, die nicht eine Tabellenzeile ist. Angewendet wird dieser Befehl beim Einfügen von horizontalen Linien oder Leerraum in Tabellen. Mathematik-Modus: kennzeichnet eine Stelle in einer mathematischen Formel, wo T^X keinesfalls trennen darf. Textsatz: unterdrückt die Einrückung bei einem Absatz Textsatz: schaltet die Seitennumerierung ab. Mathematik-Modus: erzeugt eine verneinte Relation. Syntax: $ \ n o t $. druckt den Inhalt des danachfolgenden Zählregisters aus. Textsatz: deutscher Umlaut — O —. Textsatz: deutscher Umlaut — ö —. Textsatz: liefert: — 0 —. Textsatz: liefert: — 0 —. Textsatz: in diesem Modus wird jedes Zeilenende als \ p a r — Befehl interpretiert und eine neue Zeile begonnen, z.B. { \ o b e y l i n e s uuuuuuuu 00000000
xxxxxxxx}
liefert: UUUUUUUU
oooooooo xxxxxxxx \0E Textsatz: liefert: — (E—. \ o e Textsatz: liefert: — ce—. \ o f f i n t e r l i n e s k i p Tabellensatz: schedtet den Zwischenraum zwischen zwei Zeilen ab. \ o i n t Mathematik-Modus: Operator — $ —.
89
B. Befehlsverzeichnis
\omit Tabellensatz: unterdrückt, die Ausführung einzelner Befehle in der Musterzeile. \over Mathematik-Modus: erzeugt einen Bruch, z.B. $ 8\over 7$ liefert: f . \ o v e r f u l l r u l e Die Variable \ o v e r f u l l r u l e beinhaltet die Dicke des Balkens, der bei übervollen Boxen ausgegeben wird. \ o v e r l e f tarrow Mathematik-Modus: Akzent — *ä — \ o v e r l i n e Mathematik-Modus: Akzent — ä —. \overrightarrow Mathematik-Modus: Akzent — ~a — \pageno Variable für die Seitennumerierung. Will man die Seitennummer erhöhen, so ist folgender Befehl einzugeben: \pageno=. \par Textsatz: erzeugt ein Absatzende. \parindent Variable für die Größe der Einrückung bei einem Absatz (vorbesetzt mit 12pt). \parskip Variable für die Größe der Zwischenräume zwischen den Absätzen (vorbesetzt mit Opt). \phantom Textsatz: läßt soviel Platz, wie der als Parameter 1 angegebene Text benötigen würde, z.B. YYY\phantom {FFFFjXXX liefert: YYY XXX \pmatrix Mathematik-Modus: setzt eine Matrix mit Klammern, z.B. $$\pmatrix{ 6 & 8 & 0 \cr 7 & 8 liefert:
Box.
\right Mathematik-Modus: ähnlich \ l e f t , paßt die rechte Klammer der Größe einer Formel an, z.B. $ $ \ l e f t ( 8\over9 \ r i g h t ) $ $ liefert:
G)
\ r i g h t a r r o w f i l l Mathematik-Modus: ähnlich \ l e l t a r r o w f i l l , füllt aber die Box mit einem Pfeil nach rechts, z.B. XXX \ r i g h t a r r o w f i l l y
B.
90
Befehlsverzeichnis
liefert: X X X >y \ r i g h t l i n e Textsatz: setzt eine Zeile rechtsbündig. \rlap Textsatz: ähnlich \llap, druckt eine rechts überlappende Information, z.B. zzzz\rlap{/}uuuu liefert: zzzz^iuuu. \rm Textsatz: stellt die Standardschrift (Roman) wieder ein. \rmoustache Mathematik-Modus: Klammer — ^ —. \root Mathematik-Modus: setzt x-te Wurzel, z.B. $\root x+3 \of {b+z>$ liefert: ' t y b + z \ s c r i p t s c r i p t 8 t y l e Mathematik-Modus: steUt den scriptscriptstyle ein (ähnlich \display s t y l e ) . \ s c r i p t s t y l e Mathematik-Modus: stellt den scriptstyle ein (ähnlich \ d i s play s t y l e ) . \ s e t t a b s Tabellensatz: beginnt eine Reihe von Tabulatorzeilen. \sevenbf Textsatz: stellt s i e b e n - P u n k t - B o l d f a c e - S c h r i f t ein. \sevenrm Textsatz: stellt sieben-Punkt-Roman-Schrift ein. X s l Textsatz: stellt slanted-Schrift ein. Xsmallskip Textsatz: erzeugt einen kleinen vertikalen Leerraum. \span Tabellensatz: zieht zwei Tabellenelemente zusammen, dieser Befehl wird anstelle des Tabulators geschrieben. \sqrt Mathematik-Modus: setzt eine Wurzel, z.B. $ \ s q r t { 3 } $ liefert: \/3. \ss Textsatz: scharfes S — ß —. \ s t r u t Tabellensatz: erzwingt einen gewissen Zeilenabstand. \aum Mathematik-Modus: Operator — Y1 —• \t Textsatz: Akzent, z.B. \t oo liefert: — 00 —. \tabskip Tabellensatz: Variable für den Abstand zwischen zwei Tabellenspalten. \TeX Textsatz: liefert: — TßX —. \ t e x t s t y l e Mathematik-Modus: stellt den textstyle ein (ähnlich \ d i s playstyle). \ t i l d e Mathematik-Modus: Akzent — ~ — . \ t t stellt t y p e w r i t e r - S c h r i f t ein. \u Textsatz: Akzent, z.B. \u o liefert: — 6 —. \"U Textsatz: deutscher Umlaut — U —. \"u Textsatz: deutscher Umlaut — ü —. \underbar Textsatz: unterstreicht einen Text. \underline Mathematik-Modus: Akzent — a —. \ u p b r a c e f i l l ähnlich wie \ d o t f i l l , füllt aber die Box mit einer geschweiften Klammer aus, z.B. \hbox t o 3 cm { \ u p b r a c e f i l l > liefert: v ^ \v Textsatz: Akzent, z.B. \v o liefert: — ö —. \vbox erzeugt eine vertikale Box mit dem Inhalt des 1.Parameters.
B.
91
Befehlsverzeichnis
\vec Mathematik-Modus: Akzent — — . \vf i l l Textsatz: füllt die aktuelle vertikale Box mit Leerraum auf (diese vertikale Box kann auch die Seite sein). \voff s e t Textsatz: Abstand zum oberen Blattrand \vrule Textsatz: liefert: — I — . \vskip Textsatz: erzeugt einen vertikalen Leerraum der angegebenen Größe. \ w i d e t i l d e Mathematik-Modus: großer Akzent — ~ — . \widehat Mathematik-Modus: großer Akzent — ~ — .
B . 3 Mathematische und nicht-mathematische Zeichen M a t h e m a t i s c h e Zeichen ( n u r i m m a t h - m o d e v e r w e n d b a r ) a ß 7 6 e e £ r] 0 •d
\ alpha \beta \gamma \delta \epsilon \varepsilon \zeta \eta \theta \vartheta
L Xiota K \kappa X \lambda A4 \mu V \nu t \xi o o ir \pi w' \varpi P \rho
T A £ V
\Gamma \Lambda \Sigma \Psi
A
\Delta
T n
\Upsilon \Omega
±
\pm \cdot \ast \circ \cap \cqcap \triangleright \bigtriangleup \wedge \otimes \dagger
* o
n n > A A ® f
< Meq -< \prec •< \preceq «\11 C \subset C \subseteq C \sqsubseteq
\Xi
T x * • U U l V © 0 t
g \gg - \asymp D \supset Rä \approx D \supseteq = \cong • \sqsupseteq M \bowtie \succ \succeq
\
\setminus \amalg o \diamond \div t±) \uplus < \triangleleft \bigcirc V \vee e \ominus 0 \odot
II
o
B.
92 G \in h \vdash - \smile ^ \frown
3 H I II
\ni \dashv \mid \ p a r allei
oc f= = -L
\piopto \models \doteq \perp \longleftariow \Longleftarrow \longrightarrow \Longrightarrow \longleftrightarrow \Longleftrightanow \longmapsto \hookrightarrow \rightharpoonup \righthaxpoondown
«— \gets «— \leftarrow \Rightarrow «-• \leftrightarrow •O- \Leftrightarrow H-» \ m a p s t o «—> \hookleftarrow \leftharpoonup *— \lefthaipoondown ^ \rightleftharpoons \aleph \hbar \imath \jmath \ell \wp \Re \Im d \partial oo \infty \s § \ ddag î
h i 3 i P
»
/
0 V V T _L II L A
\
1 1
\vdots \int \sum \prod \oint \coprod \bigcap \bigcup \bigsqcup \bigvee \bigwedge \bigodot Ybigotimes \bigoplus \bigupius
\prime \emptyset \nabla \surd \top \bot Wert \ angle \triangle \backslash \P \vert \cdots
/ YL I] § IJ fl (J LI y /\ Q 0 0 y
Befehlsverzeichnis
V 3 -i b h t
+ 0 V
*
t • ,
\foraU \exists \neg \flat \natural \sharp \clubsuit \diamondsuit \heartsuit \spadesuit \dag \ldots \ddots
î ft l •I). J ß y \ y \
\uparrow \Upariow \downairow \Downarrow \updownarrow \Updownairow \nearrow \searrow \swariow \nwatiow
B.
93
Befehlsverzeichnis
( ) [ ] { \>
( [
\{ \lgroup
\rgroup
/
\backslash
\lmoustache
\rmoustache
N i c h t - m a t h e m a t i s c h e Zeichen (
(
—
\$ V/. \oe \AA \0 \dag \P {\it\$>
u
>
—
?'
$
\#
%
ce A 0 t 1 £
n
i
\'o \* o \'o \.o \v o \t oo \d o \i
o o 5 ö ö oo 9 l
-
\ft \AE \aa \o \L \s \TeX \dots
&
;
—
#
ae 2\), soda\ss\ \(x"n + y~n = z*n\). \enditheorem}
Das Beispiel enthält schon einen Vorgriff auf Kapitel 3. Formeln können Sie nur im m a t h - m o d e setzen; dieser wird mit \ ( begonnen und mit \ ) wieder beendet. Mehr darüber im nächsten Kapitel. Der Klammerausdruck [Fermat] dient zur Angabe der Quelle einer Definition bzw. eines Beweises, kann aber auch weggelassen werden. Wird der Name angegeben, so wird dieser ebenfalls fett in runden Klammern gedruckt.
KAPITEL
122
2.
TEXTSATZ
Innerhalb eines Dokuments können natürlich auch unterschiedliche Umgebungen existieren, z.B. theorem und beweis. Alle müssen in der Präambel (unter verschiedenen Namen) definiert werden: \newtheorem{theorem}-[ Theorem} \newtheorem{beweis}{Beweis}[chapter] definiert zwei neue Umgebungen, die separat numeriert werden. Beachten Sie bitte die unterschiedliche Numerierung: theorem innerhalb eines Dokuments bzw. beweis innerhalb eines Kapitels.
2.10
Der a r t i c l e - S t y l e
Dieser Stil wird für kürzere Artikel verwendet. Hauptaugenmerk liegt vor allem auf folgenden Punkten: • Titelzeile mit Autorenangabe • Zusammenfassung ( "Abstract") der Arbeit • Inhaltsverzeichnis, Liste der Abbildungen bzw. Tabellen • Gliederung des Textes in Abschnitte • Literaturverzeichnis, Referenzen, ... Nach der obligaten Präambel in I^T^X 2.09 \documentstyle[twocolumn,german]{article} Ybegin{document} bzw. in
2e
\documentclass[twocolumn] { a r t i c l e } \us epackage-Cgerman} \begin{document} (wobei natürlich auch andere Optionen angegeben werden können) folgt die Definition des Titels der Arbeit: \title{Anwendungen der Katzenbeisserschen ZahlenW i n der I n f o r m a t i k } \ a u t o r { S t e f a n Katzenbeisser \thanks{Die Arbeit wurde von ABCDE I n d u s t r i e s e r m V ' o g l i c h t . } \and Martin Huber \thanks{Zur Zeit b e i CDE I n d u s t r i e s }
}
\date{} \maketitle
2.10. DER
ARTICLE-STYLE
123
Der Titel wird durch \ t i t l e definiert, wobei dieser mehrzellig sein kann (Zeilen durch \ \ abgetrennt). Danach folgt die Beschreibung der Autoren, die ebenfalls mehrzeilig sein kann. Sind mehrere Autoren anzugeben, so sind deren Namen durch ein \ a n d zu trennen. Ein \ t h a n k s erzeugt eine Fußnote mit einem vordefinierten Symbol. Wurde bei der Definition des Dokumenttyps die Option t i t l e p a g e angegeben, so werden Autor und Titel auf eine eigene Seite gesetzt. Ist der Artikel zweispaltig, so steht der Titel über den beiden Spalten. Zusätzlich wird automatisch das aktuelle Datum gesetzt. Ist dies nicht gewünscht, kann mittels \ d a t e der Datumstext umgeändert werden. In unserem Beispiel ist er nicht gewünscht, somit wird nur ein Klammerpaar übergeben. Der Aufruf von \ m a k e t i t l e setzt den Titel in das Dokument ein. Nun folgt meist die Zusammenfassung, in der Umgebung a b s t r a c t : \begin{abstract} Diese Arbeit stellt . . . \end{abstract} Dem Text wird das Wort "Zusammenfassung" (in der german-ErWeiterung) vorausgesetzt. IfT^X's Konzept des "logischen Designs" folgend, wurde bisher nicht angegeben, in welcher Form der Text (z.B. Titel und Zusammenfassung) zu setzen ist. Dies wird über die Styles gesteuert. Nun wird der in Kapitel formatierte Text folgen. Hier müssen Sie ebenfalls nur die Struktur des Textes angeben: • \ s e c t i o n erzeugt einen neuen Abschnitt in der Arbeit und numeriert ihn automatisch; • \ s u b s e c t i o n erzeugt einen Unterabschnitt und numeriert diesen und • \ s u b s u b s e c t i o n erzeugt einen Unterunterabschnitt. In unserem Beispiel: \s e ct ion{D ef init ion} Eine Katzenbeissersche Zahl ist definiert durch:... \subsection{Definition der ''Xi Modulo Funktion''} Definiert man... Dabei wird die Schriftart und -große der Kapitelüberschriften wiederum lediglich über die Styles gesteuert. Manchmal folgt ganz am Anfang noch ein Inhaltsverzeichnis. IfTgX generiert dieses für Sie automatisch! Schreiben Sie lediglich \ t a b l e o f C o n t e n t s an die Stelle, an der das Inhaltsverzeichnis erscheinen soll. Für eine Liste von Abbildungen und Tabellen gibt es äquivalent \ l i s t o f t a b l e s bzw. \ l i s t o f f i g u r e s . Hierbei werden die Informationen verwendet, die innerhalb der Umgebungen f i g u r e bzw. t a b l e mittels \ c a p t i o n angegeben wurden. Hier lernen Sie erstmals das Konzept der "Referenzen" kennen. Während des Textes speichern die Befehle \ s e c t i o n , . . . die Titel der Überschriften samt Seitennummer in einer speziellen Datei ab. Beim ersten liT^X-Lauf kann es diese Informationen natürlich noch nicht kennen, steht das Inhaltsverzeichnis doch normalerweise vor den
KAPITEL
124
2.
TEXTSATZ
einzelnen Abschnitten. Beim nächsten Mal (spätestens jedoch beim dritten Lauf) ist der Inhalt aber sehr wohl bekannt und kann in das Dokument eingesetzt werden. Dies gilt für alle "Referenzen": sie sind erst beim zweiten IM^X-Lauf bekannt! Starten Sie IfTßX deshalb immer zwei Mal, wenn Referenzen im Text vorkommen. (Sie bekommen aber ohnehin eine Meldung, daß die "Referenzen" nicht definiert waren; starten Sie in diesem Fall L^TgX noch einmal). Die nächste Seite zeigt Ihnen ein Beispiel für das Layout eines Artikels.
2.11
Die Styles report und book
Die Grundstruktur dieser Styles ist ähnlich, jedoch sind sie für größere Arbeiten gedacht. In einem r e p o r t und einem book gelten praktisch alle Befehle wie im a r t i c l e Style (einzige Ausnahme: a b s t r a c t gibt es im book-Stil nicht), jedoch gibt es noch zusätzliche Ergänzungen. (Das Layout des von I^T^X erzeugten Dokuments ist mit dem Layout dieses Abschnittes identisch). Nach der obligaten Präambel in £TeX 2.09 \documentstyle[german]{book} \begin{docujnent} bzw. in &TeX2e \document c l a s s { b o o k } \usepackage{german} \begin{document} folgt bei einem Buch meist eine Titelseite. Diese können Sie mittels der Umgebung t i t l e p a g e erstellen. Sie erzeugt eine leere Seite ohne Seitennummer, die Sie völlig selbständig gestalten müssen: \begin{titlepage} \end{titlepage} Neben den Gliederungsbefehlen \section, etc. gibt es noch zwei Befehle zur gröberen Unterteilung eines Buches: \part erzeugt verschiedene, voneinender abgegrenzte Teile (wie in diesem Buch Abschnitt I, II,...). Die Teile werden römisch numeriert. Diese Gliederung in Teile ist optional. Die nächstkleinere Einheit ist \chapter, das ein Kapitel erzeugt. Danach kann das Kapitel mit \section, \subsection bzw. \subsubsection weiter unterteilt werden. Ein Beispiel aus diesem Buch: \documentstyle[twopage]{book} \begin{document} \tableofcontents \ p a r t { E i n f V'uhrung i n plain\TeX} ... '/. h i e r f o l g e n z i r k a 9S S e i t e n Text
Anwendungen der Katzenbeisserschen Zahlen in der Informatik Stefan Katzenbeisser *
Zusammenfassung
Martin Huber *
1.1
D e f i n i t i o n d e r "Xi M o d u lo F u n k t i o n "
Diese Arbeit stellt eine Klasse von Definiert man Zahlen vor, die bei der BeschreiLldaj bung rekursiver Zusammenhänge in amod2 J (3) der Informatik auftreten. Ebenso wer*(«) = E 2Ì ¿=i den Beispiele für deren Anwendung präsentiert. so kann jede Katzenbeissersche Zahl geschrieben werden als '
1
Definition
K(a) — 2 a
Eine Katzenbeissersche Zahl ist definiert durch: Lldaj K (a) = £ »=i
1 \ Lldaj +1
V (4)
2
Anwendungen
H. Rothe beschrieb in seinem Buch „Gedächtniskunst" (erschienen in der Verlagsbuchhandlung J. J. Weber, Unter Zuhilfenahme der Definition Leipzig 1905) folgendes Verfahren: der Floor-Funktion kann diese Formel „Anleitung, wie man ohne Zählen die umgeschrieben werden: Anzahl einer beliebig großen Menge Streichhölzchen, Marken oder dergl. Lldaj J feststellen kann". Dabei werden n Poa - amod2 *(«) = E (2) sitionen definiert, auf denen die Hölz»=i chen zu liegen kommen. Zu Beginn liegen alle Hölzchen auf der ersten Po'Die Arbeit wurde von ABCDE Industries sition. Nun werden solange mit eiermöglicht. 'Zur Zeit bei CDE Industries nem Griff zwei Hölzchen aufgehoben, (i)
KAPITEL
126
2.
TEXTSATZ
\partiEinf V'uhrung in \LaTeX} \chapter{Eine erste EinfV'uhrung} \LaTeX\ ein \TeX—Dialekt ist eigentlich eine ''Seitenbeschreibungssprache'', d.h. Sie mV'ussen Ihren Text ... \section{Anlegen eines \LaTeX—Files} Mit Hilfe eines beliebigen Editors erstellen Sie die Eingabedatei mit der Dateinamenerweiterung bzw. — e n d u n g . . . \section{Der Dokumenttyp
Styles}
\chapter{Textsatz} \appendix \chapter{L\"osungen zu den V'Ubungsaufgaben} \end{document} I^TßX kann auch die Anhänge automatisch numerieren. Sie brauchen lediglich vor dem ersten Anhang ein \ a p p e n d i x zu schreiben, I^Tj^X wird ab hier alle weiteren Kapitel mit A, B,... numerieren und "Anhang" anstelle von "Kapitel" ausgeben. In ß-T^X2c wurden drei neue (optionale) Befehle eingeführt: \frontmatter, \textmatter und \endmatter. Der erste leitet den Titelteil ein (also das Vorwort, das Inhaltsverzeichnis, etc.); der zweite Befehl den Text (einschließlich Anhänge) und der dritte den Endteil (also Index, etc.). Im Titel- und Endteil erzeugt der \chapter-Befehl keine Kapitelnummer, wohl aber einen Eintrag im Inhaltsverzeichnis. Zusätzlich werden die Seiten des Titelteils römisch numeriert. Meist umfaßt ein Buch ein Literaturverzeichnis. I^Tf^X kennt zwei Methoden, u m dieses effizient zu erstellen: die Eingabe per Hand und die Verwendung von BlBTßX. Auch diese Aufgabe beruht auf "Referenzen", um eine direkte Zitierung zu ermöglichen. An einer beliebigen Stelle des Buches (meist ganz am Ende) wird die verwendete Literatur angegeben. Hierbei muß jedes Buch mit einem eindeutigen Schlüsselwort versehen werden, das den Eintrag repräsentiert. Neben diesem internen Schlüsselwort h a t jedes Buch auch noch eine "Abkürzung" wie z.B. [Knuth78]. Diese Abkürzung wird bei jedem Zitat gedruckt. Die Definition der verwendeten Literatur erfolgt über das t h e b i b l i o g r a p h y environment: \begin{thebibliography}{Knuth78} \bibitem[Knuth78]{Knuth:78} D. E. Knuth, {\sl The Art of Computer Programming}, Addison Wesley, 1978. \bibitem[Sedg92]{Sedgenick:92} R. Sedgewick, {\sl Algorithmen}, Addison Wesley, 1992 \end{thebibliography}
2.11. DIE STYLES
REPORT UND BOOK
127
Die Umgebung erstellt eine Liste und richtet die Buchangaben aus; daher muß sie die größte Abkürzung kennen, um die Einträge entsprechend einrücken zu können; die größte etiler Abkürzungen, in diesem Fall {Knuth78}, muß immer nach \ b e g i n { t h e b i b l i o g r a p h y } angegeben werden. Alle Bucher werden nun durch Einträge von \ b i b i t e m definiert. Danach folgt die Abkürzung des Buches in eckigen Klammern und schließlich das interne Schlüsselwort in geschwungenen Klammern. Zuletzt folgt der Name des Autors und die Angaben des Buches. erzeugt für jedes Buch eine Referenz. Im Text möchte man oftmals auf ein Buch verweisen. In diesem Fall wird dann meist die Abkürzung des Buches geschrieben, gefolgt von einer Seitenangabe. Dies ermöglicht \ c i t e . Da nun die verwendete Literatur "kennt", reicht z.B. die Angabe von \ c i t e { K n u t h : 7 8 } , also der Befehl gefolgt vom internen Schlüsselwort aus, um die Abkürzung [Knuth78] in das Dokument einzusetzen. Jedes Zitat ist wieder eine Referenz, ist also erst beim zweiten I£TEX-Lauf bekannt. Zusatzinformationen kann man in eckigen Klammern angeben, z.B. \cite[Seite 38]{Sedgewick:92} liefert [Sedg92, Seite 38], Ebenso zulässig ist \ c i t e { S e d g e w i c k : 9 2 , Knuth:78}, das [Sedg92, Knuth78] erzeugt. Oftmals gibt es jedoch einen ganzen Satz von Publikationen, die bei mehreren Dokumenten als "Basis" dienen. Anstelle in jedem Dokument die Literatur mit Abkürzung und Schlüsselwort zu definieren, sollte dies zentral in einer speziellen Datei geschehen. Diese Datei ("bibliographic database") hat die Endung . b i b . Das externe Programm BißTgX hilft schließlich bei deren Einbindung. Ich definiere mir z.B. eine Liste der wichtigsten Computergrafik-Literatur unter c o m p g r . b i b und eine Liste der Bücher über Algorithmen unter a l g o . b i b . Geben Sie in Ihr Programm dort, wo das Literaturverzeichnis erscheinen soll (z.B. ganz am Ende vor \end{document}), \bibliography{compgr, algo} ein, so "weiß" I^TEX, welche Literatur Sie verwenden. Es wird automatisch ein Verzeichnis erstellen. Im Dokument können Sie dann wie gewohnt mit \ c i t e samt Schlüsselwort zitieren. M ^ X "merkt" sich dabei die zitierte Literatur und speichert Verweise darauf beim ersten Lauf ab. Danach müssen Sie BißTßX mittels b i b t e x name starten, wobei name der Name Ihres Dokuments ist. Das Programm wird nun ein Verzeichnis aus der verwendeten Literatur erstellen und es automatisch sortieren. Starten Sie IiT^X nun ein zweites Med, so wird es eingefügt sein. IMfeX nimmt nur alle zitierten Bücher bzw. Artikel in das Verzeichnis auf. Soll ein weiteres Buch aus der . b i b - D a t e i angeführt werden, ohne explizit zitiert worden zu sein, so hilft der Befehl \nocite, samt Schlüsselwort. Wollen Sie jedoch weitere Literatur anführen, müssen Sie die . b i b - D a t e i e n ändern. Hier wären wir bereits beim Thema. Woher nehmen Sie diese Dateien? Wenn Sie Glück haben, sind sie auf Ihrem Arbeitsplatz bereits vorhanden. Wenn nicht, müssen sie mit einem Editor neu erstellt werden. Dabei ist für jedes Buch folgende Struktur anzulegen:
KAPITEL
128
OBOOK-fFoley: 90, author = "Foley, James a n d v a n Dam, Andires a n d Feiner, and Hughes,
2.
TEXTSATZ
Stephen
John",
title = "Computer Graphics. Principles and Practice.", publisher = "Addison Wesley", address = "Reading, year =
Mass.",
"1990">
4>INC0LLECTI0N{Haines: 89, editor = "Glassner, author = "Haines,
Andrew",
Eric",
b o o k t i t l e = " A n I n t r o d u c t i o n t o Ray title = "Essential Ray Tracing
Tracing",
Algorithms",
publisher = "Academic Press", address = pages =
"London",
"33—77",
year = "1989" >
Die Bedeutung dieser Felder dürfte klar sein. Jeder Eintrag für ein Buch muß mit (BB00K beginnen, dann folgt das Schlüsselwort (verwendet bei \cite). Für einen Abschnitt eines Buches verwenden Sie QINC0LLECT10N; hier muß noch der Autor des Teils angegeben werden. Beachten Sie bitte, daß Sie den Nachnamen des Autors zuerst schreiben; dann sollte nach einem Beistrich der Vorname folgen. Mehrere Autoren sind durch and zu trennen. Geschieht dies nicht, so kann es Probleme bei der Sortierung geben. Für einen Artikel in einer Zeitschrift ist z.B. folgende Eingabe zulässig:
Diese beiden Eintragstypen dürften im Normalfall ausreichen. BIBT^X kennt jedoch noch einige weitere. Hierfür sei auf [10] verwiesen. Zuletzt können Sie noch das Aussehen des Literaturverzeichnisses (bzw. der Abkürzungen) mittels \ b i b l i o g r a p h y s t y l e { Option} definieren: • p i a i n alle Bücher werden sortiert und als Abkürzungen werden lediglich Nummern verwendet; • unsrt alle Bücher werden unsortiert übernommen; • a l p h a alle Bücher werden sortiert; die Abkürzungen werden automatisch aus Namen und Publikationsjahr gebildet (wie [Knuth78]);
2.11.
DIE STYLES
REPORT UND BOOK
129
• a b b r v Vornamen, N a m e n von Zeitschriften u n d E r s c h e i n u n g s d a t u m werden a b gekürzt; Die A n g a b e dieses Befehls m u ß nach \ b e g i n { d o c u m e n t } erfolgen; in den meisten Fällen ist ein \ b i b l i o g r a p h y s t y l e { a l p h a } sinnvoll. In einem Buch werden sehr oft Querverweise benötigt, z.B. zu einer Formel, einer Abbildung, etc. Werden N u m m e r n "händisch" vergeben, so kann es Probleme bei einer Erweiterung des D o k u m e n t s geben: alle N u m m e r n müssen durch das Einfügen neuer Abbildungen, Tabellen etc. geändert werden. IfTfjX erlaubt mittels Referenzen die dynamische Erstellung von Querverweisen. Setzen Sie im Text an die Stellen, auf die Sie s p ä t e r verweisen wollen, mittels \label{Schlüsselworty ein "Lesezeichen". Dieser Befehl m u ß z.B. in einer t a b l e - U m g e b u n g , in einer Formel ( U m g e b u n g e q u a t i o n , siehe nächstes Kapitel), in einem T h e o r e m oder im Text stehen. Hierbei ist das Schlüsselwort wieder frei wählbar, m u ß aber eindeutig sein. Auf solche "Lesezeichen" k a n n d a n n mittels \ief {Schlüsselwort} ein Verweis gesetzt werden. Dieser Befehl liefert die N u m m e r einer Formel, einer Tabelle, einer Abbildung oder eines Abschnitts (wenn das korrespondierende \ l a b e l außerhalb einer U m g e b u n g steht). Im Gegensatz liefert \ p a g e r e f I M M E R die Seitennummer des "Lesezeichens" zurück. Als Beispiel (es m u ß das T h e o r e m - E n v i r o n m e n t aus 2.9 definiert sein): \chapter{Allgemeines} In diesem Kapitel mV'ochte.... \label{Kapitel:Allgemeines} \begin{table} \caption{Das Problem des Aliasing} \label die folgenden neuen Befehle (siehe Kapitel 5): \newcommand{\bold}[1]{{\bf # 1 » \newcommand{\slanted}[1]{{\sl #1}} \newcommand{\italic}[l]{{\it # 1 » \newcommand{\underl} [1] { \ u n d e r l i n e { # l } } Geben Sie nun einen Indexeintrag mit angefügtem I b o l d , I s l a n t e d , I i t a l i c bzw. I u n d e r l an, so wird die jeweilige Seitennummer fett, kursiv, italic oder unterstrichen gesetzt, z.B. XindexiEin f e t t e r EintragIbold} \index{Ein unterstrichener Eintrag Iunderl} (Diese Vorgehensweise gehört in die Kategorie der schmutzigen L^TgX-Tricks...) Sie sollten nun in der Lage sein, auch komplexe Bücher mit I^TßX zu setzen. Beachten Sie bitte a b nun: sollten Sie BIBTJ^X, Makeindex oder einfach nur "Referenzen" verwenden, starten Sie zuerst den ersten Durchgang von IMfeX, darauf die benötigten externen Programme (BIBTEX bzw. Makeindex) und hierauf N O C H M A L S IMfeX. Es sollten dann alle "Referenzen" eingefügt worden sein.
2.12
Große Dokumente
Bei dem Satz von Büchern oder anderen umfangreichen Dokumenten bietet es sich an, den Text auf mehrere Dateien aufzuteilen, die z.B. jeweils ein Kapitel beinhalten. Erstellen Sie eine "Hauptdatei", die die Präambel, alle Definitionen und das \end-fdocument} enthält. Dann erstellen Sie weitere Dateien, die jeweils ein Kapitel beinhalten (d.h. mit dem \ c h a p t e r - B e f e h l beginnen und K E I N E Präambel besitzen). In die "Hauptdatei" werden diese externen Dateien mittels X i n c l u d e i D a i e i n a m e } eingebunden.
2.13
Der l e t t e r - S t y l e
I^TgX kennt noch einen weiteren Stil: einen für Briefe. Er ist wenig standardisiert und meist anpassungsbedürftig. Der Stil erlaubt es, mehrere Briefe in eine Datei zu schreiben.
KAPITEL
132
2.
TEXTSATZ
\documentstyle{letter} '/.'/.'/. IN LaTeX2e NUR IN \documentclass ZU A E N D E R N Ü \address{Andreas M\"uller \\ M\"ullerstra\ss{}e 131 \\ 9999 MY'ullerdorf} \signature{Andreas MV'uller} Ybeginidocument} \end{document} In dem neuen &TßX2e ist nur der Befehl in der erste Zeile in \documentclass zu ändern. Nach der obligatorischen Präambel muß die Definition des Absenders mittels \address erfolgen, wobei die einzelnen Zeilen durch ein \\ abgetrennt sind. Danach folgt die Angabe des Textes, der nach der Unterschrift folgen soll (meist eine Angabe des Namens). Jeder Brief muß mit einem \ b e g i n { l e t t e r } beginnen, nach dem in Klammern die Adresse des Empfängers angegeben wird: \begin{letter}{Frau Dr. Irene Huster \\ M u s t e r s t r a \ s s O e 7 \\ 7777 Musterdorf} \ o p e n i n g { S e h r geehrter F r a u Muster!} Mir s i n d in letzter Zeit immer wieder Klagen V'uber die BetriebsstV'orungen... \closing{Hochachtungsvoll} \ c c { H e r r n P. Maier \\ 0. Huber} \ e n c l { 3 Anlagen} \ps P S : Das ist ein PS. \end{letter} Jeder Brief beginnt normalerweise mit einer Anrede, durch \opening erzeugt. Danach folgt der Text. Die Schlußformel wird mit \ c l o s i n g erzeugt; der danachfolgende Text wird etwas rechts neben der Seitenmitte gesetzt. Hierauf wird etwas Platz für die Unterschrift gelassen und dann der Text von \ s i g n a t u r e gedruckt. Alle weiteren Befehle sind optional. Das \cc gibt zusätzliche Adressaten an, deren Namen, eingerückt unter das Wort "Verteiler:", gedruckt werden. Danach folgt (ebenso optional) die Angabe von Anlagen, der Text wird neben "Anlage(n):" gesetzt. Zum Schluß kann noch ein \ps folgen. Die nächste Seite zeigt ein Beispiel für einen Brief. W i e Sie sehen, wird das Layout noch angepaßt werden müssen. Vielleicht ist auf Ihrem Arbeitsplatz bereits ein anderer Style, angepaßt für eine Firma, Universität, etc. vorhanden. Die Eingabe des Briefes bleibt jedoch gleich (denken Sie an I^TßX's Konzept des "logischen Designs").
Andreas Müller Müllerstraße 131 9999 Müllerdorf 5. November 1996 Frau Dr. Irene Muster Musterstraße 7 7777 Musterdorf Sehr geehrter Frau Muster! Mir sind in letzter Zeit immer wieder Klagen über die Betriebsstörungen der von Ihnen verwalteten Anlagen zu Ohren gekommen, die mich zu einer Nachforschung veranlaßt haben. Ich bitte Sie, in beiliegenden Bögen die Art des auftretenden Problems genau zu beschreiben. Hochachtungsvoll
Andreas Müller Verteiler: Herrn P. Maier U. Huber Anlage(n): 3 Anlagen PS: Das ist ein PS.
KAPITEL
134 ZUSAMMENFASSUNG
• Mehrfache Leerzeichen werden ignoriert, Absatzende ist Leerzeile, Zeilenumbruch ist Leerzeichen • Leerraum: \vspace, \ b i g s k i p , \ s m a l l s k i p , \medskip • Schriftenkatalog: \ b f / \ t e x t b f , \ i t / \ t e x t i t , \ s l / \ t e x t s l und Hervorhebung \em/\emph. • Zeilenausrichtung: Umgebungen center, f l u s h r i g h t , f l u s h l e f t , quote • Listen: Umgebungen itemize, d e s c r i p t i o n , enumerate • Abbildungen, Tabellen: Umgebungen t a b l e , figure • Der a r t i c l e - S t y l e : \ m a k e t i t l e , Umgebung abstract • Unterteilung in Abschnitte, Kapitel: \ p a r t (nur Buch), \ c h a p t e r (nur Buch, Report), \section, \subsection, \subsubsection • Inhaltsverzeichnis: \ t a b l e o f c o n t e n t s • Referenzen setzen: \ l a b e l und verwenden: Yref • Literaturverzeichnis mit Umgebung t h e b i b l i o g r a p h y , Zitate mit \ c i t e • Index: \index; Initialisierung: \makeindex, Verwendumng von Makeindex, Einbindung: \printindex • Der l e t t e r - S t i l
2.
TEXTSATZ
Kapitel 3
Formelsatz Nachdem Sie nun bereits die wichtigsten Befehle des Textsatzes kennen, ist es an der Zeit, sich einer "Domäne" von I^T^X zuzuwenden... dem Formelsatz. (Ich nehme an, daß Sie deswegen IfT^X gewählt haben).
3.1
Allgemeines
I M ? E X kennt zwei Betriebsmodi: den Modus, in dem der Text gesetzt wird (sie kennen breits fast alle wichtigen Befehle) und den "math-mode". Generell muß jede Formel in diesem Modus gesetzt werden. M ^ X kennt drei Möglichkeiten, den math-mode einzuschalten. Während des Textes kann er durch \ ( ein- und durch \ ) ausgeschaltet werden. Ebenso kann eine Formel — analog zu plainTgX — mit Dollarsymbolen eingeschlossen werden. Äquivalent ist \begin{math} bzw. \end{math}. In diesem Modus wird aller Text in "math italic" gesetzt; ebenso werden alle Leerzeichen ignoriert, um den Text nach internationalen Regeln zu formatieren. Ist eine Formel für eine Zeile zu lang, wird sie an Relationen oder Operatoren umgebrochen.
Oftmals sollen Formeln zentriert und hervorgehoben gesetzt werden, wie diese: e"
=
- 1
Hier kennt IfT^X den "Displaystyle", der durch \ [ ein- und durch \ ] ausgeschalten wird (oder äquivalent \begin{displaymath} bzw. \end{displaymath>). In einem Buch sollen Formeln meist numeriert werden, um Referenzen auf die Formel zu ermöglichen. IfTßX erlaubt den Satz von numerierten Formeln im "Displaystyle" mit der Umgebung equation:
KAPITEL
136
eiT = - 1
3.
FORMELSATZ
(3.1)
Hier wird zusätzlich noch mittels \ l a b e l eine Referenz mit dem Schlüsselwort F o r m e l : E u l e r definiert, die im weiteren Dokument dann mittels \ r e f angesprochen werden kann. Probleme kann es geben, wenn Sie in einer Überschrift (also in einem \ c h a p t e r , \ s e c t i o n , etc. Befehl) in den m a t h - m o d e wechseln. Die Befehle des Mathematikm o d u s arbeiten unter diesen Bedingungen meist nicht korrekt. Dies wird durch die Auswertung der Befehle durch den plainTgX "Unterbau" bewirkt. M ^ X wird einen Fehler wie "Use of ... does not m a t c h its definition" ausgeben. Abhilfe schafft hier \ p r o t e c t , direkt vor einen Befehl des m a t h - m o d e gesetzt: \ c h a p t e r { E i n e B e t r a c h t u n g von $ \ p r o t e c t \ s q r t { x } $ } Zusätzlich sollten Sie in diesem Fall immer das $-Symbol der \ ( . . . \ ) - K o n s t r u k t i o n vorziehen. Es sind nicht alle mathematischen Befehle betroffen, insbesondere jene nicht, die nur einfache mathematische Symbole erzeugen. Ein \ p r o t e c t schadet jedoch nicht.
3.2
Exponenten und Indices
Exponenten werden in I^Tf^X mit einem " angegeben, Indices mit _. Diese Funktion wirkt nur auf das nächste Zeichen. Sollen komplexere Exponenten gebildet werden, m u ß m a n geschwungene Klammern verwenden, z.B. liefert \ ( x " 2 y \ ) die Ausgabe x2y, jedoch \ ( x " { 2 y } \ ) liefert x2y. Es sind aber auch zweite Exponenten u n d Indices möglich. Als Beispiele: \ ( x-2 \) \ ( x_l-2 \ ) \( x-{2-{2*2» \) \( p_i(i,j)_k} \) \ ( T_n = 2 T_{n-1> + 1 \ )
3.3
P(iJ)>. Tn = 2 T n _ , + 1
Wurzeln
Wurzeln werden mit \ s q r t { . . . } erzeugt. In das Klammerpaar kommt der Ausdruck für die Wurzel. Eine n - t e Wurzel kann durch \ s q r t [ n ] { . . . } erzeugt werden: \( \sqrt{x>\) \( \sqrt[3]{x-2+7> \) \ ( \aqrt[k+1]{x"k+\sqrt{x}}
y/X v>x ^ T T \/xk + yfi
\)
\( \sqrt{\sqrt{\sqrt{\sqrt{x}}}}
\)
\j
y/7*
3.4.
3.4
137
BRÜCHE
Brüche
Brüche werden mit \ f rac{a}{£>} erzeugt, wobei a den Zähler und b den Nenner angibt. Natürlich kann m a n \ f r a c - B e f e h l e auch schachteln: \( \frac{xHy}\)
f
\( \frac{\sqrt{x}M\frac{lHx+7}} \) \ ( \frac{n!>{k!
^
(n-k)!> \ )
lu}l k \
} \] liefert:
3.5
1
Binomialkoeffizienten
Binomialkoeffizienten werden durch \ c h o o s e erzeugt. Ahnliche Strukturen mit eckigen und geschwungenen Klammern können durch Ybrack und Ybrace gesetzt werden. Hierbei werden wieder die links stehenden Zeichen oben und die rechts stehenden unten gesetzt (es muß entsprechend geklammert werden): \({{n+k>\choose{n»\) \({{x}\brack{x-n}}\) \({{n}\brack{k» = {{-k}\brace{-n}}\)
3.6
(n+fc) [^J [J] = { : * }
Leerplätze in Formeln
Sie wissen bereits, daß IATßX alle Leerplätze entfernt. Dies ist sinnvoll, solange LM^gX die Formel automatisch formatieren kann. Bei einigen Formeln geschieht dies jedoch nicht korrekt: \ ( dx d y \ ) liefert dxdy, was nicht gewünscht ist. IfTßX kennt nun einige Befehle, die Leerplatz erzeugen: \, \: \; \quad
kleiner Zwischenraum: 11 mittlerer Zwischenraum: | | großer Zwischenraum: | | sehr großer Zwischenraum: |
|
KAPITEL
138
3.
FORMELSATZ
Die richtige Eingabe für dx dy lautet daher \( dx\; dy\). Es gibt auch einen negativen Leerplatz, der alle rechtsstehenden Zeichen nach links verschiebt, er wird durch \! erzeugt (siehe übernächsten Abschnitt).
3.7
Mathematische Operatoren
LM?gX kennt eine Vielzahl von Operatoren: \int \prod \coprod \bigcup \bigvee \bigodot \bigoplus
\oint \sum \bigcap \bigsqcup \bigwedge \bigotimes \biguplus
I
n u u V o
©
$
E n u
A
® ü
Man kann diese Operatoren auch mit Exponenten bzw. Indices versehen. Dies geschieht mit den bereits bekannten Befehlen " bzw. z.B. \[\frac{lH2\pi}\int_{-\inftyJ"x\! \int_{-\infty}*y {\rm e } - { - \ f r a c { l H 2 } ( z - 2 + w - 2 ) } dz\, dw\] liefert: TT" f T e-^+^dzdw 2* J_00J_00 Bitte beachten Sie das \!, wodurch die beiden Integrale näher zusammengeschoben werden. Nun noch zwei kompliziertere Beispiele: \[ -({n+l}\brace{m+l}} = \sum_k {n\choose k} {k\brace m} \] \C A = \ i n t _ 0 " h \ i n t _ 0 " { \ s q r t { r " 2 - x " 2 » \ , dy\, dx = \int_0"h \ s q r t { r ~ 2 - x " 2 } \ , dx \]
cr.i^öu
liefert (man beachte die Wirkung von \,!):
.Vr'-i' rh /»V" —X' = I I dydx = Jo Ja Mittels des oben genannten \atop-Befehls Summe zu setzen:
E
pn I \Jt2 ~ x1 dx Jo ist es möglich, zwei Indices bei einer
W i - K )
j = 1,..., m Äquivalent kann man auch drei Indices setzen, indem eine \atop-Konstruktion in eine weitere eingeschlossen wird. Die Eingabe war: \ [ \ s u m _ { { i = l , \ d o t s , n } \ a t o p { j = l , \ d o t s , m } } \ p s i ( Y _ j - X _ i ) \]
3.8.
3.8
MATHEMATISCHE
139
FUNKTIONEN
Mathematische Funktionen
Sie wissen j a bereits, d a ß im m a t h - m o d e eiller Text in m a t h - i t a l i c gesetzt wird. Es gibt j e d o c h F u n k t i o n e n , die m a n normalerweise nicht in italic setzt, z.B. log, tan,... IAT^X kennt einige Befehle, die solche Funktionen erzeugen: \arccos \arcsin \arctan \arg
\cos \cosh \cot \coth
\exp \gcd \hom \inf
\csc \deg \det \dim
\ker Mg Mim \lirainf
\limsup \ln Mog \max
\min \Pr \sec \sin
\sinh Nsup \tan \tanh
Jede dieser Funktionen setzt den N a m e n der Funktion in R o m a n und akzeptiert auch Indices, z.B. \ [ \ l i m _ { z \ t o \ a l p h a _ k > ( z - \ a l p h a _ k ) R ( z ) \ ] liefert lim (z - a j t ) Ä ( z ) Ein ausführlicheres Beispiel: \ [ \ i n t \ ! \ ! \ i n t f ( x , y ) \ , d x \ , dy = \ l i m _ { n , m \ t o \ i n f t y > \sum_{i=l}~n \8um_{j=l}"m f ( x , y ) \ , \ D e l t a x _ i \ D e l t a y _ j
\]
liefert (bitte beachten Sie den Befehl zur Erzeugung von negativem Leerplatz und die Befehle für spezielle m a t h e m a t i s c h e Symbole wie \ t o f ü r —• bzw. \ i n f t y f ü r oo):
J I
3.9
f{x,y)dxdy=
lim V V n,m—»oo x=lj=\
f ( x , y) Axt
Ayj
Klammern
M f e X kennt eine Vielzahl von K l a m m e r n :
( ] \lfloor \rceil \rgroup < \backslash
( ] L 1
)
) { J 1
)
>
[ \> \lceil \lgroup \rmoustache
/
[ } r
(
\
/
U m nun eine Formel mit K l a m m e r n zu versehen, verwenden Sie die Befehle \ l e f t u n d \ r i g h t , die i m m e r paarweise a u f t r e t e n müssen. Nach diesen Befehlen h a t jeweils die A n g a b e des K l a m m e r t y p s zu stehen, z.B.: \ [ \ l e f t \ l c e i l \frac{n}{m}\right\rceil = \ l e f t \ l f l o o r \frac{n+m-lHm}\right\rfloor \] \ [ \ l e f t ( \ f r a c { q } { q - l } \ r i g h t ) ~ n \ l e q D_n*{(q)> \ l e q q \ l e f t ( \ f r a c { q > { q - l > \ r i g h t ) * n , \quad {\rm f o r } \ , \ , n \ g e q
0\]
KAPITEL
140
3.
FORMELSATZ
liefert (wobei \ l e q bzw. \ g e q die Zeichen < u n d > ergeben):
I m
1=
n + m —1
(7^1)" - £>") - q (9^1)"' 3.10
forn
^°
Matrizen, Fallunterscheidungen
Matrizen werden in der U m g e b u n g a r r a y gesetzt. Nach dem \ b e g i n { a r r a y > folgt die Beschreibung des Aussehens der Matrix, wobei f ü r jede Spalte eine F o r m a t i e r u n g s a n weisung zu setzen ist: 1 f ü r linksbündig, r für rechtsbündig u n d c f ü r zentriert. Als Beispiel: \[\left( \begin{array}{rrr} \ c o s \ a l p h a fc - \ s i n \ a l p h a & 0 \ \ \sin\alpha & \cos\alpha & 0 \ \ 0 ft 0 & 1 \end{array} \right) \] Hier m u ß n a c h d e m \ b e g i n { a r r a y } und der Formatierungsanweisung j e d e Zeile d u r c h ein \ \ u n d j e d e Spalte durch ein & abgetrennt werden. Beachten Sie b i t t e , d a ß es nicht mehr Spalten geben darf, als in der Formatierungsanweisung a n g e g e b e n wurde. In der letzten Zeile h a t das \ \ zu entfallen. Das Resultat: cos a sin a. 0
— sin a cos a 0
0 0 1
K l a m m e r n m ü s s e n Sie (wie in diesem Beispiel) mit den Befehlen des vorigen Kapitels selbst setzen. Auch ein Vektor ist eine M a t r i x , allerdings eine, die nur eine Spalte (oder eine Zeile) besitzt: /
\
I-P1F11 P2F2I -pnFn
-piFu 1 ~ P2F22 1
-pnFn2
... •••
-piFi« —p2F2n
\
/ Bi \ B2
/ Ex \ E2
...
1 - pnFnn
)
\
\ E
Bn
)
n
)
Dieses kompliziertere Beispiel w u r d e erzeugt durch (bitte beachten Sie die Befehle \ v d o t s und \ d d o t s für : und
'•):
\[\left( \begin{ array M c c c c } l-\rho_lF_{ll> k -\rho_lF_{12}
& \dots
t -\rho_lF_{ln> \\
3.11.
MEHRZEILIGE
141
FORMELN
-\rho_2F_{21} ft l-\rho_2F_{22} ft \dots ft -\rho_2F_{2n} \\ \vdots ft \vdots ft \ddots ft \vdots \\ -\rho_nF_{nl} ft -\rho_nF_{n2> ft \dots ft l-\rho_nF_{nn> \end{array}\right) \lef t ( \begin{arrayHl> B_1 \\ B_2 \\ \vdots \\ B_n \end{array}\right) = \left(\begin{arrayMl} E_1 \\ E_2 \\ \vdots \\ E_n \end{array>\right)
\] Fallunterscheidungen können ebenfalls d u r c h Matrizen gesetzt werden. Hierbei ist jedoch n u r eine K l a m m e r erforderlich: ( 1 sgn(x) = < 0 { -1
Vx > 0 x —0 Vx < 0
In M ^ X müssen die Befehle \ l e f t und \ r i g h t jeweils paarweise a u f t r e t e n . Hier hilft n u r ein Trick: . ist auch eine " K l a m m e r " , jedoch wird nichts gesetzt. So kann m a n \ r i g h t . eingeben, u m die Regeln von I^TeX zu erfüllen. Es erfolgt jedoch keine A u s g a b e (ähnlich ist auch \ l e f t . ) . Die Eingabe lautete: \[{\rm sgn}(x) = \left\{ \begin-Carray>{rl> 1 ft \forall x > 0 \\ 0 ft x=0 \\ -1 ft \forall x < 0 \end{array> \right. \] I^Tf^X erlaubt auch den Satz von komplexeren Matrizen bzw. deren Schachtelung: /
( 41 41 44 10 12
43 43 \\ 45 1
(/ 46 46 l 48
11
f
13
\
43 47 11 15
\\ \\ \\ \\
H
16
47 47 \ 49 15 17
\
w u r d e erzeugt d u r c h \[\lef t(\begin{arrayHcc} \left(\begin{arrayHll} 41 \left(\begin{array}{ll> 46 \left(\begin{array}{ll> 10 \left(\begin{array}{ll> 14 \end{array}\right)\]
3.11
ft ft ft ft
44 48 12 16
ft ft ft ft
45 49 13 17
\end{array}\right) ft \end{array}\right) \\ \end{array}\right) ft \end{array}\right)
Mehrzeilige Formeln
O f t m ü s s e n mehrzeilige Formeln in einem T e x t gesetzt werden, die unter einem Zeichen ausgerichtet sind. Hierfür kennt l ^ I ^ X die U m g e b u n g e q n a r r a y . Sie schaltet
KAPITEL
142
3.
FORMELSATZ
a u t o m a t i s c h in den m a t h - m o d e (und ist daher N I C H T mit \ [ u n d \ ] zu umschließen). Diese U m g e b u n g ist ähnlich einer Matrix mit drei Spalten. Die erste Spalte b e s t e h t aus d e m Formelteil vor d e m ausgerichteten Zeichen, die zweite S p a l t e ist das Zeichen selbst u n d die dritte ist der Formelteil nach d e m Zeichen. Die Spalten sind d u r c h & zu t r e n n e n , eine Zeile wird wieder (bis auf die letzte) mit \ \ abgeschlossen. Jede Zeile h a t also die Form A & Zeichen & B \ \ , wobei A bzw. B der erste u n d zweite Formelteil sind bzw. Zeichen das Zeichen, unter das ausgerichtet werden soll, ist. Als Beispiel: n! = £ > ( « . * ) k
= k =
^ ' integer n > 0
(3.2)
Alle Zeilen der Formel werden automatisch numeriert (auch Referenzen sind natürlich möglich). Will m a n in einer Spalte keine N u m m e r , so ist vor das \ \ ein \ n o n u m b e r zu setzen. Soll in keiner Zeile eine N u m m e r erscheinen, kann m a n stattdessen die U m g e b u n g e q n a r r a y * verwenden. Hier die Eingabe: \begin{eqnarray} n! = \sum_k h(n,k)
&\sum_k {n\choose k} (n-k)\mbox{!'} \nonumber\\ &= ft\sum_k {n\choose k} k\mbox{! '}-,\quad {\rm integer}\, n\geqO
\end{eqnarray} Diese F o r m e l ist noch in einem P u n k t bemerkenswert: das Zeichen i ist ein T e x t m o d u s Zeichen, d a s durch die Zeichenkombination ! ' entsteht (eine sogenannte Ligatur; alle Textmoduszeichen siehe Abschnitt I, A n h a n g B.3). Es ist im m a t h - m o d e nicht v e r f ü g b a r . Hier hilft ein Trick: umschließt m a n einige Zeichen mit einer \ m b o x { . . . } , so schaltet IM?EX t e m p o r ä r in den T e x t m o d u s zurück, wo das Zeichen verfügbar ist. Mehr ü b e r "Boxen" in Kapitel 6.
3.12
Akzente, Relationen, Symbole
I m m a t h - m o d e k ö n n e n keine T e x t m o d u s - A k z e n t e verwendet werden. Hier muß die E i n g a b e wie folgt erfolgen (wieder ist o lediglich ein Beispielbuchstabe): \dot{o> \breve{o} \check{o} \grave \tilde{o>
ö 6 ö ö 5
\ddot{o} \bar{o> \vec{o} \acute{o} \hat{o>
ö ö 0 0 6
\overrightarrow{a+b}
a + i
\overleftarrow{a+b}
a + b
\widetilde{a+b> \overline{a+b}
a+ b a+b
\widehat{a+b} \underline{a+b}
a + b a + b
3.12.
AKZENTE,
RELATIONEN,
SYMBOLE
143
Die letzten Akzente stehen über mehreren Zeichen. Eine Liste aller mathematischen Symbole entnehmen Sie bitte Abschnitt I, Anhang B.3. Beachten Sie bitte, daß auch in L^TjjX alle Relationen verneint werden können, indem m a n ein \ n o t vorstellt, z.B. \ n o t = liefert ^ und \ n o t > liefert ^ . Auch ist es mit \ s t a c k r e l möglich, ein anderes 7 Zeichen über eine Relation zu setzen, z.B. \8tackrel{?}{=]- erzeugt das Symbol == def
bzw. \ a t a c k r e l { d e f }{=} liefert = . Geschwungene Klammern über oder unter Formelteilen werden mit \ o v e r b r a c e bzw. \ u n d e r b r a c e erzeugt: /
k
X +
mal . . . +
V X
ist das Resultat von \[\overbrace{x+\dots+x}"{k\, mal}\]
Hier kann der Text über der Klammer mit " angegeben werden. Äquivalent führt \[\underbrace{x+\dots+x}_{k\,
mal}\]
zu a; + .. . -f x V '
N
k
mal
Im m a t h - m o d e von IfT^X 2.09 können Sie kalligraphische Zeichen mittels \cal erstel-
len, z.B. liefert {\cal F} das Zeichen T. Im math-mode vom neuen der Aufruf \mathcal, z.B. liefert die Eingabe \mathcal{F> die Ausgabe
2£
lautet
T.
Soll in einer Formel ein Teil in Roman gedruckt werden, so öffnen Sie einfach eine \mbox: \ ( \ m b o x { e } * x \ ) liefert e 1 . Das Wechseln der Schriftart in einer Formel ist in &TßX2£ leicht durch die Befehle \mathrm (für Roman), \ m a t h b f (für Fettdruck), \math8f (für Sans Serif) und \ m a t h t t (für Schreibmaschinenschrift) möglich. Diese Befehle ändern nur die Schriftart des normalen Texts und der griechischen Großbuchstaben, alle Symbole bleiben unverändert. Als Beispiel liefert \ [\lef t (\mathbf {P} - (\mathbf{C> + f \mathbf { d » \ r i g h t ) \cdot\mathbf{d> = 0 \]
die
Ausgabe: (P-(C+/d))-d = 0
Sollen auch alle Symbole fett gesetzt werden, hilft der Befehl \boldmath, der allerdings NICHT im math-mode verwendbar ist; hier muß eine \mbox-Konstruktion verwendet werden, in der nochmals in den math-mode gewechselt wird: \[\mbox{\boldmath $\hat\beta$> = \left( \mbox{\boldmath $X$}~\prime \mbox{\boldmath $X$> \right)"{-1} \mboxi\boldmath $X$}"\prime \mbox{\boldmath $y$> \]
144
KAPITEL
3.
FORMELSATZ
liefert: ß = ( X ' X y
1
X ' y
Im liT^X 2.09 können die normalen Befehle zur Änderung der Schriftart im Textmodus auch im math-mode verwendet werden. Wiederum werden nur der normale Text und die griechischen Großbuchstaben in der anderen Schrift gesetzt. Der Befehl Yboldmath funktioniert zwar auch, kann jedoch in bestimmten Fällen versagen. Probieren Sie einfach aus, ob die Symbole, die Sie fett setzen wollen, auch wirklich fett gedrukt werden. Falls nicht, ist der Satz von fetten Symbolen nicht möglich; steigen Sie auf IfTfOOe um! ZUSAMMENFASSUNG • Starten des math-mode durch \ ( , Beenden durch \ ) ; im Displastyle \ [ bzw. \ ] ; Numerierte Formeln in einem Buch durch Umgebung e q u a t i o n • Exponenten:
Indices: _
• Brüche: \ f r a c ; Wurzeln: \ s q r t ; Binomialkoeffizienten u.a.: \ c h o o s e , Ybrack, \brace • Leerplatz in Formeln: \ , • Operatoren: \suro, \ i n t , \ p r o d ; Funktionen wie \ l i m • Klammern mit \ l e f t und \ r i g h t • Matrizen u.a. durch Umgebung a r r a y , Musterzeile wichtig: c für zentriert, 1 für links- und r für rechtsbündig; pro Spalte ein Eintrag • Formelausrichtung durch Umgebung e q n a r r a y ; keine Numerierung einer Zeile durch \nonumber • Symbole, etc. siehe Abschnitt I/B.3; \ c a l / \ m a t h c a l für kaligraphische Fonts; \ b o l d m a t h für Fettdruck in IiTEX2 e ; Akzente
Übungsaufgaben 3.1 Setzen Sie die folgende Formel:
UB UNGSA
UFGABEN
3.2 Setzen Sie die folgende Formel: P{X = x} =
o
3.3 Setzen Sie die folgende Formel: n" lim —- = oo 3.4 Setzen Sie die Matrix:
/ (X'X) =
Ei
E i ®«i E i xn
\ Ei
E i xikxil
E i x*k \ E i X>1 x ik
E i ®»2 E i ®«ia;i2 Z,Z,kXi2
•••
E i x1k
3.5 Setzen Sie mit der eqnarray-Umgebung (mit Formelnummer):
= =
1 - * | 1
- Mo) + zi-c.^
3.6 Setzen Sie die Fallunterscheidung: falls Xi-6o>0 falls Xi - e 0 < 0 3.7 ... und nun noch eine letzte Formel P
)
Kapitel 4
Tabellensatz In I^-TEX ist der Satz von Tabellen (im Vergleich zu plainTßX) einfacher, dennoch treten manchmal Probleme auf. Eine Tabelle kann direkt in den Text oder als Abbildung eingefügt werden. Im letzteren Fall muß man zusätzlich die t a b l e - U m g e b u n g aus Kapitel 2.8 verwenden. Dadurch wird die Tabelle automatisch numeriert; ebenso sind Referenzen möglich. Die Eingabe würde z.B. wie folgt aussehen: \begin{table} '/. < HIER FOLGT DIE TABELLE \captioniEine Tabelle.} \label{Tabelle:EineTab} \end{table} I£T[jX kennt zwei Umgebungen für den Tabellensatz: t a b b i n g und t a b u l a r .
4.1
Tabulatoren
Die Umgebung t a b b i n g simuliert die Tabulatortaste einer Schreibmaschine. Im Text kann ein "Tabulator", also eine Markierung in horizontaler Richtung, an einer bestimmten Stelle gesetzt werden. Dies geschieht durch \=. In den nächsten Zeilen kann danach mittels \> zum nächsten Tabulator gewechselt werden. \begin{tabbing} Das ist eine \= und eine zweite \= und eine dritte \\ Spalte \> Spalte \> Spalte \\ ...und eine gr\"o\ss ere \> Spalte \= drei \\ \> \> vier \\ \end{tabbing}
KAPITEL
148
4.
TABELLENSATZ
Das ist eine und eine zweite u n d eine dritte Spalte Spalte Spalte ...und eine gfijJ&ie drei vier
In der ersten Zeile werden an b e s t i m m t e n Positionen T a b u l a t o r e n gesetzt, es wird also die Zeile in drei Spalten aufgeteilt. In der nächsten Zeile werden d a n n die Positionen, die in der ersten Zeile definiert wurden, verwendet. Jede Zeile m u ß wieder m i t einem \ \ abgeschlossen werden. Selbstverständlich k a n n m a n Tabulatorpositionen a u c h umdefinieren, i n d e m m a n an die neue Position wieder ein \ = setzt, wie in der d r i t t e n Zeile geschehen. Ist der Eintrag einer Spalte zu groß, wird einfach in die n ä c h s t e Spalte hineingeschrieben (daher ist Vorsicht geboten, wie Zeile 3 zeigt). Die U m g e b u n g ist beim Satz von Quelltexten äußerst hilfreich: p r o c e d u r e z-Buffer; v a r pz : integer; begin Initialisieren des z-Buffers f o r Jeden Polygonzug d o f o r Jeden Punk (x,y) in der 2D-Projektion begin
des Polygonzuges
if pz > = ReadZ(z,j/) begin WriteZ(x, y); WritePixel(x,jf, Farbe im end
do
Punkt(x,y));
end end w u r d e erzeugt durch \begin{tabbing} {\bf procedure} {\sl z-Buffer}; \\ {\bf var} {\it pz} : integer; \\ {\bf begin}\= \\ \> {\it Initialisieren des z — B u f f e r s } \\ \> {\bf for} \= {\it Jeden Polygonzug} {\bf do} \\ \> \> {\bf for} \= {\it Jeden Punk (x,y) in der 2D-Projektion des Polygonzuges} {\bf do} \\ \> \> \> i\bf begin} \= \\ \> \> \> \> {\it pz} = {\it z—Koordinate von (x,y)}; \\ \> \> \> \> {\bf if} \={\it pz} $>=$ ReadZ({\it x},{\it y}) \\ \> \> \> \> \> {\bf begin} \= \\ \> \> \> \> \> \> WriteZ({\it x},{\it y}); \\ \> \> \> \> \> \> WritePixel({\it x},{\it y},
4.2.
DIE UMGEBUNG
149
TABULAR
{\it Farbe im Punkt(x,y)}); \\ \> \> \> \> \> {\bf end} \\ \> \> \> {\bf end} \\ {\bf end} \end{tabbing}
4.2
D i e U m g e b u n g tabular
Die eindeutig leistungsfähigere Umgebung ist t a b u l a r . Hier wird die Spaltengröße a u t o m a t i s c h nach dem längsten E i n t r a g in die Tabelle b e s t i m m t . Sie ähnelt der a r r a y U m g e b u n g im m a t h e m a t i s c h e n Modus. Auch hier ist die A n g a b e einer "Musterzeile" erforderlich, die wieder aus 1, r u n d c besteht, die die Ausrichtung der Spalte angeben. Die Zahl dieser B u c h s t a b e n gibt d a m i t die Anzahl der Spalten an! Die einzelnen Spalten werden wieder durch ft abgetrennt, die einzelnen Zeilen durch \ \ : \begin{center} \begin{tabular}{lccr} Objekt 1 ft 1 7 . 9 9 8 ft 9 9 . 1 1 9 3 ft M V ' o g l i c h k e i t 1 \ \ O b j e k t 19961 & 1 & 985.3 ft \\ O b j e k t 8849 ft 1 9 . 8 8 ft 1 ft (enc.) \ \ O b j e k t 19961 ft 1000 ft ft — \\ \end{tabular} \end{center} liefert: Objekt Objekt Objekt Objekt
1 19961 8849 19961
17.998 1 19.88 1000
99.1193 985.3 1
Möglichkeit 1 — (enc.) —
Hier w u r d e die Tabelle gleich durch die c e n t e r - U m g e b u n g zentriert gesetzt. Beachten Sie b i t t e die Ausrichtung der Spalten! Natürlich kann a u c h eine Spalte leer bleiben, wie in der vierten Zeile geschehen. Hier ist n u r darauf zu achten, d a ß das nachfolgende ft (bzw. \ \ ) t r o t z d e m angegeben wird, auch wenn zwischen zwei &-Symbolen d a n n kein Text s t e h t . M ^ j X bietet die Möglichkeit, zwischen den Spalten a u t o m a t i s c h Zeichen bzw. Leerplatz einzufügen. Dies geschieht über eine Definition in der Musterzeile. Zwischen zwei 1, r bzw. c Einträgen k a n n ein ® (ein "Klammeraffe"), gefolgt von einem Klammera u s d r u c k , eingefügt werden. Dies bewirkt, daß der in K l a m m e r angegebene Text in jeder Zeile zwischen den beiden Spalten eingefügt wird. In der nächsten Tabelle wird mit fi{\hspace-tl .5cm}} nach der ersten Spalte ein zusätzlicher Leerplatz gelassen u n d zwischen der zweiten u n d dritten Spalte mit ffl{—} a u t o m a t i s c h ein Bindestrich erzeugt:
KAPITEL
150
4.
TABELLENSATZ
\begini center} \ b e g i n { t a b u l a r } { l f i { \ h s p a c e { l • 5cm}}rfi{ }lr} { \ b f Nr. d e s O b j e k t s } ft { \ s l P a r a m . l } ft { \ s l P a r a m . 2 } & { \ i t Anmerkungen}\\ \noalign{\bigskip} Objekt 1 & 1 7 . 9 9 8 ft 9 9 . 1 1 9 3 ft M V ' o g l i c h k e i t 1 \ \ O b j e k t 19961 ft 9 1 0 . 6 ft 9 8 5 . 3 ft \\ O b j e k t 8849 ft 1 9 . 8 8 ft 2 1 . 9 9 8 ft ( e n c . ) \ \ O b j e k t 19961 ft 1000 ft 1005 ft — \\ \end{tabular} \end{center} liefert: N r . des Objekts Objekt Objekt Objekt Objekt
1 19961 8849 19961
Param.l—Param.2 17.998—99.1193 910.6—985.3 19.88—21.998 1000—1005
Anmerkungen Möglichkeit 1 (enc.)
Bitte beachten Sie, daß die zweite und dritte Spalte formal getrennt sind, d.h. zwischen ihren Einträgen muß ein ft stehen. Hier wurde auch zwischen zwei Zeilen ein Leerplatz gelassen. Dies geschieht mittels \ n o a l i g n , gefolgt von einer Angabe eines Leerplatzes (aus Kapitel 2.1). (Dieser Befehl kommt aus den Tiefen von plainTf^X.) Soll ein mehrzelliger Text als Spalte in einer Tabelle gesetzt werden, kann in der Musterzeile auch ein p { . . . } (anstelle 1, r bzw. c) verwendet werden, wobei in der Klammer die maximale Breite des Textes angegeben werden muß. I^TgX formatiert d a n n den Text zu einem kleinen Absatz der angegebenen Breite und fügt ihn ein: N r . des Objekts Objekt 1
Param.l—Param.2 17.998—99.1193
Objekt 19961
910.6—985.3
Objekt 8849 Objekt 19961
19.88—21.998 1000—1005
Anmerkungen Eine nicht sehr gute Möglichkeit. Hier tritt oftmals ein Fehler auf. Kein Fehler bekannt. Beste Wahl!
Hier lautet die Eingabe: Ybegin{center} \ b e g i n { t a b u l a r } { l ® { \ h s p a c e { l . 5cm}}r4K }lp{4cm}} { \ b f N r . d e s O b j e k t s } ft { \ s l P a r a m . l } ft { \ s l P a r a m . 2 } ft { \ i t Anmerkungen}\\ \noalign{\bigskip} O b j e k t 1 ft 1 7 . 9 9 8 ft 9 9 . 1 1 9 3 ft Eine n i c h t s e h r g u t e M V ' o g l i c h k e i t . \ \ O b j e k t 19961 ft 9 1 0 . 6 ft 9 8 5 . 3 ft H i e r t r i t t o f t m a l s e i n F e h l e r a u f A \
4.3. GERAHMTE
151
TABELLEN
Objekt 8849 ft 19.88 ft 21.998 ft Kein Fehler bekannt. \\ Objekt 19961 ft 1000 ft 1005 ft Beste Wahl! \\ \end{tabular} \end{center}
4.3
Gerahmte Tabellen
Wünscht man gerahmte Tabellen, so ist mit einer kleinen Änderung in der t a b u l a r Umgebung deren Satz möglich. Fügen Sie in der Musterzeile an der Stelle, an der zwei Spalten getrennt werden sollen, einfach ein I ein. IATßX wird automatisch zwischen zwei Spalten eine Linie einfügen. (Für plainT^X-Kenner: eine Linie ist in I^r^pt keine eigene Spalte, somit muß auch zwischen den Tabelleneinträgen ein ftft NICHT angegeben werden). Eine horizontale Linie wird durch ein \ h l i n e erzeugt. Natürlich können auch mehrere dieser Befehle nebeneinender stehen: \begin{center} \begin{tabular}{I1IIrffl{ }1IrI} \hline\hline {\bf Nr. des Objekts} ft {\sl Param.lJ ft {\sl Param.2} ft {\it Anmerkungen}\\ \hline Objekt 1 ft 17.998 ft 99.1193 ft MV'oglichkeit 1 Objekt 19961 ft 910.6 ft 985.3 ft — \ \ Objekt 8849 ft 19.88 ft 21.998 ft (enc.) \\ Objekt 19961 ft 1000 ft 1005 ft — w \hline\hline \end{tabular} \end{center}
liefert: Nr. des Objekts Objekt 1 Objekt 19961 Objekt 8849 Objekt 19961
Param. 1 —Par am. 2 17.998—99.1193 910.6—985.3 19.88—21.998 1000—1005
Anmerkungen Möglichkeit 1 (enc.)
Das war alles! Sie sehen, daß nicht jede Spalte durch einen Strich abgetrennt wird. Durch eine einfache Änderung der Musterzeile wurde ein Rahmen in die Tabelle eingefügt. Manchmal werden jedoch Spaltenüberschriften benötigt: Nr. des Objekts Objekt Objekt Objekt Objekt
1 19961 8849 19961
Nr. 1 17.998 910.6 19.88 1000
Parameter Nr. 2 99.1193 985.3 21.998 1005
Anmerkungen Nr. 3 77.86 77.99 80.1 79.55
Möglichkeit 1 —
(enc.) —
KAPITEL
152
4.
TABELLENSATZ
Dies erfordert die K e n n t n i s zweier Befehle: \ m u l t i c o l u m n u n d \ c l i n e . Der erste Befehl zieht mehrere Spalten zu einer z u s a m m e n . Die Eingabe \multicolumn{3M I c I M P r o b e t e x t } zieht 3 Spalten z u s a m m e n und setzt den Text " P r o b e t e x t " in die neue Spalte zentriert, mit rechts u n d links einem Strich. F ü r IfTßX ist die Formatierungsanweisung als zweiter P a r a m e t e r besonders wichtig, sie darf niemals weggelassen werden. Insbesondere bei g e r a h m t e n Tabellen ist darauf zu achten, d a ß die rechte begrenzende Linie auch m i t angegeben wird; wenn die Spalte die erste ist, m u ß auch die linke Linie angegeben werden. Diese F o r m a t i e r u n g s a n g a b e kann a u c h f ü r einen Trick dienen: wird nur eine Spalte "zusammengezogen", so wird lediglich die F o r m a t i e r u n g g e ä n d e r t . Der Befehl \ c l i n e { l - 3 } zieht eine horizontale Line zwischen den angegebenen Spalten, hier zwischen Spalte 1 u n d 3. Dieser Befehl folgt meist direkt einem \ \ . Die beiden S p a l t e n a n g a b e n müssen durch einen Bindestrich a b g e t r e n n t werden. Die E i n g a b e war: \begin{center} \begin-CtabularH ll||l|l|l|r|> \hline\hline {\bf Nr. des Objekts} & \multicolumn-(3>{c I H \ s l Parameter} & {\it Anmerkungen}\\ \cline{2-4} k Nr. 1 & Nr. 2 k Nr. 3 & \\ \hline Objekt 1 k 17.998 k 99.1193 & 77.86 & MV'oglichkeit 1 \\ Objekt 19961 k 910.6 & 985.3 & 77.99 & \\ Objekt 8849 k 19.88 k 21.998 k 80.1 & \multicolumn{l}{lI} {(enc.)} \\ Objekt 19961 k 1000 k 1005 & 79.55 k — \\ \hline\hline \end{tabular} \end{center} In der zweiten Uberschriftzeile steht in der ersten und in der letzten Spalte kein Text; somit beginnt die Zeile mit einem & (einem leeren Eintrag) und endet mit & \ \ , also ebenfalls mit einer leeren Spalte. D a n a c h folgt ein \ c l i n e , u m den kurzen Strich zu zeichnen. Beachten Sie b i t t e das linksbündige "(enc.)" in der d r i t t e n Zeile! D u r c h die K o n s t r u k t i o n \ m u l t i c o l u m n { l } { l | } { ( e n c l . ) } wurde die Ausrichtung dieses einen E l e m e n t s g e ä n d e r t . (Sollten Sie bei einer Spalte nicht wissen, ob d a s Zeichen I in der \ m u l t i c o l u m n - A n w e i s u n g gesetzt werden m u ß oder nicht, so probieren Sie es a m besten aus. Setzen Sie zuerst den rechten Strich u n d sehen sich das Ergebnis a n . Fehlt n u n in der Tabelle der linke Strich, so m u ß noch ein Zeichen angegeben werden.) In einem letzten Schritt wollen wir jetzt die Tabelle noch erweitern:
4.3.
GERAHMTE
153
TABELLEN Objekte
N r . des O b j e k t s Objekt Objekt Objekt Objekt
1 19961 . . . . 8849 19961 . . . .
im
Verkauf
Parameter Nr. 1 Nr. 2 17.998 99.1193 910.6 985.3 19.88 21.998 1000 1005
Anmerkungen Nr. 3 77.86 77.99 80.1 79.55
Möglichkeit 1 —
(enc.) —
Hier soll I M ^ X die erste Spalte mit Punkten auffüllen. Der Befehl dazu lautet \dotf i l l ; am besten geben Sie ihn direkt nach den Tabelleneinträgen an. Im diesem Beispiel wurde auch noch eine Überschrift in dem für ÜT^X so typischen Stil hinzugefügt: \begin{center} \begin{tabular}{|l||l|l|l|r|> \hline \ m u l t i c u l u m n { 5 } { I c I } { \ s l Objekte im V e r k a u f } \\ \hline\hline { \ b f Nr. des O b j e k t s } ft \ m u l t i c o l u m n { 3 } { c I H \ s l P a r a m e t e r } ft { \ i t Anmerkungen}\\ \cline{2-4} & Nr. 1 & Nr. 2 ft Nr. 3 ft \\ \hline Objekt 1 \ d o t f i l l ft 1 7 . 9 9 8 ft 9 9 . 1 1 9 3 ft 77.86 ft M V ' o g l i c h k e i t 1 \\ Objekt 19961 \ d o t f i l l ft 9 1 0 . 6 & 9 8 5 . 3 ft 7 7 . 9 9 ft \\ Objekt 8849 \ d o t f i l l & 1 9 . 8 8 ft 2 1 . 9 9 8 ft 8 0 . 1 ft ( e n c . ) \\ Objekt 19961 \ d o t f i l l ft 1000 ft 1005 ft 79.55 ft \\ \hline \end{tabular} \end{center} In I^TßX sind noch weitere Befehle zum Auffüllen eines Leerplatzes definiert: \hrulef i l l \dotfill \upbracefill \downbracefill \leftarrowfill \rightarrowfill
v
v
•
f
*
s
< •
KAPITEL
154
4.
TABELLENSATZ
ZUSAMMENFASSUNG • Tabellen in der Umgebung table setzen oder direkt im Text • Tabulatoren in der Umgebung t a b b i n g , \ = setzt Tabulator, \> verändert Position • Tabellen in der Umgebung t a b u l a r , gefolgt von Musterzeile; Einträge: 1, r , c, p pro Spalte; ® fügt Einträge zwischen Spalten ein • Gerahmte Tabellen: Striche mit | in Musterzeile, horizontal mit \ h l i n e • Spaltenüberschriften: \multicolumii, \ c l i n e
Übungsaufgaben 4.1 Setzen Sie folgende Tabelle: Preistafel dei Angebot Angebot 1 Angebot 2 Angebot 3
Angebote
Kontingent Preis km 2000 2000 — — 3000
Preis OS 2000 1700 2700
4.2 Setzen Sie folgende Tabelle (entnommen aus den "Boston Computer Society Benchmarks"; nach R. P. Feynman, "The Feynman Lectures on Physics", Addison Wesley, 1965): Physical Quantity
Operator
Energy Position
H
Momentum
Coordinate Form
X
X
y z
y z
Px Py Pz
T>
— 1 _
& 9 » a„
•è _ h a ^y - i dv -p _ h d
-
i a,
Kapitel 5
Makros, Definitionen IfT^X gibt Ihnen die Möglichkeit, eigene Befehle zu definieren. Meist sind diese als Arbeitserleichterung gedacht. Ebenso können auch neue Umgebungen definiert werden. Üblicherweise werden alle Definitionen in einem eigenen Style abgelegt. Sie sollten dies auch tun. Erstellen Sie eine Datei name . s t y , wobei der name frei wählbar ist. In diese Datei schreiben Sie dann alle Definitionen. In Ihrem Dokument können Sie dieses neue "Paket" dann mit dem plainl^X-Befehl \ i n p u t in der Präambel einbinden: \ i n p u t name.s t y
5.1
Einfache Makros
Einfache Makros verkürzen die Eingabe. Wollen Sie z.B. die Formel
setzen, so benötigen Sie folgende Eingabe: \ [ \ s u m _ { ( x _ l , \ l d o t s , x _ n ) \ n o t = 0} \ l e i t ( f ( x _ l , \ l d o t a , x _ n ) + g(x_l,\ldots,x_n) \right) \] Hier könnte man ein Makro ins Spiel bringen: die Zeichenkette ( a ^ , . . . , x n ) könnte man als eigenen Befehl, z.B. unter \ v e k t , abspeichern. Dies geschieht mit dem M f e X Befehl \newcommand: \newcommand{\vektM(x_l , \ l d o t s ,x_n)} Ein Aufruf von \ v e k t liefert nun den angegebenen Vektor: \ [ \sum_{\vekt\not= 0} \left(f\vekt + g\vekt \right) \]
156
KAPITEL
5. MAKROS,
DEFINITIONEN
Die Eingabe wurde also deutlich verkürzt. Soll ein bereits definierter Befehl umdefiniert werden (auch dies ist möglich), so verwenden Sie stattdessen \renewcommand. "Don't redefine an existing command unless you know what you're doing", diese Warnung von L. Lamport möchte ich hier an Sie weitergeben! Sie können auch ganze Umgebungen neu definieren, z.B. um einen hervorgehobenen Text in einer anderen Schriftart zu setzen: \newenvironment{hervorgehoben} {\begin{center} {Ybf Zitat:} \end{center} \begin{quote} \sc}"/, {\end{quote}} Hier wird zuerst der Name der neuen Umgebung angegeben, danach die Befehle, die zur Initialisierung nach \ b e g i n { h e r v o r g e h o b e n } ausgeführt werden und zuletzt die Befehle, die die Umgebung abschließen, also bei \ e n d { h e r v o r g e h o b e n } ausgeführt werden. Als Beispiel: \begin{hervorgehoben} Das ist ein Test f\"ur die neue Umgebung ''hervorgehoben'', die den Text in KapitV'alchen druckt, samt V'Uberschrift. \end{hervorgehoben} liefert: Zitat: DAS IST EIN T E S T FÜR DIE NEUE U M G E B U N G " H E R V O R G E H O B E N " ,
DIE
DEN T E X T IN K A P I T Ä L C H E N D R U C K T , SAMT Ü B E R S C H R I F T .
W I C H T I G : Bei der Definition von \newenvironment müssen die beiden letzten Parameter in einer Zeile stehen. Äquivalent kann man auch (wie im obigen Beispiel) diese durch einen Zeilenumbruch trennen, jedoch muß dann ein Kommentarzeichen '/, die erste Zeile beenden.
5.2
Makros mit Parametern
Oftmals muß einem Befehl eine zusätzliche Information mitgegeben werden, diese nennt man Parameter. Zur Einführung diene folgendes Beispiel: In Mathematikbüchern ist es üblich, einen Vektor durch einen fetten Kleinbuchstaben anzugeben, manchmal auch mit einem Vektorakzent (a) zu versehen. Wir wollen ein Makro W e c t definieren, das einen solchen Buchstaben mit dem Aufruf W e c t a erzeugt: \newcommand{\Vect}[1]{\vec{\bf #1}} Nach der Definition des Namens steht die Anzahl der Parameter, M f e X erlaubt höchstens 9. In der Definition wird an der Stelle, an der MfeX den Parameter einsetzen soll, einfach #1, #2,... gesetzt. Mit der Definition wird dann \ ( \ V e c t p\) zu p. M f e X übernimmt als Parameter immer nur das nächste Zeichen, sollen mehrere Zeichen als Parameter übernommen werden, so muß man diese mit Gruppenklammern umschließen. Als ein Beispiel eines Befehls mit zwei Parametern:
5.2. MAKROS MIT
157
PARAMETERN
\newcommand{\db} [2]{\left(\!{#l\choose#2}\!\right)} Haben Sie erkannt, was dieses Makro bewirkt? Es setzt einen Ausdruck der Form ((fc))' w ° b e i die beiden Werte als zwei Parameter, #1 und #2, angegeben werden. IM?EX ersetzt diese Symbole dann durch die angegebenen Zeichen. Es sind dann solche Formeln möglich:
Die Eingabe dazu lautete: \newcommand{\mod}{\mathop{\rm mod}}
\[\db{k> = \db{n-lHk> + \db{n-lH(k-l)\mod 5} \] Hier wurde gleich ein zweites Makro definiert: \mod. Sie wissen ja, daß I^T^X z.B. die mathematische Funktion log mittels \ l o g zugänglich macht. Hier definieren wir uns ein neues Makro: \mod, das ähnlich arbeitet. Der Befehl \mathop weist I f T ß X an, den danachfolgenden Text als Funktion anzusehen. Man kann allerdings auch Umgebungen Parameter mitgeben. Als Beispiel diene wieder:
\newenvironment{hervorgehoben}[1] {\begin{center} {\bf #1} \end{center} \begin{quote} \sc}'/, {\end{quote}} Hier wurde nach dem Namen der neuen Umgebung die Zahl der Parameter angegeben. Anstatt dem "Zitat:" wird nun dieser Parameter gesetzt. Beachten Sie bitte, daß im zweiten Teil der Definition (der bei \ e n d { . . . } ausgeführt wird) K E I N E Parameter enthalten sein dürfen. Die Eingabe \begin{hervorgehoben>{WICHTIG> Das ist ein Test f\"ur die neue Umgebung. Hier kann man die V'Uberschrift angeben. \end{hervorgehoben} liefert:
WICHTIG DAS
IST EIN
ÜBERSCHRIFT
T E S T FÜR DIE NEUE ANGEBEN.
UMGEBUNG.
HIER KANN
MAN
DIE
KAPITEL
158
5.3
5. MAKROS,
DEFINITIONEN
Zählregister
5.3.1 In diesem Abschnitt möchte ich ein Makro vorstellen, das Absätze (wie in manchen Mathematikbüchern üblich) numeriert, so wie diese. 5.3.2 IfTßX numeriert Kapitel, Formeln, etc. automatisch. Die Nummern werden in Variablen, sogenannten "Zählregistern", gespeichert. Die Werte der Variablen kann man ausgeben oder ändern. Sie können eigene Zählregister mit dem Befehl \ n e w c o u n t e r anfordern, gefolgt von einem Namen. Danach kann angegeben werden, in welchen Abständen das Register "geleert" wird. Steht hier [ c h a p t e r ] oder [ s e c t i o n ] , so wird die Variable nach jedem Kapitel bzw. Abschnitt wieder auf Null gesetzt. Fehlt diese Angabe, wird die Variable nicht automatisch geändert. Als Beispiel reserviert \newcounter{absatz}[section] eine neue Variable a b s a t z , wobei die Variable bei jedem Abschnitt auf Null zurückgesetzt wird. Diese Definition muß in der Präambel erfolgen. 5.3.3 Jedes Zählregister läßt sich mit den Befehlen \ a r a b i c , \roman und \Romaxi ausgeben. Im ersten Fall wird eine arabische, im zweiten eine römische Zahl mit Kleinbuchstaben und im dritten eine römische Zahl mit Großbuchstaben ausgegeben. Der Aufruf \ a r a b i c { a b s a t z > liefert also die Zahl "27", wenn diese in der Variable gespeichert ist; \ r o m a n { a b s a t z } jedoch "xxvii". 5.3.4 Den Wert des Zählregisters verändert man durch \ s e t c o u n t e r , z.B. \setcounter{absatz}{17} setzt die Variable auf den Wert 17. Mit \addtocounter{absatz}{3} wird zu der Variable die Zahl 3 addiert (auch negative Angaben sind möglich). 5.3.5 Wir kommen nun zur Definition des eigentlichen Makros \ a b s a t z , das unser Zählregister weiterzählt und die Nummer, erweitert um Kapitel- und Abschnittsnummer, im Dokument setzt. Die letzteren sind in den Registern c h a p t e r und s e c t i o n enthalten. \newcommand{\absatzH\medskip\noindent\addtocounter{absatz}{l} •f\bf \ a r a b i c { c h a p t e r > . \ a r a b i c { s e c t i o n > . \ a r a b i c { a b s a t z } } \ } 5.3.6 Einen Absatz, der eine Nummer erhalten soll, leitet man dann mit \ a b s a t z ein; z.B. die ersten beiden Absätze dieses Abschnittes lauten: \absatz I n diesem A b s c h n i t t raV'ochte i c h e i n Makro v o r s t e l l e n , das AbsV'atze (wie i n manchen MathematikbV'uchern V ' u b l i c h ) n u m e r i e r t , so wie d i e s e . \absatz \LaTeX\ n u m e r i e r t K a p i t e l , Formeln, e t c . a u t o m a t i s c h . Die Nummern werden i n V a r i a b l e n , sogenannten " Z V ' a h l r e g i s t e r n ' ' , g e s p e i c h e r t .
...
ÜBUNGSA
159
UFGABEN
5 . 3 . 7 E r w e i t e r u n g . Das Makro könnte man noch erweitern, indem man eine "Absatzüberschrift" drucken läßt, wie bei diesem Absatz. Hier benötigt man nur eine kleine Änderung: \newcommand{\absatz} [1] {\medskip\noindent\addtocounter{absatz}{l}'/. {\bf \arabic{chapter}.\arabic{section}.\arabic{absatz}\ #i.}\ } Hier wurde lediglich ein Parameter eingefügt. Beachten Sie bitte, daß am Ende noch ein Punkt gedruckt wird. Dieser Absatz wurde dann durch \absatz{Erweiterung} Das Makro kV'onnte man noch e r w e i t e m , indem man eine ''AbsatzV'uberschrift'' drucken l\"a\ss t, wie bei diesem Absatz... erzeugt.
ZUSAMMENFASSUNG • Makros definieren: \newcommand, neue Umgebungen mittels \newenvironment; Umdefinieren eines Makros: \renewcommand bzw. \renewenvironment • Makros mit Parameter; Parametersymbole #1, #2,... werden durch angegebene Parameter ersetzt • Zählregister: \newcounter; Werte ausgeben: \ a r a b i c , \Roman, \roman; Wert ändern: \ s e t c o u n t e r ; Wert addieren: \addtocounter
Übungsaufgaben 5.1 Definieren Sie ein neues Makro \bbrace, das einen Ausdruck der Form { { £ } } setzt, ähnlich dem \db-Makro von Kapitel 5.2 5.2 Definieren Sie ein Makro \VECT mit einem Parameter, das einen Spaltenvektor der Form / Ol \ o2 \
/
setzt, wobei der Buchstabe a als Parameter übergeben werden soll.
Kapitel 6
Änderung der Ausgabeform LfTgX formatiert den Text selbständig nach einem vorgegebenen Format, das in Styles abgelegt ist. Meist wird Ihnen ein passender Style vorliegen, manche Verlage bzw. Universitäten haben ihr eigenes Layout definiert und als s t y - D a t e i abgelegt. Im allgemeinen müssen diese Styles alle Befehle des Kapitels 2 zur Verfügung stellen, sodaß Sie keine wesentlichen Änderungen am Layout vorzunehmen haben werden (dies erfordert nämlich große Kenntnisse auch von plainT^X, die weit über dieses Buch hinausgehen). Einige Punkte sind jedoch noch erwähnenswert:
6.1
Seitenlayout
Eine Seite besteht im allgemeinen aus einer Kopfzeile (hier stehen in diesem Buch die Seitennummer bzw. zusätzliche Informationen), der Fläche für den Text und der Fußzeile. Dieses Verhalten kann man mittels \ p a g e s t y l e { Option} ändern: • p i a i n : die Kopfzeile ist leer, in der Fußzeile steht zentriert die Seitennummer • empty: K o p f - und Fußzeile sind leer • h e a d i n g s : erzeugt eine Kopfzeile wie in diesem Buch; hierbei wird die Information den Befehlen \ c h a p t e r und \ s e c t i o n entnommen. • myheadings: in der Kopfzeile werden Informationen gedruckt, die Sie explizit angeben. Dies geschieht mittels \markboth bzw. \ m a r k r i g h t . Dem Befehl \markboth müssen zwei Parameter übergeben werden, die den Text, der auf der linken bzw. der rechten Seite gedruckt werden soll, angeben; z.B. \markboth{S. KatzenbeisserMTheorie der...} Ist das Dokument kein Buch oder wurde die Option t w o s i d e nicht angegeben, entfällt die Unterscheidung zwischen linker und rechter Seite. Hier muß \ m a r k r i g h t verwendet werden, das einen Parameter besitzt. In einem doppelseitigem Druck verändert dieser Befehl nur den Text, der rechts gedruckt wird.
KAPITEL
162
6. ÄNDERUNG
DER
AUSGABEFORM
Durch den Befehl \pagenumbering{ Option} kann das Format der Seitennummer angegeben werden. Gültige Optionen sind: a r a b i c liefert arabische Zahlen, roman römische Zahlen (Kleinbuchstaben), Roman römische Zahlen (Großbuchstaben), a l p h Kleinbuchstaben a...z und Alph Großbuchstaben A...Z.
6.2
Zweispaltiger Text
Zweispaltiger Text wird durch die Option twocolumnin der Präambel angegeben. Soll nur kurzzeitig ein Text zweispaltig gesetzt werden, so hilft \ t w o c o l u m n [ . . . ] wobei zusätzlich ein Text übergeben werden kann, der über beide Spalten gesetzt wird. Dieser Befehl beginnt eine neue Seite. Beendet wird dieser Modus durch \onecolumn; hier wird ebenfalls eine neue Seite begonnen. Der Zwischenraum zwischen den beiden Spalten kann durch \setlength{\column8epMx pt} verändert werden, wobei x eine Längenangabe sein muß. Soll ein Trennstrich zwischen den Spalten gedruckt werden, so kann man dessen Dicke über \ c o l u m n s e p r u l e angeben. Meist wird 0.4pt ausreichen: \setlength{\columnseprule}{0.4pt}
6.3 Das ist ein Test für eine Randnotiz.
Randnotizen
In manchen Büchern werden Randnotizen verwendet, wie z.B. hier. Dies wird mittels \ m a r g i n p a r erzeugt. Der angegebene Text wird am Rand der Seite gedruckt. Ist die Option t w o s i d e angegeben, so stehen diese Notizen abwechselnd auf dem linken und rechtem Rand, je nach der Seitennummer. Ist diese Option nicht angegeben, so stehen sie immer links. Dieses Verhalten kann durch \ r e v e r s e m a r g i n p a r verändert werden, sodaß die Notizen immer rechts stehen. Diese Notiz wurde z.B. durch \marginpar{Das i s t e i n Test f V ' u r e i n e R a n d n o t i z . } erzeugt. Manchmal soll die Notiz unterschiedlich sein, je nach dem, wo sie gedruckt wird. Hier hilft \marginpar[\(\hf ill\rightarrow\)H\(\leftarrow\hf i l l \ ) >
Es werden hier zwei Parameter angegeben. Der erste wird gedruckt, wenn die Notiz —> links gesetzt wird (so wie hier); der zweite, wenn die Notiz rechts erscheint. Zusätzlich bewirkt \ h f i l l , daß der Pfeil ganz an den Text geschoben wird (siehe übernächsten Abschnitt). Die Größe der Notizen können Sie durch \ m a r g i n p a r w i d t h steuern, z.B. \setlength{\marginparwidth}{2cm> setzt die Größe der Notizen auf maximal 2cm fest.
6.4. SEITENFORM,
6.4
ABSATZFORMATIERUNG
163
Seitenform, Absatzformatierung
Im neuen &TgX 2e kann die Seitengröße auch über Optionen in der Präambel verändert werden; siehe Abschnitt 1.3. Die Seitengröße ist in den Variablen \ t e x t h e i g h t und \ t e x t w i d t h gespeichert. Sie werden normalerweise über den Style definiert. Sollen sie geändert werden, ist folgende Eingabe notwendig: \setlength{\textheight}{x pt} \setlength{\textwidth}{y pt}
Dabei wird die Größe der Kopf- und Fußzeile nicht eingerechnet. Der Zeilenabstand ist in der Variablen \ b a s e l i n e s k i p enthalten, sie speichert den Abstand von der Basislinie von einer Zeile zu der Basislinie der nächsten Zeile. Schalten Sie in eine kleinere Schrift um, wird der Zeilenabstand automatisch adaptiert. Soll er trotzdem geändert werden, hilft: \8etlength{\baselineskipHx pt}
IM^X bietet auch die Möglichkeit, den Zeilenabstand zu skalieren. Soll er auf die doppelte Größe gesetzt werden, kann man folgende Anweisung verwenden: \renewcommand{\baselinestretch}{2}
I^TßX multipliziert dann den Wert von \ b a s e l i n e s k i p mit \ b a s e l i n e s t r e t c h , um den tatsächlichen Abstand zu erhalten. Die Größe der Einrückung am Beginn des Absatzes ist in \ p a r i n d e n t gespeichert; der Abstand zwischen zwei Absätzen in \ p a r s k i p . Man ändert sie (wie gewohnt) durch: \setlength{\parindentMx pt} \aetlength{\parskipHx pt}
6.5
Boxen
Wenn MfeX Text formatiert und eine Seite zusammenstellt, ist für ihn jeder Buchstabe eine "Box", ein Rechteck, dessen Ausmaße er kennt. interessiert sich überhaupt nicht für deren Inhalt, lediglich die Größe muß bekannt sein, um die Boxen optimal plazieren zu können. Nicht nur Buchstaben sind Boxen, auch cille mathematischen Zeichen und die Formel selbst. Sie können auch "händisch" Boxen erzeugen, wenn Sie Text etwas anders formatieren wollen. Der einfachste Befehl ist \mbox, den Sie aus dem math-mode schon kennen. Er erzeugt eine Box, die genau die Ausmaße des danachfolgenden, in Klammern gesetzten, Textes hat. Der Befehl \makebox arbeitet ähnlich, er erzeugt jedoch eine Box einer ganz bestimmten Größe, die nach dem Befehl in eckigen Klammern angegeben werden muß. Optional folgt auch noch eine Formatierungsangabe. Der Text einer Box wird in geschwungenen Klammern angegeben (und wird von l^T^X bei einem Zeilenumbruch auch nicht abgetrennt):
KAPITEL
164
6. ÄNDERUNG DER
AUSGABEFORM
\begin{flushleft > Ein \makebox[3cm]{Beispiel} fV'ur eine Box.W Ein \makebox[3cm][1]{Beispiel} f\"ur eine Box.W Ein \makebox[3cm][r]{Beispiel} fV'ur eine Box.W \end{flushleft} liefert: Ein Beispiel für eine Box. Ein Beispiel für eine Box. Ein Beispiel für eine Box. Ersetzt man \makebox durch \framebox (alle Parameter bleiben gleich), so wird die Box eingerahmt, z.B. \framebox [2cm] { B e i s p i e l } liefert: Beispiel . So wurde z.B. auch die Zusammenfassung am Ende jedes Kapitels dieses Buches erstellt. Boxen können auch ganze Absätze als Inhalt haben, hier lautet der Befehl \parbox. Als Parameter ist (diesmal in geschwungenen Klammern) die maximale Breite des Absatzes anzugeben: \framebox{\sloppy \parbox{3.5cm}{Das ist ein Beispiel fV'ur die Verwendung einer einfachen Box in Verbindung mit einer anderen} \ UND \ \parbox{3.5cm}{Das ist eine zweite Box, die neben der ersten in einer Zeile steht.} } liefert die ungewöhliche Konstruktion: Das ist ein Beispiel für _ . . . . . . . . . Das ist eine zweite die Verwendung einer _ .. . . neben einfachen Box in Ver- UND B o * ' ,. , ... ersten in einer Zeile bindung mit einer an, . steht, . deren Wie Sie sehen, werden die beiden Boxen zentriert gegenüber dem Text "UND". Ist dies nicht gewünscht, so kann nach \parbox noch ein [b] oder [ t ] angegeben werden, um die Box mit der untersten bzw. obsersten Zeile bezüglich der Basislinie des umgebenden Textes auszurichten: \framebox{\sloppy \parbox[t]{3.5cm}{Das i s t e i n B e i s p i e l f V ' u r die Verwendung e i n e r einfachen Box i n Verbindung mit e i n e r anderen} \ UND \ \parbox[b]{3.5cm}{Das i s t e i n e zweite Box, die neben der e r s t e n in einer Zeile s t e h t . } } liefert:
165
6.5. BOXEN Das ist eine zweite Box, die neben der ersten in einer Zeile Das ist ein Beispiel für UND steht, die Verwendung einer einfachen Box in Verbindung mit einer anderen
Soll mehr Text als ein Absatz oder eine Formel bzw. Tabelle in einer Box stehen, so wird die Verwendung der Struktur minipage empfohlen. Die Struktur hat die selben Parameter wie \parbox. Als Beispiel diene:
e»* _ i — o
Die berühmte Eulersche Formel vereinigt die wichtigsten Zahlen der Mathematik (e, i, x, 0 und 1) in einer Formel. Die Herleitung dieser Beziehung gelingt über die Reihenentwicklung der Sinus- und Cosinusfunktion.
Die Eingabe hierzu lautet: \begin{flushlef t} \begin{minipage}{0.25\textwidth} \[e-{i\pi} -1 = 0\] \end{minipage} \hfill \begin{minipageHO • 65\textwidth} Die berV'uhrate Eulersche Formel vereinigt die wichtigsten Zahlen der Mathematik ($e$, $i$, $\pi$, 0 und 1) in einer Formel. Die Herleitung dieser Beziehung gelingt V'uber die Reihenentwicklung der S i n u s — und Cosinusfunktion. \end{minipage} \end{flushleft}
Die Größe der beiden Boxen wird automatisch berechnet und beträgt 0.25 bzw. 0.65 Mal die Seitenbreite (die Variable \textwidth wurde im vorigen Abschnitt vorgestellt). Der Befehl \ h f i l l bewirkt, daß der danachfolgende Text ganz nach rechts geschoben wird. Er fügt einen "dynamischen Leerplatz" in eine Box ein. Stehen zwei Befehle in einer Box, davon einer vor und einer nach dem Text, so bewirkt er eine Zentrierung. Verwendung findet der Befehl vor allem in Boxen, die wiederum "Unterboxen" besitzen (zur Positionierung derselben). INfeX kann auch eine Box mittels \ r a i s e b o x nach oben bzw. unten verschieben. Als Parameter muß eine Größenangabe folgen und danach der Text für die Box. Die Eingabe \ r a i s e b o x { 4 p t } { h \ " o h e r } liefert z.B.: h o h e r , während \ r a i s e b o x { - 4 p t } { t i e f e r } liefert: tiefer" Anwendung finder dieser Befehl oft in mathematischen Formeln, wenn ein Formelteil nach oben bzw. unten verschoben werden muß.
KAPITEL
166
6. ÄNDERUNG
DER
AUSGABEFORM
ZUSAMMENFASSUNG • Kopf- und Fußzeile: \ p a g e s t y l e • Zweispaltiger Text: \twocolumn, Zwischenraum zwischen den Spalten: \columnsep, Strichdicke der Trennlinie: \columnseprule • Randnotizen: \marginpar; Größe der Notizen: \marginparwidth • Seitengröße: \ t e x t w i d t h , \ t e x t h e i g h t • Zeilenabstand: \ b a s e l i n e s k i p ; Einrückung: \ p a r i n d e n t ; Leerraum zwischen Absätzen: \parskip • Boxen: \mbox; \makebox mit Größenangabe; \framebox mit Rahmen; \parbox für Absätze; Struktur minipage für mehrere Absätze, Tabellen, etc. • Boxen verschieben: \ r a i s e b o x Übungsaufgaben 6.1 Verändern Sie die Seitenausmaße, sodaß der Text im Format A5 gedruckt wid. 6.2 Definieren Sie ein Makro \stern, das einen Stern samt einem Pfeil (nach rechts bzw. links) als Randnotiz setzt, um wichtige Textstellen zu markieren. 6.3 Verändern Sie die Standardeinstellungen so, daß nach jedem Absatz ein Ybigskip gesetzt wird (Hinweis: die Größe des \bigskip-Leerplatzes ist in \bigskipamount enthalten). 6.4 Setzen Sie folgenden Text mittels Boxen (die Spaltenbreite ist jeweils 0.25 Mal die Seitenbreite):
Das ist ein kleines Beispiel für einen dreispaltigen Text
Und diese Spalte ist auch noch eingerahmt. Beachten Sie bitte auch die Ausrichtung.
Zu guter Letzt noch eine dritte te. (Uber die haftigkeit des spiels läßt sich dings streiten)
auch SpalSinnBeialler-
Kapitel 7
Grafiken, Folien 1^-TgX bietet die Möglichkeit, einfache Grafiken direkt im D o k u m e n t (unter B e n ü t z u n g von I f T ^ X - B e f e h l e n ) zu erstellen. Obwohl hier die Möglichkeiten auf Text, Linien, Pfeile und Kreise beschränkt sind, wird dies in vielen Fällen ausreichen. Zusätzlich möchte ich kurz erläutern, wie m a n externe Grafiken in I M ^ X einbinden kann.
7.1
Die
I^TßK-picture—Umgebung
Sowohl M ^ X 2.09 als auch 1£TEX 2 e erlauben den Satz von Grafiken direkt in IATEX über eine U m g e b u n g n a m e n s p i c t u r e .
7.1.1
Das Koordinatensystem
Jede Grafik ist f ü r IAT^X eine Box, deren Ausmaße bekannt sein müssen. IfTf^X f ü g t diese Box im normalen Text ein (oder falls gewünscht innerhalb einer f i g u r e U m g e b u n g als Abbildung). Alle A n g a b e n innerhalb dieser U m g e b u n g werden in der Maßeinheit \ u n i t l e n g t h gemacht, meistens ist diese vorbesetzt mit l p t . Sie verändern diese Vorbesetzung mit \setlength{\unitlength}{2pt} Um n u n eine Grafik zu initialisieren, m u ß deren Größe in dieser Maßeinheit angegeben werden. Zusätzlich m u ß ein internes K o o r d i n a t e n s y s t e m festgelegt werden, um die Position der Grafikelemente in der Box genau b e s t i m m e n zu können: \begin{picture>(360,200)(-100,-100) Dies sagt I£TEX, d a ß es eine Grafik der Größe 3 6 0 x 2 0 0 ( \ u n i t l e n g t h ) einrichten soll. Der zweite P a r a m e t e r gibt die K o o r d i n a t e n des linken unteren Ecks der Box bezüglich des internen Koordinatensystems an. Indirekt wird über ihn die Position des K o o r d i n a t e n u r s p r u n g s definiert. In diesem Beispiel liegt der Ursprung d a n n 100 von links und 100 von unten entfernt.
KAPITEL
168
7. GRAFIKEN,
FOLIEN
Nun können Grafikelemente in die Box gezeichnet werden. Jeder Grafikbefehl muß mit einem \put eingeleitet werden, danach folgen die Koordinaten (relativ zum Ursprung) des Objekts, z.B.: \put ( - 1 0 , - 1 0 ) {
Grafikbefehl}
definiert, daß das danachfolgende Grafikelement genau an der Position (-10,-10) gezeichnet wird.
7.1.2
Text
Das einfachste Grafikelement ist normaler Text; er wird lediglich in die Klammer von \put geschrieben. Dabei wird die linke untere Ecke an dem Punkt ausgerichtet, z.B. \put(-10,-10){Eine
Probe}
Einen eingerahmten Text erhalten Sie mittels des in Kapitel 6 beschriebenen Befehls \framebox. In unserem Beispiel: \put(-70,56){\framebox{\bf Ein
Ablaufplan»
Dabei wird mit \put die Koordinate der linken unteren Ecke der B o x angegeben. Die Größe der Box wird automatisch bestimmt. Soll dies nicht der Fall sein, kann auch (optional) die Größe der Box in x - und y-Richtung als zusätzlicher Parameter angegeben werden; der Text wird dann vertikal und horizontal zentriert: \put(-70,56){\framebox(100,20){\bf
Ein
Ablaufplan»
Einen in der Box links- bzw. rechtsbündigen Text erhält man durch Angabe von [ 1 ] bzw. [ r ] . Äquivalent kann man auch die vertikale Zentrierung durch die Angabe von [ t ] bzw. [ b ] aufheben. Ebenso zulässig ist eine Kombination dieser Angaben; z.B.
7.1. DIE
169
&TEX-PICTURE-TJMGEBUNG
\put ( - 7 0 , 5 6 ) { \ f r a m e b o x ( 1 0 0 , 2 0 ) [ t l ] { \ b f E i n A b l a u f p l a n »
setzt den Text "Ein Ablaufplan" in die linke obere Ecke der Box. Soll kein R a h m e n gezeichnet werden, so kann m a n anstelle von \ f r a m e b o x einfach \ m a k e b o x (mit den selben P a r a m e t e r n ) verwenden. Durch einen Trick kann m a n auch dazu bringen, einen Text u m einen P u n k t zu zentrieren. Erstellen Sie einfach eine Box mit den A u s m a ß e n 0 x 0 , aus der der Text herausragt; dies bewirkt eine Zentrierung um den angegebenen P u n k t (siehe z.B. in unserem Beispiel die Numerierung in den Kreisen): Yput(149.4,40){\makebox(0,0){{\Large\bf
7.1.3
4}»
Linien und Pfeile
IfTgX kann auch Linien erzeugen. Der Anfangspunkt wird in der \ p u t - A n w e i s u n g angegeben. Die Linie wird durch \ l i n e gezeichnet, danach muß die Richtung der Linie folgen (ein Vektor!) und hierauf die Länge der Linie in x - R i c h t u n g (!!): \put(-30,0){\line(l,0){10}>
Zum Verständnis: gegeben seien die A n f a n g s - und E n d p u n k t e ( p 0 und p i ) der Linie; der \ p u t - A n w e i s u n g muß der P u n k t p o übergeben werden. Der erste P a r a m e t e r der \ l i n e - A n w e i s u n g ist ein Vektor parallel zu p i — po, jedoch mit minimaler Länge. IATgX setzt alle Linien über eine spezielle "Schriftart" zusammen, die Fähigkeiten sind also sehr limitiert. So müssen die Komponenten des Vektors ganzzahlig, > — 6 und < 6 sein; zudem muß der Vektor minimale Länge besitzen. Eine Angabe des Vektors (4,2) ist also ungültig; es muß stattdessen (2,1) verwendet werden. Der zweite P a r a m e t e r von M i n e ist der Betrag der Differenz der x - K o o r d i n a t e n : Ipi^ — p o j . Pfeile werden durch \ v e c t o r erstellt; die Syntax ist identisch mit der M i n e Anweisung, nur wird a m E n d p u n k t der Linie ein Pfeil gesetzt. Hier müssen die K o m ponenten des Vektors > —4 und < 4 sein.
7.1.4
Kreise
LM'eX's Fähigkeiten zum Zeichnen von Kreisen sind noch limitierter. Es kann jedoch Kreise (mittels \ c i r c l e ) bis zu 40pt Durchmesser und gefüllte Kreise (mittels \ c i r c l e * ) bis zu 15pt Durchmesser zeichnen. Nach diesen Befehlen ist jeweils der Durchmesser (wieder in Y u n i t l e n g t h ) anzuführen: \put(179.4,-40){\circle{40}} \put(236.4,0H\circle*{15}}
7.1.5
Ovale
M f e X kann mittels \ o v a l ein Oval — ein Rechteck mit abgerundeten Ecken — zeichnen. Als P a r a m e t e r sind die Ausmaße in x - und y - R i c h t u n g anzugeben. Der "Refer e n z p u n k t " (der bei \ p u t angegeben wird) liegt genau in der Mitte des Ovals: \put(244.4,-30){\oval(28,15)}
KAPITEL
170
7. GRAFIKEN,
FOLIEN
Als optionalen Parameter kann man angeben, welchen Teil des Ovals IATJJX zeichnen soll: [ t ] (nur der obere Teil), [u] (nur der untere Teil), [1] (nur der linke Teil) und [ r ] (nur der rechte Teil). Zusätzlich kann man diese Angaben auch kombinieren: [ b r ] zeichnet z.B. nur den rechten unteren Teil eines Ovals. Dies ist z.B. für "Pfeile um die Ecke" sinnvoll. In unserem Beispiel wurde dieser erzeugt durch: \put(50,-80){\oval(70,30)[bl] } \put(50,-95){\line(l,0){20}} \put(15,-80H\vector(0,l){20}}
7.2
Einbindung von externen Grafiken
Im alten ISTEX 2.09 (und auch in plainTgX) existiert keine standardisierte
Möglichkeit,
Grafiken einzubinden. Hier muß man auf die Fähigkeiten der Previews bzw. Druckertreiber zurückgreifen. Ich möchte hier zwei Möglichkeiten präsentieren. Der erste Ansatz f u n k t i o n i e r t NUR in ernT^X. Uber den Befehl \ s p e c i a l kann man Anweisungen, die direkt für den Preview bestimmt sind, in das D o k u m e n t einfügen. Mittels der Anweisung \ s p e c i a l { e m : g r a p h name . p c x } wird die Grafik name . p c x , die im P C X F o r m a t vorliegen muß, in das D o k u m e n t eingebunden. Verwenden Sie den Druckertreiber oder den Preview von e m T ^ X , so wird die Grafik im D o k u m e n t erscheinen. T^X/I^T^X unübersetzt
"weiß" jedoch von alledem
nichts, denn jeder
\special-Befehl
wird
in die D V I - D a t e i eingefügt; FT^X kennt die Größe der Grafik also nicht.
So müssen Sie selbst für die mittels \ v s p a c e direkt
"Einbettung"
der Grafik in das D o k u m e n t sorgen
nach \ s p e c i a l einen Leerplatz der Höhe der
und
einzufügenden
Grafik setzen, d a m i t es zu keinem Uberdrucken k o m m t . Diese Lösung funktioniert aber N U R in emTgX, denn andere Previews werden die Syntax dieses Befehls nicht verstehen und die Anweisung ignorieren. Im Prinzip bieten jeoch viele Previews die Möglichkeit an, eine Grafik einzubinden, wenn auch der Befehl hierzu anders aussehen w i r d .
Mehr
Informationen erhalten Sie sicherlich durch das Handbuch Ihres Previews. Eine andere Möglichkeit ist die Nutzung von Postscript-Dateien. Das externe Prog r a m m D V I P S ermöglicht die Konvertierung einer D V I - D a t e i in ein P o s t s c r i p t - F o r m a t . Nach dem liT^Xen wird mittels D V I P S die D V I - D a t e i also in eine P S - D a t e i konvertiert. Diese P S - D a t e i kann dann ausgedruckt oder ( z . B . mittels G H O S T S C R I P T ) angesehen werden. Die D V I - D a t e i ist dann nicht weiter von Interesse. Sie umgehen also den Prozeß des Previews bzw. des direkten Druckens einer D V I - D a t e i . D V I P S erlaubt die Einbindung von externen Postscript-Dateien Fügen Sie zuerst in der Präambel des Dokuments den Befehl \ i n p u t
in das D o k u m e n t . e p s f hinzu. U m
eine Grafik an einer Stelle einzufügen, benützen Sie den Befehl \ e p s f f i l e { n a m e . p s } . Der Befehl sucht nach der Datei und bestimmt deren Ausmaße. Die Grafik wird a u t o m a t i s c h in das D o k u m e n t eingebettet. Diese Methode ist sicher die bessere, beachten Sie bitte j e d o c h , daß die Grafik erst durch den Prozeß der Konvertierung des D o k u m e n t s durch D V I P S eingefügt wird; betrachten Sie die D V I - D a t e i in einem Preview, so wird die Grafik fehlen.
Im neuen implementiert.
2£ wurde ein Ansatz zur Standardisierung Dort existiert das Paket g r a p h i c s , das mit
der
Grafikeinbindung
7.2.
EINBINDUNG
VON EXTERNEN
\usepackage [ Treibername] eingebunden werden den. Standardmäßig
GRAFIKEN
171
{graphics}
muß. Dabei muß &TßX2e wissen, welchen Preview Sie werden die folgenden Previews bzw. Treiber unterstützt:
Treiber DVIPS XDVI DVIALW DVILASER DVIWIN eml^X OZTßX PSPRINT DVIPSONE DVITOPS PUBPS PCTßXPS PCTEXWIN PCTgXHP
Treibername dvips xdvi dvialw dvilaser dviwin emtex oztex psprint dvipsone dvitops pubps pctexps pctexwin pctexhp
verwen-
Unterstützte Formate eps, ps eps, ps eps, ps eps, ps eps, ps, pcx, bmp pcx, bmp eps, pc, pict eps, ps eps, ps, pcx, bmp eps, ps eps, ps eps, ps eps, ps, wmf, bmp pcl
Benützen Sie z.B. das vorhin beschriebene DVIPS zur Konvertierung in Postscnpt-Dateien in der vorhin beschriebenen Weise, so sollten Sie am Beginn des Dokuments das Erweiterungspaket graphics mittels \usepackage [dvips] {graphics} einfügen. Eine Grafik kann dann einfach mit dem Befehl \includegraphics eingebunden werden; je nach Treiber muß die Datei in verschiedenen Formaten vorliegen. Als Beispiel bindet \includegraphics{mob.eps} die schöne
Grafik
ein. &TßK2e muß das Ausmaß der Datei kennen, um sie richtig einbinden zu können. Bei Postscript-Dateien kann &TgK2c sie automatisch bestimmen, bei den meisten anderen Formaten jedoch nicht. In diesen Fällen muß das Ausmaß der Grafik auch noch angegeben werden, z.B. für eine 3cmx 5cm Grafik: \includegraphics [3cm,5cm]{probe.bmp>
172
7.3
KAPITEL
7. GRAFIKEN,
FOLIEN
Erweiterte Grafikbefehle
Das oben erwähnte graphics-Paket enthält noch drei Befehle, die die Skalierung und die Rotation von beliebigen Boxen erlauben; diese sind \scalebox, \resizebox und \rotatebox. Auch diese Aufgaben werden erst vom Preview bzw. Druckertreiber durchgeführt; einige Treiber bieten diese Möglichkeit jedoch nicht. wird in so einem Fall eine Fehlermeldung ausgeben. (DVIPS sollte alle Befehle verstehen!) So skaliert \scalebox die angegebene Box einfach um einen als Parameter angegebenen Betrag; \resizebox skaliert eine Box ungleichmäßig, sodaß sie genau die angegebene Breite und Höhe besitzt (der Inhalt wird etwas komisch "zusammengequetscht"). Wird als ein Parameter zu \scalebox ein ! angegeben, so bleibt das Verhältnis von Höhe und Breite gewahrt; &TßX errechnet z.B. die Höhe der Box aus der angegebenen Breite und dem Seitenverhältnis. Der Befehl \rotatebox rotiert schließlich eine Box um einen in Grad angegebenen Winkel: Das \scalebox{l. 8}{ist ein} \resizebox{l .2cm}{l • 5cm}{Beispiel} i\"ur eine \resizebox{!}{0.6cm}{Skalierung} eines \rotatebox{15}{Textes.> I I
liefert:
Das i s t
Diese Befehle
eill können
ÍS
für eine S k a Ü e r U I l g
Sie auch zur Bearbeitung
einer externen
eines Grafik
verwenden:
\resizebox{! }{5cmH\includegraphics{sin. e p s » bindet ist.
7.4
die externe
Grafik sin.eps ein und skaliert
diese, sodaß sie genau
5cm
hoch
Farbausgabe
2c stellt für die farbige Ausgabe das Paket color zur Verfügung. muß wieder der verwendete Preview angegeben werden, z.B.:
Als
Option
\usepackage[dvips]{color} in der Präambel lädt das Paket für die Farbausgabe (die alte Version von DVIPS kann Farben nicht handhaben; aber Version 5.58 kann!). Die Befehle \color bzw. \textcolor schalten die Farbe um, hierbei wirkt sich \color auf das ganze danachfolgende Dokument aus bzw. \textcolor nur auf ein paar Wörter: Das \textcolor{red}{ist ROT!!!!} und das wieder schwarz, \color{green} aber dieser ganze Text ist gr\"un\color{black}, bis wieder umgeschalten wird.
7.5.
173
FOLIEN
liefert (hier als Graustufen ausgegeben): Das ist ROT!!!'und das wieder schwarz, ib«: dkr.cx umgeschalten wird. Soli die Hintergrundfarbe
eines
Textes geändert
werden,
T-;:xt
cni.3, bis wieder
hilft \colorbox, z.B.
\colorbox{yellowMEin gelber Hintergrund} liefert: Bin gelber Hintergrund . Als Farben blue, yellow, cyan und magenta vordefiniert. \def inecolor eine eigene Farbe definieren:
sind black, white, red, green, Sie können jedoch mit dem, Befehl
\def inecolor{mycolorHrgb}{0 .75,0.9,0.354} definiert
eine neue Farbe mycolor als RGB-Wert
7.5
Folien
(0.75,0.9,0.354).
&TßK erlaubt den Druck von Folien mit der slides-Dokumentklasse. Hierbei wird der Folientext in einer großen Sans Serif Schrift gesetzt (zirka die Größe von \LARGE im normalen Text). Jede Folie muß in einer s l i d ^ - U m g e b u n g stehen, der Text einer Folie wird automatisch vertikal zentriert. In der slide-Umgebung können alle &TßXBefehle verwendet werden, somit ist auch der Satz mathematischer Formeln möglich. Ein Beispiel: \documentclass{slides} Yusepackage[dvips]{color} \begin{document} \begin{slide} \begin{center} V'Uberschrift \end{center} Das ist eine Probe f\"ur den Satz einer Folie \end{slide} \begin{slide} \begin{center} Die Eulersche Formel \end{center} \[e-{i\pi} -1 = 0 \] \color{white} Das ist ein Text, der V'uber den anderen gelegt wird. \color{black} \end{slide} \begin{note} Das soll eine Erinnerung sein, was ich sagen soll. \end{note} \begin{overlay} \color{white}
KAPITEL
174
7. GRAFIKEN,
FOLIEN
\begin{center} Die Eulersche Formel \end{center} \[e"{i\pi> -1 = 0 \] \color{black} Das ist ein Text, der V'uber den anderen gelegt wird. \endioverlay} \end{document} Notizen zu den Folien können in der note-Umgebung gesetzt werden; sie werden auf einem eigenen Blatt ausgedruckt. Farbige Folien erstellen Sie mit dem vorhin beschriebenen c o l o r - P a k e t . Manchmal soll eine Folie über eine andere gelegt werden, um den Text einer Folie zu ergänzen. Für die zweite Folie ist dann die o v e r l a y Umgebung zu verwenden; sie verändert lediglich die Seitennummer. Um einen Text an der richtigen Stelle hinzuzufügen, lassen Sie den Text, der auf einer Folie nicht gewünscht ist, in der "Farbe" Weiß drucken. Dies muß bei beiden Folien geschehen, damit den Text entsprechend positionieren kann. Dieses Beispiel liefert diese Ausgabe:
Die Eulersche Formel Überschrift
Das soll
e'T — 1 = 0
D a s ist eine Probe für
D a s ist ein T e x t ,
der
über den anderen
ge-
legt wird.
2-a
Erinne-
gen soll.
den Satz einer Folie
1
eine
rung sein, was ich sa-
2
2-1
Kapitel 8
Fehlermeldungen In diesem letzten (!!) Kapitel über I^T^X wollen wir uns über das "IM^Xen" und die möglichen Fehlermeldungen unterhalten. Meiner Tradition folgend, möchte ich diese an Hand eines Beispiels erläutern.
8.1
Ein Beispiel
Der folgende Text ist ein (gekürzter) Ausschnitt aus dem Buch "Statistik für Sozialund Wirtschaftswissenschaften" von P. Hackl und W. Katzenbeisser, 9. Auflage, Oldenbourg 1994. Ich verwende hier die alte Version tiT^X 2.09; für die neue Variante müßte lediglich die erste Zeile verändert werden. \documentstyle[german]{book} \ n e w t h e o r em{def i n i t i o n } { D e f i n i t i o n } [ c h a p t e r ] \ n e w t h e o r e m { s a t z } { S a t z } [chapt e r ] \begin{document} \subsection{Verteilungsf unktion} \label{Kap:Verteilungsfunktion} Neben W a h r s c h e i n l i c h k e i t a — und D i c h t e f u n k t i o n i s t f \ " u r j e d e W a h r s c h e i n l i c h k e i t s v e r t e i l u n g d i e s o g e n a n n t e V e r t e i l u n g s f unkt i o n \ ( F ( x ) \ ) d e f i n i e r t . Der Wert d e r V e r t e i l u n g s f u n k t i o n v o n \ ( X \ ) an e i n e r S t e l l e \ ( x i s t d i e W a h r s c h e i n l i c h k e i t , mit d e r d a s E r e i g n i s \ ( \ { X \ l e q x \ } \ ) eintritt: \ [ F ( x ) = P \ { X \ l e x x \ } \] \beg i n { d e f i n i t ion} Die { \ b f V e r t e i l u n g s f u n k t i o n } e i n e r Z u f a l l s v a r i a b l e n \ ( X \ ) definiert als \ [ F ( x ) = PUXVLeq x \ } = \left\{\begin{array}{ll} \ s u m _ { u \ l e q x } P\{X=u\} k \mbox{falls \(X\) d i s k r e t } \ i n t _ i - \ i n f t y } " x f ( u ) \ , du fc \ m b o x { f a l l s \ ( X \ ) s t e t i g } \ e n d { a r r a y } \ r i g h t . \] \endidefinition}
ist
\\ \\
KAPITEL
176
8.
FEHLERMELDUNGEN
\begin{satz} Eigenschaften der Verteilungsfunktion: \begin{description} \it \item[(a)] \(F(x)\) ist nicht abnehmend, d.h. \(F(x_l)\leq F(x_2)\) f\"ur beliebige \(x_l F(x)=0\), \(\lim_{x\to\infty> F(x)=l\) \item[(c)] \(F(x)\) ist (zumindest) rechtsseitig stetig. \end{satz} \noindent Im Falle einer diskreten Wahrscheinlichkeitsverteilung hat die Wahrscheinlichkeitsfunktion \(F(x)\) also die Form einer Treppenfunktion, die an den Stellen \(x\), die die Zufallsvariable annehmen kann, Sprungstellen hat; die SprunghV'ohen sind die Wahrscheinlichkeiten, mit denen die Zufallsvariable diese Werte annimmt. \noindent Die Verteilungsfunktion kann oder die Dichtefunktion zur Berechnung Herden. So ergibt sich unmittelbar aus \begin{eqnarray«} P\{X\leq b\> k = k F(b); \\ P\{X>a\> k = k 1 - P\{X\leq a\> = P\{a ior immediate help. ! Bad math environment delimiter. \®latexerr ...diäte help.>\errmessage {#1> \(->\relax \ifmmode \0badmath \else $\fi
8.1.
EIN
177
BEISPIEL
1.11 ...nlichkeit, mit der das Ereignis \( \{X\leq x\}\)
Hier werden wir d a r a u f a u f m e r k s a m gemacht, d a ß in unserem Text in der 11. Zeile der m a t h e m a t i s c h e M o d u s nicht beendet wird (die Zeilennummer steht in der letzten Zeile vor d e m ?). IfTßX h a t ein \ ) e r w a r t e t , jedoch den Befehl \ ( vorgefunden. Drücken Sie bei so einer Fehlermeldung einfach E N T E R . Die nächste Fehlermeldung l a u t e t (sie k o m m t aus den "Tiefen" von plainT^X, deshalb fehlt die A n g a b e LaTeX e r r o r . ) : ! Undefined control sequence. 1.13 \[ F(x) = P\{X\lex x\} \] f Hier w u r d e ein Befehl verwendet, der in IATßX nicht existiert; meist ist ein Tippfehler d a f ü r verantwortlich (wie in unserem Beispiel \ l e x anstelle von \ l e q ) . Bei allen Fehlermeldungen können Sie mittels h. Hilfe anfordern. G e b e n Sie an dieser Stelle h (gefolgt von E N T E R ) ein, so schreibt M f e X : The control sequence at the end of the top line of your error message was never \def'ed. If you have misspelled it (e.g., '\hobx'), type 'I' and the correct spelling (e.g., 'I\hbox'). Otherwise just continue, and I'll forget about whatever was undefined. Soll I M ^ X die Bearbeitung der Datei abbrechen, so können Sie x (wiederum gefolgt von E N T E R ) eingeben. Die nächste Fehlermeldung lautet: LaTeX error.
See LaTeX manual for explanation. Type H for immediate help. ! \begin{description} ended by \end{satz}. \filatexerr ...diate help.}\errmessage {#1} \ficheckend ...urrenvir \else \fibadend {#1} \fi \end ...me end#l\endcsname\ficheckend{#l} \iffiendpe Nglobal \let \figt...
1.30 \end{satz> j
In der 30. Zeile w u r d e \ e n d { d e s e r i p t i o n } vegessen; I^TßX weist d a r a u f hin, d a ß entweder ein \ e n d - B e f e h l fehlt oder der N a m e der U m g e b u n g falsch geschrieben ist. Noch einen Fehler findet M f e X : ! Extra alignment tab has been changed to \cr. }\endtemplate
178
KAPITEL
8.
FEHLERMELDUNGEN
1.44 P\{a ft = & F(b) - F(a); \\ 7
In der eqnarrayf-Umgebung wurde in der 43. Zeile ein \\ vergessen. M"EX bemerkt dies erst in der 44. Zeile beim nächsten ft. M?gX kann also in bestimmten Fällen einen Fehler erst später erkennen! Der vorletzte Fehler zieht noch einen weiteren nach sich: das \ e n d { s a t z } beendete fälschlicherweise die Umgebung d e s c r i p t i o n ; somit wird für M ^ X die Umgebung s a t z erst durch das \endidocument} beendet, was wiederum zu einem Fehler (der bereits bekannten Art) führt: LaTeX error.
See LaTeX manual for explanation. Type H for immediate help. ! \begin{satz} ended by \end{document}. \®latexerr ...diate help.}\errmessage {#1} \fflcheckend ...urrenvir \else \\Ccheckend{document>
\clearpage \begingroup \ifCfilesw. . . \end #l->\csname end#l\endcsname \Ocheckend {#l}\ifOendpe \global \le. . . 1.46 \end{document} ?
Erst dann kommt die erfreuliche Nachricht: [1] (test.aux) LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right. ) (\end occurred inside a group at level 1) Output written on test.dvi (1 page, 2924 bytes). Transcript written on test.log. M f c X hat eine Seite interpretiert, das [ 1 ] zeugt davon! Zusätzlich werden wir gewarnt, daß die Referenzen beim ersten M ^ X - L a u f noch nicht bekannt sind und daß das Ende der Datei in einer Umgebung erfolgte (was durch den letzten Fehler erklärt wird, da nun die Umgebung document nicht abgeschlossen wurde). Nun ist es an der Zeit, die Fehler auszubessern. In der 11. Zeile muß nach dem \ ( x ein \), nach der 29. Zeile ein \ e n d { d e s c r i p t i o n } und schließlich am Ende der 43. Zeile ein \\ eingefügt werden. In der 13. Zeile muß das \ l e x durch ein \ l e q ersetzt werden. Startet man nun ein weiteres Mal, so erhält man die Ausgabe:
8.1.
EIN
179
BEISPIEL
This is emTeX, Version 3.14159 [3c-betal5] (preloaded format=lplaing) **&lplaing test (test.tex ILaTeX V e r s i o n 2.09 (mybook.sty Document Style 'book' , international version . (bkxlO.sty)) (c:/emtex/texinput/german.sty Document Style Option 'german' V e r s i o n 2.3c of 28 Aug 1990 ) (test.aux) [1] (test.aux) ) Output w r i t t e n on test.dvi (1 page, 2976 bytes). Transcript w r i t t e n on test.log. I M ^ X hat unsere D a t e i richtig interpretiert. Sie k ö n n e n sich das Ergebnis i m Preview ansehen:
0.0.1
Verteilungsfunktion
Neben Wahrscheinlichkeits- und Dichtefunktion ist f ü r jede Wahrscheinlichkeitsverteilung die sogenannte Verteilungsfunktion F(x) definiert. Der Wert der Verteilungsfunktion von X an einer Stelle x ist die Wahrscheinlichkeit, mit der das Ereignis { X < z } eintritt: F(x)
= P{X
< x}
D e f i n i t i o n 0 . 1 Die V e r t e i l u n g s f u n k t i o n einer Zufallsvariablen
S a t z 0 . 1 Eigenschaften ( a ) F(x)
der
ist nicht abnehmend,
X ist definiert
falls X
diskret
falls X
stetig
als
Verteilungsfunktion: d.h. F(xi)
< F(x2)
für beliebige xi < x2;
( b ) l i m , — F ( x ) = 0, limi-.oo F ( x ) = 1 ( c ) F(x)
ist (zumindest)
rechtsseitig
stetig.
Im Falle einer diskreten Wahrscheinlichkeitsverteilung hat die Wahrscheinlichkeitsfunktion F(x) also die Form einer Treppenfunktion, die an den Stellen x, die die Zufallsvariable ann e h m e n kann, Sprungstellen h a t ; die Sprunghöhen sind die Wahrscheinlichkeiten, mit denen die Zufallsvariable diese Werte annimmt. Die Verteilungsfunktion kann ebenso wie die Wahrscheinlichkeits- oder die Dichtefunktion zur Berechnung von Wahrscheinlichkeiten verwendet werden. So ergibt sich unmittelbar aus der Definition von F(x): P{X ft \sum_i x_{ik}x_{i2} ft \cdots ft \sum_i x_{ik}"2 \end{array} \right) \] 3.5 Die Eingabe war: \begin{eqnarray} 1 -\beta(\mu)ft=ftP\left\{\bar X\geq\mu_0+z_{l-\alpha} \frac{\sigmaH\sqrt n> \,\vert\, \mu\right\> \nonumber\\ ft = ft 1 - \Phi\left(\frac{\mu_0+z_{l-\alpha} \frac{\sigma} {\sqrt n> - \mu> {\sigma} \sqrt{n}\right) \nonumber\\ ft = ft 1 - \Phi\left(~\fraci\sqrt nM\sigma}(\mu-\mu_0) + z _{1-\alpha}\right) \end{eqnarray} 3.6 Auch die Fallunterscheidung wurde als "Matrix" gesetzt: \[ \psi(X_i-\theta_0) = \left\{\begin{arrayMll} 1 ft \mbox{fall8>\, X_i-\theta_0 > 0 \\ 0 ft \mbox{falls}\, X_i-\theta_0 \leq 0 \end{array} \right.\] 3.7 u n d die letzte Formel: \[P\left\{\bigcup_i A_i\right\> \leq \sum_i P \left\{A_i\right\}\]
Kapitel 4 4.1 Beachten Sie bitte die Formatierungsanweisung bei \ m u l t i c o l u r o n : \begin{center} \begin{tabular}{|1||1|1||1|> \hline
183 \ m u l t i c o l u m n { 4 M I c I } { \ s l P r e i s t a f e l der Angebote} \\ \hline\hline Angebot ft \multicolumn{2Hc I I HKontingent} & P r e i s \\ \cline{2-4> ft P r e i s ft km ft \*'0S \\ \hline Angebot 1 ft 2000 ft ft 2000 \\ Angebot 2 ft — ft 2000 ft 1700 \\ Angebot 3 ft — ft 3000 ft 2700 \\ \hline \end{tabular> \end{center} 4.2 Hier wurde in der Tabelle in den mathematischen Modus gewechselt: \begin{center} YbeginitabularM I c I c I c I} \hline P h y s i c a l Quantity ft Operator ft Coordinate Form \\ \hline\hline Energy ft $\hat H$ ft $\hat {\cal{H»=-\frac{\hbar*2>-[2m} \nabla *2+V(r)$ \\ P o s i t i o n ft $\hat x$ ft $x$ \\ ft $\hat y$ ft $y$ \\ ft $\hat Z$ ft $z$ \\ Homentum ft $\hat p_x$ ft $\hat { \ c a l { P » _ x = \ f r a c \hbar i \ f r a c { \ p a r t i a l } { \ p a r t i a l _ x > $ \\ ft $\hat ft $\hat { \ c a l { P » _ y = \ f r a c \hbar i \ i r a c { \ p a r t i a l > { \ p a r t i a l _ y } $ \\ ft $\hat P_Z$ ft $\hat { \ c a l { P » _ z = \ f r a c { \ h b a r > { i > \ f r a c { \ p a r t i a l } { \ p a r t i a l _ z } $ \\ \hline \end{tabular} \end{center} Kapitel 5 5.1 Die Definition erfolgt ganz analog zu Kapitel 5.2: \newcommand{\bbrace>[2]{\left\{\!{#l\brace#2}\!\right\}> 5.2 \newcommand{\VECT>[1]{ \ l e f t ( \ b e g i n { a r r a y H c > #1_1 \\ #1_2 \\ \vdots \\ #l_n \end{array} \ r i g h t ) }
ANHANG
184
A.
LOSUNGEN
ZU DEN
ÜBUNGSAUFGABEN
Kapitel 6 6.1 Verwenden Sie im neuen
die Option a 5 p a p e r ,
im alten liT^X
2.09 m u ß
die E i n g a b e wie folgt lauten:
\setlength{\textheightM210mm} \8etlength{\texwidth}{148mm> 6.2 D a s Makro ist wie folgt definiert ( \ s t a r liefert * im m a t h - m o d e ) : Nnewcommand-fsternM \marginpar[\(\hfill\star\rightarrow\)] {\(\leftarrow\star\hfill\)>
>
6.3
\setlength{\parskipH\bigskipamount}
6.4 Bei diesem Beispiel wird IATgX etliche Warnungen ausgeben. Dies liegt daran, daß der Text nicht gut im Blocksatz gesetzt werden kann; Sie können sie getrost ignorieren. \begin{flushleft} \sloppy \begin{minipage>[t]{0.25\textwidth> Das i s t e i n k l e i \ - n e s B e i \ - s p i e l f \ " u r e i n e n d r e i \ - 8 p a l \ - t i g e n Text \end{minipage} \hfill \frsunebox-{ \begin{minipage>[b]{0.25\textwidth} Und d i e s e S p a l \ - t e i s t a u c h noch e i n \ - g e \ - r a h m t . B e \ - a c h \ - t e n S i e b i t \ - t e auch d i e A u s \ - r i c h \ - t u n g . \end{minipage}} \hfill \begin{minipage>[t]{0.25\textwidth} Zu g u t e r L e t z t a u c h noch e i n e d r i t \ - t e S p a l \ - t e . ( \ " ü b e r d i e S i n n \ - h a f t i g \ - k e i t des B e i \ - s p i e l s l \ " a \ s s t s i c h aller\-dings strei\-ten) \end{minipage} \end{flushleft}
Anhang B
Befehlsverzeichnis Ich möchte in diesem Anhang noch einmal alle erwähnten Befehle und Umgebungen von I^T^X aufzählen und kurz erläutern.
B.l
I^T^X-Steuerzeichen '/, Kommentarzeichen. Der restliche Text der Zeile und der Zeilenumbruch werden ignoriert. (Ein Prozentzeichen erhält man durch V/.)# Parametersymbol (Ersetzungszeichen) in Makros; IM^X ersetzt die Symbole in den Makros durch die übergebenen Parameter. (Ein Nummernzeichen erhält man durch \#). $ identisch mit \ ( , schaltet den Mathematikmodus ein bzw. wieder aus. (Ein Dollarsymbol erhält man durch \$). & Tabulatorsymbol im Tabellensatz; es trennt die einzelnen Spalten einer Tabelle. {,} Gruppenklammern; sie umschließen zusammengehörige Teile bzw. Parameter. (Die Klammern erhält man durch \ { bzw. \ } ) . Mathematik-Modus: der danachfolgende Formelteil wird als Exponent gesetzt. _ Mathematik-Modus: der danachfolgende Formelteil wird als Index gesetzt.
B.2
I^TfcX-Umgebungen
Jede dieser Umgebungen wird mit \ b e g i n { Umgebung} begonnen und mit der Konstruktion \ e n d { Umgebung} wieder beendet. Der Text zwischen den beiden Befehlen wird wie folgt behandelt. Diese beiden Befehle wirken wie Gruppenklammern, d.h. innerhalb einer Umgebung geänderte Parameter (wie Schriftart, Zeilenabstand,...) wirken sich nicht auf den Text außerhalb der Struktur aus. a b s t r a c t Article-Stil: eine Zusammenfassung der Arbeit, der "Zusammenfassung" vorgesetzt wird.
186
ANHANG B.
BEFEHLSVERZEICHNIS
array Mathematik-Modus: Satz von Matrizen; Als Parameter muß eine "Musterzeile" angegeben werden: pro Spalte ein Eintrag 1 (linksbündig), r (rechtsbündig) bzw. c (zentriert). Die Spalten müssen durch & getrennt sein, die Zeilen durch \\. c e n t e r Text-Modus: setzt den Text zentriert. Mehrere Zeilen müssen durch \\ abgetrennt sein, d e s c r i p t i o n Text-Modus: setzt eine Liste; alle Einträge müssen durch \item eingeleitet werden; in einer eckigen Klammer muß danach das "Einleitungszeichen" stehen, displaymath wechselt in den zentrierten Mathematikmodus ("Displaystyle"), äquivalent mit \ [ bzw, \]. document umschließt das ganze Dokument, enumerate Text-Modus: setzt eine Liste; alle Einträge müssen mit \item eingeleitet werden; sie werden automatisch numeriert, eqnarray setzt eine ausgerichtete mehrzellige numerierte Formel und schaltet in den math-mode. Die Zeilen müssen durch \\ und die einzelnen drei Formelteile (Formelteil vor dem Symbol, Symbol, Formelteil nach dem Symbol) durch & abgetrennt werden. Soll eine Zeile keine Nummer erhalten, muß \nonumber verwendet werden. eqnarray* Mathematik-Modus: ähnlich eqnarray, numeriert aber die Formel nicht. e q u a t i o n Mathematik-Modus: schaltet in den math-mode; setzt eine zentrierte und numerierte Formel. 1 i g u r e Text-Modus: fügt eine Abbildung ein, die auf der aktuellen oder der nächsten Seite oben erscheint. Ist der Text zweispaltig, so ist die Abbildung nur einspaltig. Alle Abbildungen werden numeriert; eine Überschrift wird durch \caption definiert, f i g u r e * Text-Modus: ähnlich f i g u r e , erzeugt aber bei zweispaltigem Text eine Abbildung, die über beide Spalten geht, f l u s h l e f t Text-Modus: setzt den Text linksbündig. Mehrere Zeilen müssen durch \\ abgetrennt sein, f l u s h r i g h t Text-Modus: setzt den Text rechtsbündig. Mehrere Zeilen müssen durch \\ abgetrennt sein, i t e m i z e Text-Modus: setzt eine Liste. Alle Einträge müssen mit \item eingeleitet werden; es wird automatisch ein Einleitungssymbol erzeugt. l e t t e r Letter-Stil: setzt einen Brief. Als Parameter ist der Empfänger anzugeben. minipage Text-Modus: sezt eine "Box". Ein optionaler Parameter kontrolliert die Ausrichtung bezüglich des umliegenden Textes: [b] an der letzten Zeile der Box bzw. [ t ] an der ersten Zeile; danach folgt die horizontale Größe der Box (in geschwungenen Klammern). note Slides-Stil: druckt eine Notiz zu einer Folie; ähnlich der Umgebung s l i d e .
B.2.
BTEK-TJMGEBUNGEN
187
o v e r l a y Slides-Stil: druckt eine Folie, die über eine Folie gelegt werden kann; ähnlich der Umgebung s l i d e . p i c t u r e Setzt eine Grafik. Danach muß die Größe der Grafik angegeben werden (Einheit in \ u n i t l e n g t h ) . Optional könnnen die Koordinaten der linken unteren Ecke als zweiter Parameter folgen, q u o t a t i o n Text-Modus: setzt einen Absatz zentriert und hervorgehoben, mit kürzerem Zeilenabstand. Die Einrückung am Zeilenanfang bleibt erhalten. q u o t e Text-Modus: wie q u o t a t i o n , lediglich wird die Einrückung am Zeilenanfang unterdrückt. s l i d e Slides-Stil: druckt eine Folie; der Text wird in einer großen Sans Serif Schrift gesetzt und vertikal zentriert, s l o p p y p a r Text-Modus: setzt den Text der Struktur im Blocksatz, M ^ X legt aber nicht so viel Wert auf die "Schönheit" des Blocksatzes. Die Struktur ist ideal, wenn IM^X den Text nicht gut abtrennen kann. t a b b i n g Tabellensatz: setzt eine einfache Tabelle mit Tabulatoren. Tabulatoren werden mit \ = definiert; die Position wird mit \> gewechselt. t a b l e Text-Modus: speichert den Inhalt und verfährt ähnlich wie f i g u r e , jedoch werden Tabellen separat numeriert, t a b l e * Text-Modus: ähnlich f i g u r e * , numeriert jedoch Tabellen getrennt. t a b u l a r Tabellensatz: setzt eine Tabelle. Als Parameter muß eine "Musterzeile" angegeben werden: pro Spalte ein Eintrag 1 (linksbündig), r (rechtsbündig), c (zentriert) bzw. p (mehrzelliger Text, gefolgt von Breitenangabe). Zusätzlich kann zwischen zwei Spalten mit dem Musterzeileneintrag \! V \\# \ft V/. \, \; \: \( \) \[ \] V V \/ \= \\ \_ \l \aa \AA \acute \address \addto count e r \ae \AE \and
Tabellensatz: setzt einen Tabulator in einer tabbing Umgebung Tabellensatz: schaltet zur nächsten Tabulatorposition Mathematik-Modus: negativer Leerplatz Text-Modus: Akzent, z.B. \"a — ä — Text-Modus: Trennungssymbol, an dieser Stelle kann ein Wort abgeteilt werden. Text-Modus: Symbol — # — Text-Modus: Symbol — Text-Modus: Symbol — % — Mathematik-Modus: kleiner Leerplatz: | [ Mathematik-Modus: großer Leerplatz: | | Mathematik-Modus: mittlerer Leerplatz: | | schaltet in den math-mode Mathematik-Modus: beendet den math-mode schaltet in den "Displaystyle" Mathematik-Modus: schaltet den "Displaystyle" ab. Text-Modus: Akzent: — o — Text-Modus: Akzent: — ö — Text-Modus: "italic correction", Leerplatz nach Text in Italic Text-Modus: Akzent: — ö — Zeilenumbruch in verschiedenen Umgebungen Text-Modus: Akzent: — o — Text-Modus: Zeichen —_— Text-Modus: Akzent: — 5 — Mathematik-Modus: Klammer: || Text-Modus: Symbol — ä — Text-Modus: Symbol — A — Mathematik-Modus: Akzent: — ä — Letter-Stil: definiert den Absender von einem Brief, muß vor \ b e g i n { l e t t e r > definiert werden. addiert zu einem Zählregister einen bestimmten Wert, z.B. \ a d d t o c o u n t e r { c h a p t e r } { 2 } erhöht die Kapitelnummer um 2. Text-Modus: Symbol —ae— Text-Modus: Symbol — M — Text-Modus: mehrere Autoren werden im Befehl \author durch Nand getrennt.
B.3.
m^K-BEFEHLE
189
\ a p p e n d i x Buch-Stil: definiert den Beginn der Anhänge; a b hier werden alle nachfolgenden Kapitel mit Buchstaben "numeriert". Ebenso wird das Wort "Anhang" a n s t a t t "Kapitel" vor der Nummer ausgegeben. \ a r a b i c gibt den Inhalt des als Parameter angegebenen Zählregisters in arabischen Zahlen aus. \ a t o p Mathematik-Modus: richtet zwei Formelteile übereinander aus; z.B. { a \ a t o p b } liefert \ a u t h o r Article und Report-Stil: definiert den Autor eines Dokuments; mehrere Namen müssen mit \ a n d abgetrennt sein. Yb Text-Modus: Akzent: —o— \ b a c k m a t t e r IATf^X 2e, Brief-Stil: leitet den "Endteil" eines Buches ein. Y b a c k s l a s h Mathematik-Modus: Klammer: — \ — \ b a r Mathematik-Modus: Akzent: —ö— \ b a s e l i n e s k i p Text-Modus: Abstand zwischen den Basislinien zweier Zeilen (Zeilenabstand); vorbesetzt mit 12pt \ b e g i n startet eine Struktur. Die Konstruktion \ b e g i n — \ e n d wirkt wie eine Klammer; Änderungen von Variablen haben außerhalb dieser Konstruktion keine Gültigkeit mehr. Ybf M ^ X 2.09, Text-Modus: setzt den Text in der b o l d f a c e - S c h r i f t \ b i b i t e m leitet in der t h e b i b l i o g r a p h y Umgebung einen neuen Eintrag für ein Buch ein. Danach muß die Abkürzung des Buches in eckigen Klammern und das interne Schlüsselwort in geschwungenen Klammern folgen. \ b i b l i o g r a p h y fügt das von B I B T ^ X erzeugte Literaturverzeichnis in das Dokument ein. \ b i b l i o g r a p h y s t y l e definiert das Aussehen des Literaturverzeichnisses, das BraT^X erstellt: p i a i n (sortiert, numeriert), u n s r t (unsortiert), a l p h a (sortiert, Abkürzung aus Autorennamen zusammengestellt) und a b b r v (abgekürzte Namen). \ b i g c a p Mathematik-Modus: Operator: — — \ b i g c u p Mathematik-Modus: Operator: — | J — \ b i g o d o t Mathematik-Modus: Operator: — Q — \ b i g o p l u s Mathematik-Modus: Operator: — 0 — \ b i g o t i m e s Mathematik-Modus: Operator: —— \ b i g s k i p Text-Modus: setzt einen großen Zwischenraum nach einem Absatzende. Y b i g s k i p a m o u n t Text-Modus: Variable: Größe des Leerplatzes von \ b i g s k i p Y b i g s q c u p Mathematik-Modus: Operator: — [ J — \ b i g u p l u s Mathematik-Modus: Operator: —(«J— Ybigvee Mathematik-Modus: Operator: — y — Ybigwedge Mathematik-Modus: Operator: — / \ — \ b r a c e Mathematik-Modus: erzeugt einen "BinomialkoefRzienten" mit geschweiften Klammern, z.B. { a \ b r a c e b> liefert {£}. \ b r a c k Mathematik-Modus: ähnlich b r a c e , erzeugt jedoch eckige Klammern; z.B. { a \ b r a c k b } liefert [£].
190
ANHANG
B.
BEFEHLSVERZEICHNIS
\ b r e v e Mathematik-Modus: Akzent: —ö— \ b o l d m a t h Text-Modus: ändert die Schriftart für den Mathematik-Modus und druckt alle Zeichen fett; kann in IfT^X 2.09 scheitern. \ c Text-Modus: Akzent: —q— \ c a l M^X2.09, Mathematik-Modus: erzeugt kalligraphische Buchstaben: ABC \ c a p t i o n Text-Modus: definiert den Titel einer f i g u r e oder t a b l e Struktur; dieser wird auch in die Liste der Abbildungen bzw. Tabellen übernommen. \ c c Letter-Stil: setzt ein "Verteiler:" und rückt alle nachfolgenden Zeilen ein. \ c h a p t e r Buch-Stil: beginnt ein neues Kapitel und setzt automatisch den "Kapitelvorspann". \ c h e c k Mathematik-Modus: Akzent: —ö— \ c h o o s e Mathematik-Modus: setzt einen Binomialkoeffizienten; als Beispiel: {aNchoose b} liefert (£). \ c i r c l e setzt in der p i c t u r e Struktur einen Kreis. \ c i r c l e » setzt in der p i c t u r e Struktur einen ausgefüllten Kreis. \ c i t e Text-Modus: erzeugt ein Zitat eines im Literaturverzeichnis angegebenen Buches; dabei muß das interne Schlüsselwort angegeben werden, gefolgt von einer optionalen Seitenangabe. Der Befehl druckt dann die (im Literaturverzeichnis definierte) Abkürzung des Buches. \ c l e a r d o u b l e p a g e Text-Modus: beginnt eine neue Seite mit einer ungeraden Seitennummer \ c l e a r p a g e Text-Modus: beginnt eine neue Seite \ c l i n e Tabellensatz: setzt eine horizontale Linie zwischen zwei Spalten einer Tabelle. \ c l o s i n g Letter-Stil: setzt die Schlußformel eines Briefes. \ c o l o r M f c X 2 e , c o l o r - P a k e t ; stellt die Textfarbe global ein. \columnsep Text-Modus: Varaible: enthält die Größe des Leerplatzes zwischen zwei Spalten eines zweispaltigen Textes. \ c o l u m n s e p r u l e Text-Modus: Variable: enthält die Dicke des Trennstrichs zwischen zwei Spalten eines zweispaltigen Textes. \ c o p r o d Mathematik-Modus: Operator: — J j — \ c o p y r i g h t Text-Modus: Symbol: — © — \ d Text-Modus: Akzent: —9— \ d a t e Article und Report-Stile: definiert das Erstellungsdatum eines Dokuments, wird mit \ m a k e t i t l e ausgegeben. \ d d o t Mathematik-Modus: Akzent: —ö— \ d o c u m e n t c l a s s IiTßX2e: definiert den zu verwendenden Stil für ein Dokument und die Optionen. Dieser Befehl muß in jedem Dokument vorhanden sein. \ d o c u m e n t a t y l e IflT^rjX 2.09: definiert den zu verwendenden Stil für ein Dokument und die Optionen. Dieser Befehl muß in jedem Dokument vorhanden sein.
B.3.
191
BTEX-BEFEHLE
\ d o t Mathematik-Modus: Akzent: — x — \ d o t f i l l füllt eine Box mit Punkten aus (auch im Tabellensatz verwendbar): \ m a k e b o x [ l . 5 c m ] { \ d o t f i l l } liefert: \downbracef i l l ähnlich \ d o t f i l l , füllt eine Box jedoch mit einer geschweiften Klammer aus: , ^ s \em IMfeX 2.09, Text-Modus: setzt den danachfolgenden Text hervorgehoben (in italic); ist der Text bereits hervorgehoben, wird auf die Normalschrift umgeschalten. \ e n c l Letter-Stil: setzt "Anlage(n):" und rückt alle danachfolgenden Zeilen ein (um Anlagen eines Briefes anzuführen). \ e n d beendet eine Struktur; zu jedem \ b e g i n - B e f e h l muß ein korrespondierender \end-Befehl vorhanden sein. \ e n l a r g e t h i s p a g e IM^X 2 £ , Text-Modus: verlängert die aktuelle Seite um einen bestimmten Wert. \ f b o x erzeugt eine eingerahmte Box, z.B. \ f b o x { X } liefert: \ i o o t n o t e Text-Modus: erzeugt eine Fußnote, die automatisch numeriert wird. Der Fußnotentext erscheint unten auf der aktuellen Seite, mit einer Linie vom Text getrennt. \ f r a c Mathematik-Modus: erzeugt einen Bruch; \ f r a c { a H b } liefert: a 6' \ f r a m e erzeugt einen Rahmen in der p i c t u r e Struktur \ f r a m e b o x erzeugt eine eingerahmte Box einer bestimmten Größe; diese muß als Parameter angegeben werden; z.B.\f ramebox [lern] {X} liefert: \ f r o n t m a t t e r IATgX 2 £ , Brief-Stil: leitet den Einleitungsteil eines Buches ein. \ g r a v e Mathematik-Modus: Akzent: —o— \H Text-Modus: Akzent: —ö— \ h a t Mathematik-Modus: Akzent: — x — \ h f i l l Text-Modus: füllt eine Box mit einem Leerplatz aus; dieser ist "dynamisch", paßt sich also der Größe einer Box an. \ h l i n e Tabellensatz: erzeugt eine horizontale Linie über alle Spalten einer Tabelle. \ h r u l e f i l l ähnlich \ d o t f i l l , füllt eine Box mit einer Linie aus; \ h s p a c e Text-Modus: erzeugt einen horizontalen Lerraum der angegebenen Größe. \ h u g e Text-Modus:
stellt die Größe einer
\Huge Text-Modus:
stellt die Größe einer
Schrift ein.
Schrift ein.
\ h y p h e n a t i o n definiert Umbruchstellen innerhalb von Wörtern; diese Definition sollte in der Präambel erfolgen. \ i Text-Modus: Symbol: —l— \ i m a t h Mathematik-Modus: Symbol: —i— \ i n c l u d e fügt an der angegebenen Stelle eine weitere t e x - D a t e i in das Dokument ein.
ANHANG B.
192
BEFEHLSVERZEICHNIS
\includegraphics I^TßX 2 e , graphics-Paket: fügt eine externe Grafik ein (je nach Preview bzw. Druckertreiber verschieden). \indent Text-Modus: erzeugt einen horizontalen Leerplatz der Größe \parindent. \index Text-Modus: fügt das danachfolgende Stichwort in die Indexdatei ein, die danach mit Makeindex zu einen Index zusammengestellt wird. Hier wird die Seitennummer automatisch übernommen. \ i n t Mathematik-Modus: Operator: — f — \ i t ^TßX 2.09, Text-Modus: schaltet in die Italic-Schiiit um. \item leitet einen Eintrag in einer Liste ein; danach folgt (optional) die Angabe des "Einleitungssymbols" für den Eintrag. \j Text-Modus: Symbol: — j — \jmath Mathematik-Modus: Symbol: — j — \1 Text-Modus: Symbol: —1— \L Text-Modus: Symbol: — L — \ l a b e l sezt eine "Referenz" und definiert einen (in Klammern folgenden) symbolischen Namen, der den Teil des Dokuments (Liste, Tabelle, Formel,...) repräsentiert und mit \ref angesprochen werden kann. M a r g e Text-Modus:
stellt die Größe einer Schrift ein.
\Large Text-Modus:
stellt die Größe einer
\LARGE \LaTeX \lceil \lef t
\leftarrowf i l l \lfloor \lgroup \linebreak \ l i s t o f f igures
\listoftables
Schrift
Schrift
ein.
Text-Modus: stellt die Größe einer ein. Text-Modus: Symbol: — I M ^ X — Mathematik-Modus: Klammer: — — Mathematik-Modus: klammert einen Ausdruck automatisch ein; die Art der Klammer muß als Parameter angegeben werden; jeder \ l e f t-Befehl muß einen korrespondierenden \right-Befehl besitzen; z.B. \ l e f t ( \ f r a c { a H b } \ r i g h t ) liefert: ( § ) . Text-Modus: ähnlich \ d o t f i l l , füllt eine Box jedoch mit einem Pfeil nach links: < Mathematik-Modus: Klammer: — [ — Mathematik-Modus: Klammer: — ^ — Text-Modus: definiert eine Zeilenumbruchstelle. Text-Modus: erzeugt eine Liste aller in einem Dokument vorkommenden Abbildungen; die Beschreibung der Abbildungen wird durch die jeweiligen \caption-Befehle in den f i g u x e Umgebungen bestimmt. Text-Modus: ähnlich \ l i s t o f f i g u r e s , liefert aber eine Liste aller table-Umgebungen
\lmoustache Mathematik-Modus:
Klammer: — J —
\mainmatter IfTgX 2 £ , Buch-Stil:
leitet den Textteil eines Buches ein.
B.3.
BTEX-BEFEHLE
193
\makebox Text-Modus: erzeugt eine Box einer angegebenen Größe; optional kann auch die Ausrichtung des Textes in der Box angegeben werden. \ m a k e i n d e x initialisiert den Mechanismus der automatischen Indexerstellung in I^TßX; muß immer in der Präambel angegeben werden, wenn mittels \ i n d e x ein automatischer Index erstellt wird. \ m a k e t i t l e Article und Report-Stil: weist IM^X an, aus dem definierten \ t i t l e , aus dem \ a u t h o r und dem \ d a t e einen Titel für ein Dokument zu setzen. \ m a r g i n p a r Text-Modus: setzt eine Randnotiz; werden zwei Parameter angegeben (einer in eckigen und einer in geschwungenen Klammern), so wird der erste Parameter gesetzt, wenn die Seitennummer gerade ist, ansonsten der zweite. \ m a r g i n p a r w i d t h Text-Modus: Variable: Breite der Randnotizen. \ m a r k b o t h Text-Modus: die zwei Parameter geben den Text an, der in der Kopfzeile auf einer geraden und einer ungeraden Seite gesetzt werden soll. \ m a r k r i g h t Text-Modus: gibt einen Text an, der in der Kopfzeile des Dokuments gesetzt wird; wurde als Option t w o s i d e angegeben oder ist der Dokumenttyp ein Buch, so erscheint dieser Text nur auf der ungeraden Seite. \mathbf I^TEX 2e: schaltet im m a t h - m o d e den Schriftstil auf Fettdruck um. \ m a t h c a l I£TEX2£: setzt im m a t h - m o d e kalligraphische Zeichen ( A B C V ) . \mathrm IATßX 2 £ : schaltet im m a t h - m o d e auf Normalschrift um. \ m a t h s f IiTE^2£:: schaltet im m a t h - m o d e auf Sans Serif-Schrift um. \mbox erzeugt eine Box, die genauso groß ist, wie ihr (als Parameter angegebener) Inhalt. \ m e d s k i p Text-Modus: setzt einen vertikalen Leerraum mittlerer Größe nach einem Absatzende. \medskipamount Text-Modus: Variable: Größe des Leerplatzes von \ m e d s k i p . \ m u l t i c o l u m n Tabellensatz: zieht n Spalten zu einer zusammen und definiert das Aussehen der neuen Spalte durch eine Formatierungsanweisung; bei gerahmten Tabellen sind in der Formatierungsanweisung auch die vertikalen Linien einzutragen. \newcommand definiert einen neuen Befehl; optional wird die Zahl der Parameter (maximal 9) angegeben. Der Name des neuen Befehls muß als erster Parameter übergeben werden; danach folgt (in geschwungenen Klammern) die "Implementation" des Makros. \ n e w c o u n t e r reserviert ein neues Zählregister unter dem angegebenen Namen. \newenvironment definiert eine neue Umgebung, deren Namen als Parameter angegeben wird; danach folgt (optional) die Zahl der Parameter in eckigen Klammern. Hierauf werden die Anweisungen definiert, die bei \ b e g i n bzw. \ e n d ausgeführt werden; der \end-Teil darf keine Parameter verwenden. \ n e w l i n e beginnt eine neue Zeile.
194
ANHANG
B.
BEFEHLSVERZEICHNIS
\newpage beginnt eine neue Seite oder bei einem zweispaltigen Dokument eine neue Spalte. \newtheorem definiert eine theoremartige Struktur; als Paramter müssen der Name der neuen Umgebung, der Titel und (optional) eine Angabe über die Numerierung übergeben werden. \ n o c i t e weist BlßTgX an, einen Eintrag in das Literaturverzeichnis aufzunehmen, ohne das Buch explizit zu zitieren. \ n o i n d e n t Text-Modus: verhindert die Einrückung am Beginn eines Absatzes. \ n o l i n e b r e a k Text-Modus: verhindert den Zeilenumbruch an einer Stelle bzw. zeigt an, daß diese Stelle für den Umbruch nicht günstig ist. \nonumber Mathematik-Modus: verhindert die Generierung einer Formelnummer für eine Zeile (!) in einer e q n a r r a y - U m g e b u n g \ n o p a g e b r e a k Text-Modus: verhindert den Seitenumbruch an einer Stelle bzw. zeigt an, daß diese Stelle für den Umbruch nicht günstig ist. \ n o r m a l s i z e Text-Modus: schaltet die Schriftgröße in Normalgröße zurück. Verneinung, z.B. \ n o t = liefert \ n o t Mathematik-Modus: \ o Text-Modus: Symbol: — 0 — \ 0 Text-Modus: Symbol: — 0 — \ o e Text-Modus: Symbol: —ce— \ 0 E Text-Modus: Symbol: — ( E — Operator: — § — \ o i n t Mathematik-Modus: \onecolumn Text-Modus: bewirkt einspaltige Ausgabe des Textes. \ o p e n i n g Letter-Stil: setzt die Anrede in einem Brief. \ o v a l setzt in einer p i c t u r e - U m g e b u n g ein Oval. \ o v e r b r a c e Mathematik-Modus: versieht einen Ausdruck mit einer geschwungenen Klammer nach oben; Ein Text, der mit * angegeben wird, wird über der Klammer gesetzt. \ o v e r l i n e Mathematik-Modus: Akzent: —a + b— \ P Text-Modus: Symbol: —i[— \ p a g e b r e a k erlaubt einen Seitenumbruch oder zeigt eine günstige Stelle an. \ p a g e n u m b e r i n g definiert das Aussehen der Seitennummer: a r a b i c (arabische Zahlen), roman (römisch; Kleinbuchstaben), Roman (römisch; Großbuchstaben), a l p h a (Kleinbuchstaben a...z) und Alpha (Großbuchstaben A...Z). \ p a g e r e f setzt die Seitennummer einer Referenz ein; als Parameter muß das Schlüsselwort angegeben werden, das mit \ l a b e l definiert wurde. \ p a g e s t y l e definiert das Aussehen der Kopf- bzw. Fußzeile einer Seite: p i a i n (Fußzeile mit Seitennummer), empty (keine Seitennummer), h e a d i n g s (Kopfzeile mit Informationen aus \ c h a p t e r bzw. \ s e c t o i o n ) und myheadings (Kopfzeile mit Informationen aus \markboth bzw. \ m a r k r i g h t ) . \ p a r Text-Modus: zeigt ein Absatzende an.
B.3.
195
BTEK-BEFEHLE
\ p a r b o x erzeugt eine Box, deren Inhalt ein ganzer Absatz ist; als Parameter muß die Breite der Box angegeben werden und (optional) die Ausrichtung: b (letzte Zeile) bzw. t (erste Zeile). \ p a r i n d e n t Text-Modus: Variable: Größe der Einrückung am Absatzbeginn. \ p a r s k i p Text-Modus: Variable: Größe des Leerraumes zwischen zwei Absätzen. \ p a r t Buch-Stil: beginnt einen neuen Abschnitt und erzeugt ein Deckbatt \ p o u n d s Text-Modus: Symbol: — £ — \ p r o d Mathematik-Modus: Operator: — — \ p r o t e c t muß vor Befehlen stehen, die im Parameter anderer Befehle aufgerufen werden. \ p s Letter-Stil: leitet ein Postscriptum im Brief ein. \ p u t fügt in der p i c t u r e - U m g e b u n g ein Grafikobjekt ein. \ q u a d fügt einen Leerplatz ein: — — N r a i s e b o x Text-Modus: hebt eine Box um eine bestimmte Größe an bzw. setzt sie tiefer (wenn die Angabe negativ ist). \ r c e i l Mathematik-Modus: Klammer: —] — \ r e f erzeugt eine Referenz auf eine Tabelle, Formel, etc.; als Parameter muß ein Schlüsselwort angegeben werden, das mittels \ l a b e l irgendwo im Dokument definiert ist. \renewcommand redefiniert einen Befehl; die Parameter sind identisch mit denen von \newcommand \ r e n e w e n v i r o n m e n t redefiniert eine Umgebung; die Parameter sind identisch mit denen von \newenvironment. \ r e s i z e b o x I?TeX2E, g r a p h i c s - P a k e t ; skaliert eine Box in x - und y Richtung unterschiedlich. \ r e v e r s e m a r g i n p a r setzt die Randnotizen auf dem anderen Rand des Textes. \ r f l o o r Mathematik-Modus: Klammer: —J — \ r i g h t beendet ein \ l e f t ; als Parameter muß der T y p der rechten Klammer angegeben werden (oder . für keine Klammer). \ r i g h t a r r o w f i l l ähnlich \ d o t f i l l , füllt eine Box mit einem Pfeil nach rechts: \rm IM^gX 2.09, Text-Modus: Nrmoustache Mathematik-Modus:
schaltet auf die Standardschrift zurück.
Klammer: — ^ —
\roman gibt den Inhalt eines Zählregisters in römischen Zahlen (Kleinbuchstaben) aus. \Roman gibt den Inhalt eines Zählregisters in römischen Zahlen (Großbuchstaben) aus. \ r o t a t e b o x M?eX2 £ , g r a p h i c B - P a k e t , rotiert eine Box u m den angegebenen Winkel. \ r u l e erzeugt eine Linie der angegebenen Breite und Höhe \samepage Text-Modus: verhindert den Seitenumbruch \ s c IfT^X 2.09, Text-Modus: schaltet in die KAPITÄLCHEN-Schrift um.
ANHANG
196
B.
BEFEHLSVERZEICHNIS
\ s c a l e b o x I^TgX 2 e , g r a p h i c s - P a k e t ; skaliert eine Box gleichmäßig. \ s e c t i o n Text-Modus: beginnt einen neuen Abschnitt; in einem Buch ist dies ein Teil eines Kapitels. \ s e t c o u n t e r setzt ein Zählregister auf einen bestimmten Wert. \ s f ttTEX 2.09, Text-Modus: stellt die Sans Serif-Schrift ein. \ s i g n a t u r e Letter-Stil: definiert den Text, der nach dem Leerplatz für die Unterschrift gesetzt wird. \ s l IMfeX 2.09, Text-Modus: stellt die SJauted-Schrift ein. \ s l o p p y ähnlich der Umgebung s l o p p y p a r ; IfT^X achtet dann nicht sehr auf die "Schönheit" des Blocksatzes. \ s m a l l Text-Modus: stellt eine kleine Schrifgröße ein. \ s m a l l s k i p Text-Modus: fügt nach einem Absatzende einen kleinen vertikalen Leerplatz ein. \ s m a l l s k i p a m o u n t Text-Modus: Variable: Größe des Leerplatzes von X a m a l l s k i p . \ s q r t Mathematik-Modus: erzeugt eine Wurzel: \ s q r t { x } liefert y/x; ist ein weiterer Parameter (in eckigen Klammern) angegeben, so wird eine n - t e Wurzel gesetzt: \ s q r t [n] {x} liefert: y/x. \ s s Text-Modus: Symbol: —ß— \ s t a c k r e l Mathematik-Modus: richtet zwei mathematische Zeichen über?
\subsection \subsubsection \sum \t \tableofcontents \TeX \textbf \textcolor \textheight \textit \textmd \textnormal \textrm Ytextsc
einander aus: z.B. \ s t a c k r e l { ? M = } liefert: = Text-Modus: unterteilt eine \ s e c t i o n und numeriert den Unterabschnitt. Text-Modus: unterteilt eine \ s u b s e c t i o n . Mathematik-Modus: Operator: — — Text-Modus: Akzent: —oo— Text-Modus: erzeugt ein Inhaltsverzeichnis aus den \ p a r t , \ c h a p t e r , \ s e c t i o n und \ s u b s e c t i o n - A n g a b e n . Text-Modus: Symbol: —TgX— WTßX. 2e, Text-Modus: ändert den Schriftstil und druckt eine f e t t e Schrift. I£TEX2 e , c o l o r - P a k e t ; stellt die Textfarbe lokal ein. Text-Modus: Variable: Vertikale Ausmaße der Druckseite Text-Modus: ändert den Schriftstil und druckt eine kursive Schriß. I^TEX 2 E , Text-Modus: ändert den Schriftstil und druckt eine normaldicke Schrift. IMfcX2 e ,Text-Modus: ändert den Schriftstil und druckt Normalschrift. IM^X 2 e , Text-Modus: ändert die Schriftart auf Roman. I^TEX2C, Text-Modus: ändert den Schriftstil und druckt KAPITÄLCHEN.
\textsf 2 £ , Text-Modus: ändert die Schriftart auf Sans Serif. \ t e x t s l I£TßX2 C ,Text-Modus: ändert den Schriftstil und druckt eine kursive Schrift.
B.3.
BTEX-BEFEHLE
197
\ t e x t t t WT^.2£,Text-Modus: ändert die Schriftart auf Schreibmaschinenschrift. \textup Text-Modus: ändert den Schriftstil und druckt eine nichtkursive Schrift. \textwidth Text-Modus: Variable: Horizontale Ausmaße der Druckseite \thanks Article und Report-Stile: erzeugt eine Fußnote im \authorBefehl mit vordefinierten Symbolen. \ t h i c k l i n e s ändert in einer picture-Umgebung die Strichdicke, sodaß dicke Linien erzeugt werden. \ t h i n l i n e s ändert in einer picture-Umgebung die Strichdicke, sodaß dünne Linien erzeugt werden. \ t i l d e Mathematik-Modus: Akzent: — 5 — \tiny Text-Modus: stellt eine kleine s.;hri«Sr;,»c ein. \ t i t l e Article und Report-Stile: definiert den Titel eines Dokuments; kann mehrzellig sein, Zeilen müssen mit \\ abgetrennt werden. \today Text-Modus: setzt das aktuelle Datum in das Dokument ein. \ t t I^T^X 2.09, Text-Modus: stellt die S c h r e i b m a s c h i n e n s c h r i f t ein. \twocolumn Text-Modus: beginnt, das Dokument zweispaltig zu setzen. \u Text-Modus: Akzent: — ö — \unboldmath Text-Modus: schaltet den Fettdruck von mathematischen Symbolen wieder ab; der Befehl kann nicht im math-mode verwendet werden. \underbrace Mathematik-Modus: versieht einen Ausdruck mit einer geschwungenen Klammer nach unten; Ein Text, der mit _ angegeben wird, wird unter der Klammer gesetzt. \underline unterstreicht einen Text, z.B. \underline{X} liefert: X . \ u n i t l e n g t h Längeneinheit in der picture-Umgebung (vorbesetzt: lpt). \usepackage I^T^X 2 e , lädt ein externes Programmpaket und gibt Optionen dafür an. \v Text-Modus: Akzent: — ö — \vec Mathematik-Modus: Akzent: —