% % bgteubner class bundle % % tex_verzeichnisse.tex % Copyright 2003--2012 Harald Harders % % This program may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 % of this license or (at your opinion) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX % version 1999/12/01 or later. % % This program consists of all files listed in manifest.txt. % =================================================================== \chapter{Verzeichnisse}% \texindex{Verzeichnis}% % ------------------------------------------------------------------- \section{Inhaltsverzeichnis}% \texindex{Inhaltsverzeichnis}% Um das Inhaltsverzeichnis muss sich der Autor nicht kümmern. Es wird bei Verwendung des Befehls \verb|\tableofcontents|\macroindex{tableofcontents} automatisch erzeugt. % ------------------------------------------------------------------- \section{Abbildungsverzeichnis und Tabellenverzeichnis}% \label{sec:tex:abbildungsverzeichnis}% \texindex{Abbildungsverzeichnis}% \texindex{Tabellenverzeichnis}% Das Abbildungsverzeichnis wird mit dem Befehl \cs{listoffigures}\macroindex{listoffigures}, das Tabellenverzeichnis mit \cs{listoftables}\macroindex{listoftables} erzeugt. Sie dürfen, müssen aber nicht, im Anschluss an den Anhang erzeugt werden. Wie schon mehrfach gesagt, ist darauf zu achten, dass die einzelnen Einträge nicht zu lang sind. % ------------------------------------------------------------------- \section{Verzeichnisse der Beispiele, Definitionen, Beweise und der Aufgaben}% \label{sec:tex:beispielverzeichnis}% \texindex{Verzeichnis der Beispiele}% \texindex{Aufgabenverzeichnis}% Die Befehle zum Erzeugen der verschiedenen Verzeichnisse lauten \macroindex{listofexamples}\cs{listofexamples} für Beispiele, für Definitionen \macroindex{listofdefinitions}\cs{listofdefinitions}, für Beweise \macroindex{listofproofs}\cs{listofproofs} und für Aufgaben \macroindex{listofexercises}\cs{listofexercises}. Es ist unbedingt zu beachten, dass hier nur Beispiele, Definitionen, Beweise bzw.\ Aufgaben aufgenommen werden, die einen Titel besitzen. Verzeichnisse weiterer theoremartiger Umgebungen werden mit dem Befehl \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] \listoftheorems|marg[Typ]|marg[Überschrift] \end{verbatim} erzeugt, wie schon in Abschnitt~\ref{sec:tex:theorem} ausführlich erläutert wurde. % ------------------------------------------------------------------- \section{Stichwortverzeichnis}% \label{sec:tex_index}% \texindex{Stichwortverzeichnis}% Ein Indexeintrag wird dadurch erzeugt, dass \emph{direkt vor} dem interessanten Wort der \macroindex{index}% \feinschliff{\cs{index}"=Befehl}{Befehl \cs{index}}% {Befehl \cs{index}}{Befehl \cs{index}} mit dem Begriff eingefügt wird. Beispiel: \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] Das \index{Stichwortverzeichnis}Stichwortverzeichnis beinhaltet |ldots \end{verbatim} Wenn ein Begriff am Anfang eines Absatzes auftritt, ist es nicht möglich, den \cs{index}"=Befehl davor zu setzen. Dann sollte er \emph{direkt danach} geschrieben werden. Beispiel: \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] |ldots Ende des vorherigen Absatzes. Stichwortverzeichnisse\index{Stichwortverzeichnis} sind toll. \end{verbatim} Es ist auch möglich, im Stichwortverzeichnis einen Oberbegriff zu definieren, für den mehrere Unterbegriffe aufgeführt werden Das wird mit Hilfe des Ausrufungszeichens (\verb|!|\def\ausruf{!}\srcindex{\protect\ausruf}) gemacht. Beispiele: \begin{verbatim}[\small] \index{Stichwort!beschreibung}\index{Stichwort!eintrag} \end{verbatim} \index{Stichwort!beschreibung}\index{Stichwort!eintrag} Ein Querverweis wird dadurch erzeugt, dass an den Begriff \env{|see\marg{Verweis}} angehängt wird, zum Beispiel so: \begin{verbatim}[\small] \index{Winkelfunktion!Sinus|see{Sinus}}% \end{verbatim} Soll ein Begriff Seitenzahlen und einen Verweis erhalten, muss statt \env{|see} der \feinschliff{\cs{seealso}"=Befehl}{Befehl \cs{seealso}}% {Befehl \cs{seealso}}{Befehl \cs{seealso}} verwendet werden: \begin{verbatim}[\small] \index{Winkelfunktion!Tangens|seealso{Tangens}}% \end{verbatim} Soll ein Querverweis auf einen Unterbegriff erstellt werden (wie im Beispiel auf Seite~\pageref{ind:bsp1}), so wird in das Argument des \env{|see}"=Befehls zur Erzeugung des Bindestriches der Befehl \cs{subind} \emph{ohne} führendes Leerzeichen eingefügt: \begin{verbatim}[\small] \index{Tangens|seealso{Trignonometrische Funktion\subind Tangens}} \end{verbatim} Soll eine Seitenzahl durch Fettdruck hervorgehoben werden, so wird dem Begriff \env{|textbf} angehängt: \begin{verbatim}[\small] \index{Winkelfunktion|textbf} \end{verbatim} Ebenso geht auch ein Kursivstellen: \begin{verbatim}[\small] \index{Winkelfunktion|emph} \end{verbatim} Grundsätzlich können zur Formatierung der Seitenzahl alle Befehle verwendet werden, die ein obligatorisches Argument besitzen, dessen Inhalt anders formatiert wird, \feinschliff{zum Beispiel}{z.\,B.}{z.\,B.}{z.\,B.} \cs{textsf}, \cs{textsl}, usw. Für die Angabe, dass auf die angegebene Seite eine oder mehrere Seiten folgen (Anhängen von "`f"' bzw.\ "`ff"') stellt die \verb|bgteubner|"=Klasse die Befehle \cs{f}, \cs{ff}, \cs{textbff} und \cs{textbfff} zur Verfügung. Die mit \cs{textbf} beginnenden Befehle setzen die Zahlen zusätzlich fett. Im Index werden sie, wie auch die anderen Formatierungsbefehle mit \env{|} statt \env{\textbackslash} eingeleitet. Sollen Seitenbereiche angegeben werden, kann am Anfang des Bereichs \env{|(} und am Ende \env{|)} an die Indexbefehle angehängt werdern: \begin{verbatim}[\small] \index{Mathematik|(} ... \index{Mathematik|)} \end{verbatim} Eine zusätzliche Formatierung der Seitenzahlen kann beispielsweise folgendermaßen erreicht werden: \begin{verbatim}[\small] \index{Mathematik|textbf(} ... \index{Mathematik|textbf)} \end{verbatim} Wenn in einem Begriff Sonderzeichen oder Befehle, wie z.\,B.\ mathematische Symbole oder griechische Buchstaben, vorkommen, kann \verb|makeindex| die Sortierung nicht korrekt vornehmen, da es nicht wissen kann, welche Sortierreihenfolge die richtige ist. Beispielweise würde der Eintrag \verb|\index{$R_{\mathrm{m}}$}| als "`Symbol"' einsortiert werden, da er mit einem \verb|$| % $ beginnt. Die richtige Sortierung kann erreicht werden, indem das Zeichen \verb|@| in den \cs{index}"=Befehl eingefügt wird. Der Teil des Arguments vor dem At"=Zeichen wird zur Sortierung verwendet, der danach in das Stichwortverzeichnis geschrieben. Das Beispiel wird somit folgendermaßen korrekt unter "`R"' einsortiert: \begin{verbatim}[\small] \index{Rm@$R_{\mathrm{m}}$} \end{verbatim} Wie die Sortierreihenfolge griechischer Buchstaben korrigiert werden kann, wird in Abschnitt \ref{sec:tex:glossary-automatisch} erläutert. Die dort gemachten Ausführungen gelten unverändert auch für Stichwortverzeichnisse. Oft sind mehrere Einträge für den gleichen Begriff sinnvoll. Beispiel: \begin{verbatim}[\small] Der \index{Sinus}\index{Winkelfunktion!Sinus|see{Sinus}}% \index{Trigonometrische Funktion!Sinus|see{Sinus}}Sinus lautet ... \end{verbatim} \index{Sinus}\index{Winkelfunktion!Sinus|see{Sinus}}% \index{Trigonometrische Funktion!Sinus|see{Sinus}}% Dabei muss aufgepasst werden, dass zwischen den einzelnen \verb|\index|"=Befehlen keine Leerzeichen stehen, da diese als größere Lücken im Text übrigbleiben würden. Muss ein Zeilenumbruch eingefügt werden, so sollte das Zeilenende mit einem \texttt{\%} auskommentiert werden, wie es in dem Beispiel auch gemacht wurde. \LaTeX\ kann selbst keinen Index erzeugen. Dafür muss~-- nachdem sich beim Übersetzen keine Labels mehr ändern~-- das Programm \verb|makeindex|\srcindex{makeindex} verwendet werden. Der Aufruf lautet \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] makeindex -c -g -s bgteubner.ist |meta[Dateiname] \end{verbatim} Durch die Kommandooption \verb|-s bgteubner.ist| wird das Stichwortverzeichnis im einheitlichen Format des Teubner Verlags generiert. \meta{Dateiname} ist der Dateiname der Hauptdatei ohne die Endung \verb|.tex|. Die in diesem Abschnitt vorgestellten Indexbefehle ergeben einen Index ähnlich dem Stichwortverzeichnis dieser Richtlinien, Seite~\pageref{sec:echter-index}. % ------------------------------------------------------------------- \subsection{Doppelte Einträge}% \label{sec:tex_index_doppelt}% \index{Stichwortverzeichnis!doppelter Eintrag|textbf}% \index{Stichwortverzeichnis!doppelter Eintrag}% Bei der Erstellung des Index kann es passieren, dass beispielsweise ein Begriff an einer Stelle eingeführt wurde und entsprechend fett im Stichwortverzeichnis auftreten soll. Zum Beispiele \begin{verbatim}[\small] \index{Stichwortverzeichnis!doppelter Eintrag|textbf}% \end{verbatim} Wenig später tritt dieser Begriff erneut auf, so dass ein normaler Indexeintrag erstellt werden soll: \begin{verbatim}[\small] \index{Stichwortverzeichnis!doppelter Eintrag}% \end{verbatim} Wenn nun beide Einträge auf die gleiche Seite rutschen, ist der normal gedruckte Eintrag im Normalfall überflüssig. Dies führt dann zu einem Indexeintrag wie dem folgenden: \begin{quotation} \bsptheindex \begin{theindex} \item Stichwortverzeichnis, \textbf{25}, \emph{51} \subitem doppelter Eintrag, 52, \textbf{52} \end{theindex} \end{quotation} Für "`doppelter Eintrag"' wird die Seitenzahl 52 zweimal angegeben. \feinschliff{% Das Programm \texttt{makeindex} schreibt, da es nicht wissen kann, ob das gewollt ist, }{% Da das Programm \texttt{makeindex} nicht wissen kann, ob das gewollt ist, schreibt es }{% Da das Programm \texttt{makeindex} nicht wissen kann, ob das gewollt ist, schreibt es }{% Da das Programm \texttt{makeindex} nicht wissen kann, ob das gewollt ist, schreibt es }% nur eine Warnung in die Log"=Datei, hier \texttt{\jobname.ilg}, mit folgendem Inhalt: \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] ## Warning (input = |jobname.idx, line = 405; output = |jobname.ind, line = 383): -- Conflicting entries: multiple encaps for the same page under same key. \end{verbatim} Wenn der doppelte Eintrag nicht gewollt ist, sollte einer der beiden Einträge (im Normalfall wohl der nicht fettgedruckte) an der Stelle des Aufrufs gelöscht werden. Dies sollte aber ganz am Ende der Arbeiten getan werden, da der Eintrag ja wieder notwendig werden könnte, wenn doch noch ein Seitenumbruch zwischen die beiden Einträge rutschen sollte. % ------------------------------------------------------------------- \section{Verwendete Formelzeichen, Abkürzungsverzeichnis usw.}% \label{sec:tex:glossary}% \texindex{Formelverzeichnis}% Verzeichnisse wie die der Formelzeichen, Abkürzungen usw.\ werden im Folgenden kurz als \emph{Glossar} bezeichnet. Für Glossare gibt es zwei Möglichkeiten, sie zu erstellen. Die eine entspricht der der Erstellung eines Stichwortverzeichnisses (vgl.\ Abschnitt~\ref{sec:tex_index}). Hierbei werden mittels bestimmter Befehle die Einträge in eine Hilfsdatei geschrieben, mit \verb|makeindex| sortiert und dann für das Verzeichnis eingelesen. Doppelte Einträge werden dabei auf einen reduziert. Das genaue Vorgehen wird in Abschnitt~\ref{sec:tex:glossary-automatisch} erläutert. Beim anderen Ansatz werden die Begriffe direkt in die Glossar"=Umgebung geschrieben. Dies wird in Abschnitt~\ref{sec:tex:glossary-manuell} erläutert. Beide Ansätze führen zum gleichen typographischen Ergebnis. Welchen Ansatz Sie wählen, bleibt Ihnen überlassen. \subsection{Automatische Erzeugung}% \label{sec:tex:glossary-automatisch}% Sie können unterschiedliche, glossarartige Verzeichnisse einrichten. Um ein bestimmtes Verzeichnis des Typs \meta{Typ} anzulegen, können Sie zunächst den Befehl \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] \makeglossary|oarg[Typ] \end{verbatim} verwenden.\footnote{Am Ende dieses Abschnitts werden einige Beispiele gezeigt, die die Verwendung vielleicht besser als die allgemeinen Erklärungen verdeutlichen.} Wenn Ihre Hauptdatei den Namen \meta{Hauptdatei} hat, wird eine Datei mit dem Namen \meta{Hauptdatei}\verb|.glo|\meta{Typ} angelegt. Es ist auch möglich, den \meta{Typ} nicht anzugeben. Dann wird ein "`normaler"' Glossar angelegt. Gleichzeitig wird der Befehl \cs{glossary\meta{Typ}\marg{Eintrag}\marg{Erklärung}} definiert, mit dem Sie einen Eintrag in den Glossar vornehmen können. Wenn Sie mit \cs{makeglossary} ohne Argument einen normalen Glossar eingerichtet haben, ist die Überschrift definiert und im Deutschen automatisch auf "`\glossaryname"' gesetzt. Für andere Glossartypen gibt es keine Vordefinition. Sie müssen dann eine Überschrift mit \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] \newcommand*\glossary|meta[Typ]name|marg[Überschrift] \end{verbatim} definieren. Wenn Sie für unterschiedliche Sprachen Überschriften definieren wollen, können Sie dies mit folgendem Befehl tun, der mit \verb|babel.sty| zusammenarbeitet: \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] \newcommand*\glossary|meta[Typ]name{} \addto\captions|meta[Sprache]{\renewcommand*\glossary|meta[Typ]name|marg[Überschrift]} \end{verbatim} Die leere Definition vor dem \cs{addto}"=Befehl ist notwendig, damit der \cs{renewcommand*}"=Befehl beim ersten Sprachwechsel keinen Fehler erzeugt. In der bisher definierten Form wird der Glossar als unnummeriertes Kapitel mit der Überschrift \meta{Überschrift} gesetzt. Möchten Sie ein abweichendes Verhalten, z.\,B.\ als Abschnitt oder mit einleitendem Text, wie es in der Befehlsreferenz auf Seite~\pageref{sec:befehlsreferenz} der Fall ist, so müssen Sie den Befehl \cs{glossary\meta{Typ}preamble} umdefinieren, wie es folgendes Beispiel zeigt: \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] \renewcommand\glossary|meta[Typ]preamble{% \addsec{\glossary|meta[Typ]name}% Dieser Glossar hat einleitenden Text und wird als Abschnitt gesetzt.% } \end{verbatim} Das setzen des Glossars erfolgt durch die Verwendung des Befehls \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] \printglossary|meta[Typ]|oarg[Breite] \end{verbatim} wobei \meta{Breite} den Platz angibt, der für die Stichworte reserviert wird. Sie muss nicht angegeben werden und fällt dann auf einen Standardwert zurück, der in den meisten Fällen zufriedenstellend sein sollte. \bigskip Da diese Erläuterungen sehr abstrakt waren, folgen jetzt einige Beispiele. Die in diesen Autorenrichtlinien verwendete Befehlsreferenz wurde folgendermaßen eingerichtet und verwendet. In der Präambel wird die Verwendung vorbereitet: \begin{verbatim}[\small] \makeglossary[cmd] \newcommand*\glossarycmdname{} \addto\captionsgerman{\renewcommand*\glossarycmdname{Befehlsreferenz}} \addto\captionsngerman{\renewcommand*\glossarycmdname{Befehlsreferenz}} \addto\captionsaustrian{\renewcommand*\glossarycmdname{Befehlsreferenz}} \addto\captionsnaustrian{\renewcommand*\glossarycmdname{Befehlsreferenz}} \addto\captionsenglish{\renewcommand*\glossarycmdname{Command reference}} \renewcommand\glossarycmdpreamble{% \addchap{\glossarycmdname}% \label{sec:befehlsreferenz}% In dieser Befehlsreferenz sind hauptsächlich die Befehle und Umgebungen aufgeführt, die von der \texttt{bgteubner}-Klasse zusätzlich zum Standard bzw.\ der Klasse \texttt{scrbook} aus dem \acro{KOMA}-Script-Paket definiert werden. In Klammern wird jeweils der Abschnitt angegeben, in dem nähere Erklärungen gefunden werden können. } \end{verbatim} Im Dokument werden dann die Einträge folgendermaßen definiert (hier nur zwei Beispiele): \begin{verbatim}[\small] \glossarycmd{frontmatter@\cs{frontmatter}}{Titelei des Buchs (\ref{sec:tex:aufbau})}% \glossarycmd{glossary@\cs{glossary\meta{Name}}}{Definiert einen Eintrag für einen Glossar des Typs \meta{Name} (\ref{sec:tex:glossary})}% \end{verbatim} Die Stichworte im ersten Argument des \cs{glossarycmd}"=Befehls werden mit der aus der Erstellung von Stichwortverzeichnissen bekannten Syntax geschrieben. Um eine korrekte Sortierung zu erreichen, kann der zur Sortierung verwendete Teil vor ein \verb|@| geschrieben werden und der gedruckte Teil danach.\footnote{Der \cs{glossary\meta{Typ}}"=Befehl kann als Teil des Arguments ein \texttt{@} verarbeiten. Damit dies möglich ist, muss das At"=Zeichen die für normale Texte übliche Bedeutung haben. Für "`normale"' Nutzer stellt dies kein Problem dar. Sollten Sie jedoch in Ihrem Dokument die Befehle \cs{makeatletter} und \cs{makeatother} verwenden, kann dies dazu führen, dass der Befehl \cs{glossary\meta{Typ}} scheitert, sofern er nach \cs{makeatletter} aufgerufen wurde. Dabei wird leider keine Fehlermeldung erzeugt, sondern nur ungültige Glossar"=Einträge, die von \texttt{makeindex} abgewiesen werden. Schauen Sie sich dazu die Log"=Datei an, die beim \texttt{makeindex}"=Durchlauf erzeugt wird.} Der Befehl \cs{cs} schreibt sein Argument in Schreibmaschinenschrift mit vorangestelltem Backslash. Im zweiten Argument stehen jeweils die Erklärungen zu den zuvor definierten Begriffen. Gedruckt wird die Befehlsreferenz schließlich mit folgendem Befehl: \begin{verbatim}[\small] \printglossarycmd[4.5em] \end{verbatim} Ein nach Skalaren und Vektoren aufgeteiltes Formelzeichenverzeichnis kann beispielsweise folgendermaßen angelegt werden (diesmal zur Vereinfachung ohne mehrsprachige Überschriften): \begin{verbatim}[\small] \makeglossary[skalar] \newcommand*\glossaryskalarname{Skalare} \renewcommand\glossaryskalarpreamble{\addsec{\glossaryskalarname}} \makeglossary[vektor] \newcommand*\glossaryskalarname{Vektoren} \renewcommand\glossaryvektorpreamble{\addsec{\glossaryvektorname}} \end{verbatim} Einträge werden dann folgendermaßen vorgenommen: \begin{verbatim}[\small] \glossaryskalar{E@$E$}{Elastizitätsmodul} \glossaryvektor{u@$\vec{u}$}{Verschiebungsvektor} \end{verbatim} Wie in diesem Beispiel zu sehen, müssen Formelzeichen in \verb|$|\ldots\verb|$| bzw. \cs{(}\ldots\cs{)} geklammert werden. Sie sollten die Sortierung mittels der \verb|@|"~Syntax korrekt halten, da dies gerade bei mathematischen Symbolen sonst gar nicht gewährleistet ist. Um griechische Buchstaben von lateinischen Buchstaben getrennt zu setzen, kann ihnen ein Sonderzeichen vorangestellt werden und diesem Buchstaben angehängt werden, um untereinander die korrekte Reihenfolge zu behalten. Da die Sortierreihenfolge der lateinischen Namen für die griechischen Buchstaben nicht der Sortierreihenfolge der griechischen Buchstaben entspricht, muss hier etwas improvisiert werden. So lautet die richtige Reihenfolge beispielsweise $\alpha\beta\gamma\delta$, wogegen \verb|makeindex| die Befehle \cs{alpha}""\cs{beta}""\cs{delta}""\cs{gamma} sortieren würde. Abhilfe kann folgender "`Workaround"' bieten: \begin{verbatim}[\small] \glossaryskalar{\aalpha@$\alpha$}{Ein Alpha} \glossaryskalar{\bbeta@$\beta$}{Ein Beta} \glossaryskalar{\cgamma@$\gamma$}{Ein Gamma} \glossaryskalar{\ddelta@$\delta$}{Ein Delta} \end{verbatim} Der vorangestellte Backslash sorgt dafür, dass die griechischen Zeichen als Symbole einsortiert werden. Der jeweils eingefügte Buchstabe vor dem Namen des griechischen Buchstaben sorgt für die richtige Sortierung. Die Sortierreihenfolge griechischer Zeichen ist in Abschnitt~\ref{sec:formelzeichen} enthalten. Das gesamte Formelzeichenverzeichnis kann dann folgendermaßen gedruckt werden: \begin{verbatim}[\small] \addchap{Formelzeichenverzeichnis} \printglossaryskalar \printglossaryvektor \end{verbatim} Wie in Abschnitt~\ref{sec:formelzeichen} schon beschrieben, können Bücher des Teubner Verlags in den Glossaren Überschriften zur Gliederung besitzen oder durchgängig formatiert werden. Wenn Sie den Glossar automatisch erzeugen, wird darüber nicht in der \LaTeX"=Datei entschieden, sondern beim Aufruf von \verb|makeindex|. Einen nicht gegliederten Glossar erzeugt man mit der Index"=Stil"=Datei \verb|bgteuglo.ist|. Wenn Ihre Hauptdatei \meta{M} heißt und Sie einen Glossar des Typs \meta{T} erstellen wollen, lautet der Aufruf dann \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] makeindex -c -g -s bgteuglo.ist -o |meta[M].gls|meta[T] -t |meta[M].glg|meta[T] |meta[M].glo|meta[T] \end{verbatim} Die einzelnen Parameter haben folgende Bedeutungen: \begin{description*} \item [\texttt{-c}] Lösche eventuelle führende Leerzeichen im Argument. \item [\texttt{-g}] Verwende eine deutsche Sortierreihenfolge. \item [\texttt{-s bgteuglo.ist}] Verwende den spezifizierten Stil für den Glossar. \item [\texttt{-o \meta{M}.gls\meta{T}}] Schreibe die Ausgabe in die angegebene Datei. \item [\texttt{-t \meta{M}.glg\meta{T}}] Verwende die angegebene Datei als Log"=Datei. \item [\texttt{\meta{M}.glo\meta{T}}] Lies die angegebene Datei ein. \end{description*} Wollen Sie einen Glossar des Typs \verb|cmd| mit der Hauptdatei \verb|buch| erzeugen, ist der Aufruf entsprechend \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] makeindex -c -g -s bgteuglo.ist -o buch.glscmd -t buch.glgcmd buch.glocmd \end{verbatim} Soll jedem Buchstaben eine Überschrift vorangestellt werden, so verwenden Sie als Stildatei \verb|bgteuglochar.ist| statt \verb|bgteuglo.ist|. \subsection{Manuelle Erzeugung}% \label{sec:tex:glossary-manuell}% Das, was die im vorangegangenen Abschnitt vorgestellten Befehle in Zusammenarbeit mit \feinschliff{dem Programm }{}{}{}% \verb|makeindex| machen, kann der Autor auch manuell bewerkstelligen. Dazu stellt die Klasse \verb|bgteubner| die Umgebung \env{theglossary}\envindex{theglossary} zur Verfügung, die intern als Listenumgebung umgesetzt ist. Ein Glossar wird folgendermaßen erzeugt: \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] \begin{theglossary}|oarg[Präambel] \item |oarg[Begriff 1] |meta[Erklärung 1] \item |oarg[Begriff 2] |meta[Erklärung 2] |ldots \end{theglossary} \end{verbatim} In der \meta{Präambel} wird die Überschrift sowie einleitender Text des Glossars definiert. Wird keine Präambel angegeben, so wird "`Glossar"' als unnummerierte Kapitelüberschrift verwendet. Soll eine andere Überschrift verwendet werden, so muss auch der Gliederungsbefehl angegeben werden, z.\,B. \begin{verbatim}[\small\makeescape\|] \begin{theglossary}[\addchap{Formelzeichen}] |ldots \end{theglossary} \end{verbatim} Auch wenn die Argumente der \cs{item}"=Befehle in eckigen Klammern angegeben sind, ist ein Eintrag obligatorisch. Als Argument wird der zu erklärende Begriff gesetzt, die Erklärung folgt nach dem Argument. Sollte im Argument eine eckige Klammer auftreten, so muss der gesamte Ausdruck mit geschweiften Klammern geklammert werden, da die erste schließende, eckige Klammer das Argument beendet, z.\,B. \begin{verbatim}[\small] \item [{$[a]$}] Einheit der Größe $a$ \end{verbatim} Das folgende Beispiel zeigt das Formelzeichenverzeichnis aus Abschnitt~\ref{sec:formelzeichen}: \begin{verbatim}[\small] \begin{theglossary}[\subsection*{Skalare}]% \item[$\alpha_{\mathrm{k}}$] Kerbformzahl \item[$\varepsilon$] technische Dehnung \item[$\varphi$] wahre Dehnung \item[$\sigma$] Spannung \item[$a$] Gitterkonstante \item[$a$] Risslänge bei Oberflächenrissen und halbe Risslänge bei inneren Rissen \item[$c$] Gitterkonstante \item[$K$] Spannungsintensitätsfaktor \item[$R_{\mathrm{eH}}$] obere Streckgrenze für Materialien mit ausgeprägter Streckgrenze \item[$R_{\mathrm{eL}}$] untere Streckgrenze für Materialien mit ausgeprägter Streckgrenze \item[$R_{\mathrm{m}}$] Zugfestigkeit \item[$R_{\mathrm{p0,2}}$] Dehngrenze für Materialien ohne ausgeprägte Streckgrenze \end{theglossary}% \end{verbatim} Wenn Sie die Glossareinträge nach ihren Anfangsbuchstaben gruppieren wollen, können Sie dies tun, indem Sie \cs{glossarynewchar\marg{Überschrift}} in die Liste einfügen. Das eben gezeigte Formelzeichenverzeichnis wird dann entsprechend folgendermaßen erzeugt: \begin{verbatim}[\small] \begin{theglossary}[\subsection*{Skalare}]% \glossarynewchar{Symbole} \item[$\alpha_{\mathrm{k}}$] Kerbformzahl \item[$\varepsilon$] technische Dehnung \item[$\varphi$] wahre Dehnung \item[$\sigma$] Spannung \glossarynewchar{A} \item[$a$] Gitterkonstante \item[$a$] Risslänge bei Oberflächenrissen und halbe Risslänge bei inneren Rissen \glossarynewchar{C} \item[$c$] Gitterkonstante \glossarynewchar{K} \item[$K$] Spannungsintensitätsfaktor \glossarynewchar{R} \item[$R_{\mathrm{eH}}$] obere Streckgrenze für Materialien mit ausgeprägter Streckgrenze \item[$R_{\mathrm{eL}}$] untere Streckgrenze für Materialien mit ausgeprägter Streckgrenze \item[$R_{\mathrm{m}}$] Zugfestigkeit \item[$R_{\mathrm{p0,2}}$] Dehngrenze für Materialien ohne ausgeprägte Streckgrenze \end{theglossary}% \end{verbatim} % ------------------------------------------------------------------- \section{Literaturverzeichnis}% \texindex{Literaturverzeichnis}% Um auch das Literaturverzeichnis einheitlich zu formatieren, sollen die Literaturverzeichnisse mit Hilfe des Programms \texindex{BibTeX@\BibTeX}\BibTeX\ erstellt werden. Dazu schreibt man eine Datei mit der Dateinamensendung \verb|.bib|\texindex{bib@\texttt{.bib}"=Datei}, die für alle Literaturstellen entsprechende Einträge in der \BibTeX"=Syntax enthält. Beispiel: \begin{verbatim}[\small] @Book{roesler2003a, author = {Rösler, Joachim and Harders, Harald and Bäker, Martin}, title = {Mechanisches Verhalten der Werkstoffe}, publisher = {B.~G. Teubner}, year = 2003, address = {Stuttgart}, edition = {1.}, language = {ngerman}, isbn = {3-519-00438-0} } \end{verbatim} \noindent Für eine genauere Beschreibung der Einträge sei auf die weiterführende Literatur \cite{goossens1995a,patashnik1988a} verwiesen. Die Einträge sind gegenüber Standard"=\BibTeX\ um vier Felder erweitert: \begin{itemize*} \item Das Feld \verb|language|\srcindex{language} enthält die Sprache des Literaturverweises. Alle Sprachen, die im Literaturverzeichnis vorkommen, müssen auch beim Aufruf der Dokumentklasse mit übergeben werden (vgl.\ Abschnitt~\ref{sec:tex:aufbau}). \item In den Feldern \verb|isbn|\srcindex{isbn} und \verb|issn|\srcindex{issn} stehen die \acro{ISBN}\texindex{ISBN@\acro{ISBN}} bzw.\ \acro{ISSN}\texindex{ISSN@\acro{ISSN}} des Verweises. Verwenden Sie bitte die vollständigen Schreibweisen mit den gliedernden Bindestrichen, wie sie auf den Werken abgedruckt sind. \item Mit dem Feld \verb|url|\texindex{url} können Internetadressen angegeben werden. Sie werden mit dem Befehl \cs{url} gesetzt, falls dieser verfügbar ist. Falls Sie dieses Feld benutzen, sollten Sie das Paket \verb|url.sty| laden. \end{itemize*} Die Literaturverweise selbst werden mit Hilfe des Befehls \verb|\cite|\macroindex{cite} erzeugt. Beispiel: \begin{verbatim}[\small] \cite{goossens1995a,patashnik1988a} \end{verbatim} Das Verzeichnis wird durch die Befehlsfolge \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] \bibliographystyle{bgteupln} \bibliography{|meta[bib-Datei 1],|meta[bib-Datei 2],|ldots} \end{verbatim} \macroindex{bibliographystyle}\macroindex{bibliography}% erzeugt, wobei \meta{bib-Datei 1}, \meta{bib-Datei 2}, \ldots\ für eine Liste aller verwendeten \BibTeX"=Dateien mit der Endung \verb|bib| steht. Der Literaturstil \url{bgteupln} schreibt bei mehreren Autoren den ersten in der Form "`Nachname, Vorname"' und alle weiteren "`Vorname Nachname"'. Sollten Sie lieber alle Autoren in der Form "`Nachname, Vorname"' geschrieben haben, können Sie auch den Literaturstil \url{bgteupln2} verwenden. Da diese Form allerdings schlechter zu lesen ist, sollten Sie \url{bgteupln} bevorzugen. Zusätzlich zu den beiden Literaturstilen werden die Literaturstile \url{bgteuabbr} und \url{bgteuabbr2} angeboten, die wie \url{bgteupln} und \url{bgteupln2} arbeiten, jedoch Vornamen sowie einige Schlüsselworte abkürzen. Falls Sie darauf bestehen sollten, Namen in Kapitälchen zu setzen, sollten Sie zum einen den Befehl \cs{person} entsprechend Abschnitt~\ref{sec:tex:auszeichnungen} umdefinieren. Außerdem können Sie die Schrift für Personennamen im Literaturverzeichnis umdefinieren, indem Sie den Befehl \begin{verbatim}[\small] \setbibliographyfont{name}{\textsc} \end{verbatim} in die Präambel Ihres Dokuments schreiben. Näheres dazu finden Sie in der Dokumentation zum Paket \verb|babelbib|~\cite{harders2003a}. Bei der Sortierung des Literaturverzeichnisses besteht ein Dilemma, da es zwei \BibTeX"=Versionen gibt, die jeweils unterschiedliche Nachteile besitzen. Das Programm \verb|bibtex| besitzt keine vernünftige Unterstützung für Zeichen, die über den \acro{US}"=\acro{ASCII}"=Zeichensatz hinausgehen. Dadurch werden in der \verb|bib|"=Datei direkt eingegebene Umlaute nach den "`normalen"' Buchstaben einsortiert (beispielsweise "`Ähre"' nach "`Zentrum"'). Abhilfe schafft es, Umlaute in den Feldern der \verb|bib|"=Datei, die zur Sortierung verwendet werden (meist \verb|author| oder \verb|editor|) nicht direkt einzugeben, sondern \verb|\"A| usw.\ beziehungsweise bei deutschen Einträgen auch \verb|"A| usw.\ zu verwenden. Eine andere Möglichkeit ist das Programm \verb|bibtex8|, das zwar Eingabekodierungen versteht, aber die Suchpfade der \TeX"=Distribution nicht automatisch verwendet (es fehlt die kpathsea"=Unterstützung). Daher müssten alle Pfade explizit angegeben werden. Welchen Weg Sie gehen wollen, bleibt Ihnen überlassen. Falls Sie \verb|bibtex8| verwenden wollen, sollten Sie die Datei \verb|00readme.txt| im Verzeichnis \url{$TEXMF/doc/bibtex8/} lesen, wobei \verb|$TEXMF| unter Unix häufig \url{/usr/TeX/texmf/} und unter Windows \url{C:\Programme\TeXLive\texmf} ist. \iffalse Sollten Sie in der \verb|bib|"=Datei Umlaute direkt eingeben, müssen Sie dem Programm \BibTeX\ explizit angeben, welche Zeichenkodierung Sie verwenden. Dies geschieht dadurch, dass Sie beim Programmaufruf von \verb|bibtex| die Kommandozeilenoption \verb|-c| gefolgt von dem Namen der zugehörigen Kodierungsdatei angeben: \begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] bibtex -c |meta[Kodierung] |meta[Hauptdatei] \end{verbatim} Leider unterscheiden sich die Namen der Kodierungsdateien von den Eingabekodierungen des \verb|inputenc|"=Pakets. Tabelle~\ref{tab:bibtex-kodierungen} fasst die in \TeXLive\,8 verfügbaren Kodierungen zusammen. % \begin{table}% \centering \caption{Eingabekodierungen für \BibTeX8}% \label{tab:bibtex-kodierungen}% \begin{tabular}{>{\ttfamily}lll} \toprule \multicolumn{1}{l}{Datei}& Kodierung& Sortierreihenfolge \\ \midrule 88591lat.csf& \acro{ISO}\,8859-1 & normal \\ 88591sca.csf& \acro{ISO}\,8859-1 & skandinavisch \\ 88592pl.csf & \acro{ISO}\,8859-2 & polnisch \\ ascii.csf & \acro{US}~\acro{ASCII} & englisch \\ cp437lat.csf& \acro{IBM} Codepage 437& normal \\ cp850lat.csf& \acro{IBM} Codepage 850& normal \\ cp850sca.csf& \acro{IBM} Codepage 850& skandinavisch \\ cp852pl.csf & \acro{IBM} Codepage 852& polnisch \\ cp866rus.csf& \acro{IBM} Codepage 866& russisch \\ cp1250pl.csf& \acro{IBM} Codepage 1250& polnisch \\ iso8859-7.csf& \acro{ISO}\,8859-7 & normal \\ \bottomrule \end{tabular} \end{table}% % Unter Unix und Windows wird normalerweise die Kodierung \verb|88591lat.csf| korrekt sein. Wenn Sie für Umlaute \verb|"a| usw.\ beziehungsweise \verb|\"a| usw.\ verwenden, ist die Angabe der Kodierung nicht notwendig (aber auch nicht hinderlich). Sie können auch vermeiden, bei jedem \BibTeX"=Aufruf die Kodierungsdatei anzugeben, wenn Sie die Umgebungsvariable \verb|BIBTEX_CSFILE| so setzen, dass Sie den verwendete Dateinamen enthält. Wie Sie Umgebungsvariablen setzen, unterscheidet sich je nach Betriebssystem, so dass hier nicht näher darauf eingegangen wird. \fi % =================================================================== % Dateiende %%% Local Variables: %%% mode: latex %%% TeX-master: "bgteubner" %%% End: