Die L^{A}TEX-Stile thesis und thema

Wenzel Matiaske^{∗}

1995/25/01

Abstract

The style files thesis and thema base on the standard layout report. In contrast to this standard document style the outlook of these styles is more European and more flexible. The layout may easily be changed via options like (defaults are underlined):

\underline{indent} or noindent (no) indent of paragraphs and footnotes,

itemization or \underline{noitemization} (no) bullets, stars etc. in the itemize environment,

\underline{enumeration} or noenumeration alphanumeric or numeric enumerate environ-

ment,

\underline{headline} or noheadline, headcount or \underline{noheadcount} change the layout of the

headings,

\underline{center} or nocenter, \underline{upper} or noupper change the style of the sectioning,

\underline{slanted} or bold or sfbold change the fonts used in chapters, titles or headings,

crosshair marks empty pages with a crosshair, which is useful for camera reproducing of the output, and

chapterbib for chapter bibliographies with BibTEX.

For default, the text “Chapter” is not printed in front of a chapter. If you want a more standard L^{A}TEX-layout define \chapapp{Chapter} in the preamble. The style defines an advanced section of commands for the title page. The commands \subtitle{text} and \translator{text} take some text for the title page; \dedication{text} produce a separate dedication page, and notes on the backside of the title page \uppertitleback{text}, \middletitleback, and

\lowertitleback may be used.

The style file thema defines some more commands, which may be useful in collections. The command \chapterauthors{authors} takes the authors as an argument, which are printed in the chapter title and in the table of contents. If you want to put the author into the headline of the odd side pages the command \shortauthor{text} may be used. This command must be specified before the corresponding \chapter. The environment chapterabstract prints the abstract of the chapter. Especially with thema the style option chapterbib may be useful. This option allows BibTEX to produce a bibliography for every file which is read by the command \include{file} in a control file. The fonts used in thesis and thema may be changed with the following commands which take a font declaration as argument:

∗TU-Berlin, FB 14, WW 6, Uhlandstr. 4–5, 10623 Berlin, Tel. 030-314 225 74, email:

mati1831@perform.ww.tu-berlin.de.

\partfont{decl}           \theorembodyfont{decl}
\chapterfont{decl}        \itemfont{decl}
\chapterauthorfont{decl}  \examplefont{decl}
\sectionfont{decl}        \headingstextfont{decl}
\subsectionfont{decl}     \pagenumberfont{decl}
\subsubsectionfont{decl}  \captionheaderfont{decl}
\paragraphfont{decl}      \captionbodyfont{decl}
\subparagraphfont{decl}   \figurefont{decl}
\titlefont{decl}          \tablefont{decl}
\subtitlefont{decl}       \indexsize{decl}
\authorfont{decl}         \bibsize{decl}
\translatorfont{decl}     \theoremheaderfont{decl}

\institutionfont{decl}

1 Einleitung

Die hier vorgestellten L^{A}TEX-Stile^{1} basieren auf dem Grundstil report.cls und sind somit zum ein- und doppelseitigen Satz von längeren Arbeiten wie Büchern geeignet. Gemeinsam ist den Formaten, daß sie einige Optionen zur flexibleren Gestaltung des Layouts beinhalten. Im Unterschied zur Stilart thesis stellt thema zusätzlich einige Befehle zur Verfügung, die bei der Erstellung von Sammelwerken nützlich sind.

\documentclass[12pt,nocenter,sfbold]{thema}
\chapapp{Chapter}
\begin{document}
\title{Fighting Fire with Fire} \subtitle{Festooning French Phrases}
\translator{PhD Dissertation}  \author{F. Phidias Phony-Baloney}
\institution{Fanstord University}
\maketitle
...
\end{document}

Abbildung 1: Anwendungsbeispiel der Stilart thema

2 Bücher mit thesis

2.1 Zusätzliche Stiloptionen

Die wichtigsten Veränderungen gegenüber dem Grundstil report.cls betreffen das Layout und sind benutzerfreundlich zu Optionen gebündelt. Sie betreffen die Absatzformatierung, die Gestaltung von Listenumgebungen und Kopfzeilen sowie das Layout der Überschriften. Die neuen Optionen sind in Tabelle 1 zusammengestellt. Die jeweiligen Voreinstellungen sind in der Übersicht unterstrichen. Werden beispielsweise linksbündige Überschriften in fetten serifenlosen Typen gewünscht, sind die Optionen nocenter und sfbold im optionalen Argument des Kommandos \documentstyle[options]{stil} zu spezifizieren, wie Anwendungsbeispiel 1 zeigt.

\chapapp Die Kapitelüberschriften werden hier standardmäßig ohne die Angabe \appendix des Kapitelnamens ”Chapter“ oder ”Kapitel“ gesetzt. Wird die Ausgabe

der Bezeichnung gewünscht, kann dies durch Spezifikation des neuen

Befehls \chapapp{text} erreicht werden; z. B. \chapapp{\chaptername}

im Vorspann des Dokumentes. Dies hat auch Auswirkung auf die Formatierung des Anhanges. Per Voreinstellung wird der Anhang durch eine Teilüberschrift, d. h. eine eigene

1Version1.0g vom 1996/25/01. Dokumentation vom 1995/25/01.

Tabelle 1: Zusätzliche Stiloptionen

\underline{indent}

Einzug zu Beginn von Absätzen oder Fußnotenabsätzen (L^{A}TEX-Standard).

noindent  Kein Einzug derselben.

itemize Hervorhebung der Staffelung in itemize Umgebungen durch verschiedene Zeichen wie z. B. \bullet, \star etc. (L^{A}TEX-Standard).

\underline{noitemize}  Keine Hervorhebung der ”itemization“.

\underline{enumerate} Alphanumerische Zählung in enumerate Umgebungen (L^{A}TEX-Standard).

noenumerate Dekadische Zählung.
\underline{headline}  Kopfzeilen werden unterstrichen.
noheadline Keine Unterstreichung derselben.

headcount Kapitel und Abschnittsnumerierung werden in

Kopfzeilen ausgegeben.

\underline{noheadcount} Kopfzeilen ohne diese Zähler.
\underline{center}  Überschriften und Kopfzeilen zentriert.
nocenter  Überschriften und Kopfzeilen linksbündig.
\underline{upper}  Kapitelüberschriften in Großbuchstaben.

noupper Keine Umwandlung der Kapitelüberschriften

in Großbuchstaben.

\underline{slanted}

Größere/geneigte Typen in Überschriften, Kopfzeilen, Listen und Titelei.

bold  Größere/fette Typen.
sfbold  Größere/fette serifenlose Typen.

chapterbib Kapitelweise Literaturverzeichnisse in

Zusammenarbeit mit BibTEX.

crosshair  Markierung am oberen Seitenrand.

Seite, vom übrigen Text abgesetzt. Wird \chapapp dagegen spezifiziert, unterbleibt die Teilüberschrift und stattdessen wird wie üblich der Kapitelname ”Appendix“ bzw. ”Anhang“ ausgegeben.

2.2 Erweiterungen der Titelei

\subtitle Die Titelei ist um einige Kommandos erweitert worden. Der Angabe

\translator
\institution
\dedication

eines Untertitels dient der Befehl \subtitle{text}. Der Untertitel wird in kleineren Typen unterhalb des eigentlichen \title{text} gesetzt. Der den Kommandos \translator{text} bzw. \institution{text} übergebene Text wird auf der Titelseite vertikal zentriert bzw. an deren Ende ausgegeben. Eine Widmung, die auf einer separaten Seite plaziert wird, erzeugt der Befehl \dedication{text}. Diese Kommandos behalten sowohl bei einseitigem als auch bei zweiseitigem Druck ihre Wirkung.

\uppertitleback Bei zweiseitigem Druck werden nicht nur die übliche Titelseite und ggf.

\middletitleback
\lowertitleback

eine Widmung, sondern zusätzlich eine Umschlagsseite und ein sogenannter Schmutztitel erzeugt. Ausschließlich für zweiseitigen Druck sind auch

die Kommandos (\uppertitleback{text}, \middletitleback{text} und

\lowertitleback{text} konstruiert, die dem script.sty entnommen sind [1]. Sie dienen dem Satz von Verlags-, Copyright- oder ISBN-Angaben auf der Rückseite des Titels. Bei zweiseitigem Druck beginnt die Seitenzählung nach der Titelei standardmäßig mit der fünften Seite.

2.3 Geringfügige Änderungen

Ferner wurden einige geringfügige Veränderungen vorgenommen. Diese betreffen insbesondere die Option draft, die nun eine besondere Kopfzeile erzeugt, in der Datum, Zeit und Name des Jobs ausgegeben werden. Eine zur Reproduktion des Ausdrucks besonders nützliche Option wurde der Stilvariante svma.sty des Springer Verlages [3] entnommen. Die Option crosshair fügt auf leeren Seiten eine Markierung am oberen Seitenrand ein. Im Befehl \caption{text} wird ein Kurzname wie ”Fig.“ bzw. ”Tab.“ benutzt, und dieser Name wird bei der Absatzformatierung langer Beschriftungen ausgespart. Einige weitere Kommandos, die die Erstellung von Tabellen und speziellen Randnotizen unterstützen, werden im Zusammenhang mit der Stiloption etc beschrieben. Schließlich sind die Voreinstellungen dahingehend geändert, daß der \pagestyle{headings} die Regel ist.

2.4 Einstellung der Schriftarten

Die in den Stiloptionen slanted, bold und sfbold voreingestellten Schriften können bei Bedarf modifiziert werden. Zu diesem Zweck stehen vier Schnittstellen zur Verfügung, welche die gewünschten Schriftarten als Argumente übernehmen. Die Befehle sind in Tabelle 2 zusammengestellt. Der Befehl \chapterfont ist für die Variante slanted beispielsweise folgendermaßen definiert als \chapterfont{large}.

Tabelle 2: Einstellung der Schriftarten

         \partfont{decl}           \theorembodyfont{decl}
         \chapterfont{decl}        \itemfont{decl}
         \chapterauthorfont{decl}  \examplefont{decl}
         \sectionfont{decl}        \headingstextfont{decl}
         \subsectionfont{decl}     \pagenumberfont{decl}
         \subsubsectionfont{decl}  \captionheaderfont{decl}
         \paragraphfont{decl}      \captionbodyfont{decl}
         \subparagraphfont{decl}   \figurefont{decl}
         \titlefont{decl}          \tablefont{decl}
         \subtitlefont{decl}       \indexsize{decl}
         \authorfont{decl}         \bibsize{decl}
         \translatorfont{decl}     \theoremheaderfont{decl}

         \institutionfont{decl}

3 Sammelwerke mit thema

\chapterauthor Die Stilart thema stellt zusätzlich einige Kommandos zur Verfügung, die

\shortauthor
chapterabstract

bei der Erstellung von Sammelwerken nützlich sind. Dies sind zum einen der Befehl \chapterauthor{text}, der den Satz der Autoren eines Kapitels übernimmt. Sollen die Autoren ins Inhaltsverzeichnis und in die Kopfzeilen der geraden Seiten übernommen werden, ist zusätzlich das Kommando \shortauthor{text} zu spezifizieren. Wichtig ist, daß das Kommando vor der mit \chapter spezifizierten Überschrift angegeben werden muß; sonst wird es erst im folgenden Kapitel wirksam. Die neue Umgebung \chapterabstract erlaubt eine Zusammenfassung im jeweiligen Kapitel. In diesem Zusammenhang ist auch auf die zusätzliche Option chapterbib hinzuweisen, die dem Substil bibperinclude.sty entspricht [2]. Diese Option ermöglicht die Erstellung mehrerer Literaturverzeichnisse mittels BibTEX in einem Dokument, was insbesondere im Fall von Sammelwerken vorteilhaft sein kann. Zu diesem Zweck sind die Kapitel in getrennten Dateien zu halten und mittels \include{datei} Befehlen in einer Formatierdatei zu bündeln. Am Ende jedes Kapitels sind die Kommandos \bibliographystyle{stil} und \bibliography{datenbanken} anzugeben. BibTEX kann nun jedes Kapitel getrennt bearbeiten. Im Anschluß erzeugt L^{A}TEX ein Literaturverzeichnis für das jeweilige Kapitel.

4 Implementation

Die Implementation enthält den Code für die Klassen thesis und thema sowie für die kompatiblen Style-Files.

1 ⟨∗thesis | thesis.sty | thema | thema.sty⟩

 2 \NeedsTeXFormat{LaTeX2e}

3 ⟨/thesis | thesis.sty | thema | thema.sty⟩

Die kompatiblen Styles laden die zugehörige Klasse.

4 ⟨∗thesis.sty⟩

 5 \@obsoletefile{thesis.cls}{thesis.sty}
 6 \LoadClass{thesis}

7 ⟨/thesis.sty⟩ 8 ⟨∗thema.sty⟩

 9 \@obsoletefile{thema.cls}{thema.sty}
10 \LoadClass{thema}

11 ⟨/thema.sty⟩

Im Fall der Klasse thema wird eine Startmeldung ausgegeben, die Optionen werden der zugehörigen Klasse thesis übergeben und diese wird eingelesen.

12 ⟨∗thema⟩

13 \ProvidesClass{thema}[\filedate\space\fileversion\space%
14  LaTeX document class (wm).]
15 \DeclareOption*{\PassOptionsToClass{\CurrentOption}{thesis}}
16 \ProcessOptions
17 \LoadClass[thema]{thesis}

18 ⟨/thema⟩

Die Implementation des Hauptstils thesis.cls beginnt mit der Startmeldung für die Klasse thesis.cls.

19 ⟨∗thesis⟩

20 \ProvidesClass{thesis}[\filedate\space\fileversion\space%
21  LaTeX document class (wm).]

Es folgen weitere Definitionen und Initialisierungen, die den L^{A}TEX 2ε Standard Klassen entnommen sind. Das Kommando kontrolliert die Schriftgröße.

22 \newcommand\@ptsize{}

Schalter, um zwischen zwei- und einspaltigem Satz zu wechseln.

23 \newif\if@restonecol

Schalter, um die Erzeugung einer Titelseite anzuzeigen.

24 \newif\if@titlepage
25 \@titlepagetrue

Schalter, der anzeigt, ob Kapitel auf der rechten Seite beginnen.

26 \newif\if@openright

Schalter für ”offenes“ oder ”geschlossenes“ Format der Bibliographie.

27 \newif\if@openbib
28 \@openbibfalse

Schalter, der anzeigt, ob der Hauptteil des Buches produziert wird.

29 \newif\if@mainmatter \@mainmattertrue

Definitionen der Papierformate

30 \DeclareOption{a4paper}
31 {\setlength\paperheight {297mm}%
32  \setlength\paperwidth  {210mm}}
33 \DeclareOption{a5paper}
34 {\setlength\paperheight {210mm}%
35  \setlength\paperwidth  {148mm}}
36 \DeclareOption{b5paper}
37 {\setlength\paperheight {250mm}%
38  \setlength\paperwidth  {176mm}}
39 \DeclareOption{letterpaper}
40 {\setlength\paperheight {11in}%
41  \setlength\paperwidth  {8.5in}}
42 \DeclareOption{legalpaper}
43 {\setlength\paperheight {14in}%
44  \setlength\paperwidth  {8.5in}}
45 \DeclareOption{executivepaper}
46 {\setlength\paperheight {10.5in}%
47  \setlength\paperwidth  {7.25in}}

Die Option landscape tauscht die Werte für Seitenhöhe und Seitenbreite.

48 \DeclareOption{landscape}
49 {\setlength\@tempdima   {\paperheight}%
50  \setlength\paperheight {\paperwidth}%
51  \setlength\paperwidth  {\@tempdima}}

Optionen für Schriftgrößen.

52 \DeclareOption{10pt}{\renewcommand\@ptsize{0}}
53 \DeclareOption{11pt}{\renewcommand\@ptsize{1}}
54 \DeclareOption{12pt}{\renewcommand\@ptsize{2}}

Zwei oder einseitiger Druck.

55 \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
56 \DeclareOption{twoside}{\@twosidetrue  \@mparswitchtrue}

Definitionen für die draft Option. Die Makros \SetTime und \now sind aus tugboat.com übernommen. Diese werden in der draft Option zur Gestaltung der Kopfzeile benutzt. Ferner wird ein unmaskierter Schalter \iffinal definiert, der standardmäßig wahr, im Fall der Option draft dagegen falsch ist.

57 \newcount\hours \newcount\minutes
58 \def\SetTime{\hours=\time
59  \global\divide\hours by 60
60  \minutes=\hours
61  \multiply\minutes by 60
62  \advance\minutes by-\time
63  \global\multiply\minutes by-1 }
64 \def\now{\number\hours:\ifnum\minutes<10 0\fi\number\minutes}
65 \newif\iffinal \finaltrue
66 \DeclareOption{draft}{\setlength\overfullrule{5pt}\finalfalse \SetTime}

67 \DeclareOption{final}{\setlength\overfullrule{0pt}\finaltrue}

Definition des Schalters \if@thema. Der Zustand dieses Schalters ist von der Option der thema abhängig und steuert im folgenden die Auswahl der Makros.

68 \newif\if@thema       \@themafalse
69 \DeclareOption{thema}{\@thematrue}

Die Optionen initialisiert die Variable option@crosshair, die abgefragt wird, um auf leeren Seiten eine Markierung des Seitenkopfs einzufügen.

70 \newif\if@crosshair       \@crosshairfalse
71 \DeclareOption{crosshair}{\@crosshairtrue}
72 \DeclareOption{nocrosshair}{\@crosshairfalse}

Die Optionen setzen den Schalter \@itemization, der abgefragt wird, um die Staffelung der itemize Umgebung zu kontrollieren. In thesis.cls ist dieser Schalter standardmäßig wahr.

73 \newif\if@itemization     \@itemizationtrue
74 \DeclareOption{itemize}  {\@itemationtrue}
75 \DeclareOption{noitemize}{\@itemizationfalse}

Die Optionen setzen den Schalter \@enumeration, der abgefragt wird, um die Numerierung der enumerate Umgebung zu kontrollieren. In thesis.cls standardmäßig alphanumerische Zählung.

76 \newif\if@enumeration       \@enumerationtrue
77 \DeclareOption{enumerate}  {\@enumerationtrue}
78 \DeclareOption{noenumerate}{\@enumerationfalse}

Die Optionen setzen den Schalter \@noind, der im folgenden abgefragt wird, um Absatzabstände und Fußnotenstil zu modifizieren. Voreingestellt ist der Satz von Abschnitten und Fußnoten, bei denen die erste Zeile eingerückt gesetzt wird.

79 \newif\if@noind          \@noindfalse
80 \DeclareOption{indent}  {\@noindfalse}
81 \DeclareOption{noindent}{\@noindtrue}

Die Optionen setzen den Schalter \@center, der im folgenden abgefragt wird, um Überschriften, Kopfzeilen und bestimmte Einträge ins Inhaltsverzeichnis zu zentrieren. Standardmäßig werden diese in thesis.cls rechtsbündig gesetzt.

82 \newif\if@center         \@centerfalse
83 \DeclareOption{center}  {\@centertrue}
84 \DeclareOption{nocenter}{\@centerfalse}

Die Optionen setzen den Schalter \@upper, der im folgenden abgefragt wird, um Teilüberschriften in Großbuchstaben zu setzen. Standardmäßig benutzt thesis.cls keine Großbuchstaben.

 85 \newif\if@upper        \@upperfalse
 86 \DeclareOption{upper}  {\@uppertrue}
 87 \DeclareOption{noupper}{\@upperfalse}

Die Optionen setzen den Schalter \@headline, der abgefragt wird, um Kopfzeilen zu unterstreichen. Voreinstellung in thesis.cls sind unterstrichene Kopfzeilen.

 88 \newif\if@headline        \@headlinetrue
 89 \DeclareOption{headline}  {\@headlinetrue}
 90 \DeclareOption{noheadline}{\@headlinefalse}

Die Optionen setzen den Schalter \@headcount, der abgefragt wird, um ggf. Abschnittszähler in Kopfzeilen auszugeben. Standardmäßig wird in thesis.cls der Zähler in der Kopfzeile ausgegeben.

 91 \newif\if@headcount        \@headcounttrue
 92 \DeclareOption{headcount}  {\@headcounttrue}
 93 \DeclareOption{noheadcount}{\@headcountfalse}

Die Benutzerschnittstellen zur Definition der Schriftarten in Überschriften, Titelei, Kopfzeilen, Abbildungen etc. Die Voreinstellungen erfolgen in Optionen.

 94 \def\partfont#1{\def\p@font{#1}}             \def\p@font{}
 95 \def\chapterfont#1{\def\c@font{#1}}          \def\c@font{}
 96 \def\chapterauthorfont#1{\def\ca@font{#1}}   \def\ca@font{}
 97 \def\sectionfont#1{\def\s@font{#1}}          \def\s@font{}
 98 \def\subsectionfont#1{\def\ss@font{#1}}      \def\ss@font{}
 99 \def\subsubsectionfont#1{\def\sss@font{#1}}  \def\sss@font{}
100 \def\paragraphfont#1{\def\pg@font{#1}}       \def\pg@font{}
101 \def\subparagraphfont#1{\def\spg@font{#1}}   \def\spg@font{}
102 \def\titlefont#1{\def\t@font{#1}}            \def\t@font{}
103 \def\subtitlefont#1{\def\st@font{#1}}        \def\st@font{}
104 \def\authorfont#1{\def\a@font{#1}}           \def\a@font{}
105 \def\translatorfont#1{\def\a@font{#1}}       \def\tr@font{}
106 \def\institutionfont#1{\def\in@font{#1}}     \def\in@font{}
107 \def\theoremheaderfont#1{\def\thh@font{#1}}  \def\thh@font{}
108 \def\theorembodyfont#1{\def\thb@font{#1}}    \def\thb@font{}
109 \def\itemfont#1{\def\item@font{#1}}          \def\item@font{}
110 \def\examplefont#1{\def\ex@font{#1}}         \def\ex@font{}
111 \def\headingstextfont#1{\def\h@font{#1}}     \def\h@font{}
112 \def\pagenumberfont#1{\def\pn@font{#1}}      \def\pn@font{}
113 \def\captionheaderfont#1{\def\cph@font{#1}}  \def\cph@font{}
114 \def\captionbodyfont#1{\def\cpb@font{#1}}    \def\cpb@font{}
115 \def\figurefont#1{\def\fig@font{#1}}         \def\fig@font{}
116 \def\tablefont#1{\def\tab@font{#1}}          \def\tab@font{}
117 \def\indexsize#1{\def\index@size{#1}}        \def\index@size{}
118 \def\bibsize#1{\def\bib@size{#1}}            \def\bib@size{}

Die Option definiert die Schriften der slanted Variante. Gleichzeitig werden Großbuchstaben im Titel voreingestellt. Diese Option wird an späterer Stelle voreingestellt.

119 \DeclareOption{slanted}{
120  \partfont{\Large}
121  \chapterfont{\large}
122  \chapterauthorfont{\large}
123  \sectionfont{\large\slshape}
124  \subsectionfont{\slshape}
125  \subsubsectionfont{\slshape}
126  \paragraphfont{\slshape}
127  \subparagraphfont{\slshape}
128  \titlefont{\LARGE}
129  \subtitlefont{\large}
130  \authorfont{}
131  \institutionfont{\slshape}
132  \translatorfont{}
133  \theoremheaderfont{\upshape}
134  \theorembodyfont{}
135  \itemfont{\slshape}
136  \examplefont{}
137  \headingstextfont{\small\slshape}
138  \pagenumberfont{\small}
139  \captionheaderfont{\slshape\small}
140  \captionbodyfont{\small}
141  \figurefont{}
142  \tablefont{}

143 }

Die Option für die Schriften der bold Variante.

144 \DeclareOption{bold}{%
145  \partfont{\LARGE\bfseries}
146  \chapterfont{\LARGE\bfseries}
147  \chapterauthorfont{\large}
148  \sectionfont{\Large\bfseries}
149  \subsectionfont{\large\bfseries}
150  \subsubsectionfont{\bfseries}
151  \paragraphfont{\bfseries}
152  \subparagraphfont{\bfseries}
153  \titlefont{\LARGE\bfseries}
154  \subtitlefont{\large}
155  \authorfont{}
156  \translatorfont{}
157  \institutionfont{\slshape}
158  \theoremheaderfont{\bfseries}
159  \theorembodyfont{\itshape}
160  \itemfont{\bfseries}
161  \examplefont{}
162  \headingstextfont{\small\bfseries}
163  \pagenumberfont{\small}
164  \captionheaderfont{\bfseries}

165  \captionbodyfont{}
166  \figurefont{}
167  \tablefont{}

168 }

Die Option für die Schriften der sfbold Variante.

169 \DeclareOption{sfbold}{%
170  \partfont{\LARGE\sffamily\bfseries}
171  \chapterfont{\LARGE\sffamily\bfseries}
172  \chapterauthorfont{\Large\sffamily\bfseries}
173  \sectionfont{\large\sffamily\bfseries}
174  \subsectionfont{\large\sffamily\bfseries}
175  \subsubsectionfont{\sffamily\bfseries}
176  \paragraphfont{\sffamily\bfseries}
177  \subparagraphfont{\sffamily}
178  \titlefont{\LARGE\sffamily\bfseries}
179  \subtitlefont{\large\sffamily}
180  \authorfont{\Large\sffamily\slshape}
181  \translatorfont{}
182  \institutionfont{\sffamily}
183  \theoremheaderfont{\sffamily}
184  \theorembodyfont{}
185  \itemfont{\sffamily}
186  \examplefont{}
187  \headingstextfont{\small\sffamily}
188  \pagenumberfont{\small\rmfamily}
189  \captionheaderfont{\sffamily}
190  \captionbodyfont{}
191  \figurefont{}
192  \tablefont{}

193 }

Option zur Erzeugung einer Titelseite.

194 \DeclareOption{titlepage}{\@titlepagetrue}
195 \DeclareOption{notitlepage}{\@titlepagefalse}

Optionen, ob Kapitel generell auf der rechten Seite beginnen.

196 \DeclareOption{openright}{\@openrighttrue}
197 \DeclareOption{openany}{\@openrightfalse}

Option für zweispaltigen Satz.

198 \DeclareOption{onecolumn}{\@twocolumnfalse}
199 \DeclareOption{twocolumn}{\@twocolumntrue}

Numerierung der Formeln auf der linken Seite.

200 \DeclareOption{leqno}{\input{leqno.clo}}

Links ausgerichtete mathematische Umgebungen.

201 \DeclareOption{fleqn}{\input{fleqn.clo}}

Offenes Bibliographie Format.

202 \DeclareOption{openbib}{\@openbibtrue}

Die Option gestattet mehrere Literaturverzeichnisse im Text.

203 \newif\if@chapterbib \@chapterbibfalse
204 \DeclareOption{chapterbib}{\@chapterbibtrue}

Ausführen der voreingestellten Optionen.

205 \ExecuteOptions{letterpaper,10pt,oneside,onecolumn,final,openright,%
206  slanted,center,upper}

Ausführen der benutzerspezifischen Optionen.

207 \ProcessOptions*

Einlesen der Schriftgrößen.

208 \input{bk1\@ptsize.clo}

Standardwerte beim Satz von Paragraphen (Zeilenabstände, Zeileneinzug Trennungen, etc.). Standardvorgaben der Document-Classes.

209 \setlength\lineskip{1\p@}
210 \setlength\normallineskip{1\p@}
211 \renewcommand\baselinestretch{}
212 \if@noind
213 \setlength\parskip{0.5\baselineskip
214  \@plus.1\baselineskip \@minus.1\baselineskip}
215 \setlength\parindent{\z@}
216 \def\noparskip{\par\vspace{-\parskip}}
217 \else
218 \setlength\parskip{0\p@ \@plus 1\p@}
219 \let\noparskip\relax
220 \fi
221 \@lowpenalty   51
222 \@medpenalty  151
223 \@highpenalty 301

Unveränderte Standardvorgaben zur Behandlung von Floats.

224 \setcounter{topnumber}{2}
225 \renewcommand\topfraction{.7}
226 \setcounter{bottomnumber}{1}
227 \renewcommand\bottomfraction{.3}
228 \setcounter{totalnumber}{3}
229 \renewcommand\textfraction{.2}
230 \renewcommand\floatpagefraction{.5}
231 \setcounter{dbltopnumber}{2}
232 \renewcommand\dbltopfraction{.7}
233 \renewcommand\dblfloatpagefraction{.5}

Variable Kopfzeilen, ggf. zentriert und unterstrichen.

234 \def\e@skip{\h@font{\phantom{y}}}
235 \if@twoside

236 \def\ps@headings{
237  \let\@oddfoot\@empty\let\@evenfoot\@empty
238  \def\@evenhead{\vbox{\hsize=\textwidth
239  \hbox to \textwidth{%
240  {\pn@font\thepage}\hfill{\h@font\leftmark}\e@skip\if@center\hfill\fi}
241  \if@headline \vskip 1.5pt \hrule \fi}}%
242  \def\@oddhead{\vbox{\hsize=\textwidth
243  \hbox to \textwidth{%
244  \if@center\hfill\fi{\h@font\rightmark}\e@skip\hfill{\pn@font\thepage}}
245  \if@headline \vskip 1.5pt \hrule \fi}}%
246  \let\@mkboth\markboth
247  \def\chaptermark##1{%
248  \markboth {%
249  \ifnum \c@secnumdepth >\m@ne
250  \if@mainmatter
251  \@chapapp\
252  \if@headcount
253  \thechapter. \ %
254  \fi
255  \fi
256  \fi
257  ##1}{}}%
258  \def\sectionmark##1{%
259  \markright {%
260  \ifnum \c@secnumdepth >\z@
261  \if@headcount
262  \thesection. \ %
263  \fi
264  \fi
265  ##1}}}
266 \else
267 \def\ps@headings{%
268  \let\@oddfoot\@empty
269  \def\@oddhead{\vbox{\hsize=\textwidth
270  \hbox to \textwidth{%
271  \if@center\hfill\fi{\h@font\rightmark}\e@skip\hfill{\pn@font\thepage}}
272  \if@headline \vskip 1.5pt \hrule \fi}}%
273  \let\@mkboth\markboth
274  \def\chaptermark##1{%
275  \markright {%
276  \ifnum \c@secnumdepth >\m@ne
277  \if@mainmatter
278  \@chapapp\
279  \if@headcount
280  \thechapter. \ %
281  \fi
282  \fi
283  \fi
284  ##1}}}

285 \fi

Variable Kopfzeilen, ggf. zentriert und unterstrichen.

286 \def\ps@myheadings{%
287  \let\@oddfoot\@empty\let\@evenfoot\@empty
288  \def\@oddhead{\vbox{\hsize=\textwidth
289  \hbox to \textwidth{%
290  \if@center\hfill\fi{\h@font\rightmark}\e@skip\hfill{\pn@font\thepage}}
291  \if@headline \vskip 1.5pt \hrule \fi}}%
292  \def\@evenhead{\vbox{\hsize=\textwidth
293  \hbox to \textwidth{%
294  {\pn@font\thepage}\hfill{\h@font\leftmark}\e@skip\if@center\hfill\fi}
295  \if@headline \vskip 1.5pt \hrule \fi}}%
296  \let\@mkboth\@gobbletwo
297  \let\chaptermark\@gobble
298  \let\sectionmark\@gobble

299 }

Kopfzeile für vorläufige Formatierungen im Zusammenhang mit der Option draft. Die Kopfzeile enthält Datum, Uhrzeit und Seitenzahl.

300 \def\ps@draft{%
301  \let\@oddfoot\@empty\let\@evenfoot\@empty
302  \def\@oddhead{\vbox{\hsize=\textwidth
303  \hbox to \textwidth{%
304  {\pn@font\today\ \now\ --- {\h@font \draftname: ``\jobname''}
305  \hfil\e@skip \thepage}}
306  \if@headline \vskip 1.5pt \hrule \fi}}%
307  \def\@evenhead{\vbox{\hsize=\textwidth
308  \hbox to \textwidth{%
309  \pn@font\thepage\e@skip\hfil {\h@font \draftname: ``\jobname''} ---
310  \today\ \now\ }
311  \if@headline \vskip 1.5pt \hrule \fi}}%
312  \let\@mkboth\@gobbletwo
313  \let\chaptermark\@gobble
314  \let\sectionmark\@gobble

315 }

Leere Seiten erhalten eine Markierung am oberen Seitenrand. Dem Springer Makro ‘svma’ entliehen.

316 \@ifundefined{option@crosshair}{}{%
317 \def\clap#1{\hbox to 0pt{\hss#1\hss}} \newdimen\@crosshairrule
318 \@crosshairrule=.24pt \def\@crosshairs{\vbox to
319  0pt{\hsize=0pt\baselineskip=0pt\lineskip=0pt \vss \clap{\vrule
320  height .125in width \@crosshairrule depth 0pt} \clap{\vrule
321  width .25in height \@crosshairrule depth 0pt} \clap{\vrule
322  height .125in width \@crosshairrule depth 0pt} \vss}}
323 \def\ps@empty{%
324  \let\@oddfoot\@empty\let\@evenfoot\@empty
325  \def\@oddhead{\hfill\raise\headheight\@crosshairs}

326  \let\@evenhead\@oddhead}}

Es werden sechs zusätzliche Titelangaben definiert. Die Titelei durch das Makro \maketitle ist entscheidend davon abhängig, ob einseitiger oder zweiseitiger Druck gewünscht ist. Bei zweiseitigem Druck wird eine verkürzte Titelseite (Umschlag), ggf. ein Schmutztitel, Standardtitelseite, ggf. Copyrightseite und ggf. Widmung ausgegeben. Bei einseitigem Druck nur der Standardtitel und die Widmung.

327 \def\@subtitle{}         \def\subtitle#1{\gdef\@subtitle{#1}}
328 \def\@translator{}       \def\translator#1{\gdef\@translator{#1}}
329 \def\@institution{}      \def\institution#1{\gdef\@institution{#1}}
330 \def\@dedication{}       \def\dedication#1{\def\@dedication{#1}}
331 \def\@uppertitleback{}   \long\def\uppertitleback#1{\def\@uppertitleback{#1}}
332 \def\@middletitleback{}  \long\def\middletitleback#1{\def\@middletitleback{#1}}
333 \def\@lowertitleback{}   \long\def\lowertitleback#1{\def\@lowertitleback{#1}}
334 \def\new@tpage{\newpage\thispagestyle{empty}\null}
335 \def\and{\end{tabular}\hskip 1em plus.17fil
336 \if@center
337  \begin{tabular}[t]{c}
338 \else
339  \begin{tabular}[t]{@{}l@{}}
340 \fi}
341 \def\maketitle{%
342 \begin{titlepage}
343  \let\footnotesize\small
344  \let\footnoterule\relax
345  \def\thefootnote{\fnsymbol{footnote}}
346  \if@twoside
347  \new@tpage
348  \begin{raggedright}
349  {\t@font \@title \par}\vskip 1em
350  {\st@font \@subtitle \par}\vspace{50pt}
351  {\a@font \lineskip 1.25em
352  \begin{tabular}[t]{@{}l@{}}
353  \@author
354  \end{tabular}\par}
355  \vfill
356  {\in@font\@institution\par}
357  \end{raggedright}
358  \new@tpage \new@tpage
359  {\ss@font\@title}\par
360  {\sss@font\@subtitle}
361  \new@tpage
362  \fi
363  \new@tpage
364  \begin{center}
365  {\t@font\@title \par}\vskip 1em
366  {\st@font\@subtitle \par}
367  \vspace{50pt}

368  {\a@font \lineskip 1.25em
369  \begin{tabular}[t]{c}
370  \@author
371  \end{tabular} \par }\vfil
372  {\tr@font \@translator \par}
373  \vfil
374  {\st@font \@date \par}
375  \vskip 2em
376  {\in@font\@institution \par}
377  \end{center}
378  \par \@thanks
379 \if@twoside \new@tpage
380  \noindent\begin{minipage}[t]{\textwidth}
381  \@uppertitleback
382  \end{minipage}\par
383  \vfill
384  \noindent\begin{minipage}[t]{\textwidth}
385  \@middletitleback
386  \end{minipage}\par
387  \vfill
388  \noindent\begin{minipage}[b]{\textwidth}
389  \@lowertitleback
390  \end{minipage}
391 \fi
392 \ifx\@dedication\@empty\else \new@tpage
393  {\centering \Large \@dedication \par}
394 \fi
395 \if@twoside \new@tpage \fi
396 \end{titlepage}
397 \def\thefootnote{\arabic{footnote}}
398 \setcounter{footnote}{0}
399 \if@thema\else\let\thanks\relax\fi
400 \gdef\@thanks{}\gdef\@author{}\gdef\@translator{}\gdef\@institution{}
401 \gdef\@uppertitleback{}\gdef\@lowertitleback{}\gdef\@dedication{}%
402 \gdef\@title{}\gdef\@subtitle{}\let\maketitle\relax}

Im Fall des thesis.cls wird die Zusammenfassung als Teil der Titelseite wie ein Kapitel gesetzt, die nicht zur Titelseite zählt. Handelt es sich um ein thema.cls-Dokument, wird zusätzlich die Umgebung \chapterabstract definiert, die eine Zusammenfassung nach jeder Kapitelüberschrift erlaubt. Diese wird in Abhängigkeit von der Stiloption center zentriert oder als

 subsection* gesetzt.
403 \def\abstract{%\titlepage
404 \chapter*{\abstractname\@mkboth{\abstractname}{\abstractname}}}
405 \def\endabstract{\par\vfil\null\endtitlepage}
406 \if@thema
407 \if@center
408  \def\chapterabstract{\if@twocolumn
409  \subsection*{\abstractname}%

410  \else \small
411  \begin{center}%
412  {\pg@font \abstractname\vspace{-.5em}\vspace{\z@}}%
413  \end{center}%
414  \quotation
415  \fi}
416  \def\endchapterabstract{\if@twocolumn\else\endquotation\fi}
417 \else
418  \def\chapterabstract{\if@twocolumn
419  \subsection*{\abstractname}%
420  \else \small
421  \subsection*{\abstractname}%
422  \fi}
423  \def\endchapterabstract{\par\bigskip}
424 \fi
425 \fi

Definition und Initialisierung der Gliederungszähler.

426 \newcommand*{\chaptermark}[1]{}
427 \setcounter{secnumdepth}{2}
428 \newcounter {part}
429 \newcounter {chapter}
430 \newcounter {section}[chapter]
431 \newcounter {subsection}[section]
432 \newcounter {subsubsection}[subsection]
433 \newcounter {paragraph}[subsubsection]
434 \newcounter {subparagraph}[paragraph]
435 \renewcommand{\thepart}         {\Roman{part}}
436 \renewcommand{\thechapter}      {\arabic{chapter}}
437 \renewcommand{\thesection}      {\thechapter.\arabic{section}}
438 \renewcommand{\thesubsection}   {\thesection.\arabic{subsection}}
439 \renewcommand{\thesubsubsection}{\thesubsection .\arabic{subsubsection}}
440 \renewcommand{\theparagraph}    {\thesubsubsection.\arabic{paragraph}}
441 \renewcommand{\thesubparagraph} {\theparagraph.\arabic{subparagraph}}

Die Bezeichnung des Kapitels bleibt standardmäßig leer. Soll eine Kapitelbezeichnung (z.Z. nur in Kopfzeilen) ausgegeben werden, ist dies mittels der Zuweisung

 \chapapp{\chaptername} im Dokument möglich.
442 \def\chapapp#1{\def\@chapapp{#1}}      \def\@chapapp{}

Die folgenden Kommandos trennen die logischen Teile eines Buches. \frontmatter beginnt eine neue Seite mit römischer Numerierung und schaltet die Ausgabe des Kapitelzählers aus. \mainmatter eröffnet eine neue Seite, schaltet die Ausgabe des Kapitelzählers ein und wechselt auf arabische Zahlen. \backmatter schaltet die Kapitelzählung wieder ab und läßt die Seitenzählung unverändert.

443 \newcommand{\frontmatter}{\cleardoublepage
444  \@mainmatterfalse\pagenumbering{roman}}

445 \newcommand{\mainmatter}{\cleardoublepage
446  \@mainmattertrue\pagenumbering{arabic}}
447 \newcommand{\backmatter}{\if@openright\cleardoublepage\else\clearpage\fi
448  \@mainmatterfalse}

Der Satz einer Teilüberschrift erfolgt ggf. in Großbuchstaben und der voreingestellten Schriftart.

449 \newcommand{\part}{\cleardoublepage
450  \thispagestyle{empty}%
451  \if@twocolumn
452  \onecolumn\@tempswatrue
453  \else
454  \@tempswafalse
455  \fi
456  \vspace*{\beforechaptervspace}%
457  \secdef\@part\@spart}
458 \def\@part[#1]#2{%
459  \ifnum \c@secnumdepth >-2\relax \refstepcounter{part}
460  \addcontentsline{toc}{part}{\partname\ \thepart \hspace{1em}#1}%
461  \else
462  \addcontentsline{toc}{part}{#1}\fi \markboth{}{}%
463  {\if@center
464  \centering
465  \else
466  \raggedright
467  \fi
468  \reset@font
469  \ifnum \c@secnumdepth >-2\relax
470  \p@font \partname{} \thepart \par
471  \vskip 20pt
472  \fi
473  \p@font
474  \if@upper
475  \uppercase{#2}
476  \else #2
477  \fi
478 \par}
479 \@endpart}
480 \def\@spart#1{%
481  {\if@center
482  \centering
483  \else
484  \raggedright
485  \fi
486  \reset@font\p@font
487  \if@upper
488  \uppercase\expandafter{#1}
489  \else #1%
490  \fi\par}

491 \@endpart}
492 \def\@endpart{\vfil\newpage
493  \if@twoside
494  \hbox{}%
495  \thispagestyle{empty}%
496  \newpage
497  \fi
498  \if@tempswa
499  \twocolumn
500  \fi}
 Definition des \chapterauthor, der vom Makro \@makechapterauthor

gesetzt wird. \@shortauthor übernimmt die Namen für die Kopfzeile und den Eintrag im Inhaltsverzeichnis.

501 \if@thema
502 \def\chapterauthor#1{\gdef\@chapterauthor{#1}}  \def\@chapterauthor{}
503 \def\shortauthor#1{\gdef\@shortauthor{#1}}      \def\@shortauthor{}
504 \def\@makechapterauthor{\par
505  \def\thefootnote{\fnsymbol{footnote}}%
506  \def\@makefnmark{\hbox
507  to\z@{$\m@th^{\@thefnmark}$\hss}}%
508  \if@center
509  \centering
510  \else\parindent\z@
511  \raggedright
512  \fi
513  {\ca@font  \lineskip .5em
514  \if@center
515  \begin{tabular}[t]{c}
516  \else
517  \begin{tabular}[t]{@{}l@{}}
518  \fi
519  \@chapterauthor
520  \end{tabular} \par}\@thanks
521  \vskip30\p@
522  \gdef\@chapterauthor{}\gdef\@shortauthor{}
523  \gdef\@thanks{}\setcounter{footnote}{0}}
524 \fi

Die Definition von \@chapter wird so geändert, daß im Fall eines Sammelwerkes ggf. die Autoren des Kapitels ins Inhaltsverzeichnis aufgenommen werden.

525 \newcommand{\chapter}{\if@openright\cleardoublepage\else\clearpage\fi
526  \thispagestyle{empty}%
527  \global\@topnum\z@
528  \@afterindentfalse
529  \secdef\@chapter\@schapter}
530 \def\@chapter[#1]#2{%
531  \ifnum \c@secnumdepth >\m@ne
532  \if@mainmatter

533  \refstepcounter{chapter}%
534  \typeout{\chaptername\space\thechapter.}
535  \if@thema
536  \ifx\@shortauthor\@empty
537  \addcontentsline{toc}{chapter}{%
538  \protect\numberline{\thechapter.}#1}%
539  \else
540  \addcontentsline{toc}{chapter}{%
541  \protect\numberline{\thechapter.}%
542  \@shortauthor\hfill\mbox{}\vskip\normallineskip #1}%
543  \fi
544  \else
545  \addcontentsline{toc}{chapter}{%
546  \protect\numberline{\thechapter.}#1}%
547  \fi
548  \else
549  \addcontentsline{toc}{chapter}{#1}
550  \fi
551 \else
552  \addcontentsline{toc}{chapter}{#1}
553 \fi
554 \chaptermark{#1}
555 \addtocontents{lof}{\protect\addvspace{10pt}}
556 \addtocontents{lot}{\protect\addvspace{10pt}}
557 \if@twocolumn
558  \@topnewpage[\@makechapterhead{#2}]
559  \else
560  \@makechapterhead{#2}
561  \@afterheading
562  \fi}

Der Anfangs- und der Endeabstand eines Kapitels sind frei wählbar.

563 \newlength{\beforechaptervspace}
564 \setlength{\beforechaptervspace}{50pt}
565 \newlength{\afterchaptervspace}
566 \setlength{\afterchaptervspace}{30pt}

Ist \chapapp nicht definiert, erfolgt nur der Satz von Kapitelzähler und Überschrift. Das Makro wird derart variiert, daß entweder zentrierte oder rechtsbündige Überschriften erzeugt werden. Im Fall rechtsbündiger Überschriften wird die Numerierung ausgespart. Anderfalls erfolgt die Ausgabe des Kapitelnames und des Zählers in einer eigenen Zeile und anschließend die Überschrift. Wiederum ggf. zentriert. Abschließend werden ggf. die Namen der Kapitelautoren in die Kopfzeile aufgenommen und das

 Makro \@makechapterauthors wird aufgerufen.
567 \def\@makechapterhead#1{%
568 \vspace*{\beforechaptervspace}{%
569 \ifx\@chapapp\@empty

570  \if@center\centering
571  \ifnum \c@secnumdepth >\m@ne
572  {\c@font\thechapter.\ }
573  \fi
574  {\c@font
575  \if@upper
576  \uppercase{#1}
577  \else

578 #1

579  \fi
580  \par \nobreak}
581  \else\raggedright
582  \ifnum \c@secnumdepth >\m@ne
583  \setbox\@tempboxa\hbox{\c@font\thechapter.\ %
584  \c@font
585  \if@upper
586  \uppercase{#1}
587  \else
588  #1%
589  \fi}
590  \ifdim \wd\@tempboxa >\hsize
591  \@hangfrom{%
592  \c@font\thechapter.\ }{\c@font
593  \if@upper
594  \uppercase{#1}
595  \else
596  #1%
597  \fi
598  \par\nobreak}
599  \else
600  \hbox to\hsize{\box\@tempboxa\hfil}
601  \fi
602  \fi
603  \fi
604 \else
605  \if@center
606  \centering
607  \else
608  \raggedright
609  \fi
610  \ifnum \c@secnumdepth >\m@ne
611  \if@mainmatter
612  {\s@font \@chapapp{} \thechapter}
613  \par \vskip 15\p@
614  \fi
615  \fi
616  {\c@font
617  \if@upper
618  \uppercase{#1}

619  \else
620  #1%
621  \fi
622  \par \nobreak}
623 \fi
624 \vspace{\afterchaptervspace}
625 \if@thema
626  \ifx\@shortauthor\@empty
627  \else
628  \@mkboth{\@shortauthor}{#1}
629  \fi
630  \ifx\@chapterauthor\@empty
631  \else
632  \@makechapterauthor
633  \fi
634 \fi}

635 }

Definitionen der Sternform.

636 \def\@schapter#1{%
637  \if@twocolumn
638  \@topnewpage[\@makeschapterhead{#1}]
639  \else
640  \@makeschapterhead{#1}\@afterheading
641  \fi}
642 \def\@makeschapterhead#1{%
643 \vspace*{\beforechaptervspace}{%
644  \if@center
645  \centering
646  \else
647  \parindent\z@\raggedright
648  \fi
649  {\c@font
650  \if@upper
651  \uppercase\expandafter{#1}
652  \else
653  #1%
654  \fi
655  \par\nobreak
656  \vskip 30\p@}
657  \if@thema
658  \ifx\@shortauthor\@empty
659  \else
660  \@mkboth{\@shortauthor}{#1}
661  \fi
662  \ifx\@chapterauthor\@empty
663  \else
664  \@makechapterauthor
665  \fi\fi

666 }}

Die folgenden Kommandos definieren Überschriften auf tieferer Gliederungsebene. Gegenüber den Standardklassen wurde jeweils die Möglichkeit zentrierter Überschriften eingeführt, und es wurden die Schriftarten verändert.

667 \newcommand\section{\@startsection {section}{1}{\z@}%
668  {-3.5ex \@plus -1ex \@minus -.2ex}%
669  {2.3ex \@plus.2ex}%
670  {\if@center\centering\else\raggedright\fi
671  \reset@font\s@font}}
672 \newcommand\subsection{\@startsection{subsection}{2}{\z@}%
673  {-3.25ex\@plus -1ex \@minus -.2ex}%
674  {1.5ex \@plus .2ex}%
675  {\if@center\centering\else\raggedright\fi
676  \reset@font\ss@font}}
677 \newcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
678  {-3.25ex\@plus -1ex \@minus -.2ex}%
679  {1.5ex \@plus .2ex}%
680  {\if@center\centering\else\raggedright\fi
681  \reset@font\sss@font}}
682 \newcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
683  {3.25ex \@plus1ex \@minus.2ex}%
684  {-1em}%
685  {\reset@font\pg@font}}
686 \newcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
687  {3.25ex \@plus1ex \@minus .2ex}%
688  {-1em}%
689  {\reset@font\spg@font}}

Es folgt die Definition verschiedener Listenumgebungen. Zunächst werden eine Reihe globaler Definitionen und Einstellungen übernommen.

690 \if@twocolumn
691 \setlength\leftmargini  {2em}
692 \else
693 \setlength\leftmargini  {2.5em}
694 \fi
695 \setlength\leftmarginii  {2.2em}
696 \setlength\leftmarginiii {1.87em}
697 \setlength\leftmarginiv  {1.7em}
698 \if@twocolumn
699 \setlength\leftmarginv  {.5em}
700 \setlength\leftmarginvi {.5em}
701 \else
702 \setlength\leftmarginv  {1em}
703 \setlength\leftmarginvi {1em}
704 \fi
705 \setlength\leftmargin    {\leftmargini}
706 \setlength  \labelsep  {.5em}
707 \setlength  \labelwidth{\leftmargini}

708 \addtolength\labelwidth{-\labelsep}
709 \@beginparpenalty -\@lowpenalty
710 \@endparpenalty   -\@lowpenalty
711 \@itempenalty     -\@lowpenalty

Definitionen der Listenumgebungen. Zunächst die Voreinstellungen für die Umgebung enumerate für Standard bzw. dekadische Numerierung.

712 \if@enumeration
713 \renewcommand\theenumi{\arabic{enumi}}
714 \renewcommand\theenumii{\alph{enumii}}
715 \renewcommand\theenumiii{\roman{enumiii}}
716 \renewcommand\theenumiv{\Alph{enumiv}}
717 \newcommand\labelenumi{\theenumi.}
718 \newcommand\labelenumii{(\theenumii)}
719 \newcommand\labelenumiii{\theenumiii.}
720 \newcommand\labelenumiv{\theenumiv.}
721 \renewcommand\p@enumii{\theenumi}
722 \renewcommand\p@enumiii{\theenumi(\theenumii)}
723 \renewcommand\p@enumiv{\p@enumiii\theenumiii}
724 \else
725 \renewcommand\theenumi{\arabic{enumi}}
726 \renewcommand\theenumii{\arabic{enumii}}
727 \renewcommand\theenumiii{\arabic{enumiii}}
728 \renewcommand\theenumiv{\arabic{enumiv}}
729 \newcommand\labelenumi{\theenumi.}
730 \newcommand\labelenumii{\theenumi.\theenumii.}
731 \newcommand\labelenumiii{\theenumi.\theenumii.\theenumiii.}
732 \newcommand\labelenumiv{\theenumi.\theenumii.\theenumiii.\theenumiv.}
733 \renewcommand\p@enumii{\theenumi}
734 \renewcommand\p@enumiii{\theenumi(\theenumii)}
735 \renewcommand\p@enumiv{\p@enumiii\theenumiii}
736 \fi

Definition itemize der Item-Markierungen. Entweder übliche Staffelung der Markierungen oder keine Hervorhebung der ”items“.

737 \if@itemization
738 \newcommand\labelitemi{$\m@th\bullet$}
739 \newcommand\labelitemii{\normalfont\bfseries --}
740 \newcommand\labelitemiii{$\m@th\ast$}
741 \newcommand\labelitemiv{$\m@th\cdot$}
742 \else
743 \newcommand\labelitemi{\bfseries --}
744 \newcommand\labelitemii{\bfseries --}
745 \newcommand\labelitemiii{\bfseries --}
746 \newcommand\labelitemiv{\bfseries --}
747 \fi

Die Labels der description Umgebung werden in der Schriftart \item@font gesetzt.

748 \newenvironment{description}
749  {\list{}{\labelwidth\z@ \itemindent-\leftmargin
750  \let\makelabel\descriptionlabel}}
751  {\endlist}
752 \newcommand\descriptionlabel[1]{\hspace\labelsep
753  \item@font #1}

Unveränderte Definition der verse Umgebung.

754 \newenvironment{verse}
755  {\let\\=\@centercr
756  \list{}{\itemsep      \z@
757  \itemindent   -1.5em%
758  \listparindent\itemindent
759  \rightmargin  \leftmargin
760  \advance\leftmargin 1.5em}%
761  \item[]}
762  {\endlist}

Unveränderte Definition der quotation Umgebung.

763 \newenvironment{quotation}
764  {\list{}{\listparindent 1.5em%
765  \itemindent    \listparindent
766  \rightmargin   \leftmargin
767  \parsep        \z@ \@plus\p@}%
768  \item[]}
769  {\endlist}

Unveränderte Definitionen der quote Umgebung.

770 \newenvironment{quote}
771  {\list{}{\rightmargin\leftmargin}%
772  \item[]}
773  {\endlist}

Die Bezeichnung einer theorem Umgebung wird in der Schriftart \thh@font gesetzt, der Text selbst in \thb@font.

774 \def\@begintheorem#1#2{\reset@font\thb@font\trivlist
775  \item[\hskip \labelsep{\reset@font\thh@font #1\ #2:}]}
776 \def\@opargbegintheorem#1#2#3{\reset@font\thb@font\trivlist
777  \item[\hskip \labelsep{\reset@font\thh@font #1\ #2\ (#3):}]}
778 \def\@endtheorem{\endtrivlist}

Die Umgebung zur Beschreibung von Beispielen.

779 \newlength{\exampleindent}    \setlength{\exampleindent}{\parindent}
780 \newenvironment{example}%
781 {\begin{list}{}{%
782  \setlength{\leftmargin}{\exampleindent}}
783  \ex@font \item[]}
784 {\end{list}}

Die describe-Umgebung. Das übergebene Argument dient zur Berechnung des breitesten Labels.

785 \newenvironment{describe}[1][\quad]%
786 {\begin{list}{}{%
787  \renewcommand{\makelabel}[1]{{\item@font ##1}\hfil}%
788  \settowidth{\labelwidth}{{\item@font #1}}%
789  \setlength{\leftmargin}{\labelwidth}%
790  \addtolength{\leftmargin}{\labelsep}}}%
791 {\end{list}}

Umgebung zur Erzeugung der Titelseite.

792 \newenvironment{titlepage}

793 {%

794  \cleardoublepage
795  \if@twocolumn
796  \@restonecoltrue\onecolumn
797  \else
798  \@restonecolfalse\newpage
799  \fi
800  \thispagestyle{empty}%
801  \if@compatibility
802  \setcounter{page}{0}
803  \fi}%
804  {\if@restonecol\twocolumn \else \newpage \fi

805 }

Ist \@chapapp nicht initialisiert (Voreinstellung), wird der Anhang durch einen Teil abgesetzt.

 Das Kommando \addtocontentsline wird durch die Definition \@addappendixtocontents

ersetzt, sodaß ein Anhang auch als \include-Datei eingelesen werden kann (Dank an Uwe Schellhorn).

806 \newcommand\appendix{\par
807 \setcounter{chapter}{0}%
808 \setcounter{section}{0}%
809 \ifx\@chapapp\@empty
810  \def\@addappendixtocontents{\addcontentsline{toc}{part}{\appendixname}}
811  \part*{\appendixname\@mkboth{\appendixname}{\appendixname}%%
812  \@addappendixtocontents}
813 \else
814  \renewcommand{\@chapapp}{\appendixname}%
815 \fi
816 \renewcommand{\thechapter}{\Alph{chapter}}}

Unveränderte Voreinstellungen der array Umgebung.

817 \setlength\arraycolsep{5\p@}
818 \setlength\tabcolsep{6\p@}
819 \setlength\arrayrulewidth{.4\p@}
820 \setlength\doublerulesep{2\p@}
821 \setlength\tabbingsep{\labelsep}

Unveränderte Voreinstellungen der minipage Umgebung.

822 \skip\@mpfootins = \skip\footins

Unveränderte Voreinstellungen der fbox.

823 \setlength\fboxsep{3\p@}
824 \setlength\fboxrule{.4\p@}

Zähler zur Erzeugung von Gleichungsnummern wird nach jedem Kapitel zurückgesetzt.

825 \@addtoreset{equation}{chapter}
826 \renewcommand{\theequation}{\thechapter.\arabic{equation}}

Die Definition einiger Kommandos zur Erzeugung von Randnotizen in Anlehnung an H. Partls \refman.sty. Im Unterschied zur dortigen Definition erscheinen die Notizen nicht nur am linken Seitenrand.

827 \def\marginlabel#1{\marginpar%
828 {\if@twoside
829  \ifodd\c@page
830  \raggedright
831  \else
832  \raggedleft
833  \fi
834  \else
835  \raggedright
836  \fi #1}}
837 \def\attention{\mbox{}%
838  \marginpar[\raggedleft\large\bf! $\rightarrow$]%
839  {\raggedright\large\bf $\leftarrow$ !}}
840 \def\seealso#1{\mbox{}%
841  \marginpar[\raggedleft$\rightarrow$ \small #1]%
842  {\raggedright\small  #1 $\leftarrow$}\ignorespaces}

Definition des Abbildungszählers.

843 \newcounter{figure}[chapter]
844 \renewcommand{\thefigure}{\thechapter.\@arabic\c@figure}

Voreinstellungen der figure Umgebung. Im Makro \fnum@figure wird der Kurzname benutzt. Die ”Floats“ werden in der voreingestellten Schrift

 \fig@font gesetzt.
845 \def\fps@figure{tbp}
846 \def\ftype@figure{1}
847 \def\ext@figure{lof}
848 \def\fnum@figure{\figureshortname~\thefigure}
849 \newenvironment{figure}
850  {\fig@font\@float{figure}}
851  {\end@float}
852 \newenvironment{figure*}
853  {\fig@font\@dblfloat{figure}}
854  {\end@dblfloat}

Definition des Tabellenzählers.

855 \newcounter{table}[chapter]
856 \renewcommand{\thetable}{\thechapter.\@arabic\c@table}

Voreinstellungen der table Umgebung. Im Makro \fnum@table wird der Kurzname benutzt. Die ”Floats“ werden in der voreingestellten Schrift

 \tab@font gesetzt.
857 \def\fps@table{tbp}
858 \def\ftype@table{2}
859 \def\ext@table{lot}
860 \def\fnum@table{\tableshortname~\thetable}
861 \newenvironment{table}
862  {\tab@font\@float{table}}
863  {\end@float}
864 \newenvironment{table*}
865  {\tab@font\@dblfloat{table}}
866  {\end@dblfloat}

Unveränderte Abstände.

867 \newlength\abovecaptionskip
868 \newlength\belowcaptionskip
869 \setlength\abovecaptionskip{10\p@}
870 \setlength\belowcaptionskip{0\p@}

Lange Figuren oder Tabellenbeschriftungen werden um Bezeichnung und Nummer eingerückt. Beschriftungen werden in den Fonts cph@font und

 \cpb@font gesetzt.
871 \long\def\@makecaption#1#2{%
872 \vskip\abovecaptionskip
873 \setbox\@tempboxa\hbox{{\cph@font #1:} {\cpb@font #2}}%
874 \ifdim \wd\@tempboxa >\hsize
875  \@hangfrom{\cph@font #1: }{\cpb@font #2\par}%
876 \else
877  \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
878 \fi
879 \vskip\belowcaptionskip}

Einfache Stütze zur Tabellenkonstruktion.

880 \def\rb#1{\raisebox{1.5ex}[-1.5ex]{#1}}

Einfache horizontale Linien in Tabellen. Die Definition der Makros entspricht der Konstruktion von \hline. Das von den Befehlen aufgerufene Makro \@xhline fügt einen zusätzlichen Vorschub ein, falls der Befehl wiederholt gegeben wird.

881 \def\tablerule{\noalign{\ifnum0=`}\fi
882 \hrule \@height \arrayrulewidth \vskip\doublerulesep
883 \futurelet \@tempa\@xhline}
884 \def\thicktablerule{\noalign{\ifnum0=`}\fi

885 \hrule \@height 2\arrayrulewidth \vskip\doublerulesep
886 \futurelet \@tempa\@xhline}
887 \def\doubletablerule{\noalign{\ifnum0=`}\fi
888 \hrule \@height \arrayrulewidth \vskip2\arrayrulewidth
889 \hrule \@height \arrayrulewidth \vskip\doublerulesep
890 \futurelet \@tempa\@xhline}

Definition stärkerer und doppelter \hline Varianten.

891 \def\thickhline{\noalign{\ifnum0=`}\fi
892 \hrule \@height 2\arrayrulewidth\futurelet \@tempa\@xhline}
893 \def\doublehline{\noalign{\ifnum0=`}\fi
894 \hrule \@height \arrayrulewidth\vskip2\arrayrulewidth
895 \hrule \@height \arrayrulewidth \futurelet \@tempa\@xhline}

Unveränderte Definition der L^{A}TEX 2.09 Schriftartenkommandos und der Kommandos für mathematische Zeichensätze.

896 \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
897 \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
898 \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
899 \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
900 \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
901 \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
902 \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
903 \DeclareRobustCommand*{\cal}{\@fontswitch{\relax}{\mathcal}}
904 \DeclareRobustCommand*{\mit}{\@fontswitch{\relax}{\mathnormal}}

Definition von Abständen und Gliederungstiefe für das Inhaltsverzeichnis.

905 \newcommand{\@pnumwidth}{1.55em}
906 \newcommand{\@tocrmarg} {2.55em}
907 \newcommand{\@dotsep}{4.5}
908 \setcounter{tocdepth}{2}

Makro zur Erzeugung des Inhaltsverzeichnisses.

909 \newcommand{\tableofcontents}{%
910  \if@twocolumn
911  \@restonecoltrue\onecolumn
912  \else
913  \@restonecolfalse
914  \fi
915  \chapter*{\contentsname
916  \@mkboth{\contentsname}%
917  {\contentsname}}%
918  \@starttoc{toc}%
919  \if@restonecol\twocolumn\fi

920 }

Nur die Teilüberschrift, nicht aber die Seitenzahl wird im Inhaltsverzeichnis hervorgehoben.

921 \newcommand*{\l@part}[2]{%

922 \ifnum \c@tocdepth >-2\relax
923  \addpenalty{-\@highpenalty}%
924  \addvspace{2.25em \@plus\p@}%
925  \begingroup
926  \setlength\@tempdima{3em}%
927  \parindent \z@ \rightskip \@pnumwidth
928  \parfillskip -\@pnumwidth
929  {\leavevmode
930  {\sss@font #1}\hfil \hbox to\@pnumwidth{\hss #2}}\par
931  \nobreak
932  \global\@nobreaktrue
933  \everypar{\global\@nobreakfalse\everypar{}}
934  \endgroup
935 \fi}

Auch der Kapiteleintrag wird als \dottedtocline gesetzt. Die Seitenzahl wird nicht hervorgehoben.

936 \newcommand*{\l@chapter}[2]{%
937 \ifnum \c@tocdepth >\m@ne
938  \addpenalty{-\@highpenalty}%
939  \vskip 1.0em \@plus\p@
940  \setlength\@tempdima{1.5em}%
941  \begingroup
942  \parindent \z@ \rightskip \@pnumwidth
943  \parfillskip -\@pnumwidth
944  \leavevmode
945  \advance\leftskip\@tempdima
946  \hskip -\leftskip
947  {\sss@font #1}%
948  \nobreak\leaders\hbox{%
949  $\m@th \mkern \@dotsep mu.\mkern \@dotsep mu$}
950  \hfill\nobreak\hbox to\@pnumwidth{\hfil\textrm{#2}}\par
951  \penalty\@highpenalty
952  \endgroup
953 \fi}

Unveränderte Definition der Untereinträge ins Inhaltsverzeichnis.

954 \newcommand*{\l@section}      {\@dottedtocline{1}{1.5em}{2.3em}}
955 \newcommand*{\l@subsection}   {\@dottedtocline{2}{3.8em}{3.2em}}
956 \newcommand*{\l@subsubsection}{\@dottedtocline{3}{7.0em}{4.1em}}
957 \newcommand*{\l@paragraph}    {\@dottedtocline{4}{10em}{5em}}
958 \newcommand*{\l@subparagraph} {\@dottedtocline{5}{12em}{6em}}

Die Definitionen für das Abbildungs- und das Tabellenverzeichnis. Kopfzeilenmarkierungen werden nicht in Großbuchstaben umgewandelt.

959 \newcommand{\listoffigures}{%
960  \if@twocolumn
961  \@restonecoltrue\onecolumn
962  \else

963  \@restonecolfalse
964  \fi
965  \chapter*{\listfigurename
966  \@mkboth{\listfigurename}%
967  {\listfigurename}}%
968  \@starttoc{lof}%
969  \if@restonecol\twocolumn\fi

970 }

971 \newcommand*{\l@figure}{\@dottedtocline{1}{1.5em}{2.3em}}
972 \newcommand{\listoftables}{%
973  \if@twocolumn
974  \@restonecoltrue\onecolumn
975  \else
976  \@restonecolfalse
977  \fi
978  \chapter*{\listtablename
979  \@mkboth{\listtablename}%
980  {\listtablename}}%
981  \@starttoc{lot}%
982  \if@restonecol\twocolumn\fi

983 }

984 \let\l@table\l@figure

Die Definition des Literaturverzeichnisses. Die Kopfzeilenmarkierung wird nicht in Großbuchstaben umgewandelt. Ist die Option chapterbib gewählt, wird das Literaturverzeichnis als \section gesetzt.

985 \newdimen\bibindent
986 \bibindent=1.5em
987 \newenvironment{thebibliography}[1]
988  {\if@chapterbib
989  \section*{\refname\@mkboth{\refname}{\refname}}%
990  \else
991  \chapter*{\bibname\@mkboth{\bibname}{\bibname}}%
992  \fi
993  \list{\@biblabel{\arabic{enumiv}}}%
994  {\settowidth\labelwidth{\@biblabel{#1}}%
995  \leftmargin\labelwidth
996  \advance\leftmargin\labelsep
997  \if@openbib
998  \advance\leftmargin\bibindent
999  \itemindent -\bibindent
1000  \listparindent \itemindent
1001  \parsep \z@

1002 \fi

1003  \usecounter{enumiv}%
1004  \let\p@enumiv\@empty
1005  \renewcommand\theenumiv{\arabic{enumiv}}}%
1006  \if@openbib
1007  \renewcommand\newblock{\par}

1008  \else
1009  \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em}%

1010 \fi

1011  \sloppy\clubpenalty4000\widowpenalty4000%
1012  \sfcode`\.=\@m}
1013  {\def\@noitemerr
1014  {\@latex@warning{Empty `thebibliography' environment}}%
1015  \endlist}
1016 \newcommand\newblock{}

Die folgenden Makros werden nur bei Verwendung der Option chapterbib aktiviert. Das Kommando \thebibliograpy liest nicht mehr \jobname.bbl, sondern @\bblfile. Das Makro \@include wird dahingehend geändert, daß \@bblfile auf den Namen der entsprechenden Include Datei initialisiert. Die Makros stammen von Joachim Schrodt `bibperinclude.sty' .

1017 \if@chapterbib
1018 \def\@mainbblfile{\jobname.bbl}
1019 \let\@bblfile=\@mainbblfile
1020 \def\bibliography#1{%
1021  \if@filesw\immediate\write\@auxout{\string\bibdata{#1}}\fi
1022  \@input{\@bblfile}}
1023 \def\@include#1 {\clearpage
1024  \if@filesw \immediate\write\@mainaux{\string\@input{#1.aux}}\fi
1025  \@tempswatrue
1026  \if@partsw \@tempswafalse\edef\@tempb{#1}
1027  \@for\@tempa:=\@partlist\do{\ifx\@tempa\@tempb\@tempswatrue\fi}

1028 \fi

1029  \if@tempswa
1030  \if@filesw \let\@auxout=\@partaux
1031  \immediate\openout\@partaux #1.aux
1032  \immediate\write\@partaux{\relax}

1033 \fi

1034  \def\@bblfile{#1.bbl}\@input{#1.tex}
1035  \let\@bblfile\@mainbblfile\clearpage
1036  \@writeckpt{#1}
1037  \if@filesw
1038  \immediate\closeout\@partaux

1039 \fi

1040  \let\@auxout=\@mainaux\else\@nameuse{cp@#1}
1041 \fi}

1042 \fi

Definition des Index. Die Kopfzeilenmarkierung wird nicht in Großbuchstaben umgewandelt. Der Seitenstil ist standardmäßig empty, da Kopfzeilen voreingestellt sind. Der Satz erfolgt in der Schriftgröße \indexsize.

1043 \newenvironment{theindex}
1044  {\if@twocolumn
1045  \@restonecolfalse
1046  \else

1047  \@restonecoltrue

1048 \fi

1049  \columnseprule \z@
1050  \columnsep 35\p@
1051  \twocolumn[\@makeschapterhead{\indexname}]%
1052  \@mkboth{\indexname}%
1053  {\indexname}%
1054  \thispagestyle{plain}\parindent\z@
1055  \parskip\z@ \@plus .3\p@\relax
1056  \let\item\@idxitem\index@size}
1057  {\if@restonecol\onecolumn\else\clearpage\fi}
1058 \newcommand{\@idxitem}  {\par\hangindent 40\p@}
1059 \newcommand{\subitem}   {\par\hangindent 40\p@ \hspace*{20\p@}}
1060 \newcommand{\subsubitem}{\par\hangindent 40\p@ \hspace*{30\p@}}
1061 \newcommand{\indexspace}{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}

Unveränderte Definition der \footnoterule.

1062 \renewcommand\footnoterule{%
1063 \kern-3\p@
1064 \hrule width .4\columnwidth
1065 \kern 2.6\p@}

Der Satz von Fußnotenabsätzen variiert in Abhängigkeit von der Option par; ggf. werden Fußnoten ohne Einzug geblockt. In jedem Fall wird nach dem Fußnotenzeichen ein Zwischenraum von .25em eingefügt.

1066 \@addtoreset{footnote}{chapter}
1067 \if@noind
1068 \long\def\@makefntext#1{%
1069  \leftskip 2.0em%
1070  \noindent
1071  \hbox to 0em{\hss\@makefnmark\kern 0.25em}#1}
1072 \else
1073 \long\def\@makefntext#1{%
1074  \parindent 1em%
1075  \noindent
1076  \hbox to 1.8em{\hss\@makefnmark\kern 0.25em}#1}

1077 \fi

Definition der ”Captions“. Standardmäßig werden Kurznamen für Abbildungen und Tabellen benutzt, die im entsprechenden captionslanguage Makro des german.sty eingefügt werden sollten. Die Definitionen der deutschen und französischen Namen folgen im Anschluß an die Liste als Metakommentar.

1078 \def\contentsname{Contents}
1079 \def\listfigurename{List of Figures}
1080 \def\listtablename{List of Tables}
1081 \def\bibname{Bibliography}
1082 \def\refname{References}
1083 \def\indexname{Index}
1084 \def\figurename{Figure}

1085 \def\tablename{Table}
1086 \def\chaptername{Chapter}
1087 \def\appendixname{Appendix}
1088 \def\partname{Part}
1089 \def\abstractname{Abstract}
1090 \def\draftname{preliminary draft}
1091 \def\figureshortname{Fig.}                      % <-- thesis
1092 \def\tableshortname{Tab.}                       % <-- thesis
1093 \def\prefacename{Preface}                       % <-- thesis

Definition des Datums und verschiedene Initialisierungen. Im Unterschied zum Standardstil article ist die Benutzung von Kopfzeilen voreingestellt.

1094 \newcommand{\today}{\ifcase\month\or
1095 January\or February\or March\or April\or May\or June\or
1096 July\or August\or September\or October\or November\or December\fi
1097 \space\number\day, \number\year}
1098 \setlength\columnsep{10\p@}
1099 \setlength\columnseprule{0\p@}
1100 \iffinal
1101 \pagestyle{headings}
1102 \else
1103 \pagestyle{draft}

1104 \fi

1105 \pagenumbering{arabic}
1106 \if@twoside
1107 \else
1108 \raggedbottom

1109 \fi

1110 \if@twocolumn
1111 \twocolumn
1112 \sloppy
1113 \flushbottom
1114 \else
1115 \onecolumn

1116 \fi

1117 ⟨/thesis⟩

5 Treiber-Datei

Der letzte Abschnitt enthält die Treiberdatei zur Erstellung der Dokumentation.

1118 ⟨∗driver⟩

1119 \typeout{*******************************************************}
1120 \typeout{* Documentation for LaTeX styles `thesis' & `thema'   *}
1121 \typeout{*******************************************************}

1122

1123 \documentclass[11pt]{ltxdoc}
1124 \usepackage{german}

1125

1126 \makeatletter
1127 \newif\ifsolodoc
1128 \@ifundefined{solo}{\solodoctrue}{\solodocfalse}
1129 \IndexPrologue{\section*{Index}%
1130  \markboth{Index}{Index}%
1131  Die kursiv gesetzten Seitenzahlen
1132  verweisen auf Beschreibungen der Makros,
1133  unterstrichene Programmzeilennummern
1134  auf deren Definitionen.}
1135 \GlossaryPrologue{\section*{Neuerungen}%
1136  \markboth{Neuerungen}{Neuerungen}}
1137 \def\saved@macroname{Neuerung}
1138 \renewenvironment{theglossary}{%
1139  \glossary@prologue%
1140  \GlossaryParms \let\item\@idxitem \ignorespaces}%

1141 {}

1142 \makeatother
1143 \setcounter{StandardModuleDepth}{1}
1144 %   \OnlyDescription
1145 %   \CodelineIndex
1146 \CodelineNumbered
1147 \RecordChanges
1148 \setlength{\parindent}{0pt}
1149 \begin{document}
1150 \DocInput{thesis.dtx} \newpage \PrintChanges % \newpage \PrintIndex
1151 \end{document}
1152 \endinput

1153 ⟨/driver⟩

Literatur

[1] Neukam, Frank (1992). Die Document-Style-Familie ”Script“, Vers. 1.0, 6. Juni 1992.

[2] Schrod, Joachim (1991). Document Style Option ‘bibperinclude.sty’, Vers. 25 Juni 1991.

[3] Sznyter, Ed (1987). Springer-Verlag Document Styles for L^{A}TEX, November 1, 1987.