summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/koma-script/doc/ngerman/tocbasic.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/doc/ngerman/tocbasic.tex')
-rw-r--r--Master/texmf-dist/source/latex/koma-script/doc/ngerman/tocbasic.tex1121
1 files changed, 597 insertions, 524 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/doc/ngerman/tocbasic.tex b/Master/texmf-dist/source/latex/koma-script/doc/ngerman/tocbasic.tex
index 61c285c4754..e8532e621a9 100644
--- a/Master/texmf-dist/source/latex/koma-script/doc/ngerman/tocbasic.tex
+++ b/Master/texmf-dist/source/latex/koma-script/doc/ngerman/tocbasic.tex
@@ -1,6 +1,6 @@
% ======================================================================
% tocbasic.tex
-% Copyright (c) Markus Kohm, 2002-2017
+% Copyright (c) Markus Kohm, 2002-2018
%
% This file is part of the LaTeX2e KOMA-Script bundle.
%
@@ -18,7 +18,7 @@
% This work consists of all files listed in manifest.txt.
% ----------------------------------------------------------------------
% tocbasic.tex
-% Copyright (c) Markus Kohm, 2002-2017
+% Copyright (c) Markus Kohm, 2002-2018
%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
% Version 1.3c, verteilt und/oder veraendert werden.
@@ -46,7 +46,7 @@
% ======================================================================
\KOMAProvidesFile{tocbasic.tex}
- [$Date: 2017-08-08 11:57:30 +0200 (Tue, 08 Aug 2017) $
+ [$Date: 2018-03-27 11:46:14 +0200 (Tue, 27 Mar 2018) $
KOMA-Script guide (package tocbasic)]
\chapter{Verzeichnisse verwalten mit Hilfe von \Package{tocbasic}}
@@ -71,9 +71,9 @@ vornehmen zu müssen.
Als kleiner Nebeneffekt kann das Paket auch verwendet werden, um neue
Gleitumgebungen oder den Gleitumgebungen ähnliche nicht gleitende Umgebungen
für Konsultationsobjekte zu definieren. Näheres dazu wird nach der Erklärung
-der grundlegenden Anweisungen in \autoref{sec:tocbasic.toc} durch ein Beispiel
-in \autoref{sec:tocbasic.example} verdeutlicht, das in kompakter Form noch
-einmal in \autoref{sec:tocbasic.declarenewtoc} aufgegriffen wird.
+der grundlegenden Anweisungen in den folgenden vier Abschnitten durch ein
+Beispiel in \autoref{sec:tocbasic.example} verdeutlicht, das in kompakter Form
+noch einmal in \autoref{sec:tocbasic.declarenewtoc} aufgegriffen wird.
\KOMAScript{} verwendet \Package{tocbasic} sowohl für das Inhaltsverzeichnis
als auch für die bereits erwähnten Verzeichnisse für Abbildungen und Tabellen.
@@ -87,18 +87,19 @@ bekannten Dateierweiterungen\textnote{Dateierweiterung, Verzeichnis}, die für
Verzeichnisse stehen, zu verwalten. Einträge in Dateien mit solchen
Dateierweiterungen werden typischerweise mit
\Macro{addtocontents}\important{\Macro{addtocontents},
- \DescRef{\LabelBase.cmd.addxcontentsline}} oder \DescRef{\LabelBase.cmd.addxcontentsline} vorgenommen. Darüber
-hinaus gibt es Anweisungen, mit denen Aktionen für all diese
-Dateierweiterungen durchgeführt werden können. Außerdem gibt es Anweisungen,
-um Einstellungen für die Datei vorzunehmen, die zu einer gegebenen
-Dateierweiterung gehört. Typischerweise hat so eine Dateierweiterung auch
-einen Besitzer\textnote{Dateibesitzer}. Dieser Besitzer kann eine Klasse oder
-ein Paket oder ein Bezeichner sein, den der Autor der Klasse oder des Pakets,
-das \Package{tocbasic} verwendet, frei gewählt hat. \KOMAScript{} selbst
-verwendet beispielsweise den Besitzer \PValue{float} für die
-Dateierweiterungen \File{lof} und \File{lot}, die für das Abbildungs- und das
-Tabellenverzeichnis stehen. Für das Inhaltsverzeichnis verwendet \KOMAScript{}
-als Besitzer den Dateiname der Klasse.
+ \DescRef{\LabelBase.cmd.addxcontentsline}} oder
+\DescRef{\LabelBase.cmd.addxcontentsline} vorgenommen. Darüber hinaus gibt es
+Anweisungen, mit denen Aktionen für all diese Dateierweiterungen durchgeführt
+werden können. Außerdem gibt es Anweisungen, um Einstellungen für die Datei
+vorzunehmen, die zu einer gegebenen Dateierweiterung gehört. Typischerweise
+hat so eine Dateierweiterung auch einen
+Besitzer\textnote{Dateibesitzer}. Dieser Besitzer kann eine Klasse oder ein
+Paket oder ein Bezeichner sein, den der Autor der Klasse oder des Pakets, das
+\Package{tocbasic} verwendet, frei gewählt hat. \KOMAScript{} selbst verwendet
+beispielsweise den Besitzer \PValue{float} für die Dateierweiterungen
+\File{lof} und \File{lot}, die für das Abbildungs- und das Tabellenverzeichnis
+stehen. Für das Inhaltsverzeichnis verwendet \KOMAScript{} als Besitzer den
+Dateinamen der Klasse.
\begin{Declaration}
\Macro{ifattoclist}\Parameter{Dateierweiterung}
@@ -111,7 +112,7 @@ die \PName{Dateierweiterung} bereits über diese Liste bekannt, so wird der
ausgeführt.
\begin{Example}
Angenommen, Sie wollen wissen, ob die Dateierweiterung »\File{foo}« bereits
- verwendet wird, um in diesem Fall einen Fehlermeldung auszugeben, weil diese
+ verwendet wird, um in diesem Fall eine Fehlermeldung auszugeben, weil diese
damit nicht mehr verwendet werden kann:
\begin{lstcode}
\ifattoclist{foo}{%
@@ -151,7 +152,7 @@ aufgrund der Verwendung einer Anweisung durch den Benutzer aufgerufen wird. In
diesem Fall wird als \PName{Besitzer} »\PValue{.}« eingetragen.
Beachten\textnote{Achtung!} Sie, dass ein leeres Argument \PName{Besitzer}
-nicht das gleiche ist, wie das Weglassen des kompletten optionalen Arguments
+nicht das Gleiche ist wie das Weglassen des kompletten optionalen Arguments
einschließlich der eckigen Klammern. Ein leeres Argument würde auch einen
leeren \PName{Besitzer} ergeben.
\begin{Example}
@@ -172,7 +173,7 @@ leeren \PName{Besitzer} ergeben.
See the tocbasic package documentation for explanation.
Type H <return> for immediate help.
\end{lstoutput}
- Wenn Sie dann tatsächlich die Taste »\texttt{H}« gefolgt von der
+ Wenn Sie dann tatsächlich die Taste »\texttt{H}«, gefolgt von der
Return-Taste drücken, erhalten Sie als Hilfe:
\begin{lstoutput}
File extension `foo' is already used by a toc-file, while bar.sty
@@ -201,33 +202,45 @@ leeren \PName{Besitzer} ergeben.
oder aber ein Fehler gemeldet, wenn diese Dateierweiterung bereits verwendet
wird.
\end{Example}
+
Sie können als \PName{Besitzer} angeben, was immer Sie wollen, aber es sollte
eindeutig sein! Wenn Sie beispielsweise der Autor des Pakets \Package{float}
-wären, könnten Sie als \PName{Besitzer} auch »\PValue{float}« an Stelle von
-»\PValue{float.sty}« angeben. In diesem Fall würden die \KOMAScript-Optionen
-für das Verzeichnis der Abbildungen und das Verzeichnis der Tabellen auch Ihre
-Verzeichnisse betreffen, die zum Zeitpunkt der Verwendung der jeweiligen
-Option bereits zur Liste der bekannten Dateierweiterungen hinzugefügt
-sind. Das liegt daran, dass \KOMAScript{} die Dateierweiterungen
-»\PValue{lof}« für das Abbildungsverzeichnis und »\PValue{lot}« für das
-Tabellenverzeichnis mit dem Besitzer »\PName{float}« anmeldet und die Optionen
-für diese Besitzer setzt.%
-%
+wären, könnten Sie als \PName{Besitzer} auch »\PValue{float}« anstelle von
+»\PValue{float.sty}« angeben. In diesem Fall würden die
+\KOMAScript-Optionen\important{\DescRef{maincls.option.listof}}%
+\IndexOption{listof~=\PName{Einstellung}} für das Verzeichnis der Abbildungen
+und das Verzeichnis der Tabellen auch Ihre Verzeichnisse betreffen, die zum
+Zeitpunkt der Verwendung der jeweiligen Option bereits zur Liste der bekannten
+Dateierweiterungen hinzugefügt sind. Das liegt daran, dass \KOMAScript{} die
+Dateierweiterungen »\PValue{lof}« für das Abbildungsverzeichnis und
+»\PValue{lot}« für das Tabellenverzeichnis mit dem Besitzer »\PValue{float}«
+anmeldet und die Optionen für diese Besitzer setzt.
+
+Das Paket \hyperref[cha:scrhack]{\Package{scrhack}}\IndexPackage{scrhack}%
+\important{ \hyperref[cha:scrhack]{\Package{scrhack}}} enthält übrigens
+Patches für mehrere Pakete wie \Package{float} oder \Package{listings}, die
+eigene Verzeichnisse bereitstellen. Bei Verwendung von
+\hyperref[cha:scrhack]{\Package{scrhack}} wird dann unter anderem die
+jeweilige Dateierweiterung der Liste der bekannten Dateierweiterungen
+hinzugefügt. Dabei wird als \PName{Besitzer} ebenfalls »\PValue{float}«
+verwendet. Dies ist sozusagen der grundlegende Baustein, um die Möglichkeiten
+von \Package{tocbasic} und der \KOMAScript-Klassen auch für diese
+Verzeichnisse nutzen zu können.%
\EndIndexGroup
\begin{Declaration}
\Macro{AtAddToTocList}\OParameter{Besitzer}\Parameter{Anweisungen}
\end{Declaration}
-Auf diese Weise können die \Parameter{Anweisungen} zu einer internen Liste von
+Auf diese Weise können die \PName{Anweisungen} zu einer internen Liste von
Anweisungen hinzugefügt werden, die immer dann auszuführen sind, wenn eine
Dateierweiterung mit dem angegebenen \PName{Besitzer} zur Liste der bekannten
Dateierweiterungen hinzugefügt wird. Bezüglich des optionalen Arguments wird
-wie in der Erklärung von \DescRef{\LabelBase.cmd.addtotoclist} beschrieben verfahren. Wird das
-optionale Argument leer gelassen, werden in diesem Fall die Aktionen
-unabhängig vom Besitzer immer ausgeführt, wenn die Dateierweiterung zu der
-Liste der bekannten Dateierweiterungen hinzugefügt wird. Während der
-Ausführung der \PName{Anweisungen} ist außerdem
+wie in der Erklärung von \DescRef{\LabelBase.cmd.addtotoclist} beschrieben
+verfahren. Wird das optionale Argument leer gelassen, werden in diesem Fall
+die Aktionen unabhängig vom Besitzer immer ausgeführt, wenn die
+Dateierweiterung zu der Liste der bekannten Dateierweiterungen hinzugefügt
+wird. Während der Ausführung der \PName{Anweisungen} ist außerdem
\Macro{@currext}\IndexCmd{@currext}\important{\Macro{@currext}} die
Dateierweiterung, die gerade hinzugefügt wird.
\begin{Example}
@@ -243,9 +256,11 @@ Dateierweiterung, die gerade hinzugefügt wird.
\end{Example}
Die\textnote{Achtung!} zweimalige Verwendung von \Macro{expandafter} ist im
-Beispiel erforderlich, weil das Argument von \DescRef{\LabelBase.cmd.tocbasic@extend@babel}
-zwingend bereits expandiert sein muss. Siehe dazu auch die Erklärung zu
-\DescRef{\LabelBase.cmd.tocbasic@extend@babel} in \autoref{sec:tocbasic.internals},
+Beispiel erforderlich, weil das Argument von
+\DescRef{\LabelBase.cmd.tocbasic@extend@babel} zwingend bereits expandiert
+sein muss. Siehe dazu auch die Erklärung zu
+\DescRef{\LabelBase.cmd.tocbasic@extend@babel} in
+\autoref{sec:tocbasic.internals},
\DescPageRef{\LabelBase.cmd.tocbasic@extend@babel}.
%
\EndIndexGroup
@@ -259,23 +274,24 @@ Dateierweiterungen entfernen. Ist das optionale Argument \OParameter{Besitzer}
angegeben, so wird die Dateierweiterung nur entfernt, wenn sie für den
angegebenen \PName{Besitzer} angemeldet wurde. Wie der Besitzer beim Weglassen
des optionalen Argument bestimmt wird, ist der Erklärung zu
-\DescRef{\LabelBase.cmd.addtotoclist} zu entnehmen. Wird ein leerer \PName{Besitzer} angegeben,
-findet kein Besitzertest statt, sondern die \PName{Dateierweiterung} wird
-unabhängig vom Besitzer entfernt.%
+\DescRef{\LabelBase.cmd.addtotoclist} zu entnehmen. Wird ein leerer
+\PName{Besitzer} angegeben, findet kein Besitzertest statt, sondern die
+\PName{Dateierweiterung} wird unabhängig vom Besitzer entfernt.%
\EndIndexGroup
\begin{Declaration}
\Macro{doforeachtocfile}\OParameter{Besitzer}\Parameter{Anweisungen}
\end{Declaration}
-Bisher haben Sie nur Anweisungen kennen gelernt, die für Klassen- und
+Bisher haben Sie nur Anweisungen kennengelernt, die für Klassen- und
Paketautoren zwar zusätzliche Sicherheit, aber auch eher zusätzlichen Aufwand
bedeuten. Mit \Macro{doforeachtocfile} kann man die erste Ernte dafür
einfahren. Diese Anweisung erlaubt es die angegebenen \PName{Anweisungen} für
jede von dem \PName{Besitzer} angemeldete Dateierweiterung
auszuführen. Während der Ausführung der \PName{Anweisungen} ist
-\Macro{@currext} die aktuell verarbeitete Dateierweiterung. Wird das optionale
-Argument \OParameter{Besitzer} weggelassen, so werden alle Dateierweiterungen
+\Macro{@currext}\IndexCmd{@currext}\important{\Macro{@currext}} die aktuell
+verarbeitete Dateierweiterung. Wird das optionale Argument
+\OParameter{Besitzer} weggelassen, so werden alle Dateierweiterungen
unabhängig vom Besitzer abgearbeitet. Ein leeres optionales Argument würde
hingegen nur die Dateierweiterungen mit leerem Besitzer verarbeiten.
\begin{Example}
@@ -284,42 +300,44 @@ hingegen nur die Dateierweiterungen mit leerem Besitzer verarbeiten.
\begin{lstcode}
\doforeachtocfile{\typeout{\@currext}}
\end{lstcode}
- möglich. Wollen Sie hingegen nur die Dateierweiterungen des Besitzer
- »\PValue{foo}«, dann geht das einfach mit:
+ möglich. Sollen hingegen nur die Dateierweiterungen des Besitzer
+ »\PValue{foo}« ausgegeben werden, geht das einfach mit:
\begin{lstcode}
\doforeachtocfile[foo]{\typeout{\@currext}}
\end{lstcode}
\end{Example}
-Die \KOMAScript-Klassen \Class{scrbook} und \Class{scrreprt} verwenden diese
-Anweisung übrigens, um für jedes Verzeichnis, für das die Eigenschaft
-\PValue{chapteratlist} gesetzt ist, optional einen vertikalen Abstand oder die
-Kapitelüberschrift in dieses Verzeichnis einzutragen. Wie Sie diese
-Eigenschaft setzen können, ist in \autoref{sec:tocbasic.toc},
-\DescPageRef{\LabelBase.cmd.setuptoc} zu finden.%
+Die \KOMAScript-Klassen \Class{scrbook} und \Class{scrreprt} verwenden die
+Anweisung, um für Verzeichnisse, für die Eigenschaft \PValue{chapteratlist}
+gesetzt ist, optional einen vertikalen Abstand oder die Kapitelüberschrift in
+das Verzeichnis einzutragen. Wie Sie diese Eigenschaft setzen können, ist
+in \autoref{sec:tocbasic.toc} ab \DescPageRef{\LabelBase.cmd.setuptoc} zu
+finden.%
\EndIndexGroup
\begin{Declaration}
\Macro{tocbasicautomode}
\end{Declaration}
-Diese Anweisung definiert die Anweisung \Macro{@starttoc}, die der \LaTeX-Kern
-bereit stellt, so um, dass bei jedem Aufruf von \Macro{@starttoc} die dabei
-angegebene Dateierweiterung in die Liste der bekannten Dateierweiterungen
-eingefügt wird, soweit sie dort noch nicht vorhanden ist. Außerdem wird dann
-\DescRef{\LabelBase.cmd.tocbasic@starttoc} an Stelle von \Macro{@starttoc} verwendet. Näheres
-zu \DescRef{\LabelBase.cmd.tocbasic@starttoc} und \Macro{@starttoc} ist
-\autoref{sec:tocbasic.internals},
+Diese Anweisung definiert das vom \LaTeX-Kern für Klassen- und Paketautoren
+bereitgestellte
+\Macro{@starttoc}\IndexCmd{@starttoc}\important{\Macro{\@starttoc}} so um,
+dass bei jedem Aufruf von \Macro{@starttoc} die dabei angegebene
+Dateierweiterung in die Liste der bekannten Dateierweiterungen eingefügt wird,
+soweit sie dort noch nicht vorhanden ist. Außerdem wird dann
+\DescRef{\LabelBase.cmd.tocbasic@starttoc} anstelle von \Macro{@starttoc}
+verwendet. Näheres zu \DescRef{\LabelBase.cmd.tocbasic@starttoc} und
+\Macro{@starttoc} ist \autoref{sec:tocbasic.internals},
\DescPageRef{\LabelBase.cmd.tocbasic@starttoc} zu entnehmen.
-Mit Hilfe von \Macro{tocbasicautomode} wird also sozusagen jedes Verzeichnis,
-das mit Hilfe von \Macro{@starttoc} erstellt wird, automatisch zumindest
-teilweise unter die Kontrolle von \Package{tocbasic} gestellt. Ob das zum
-gewünschten Ergebnis führt, hängt jedoch sehr von den jeweiligen
-Verzeichnissen ab. Immerhin funktioniert damit schon einmal die Erweiterung
-für das \Package{babel}-Paket für alle Verzeichnisse. Es ist jedoch
-vorzuziehen, wenn der Paketautor selbst \Package{tocbasic} explizit
-verwendet. Er kann dann auch die weiteren Vorteile nutzen, die ihm das Paket
-bietet und die in den nachfolgenden Abschnitten beschrieben werden.%
+Mit Hilfe von \Macro{tocbasicautomode} wird also jedes Verzeichnis, das mit
+Hilfe von \Macro{@starttoc} erstellt wird, automatisch unter die Kontrolle von
+\Package{tocbasic} gestellt. Ob das zum gewünschten Ergebnis führt, hängt
+jedoch sehr von den jeweiligen Verzeichnissen ab. Immerhin funktioniert damit
+schon einmal die Erweiterung für das \Package{babel}-Paket für alle
+Verzeichnisse. Es ist jedoch vorzuziehen, wenn der Paketautor selbst
+\Package{tocbasic} explizit verwendet. Er kann dann auch die weiteren Vorteile
+nutzen, die ihm das Paket bietet und die in den nachfolgenden Abschnitten
+beschrieben werden.%
\EndIndexGroup
@@ -327,12 +345,12 @@ bietet und die in den nachfolgenden Abschnitten beschrieben werden.%
\seclabel{toc}
Im vorherigen Abschnitt haben Sie erfahren, wie eine Liste bekannter
-Dateierweiterungen geführt werden kann und wie automatisch Anweisungen beim
-Hinzufügen von Dateierweiterungen zu dieser Liste ausgeführt werden
-können. Des Weiteren haben Sie eine Anweisung kennen gelernt, mit der man für
-jede einzelne bekannte Dateierweiterung oder einen spezifischen Teil davon
-Anweisungen ausführen kann. In diesem Abschnitt werden Sie Anweisungen kennen
-lernen, die sich auf die Datei beziehen, die mit dieser Dateierweiterung
+Dateierweiterungen verwaltet werden kann\iffree{ und wie automatisch Anweisungen
+ beim Hinzufügen von Dateierweiterungen zu dieser Liste ausgeführt werden
+ können}{}. Des Weiteren haben Sie eine Anweisung kennengelernt, mit der man
+für jede einzelne bekannte Dateierweiterung oder einen spezifischen Teil davon
+Anweisungen ausführen kann. In diesem Abschnitt werden Sie Anweisungen
+kennenlernen, die sich auf die Datei beziehen, die mit dieser Dateierweiterung
verbunden ist.
@@ -340,12 +358,13 @@ verbunden ist.
\Macro{addtoeachtocfile}\OParameter{Besitzer}\Parameter{Inhalt}
\end{Declaration}
Die Anweisung \Macro{addtoeachtocfile} schreibt \PName{Inhalt} mit Hilfe von
-\Macro{addtocontents} aus dem \LaTeX-Kern in jede Datei, die für den
-angegebenen \PName{Besitzer} in der Liste der bekannten Dateierweiterungen zu
-finden ist. Wird das optionale Argument weggelassen, wird in jede Datei aus
-der Liste der bekannten Dateierweiterungen geschrieben. Der konkrete Dateiname
-setzt sich dabei übrigens aus \Macro{jobname} und der Dateierweiterung
-zusammen. Während des Schreibens von \PName{Inhalt} ist
+\Macro{addtocontents}\IndexCmd{addtocontents}\important{\Macro{addtocontents}}%
+\iffree{ aus dem \LaTeX-Kern}{} in jede Datei, die mit dem angegebenen
+\PName{Besitzer} in der Liste der bekannten Dateierweiterungen \iffree{zu
+ finden ist}{steht}. Wird das optionale Argument weggelassen, wird in jede
+Datei aus der Liste der bekannten Dateierweiterungen geschrieben.\iffree{ Der
+ konkrete Dateiname setzt sich dabei übrigens aus \Macro{jobname} und der
+ Dateierweiterung zusammen.}{} Während des Schreibens von \PName{Inhalt} ist
\Macro{@currext}\IndexCmd{@currext}\important{\Macro{@currext}} die
Dateierweiterung der Datei, in die aktuell geschrieben wird.
\begin{Example}
@@ -362,10 +381,11 @@ Dateierweiterung der Datei, in die aktuell geschrieben wird.
\addtoeachtocfile[foo]{%
\protect\addvspace{\protect\baselineskip}%
}
-\end{lstcode}
-\end{Example}
-Anweisungen, die nicht bereits beim Schreiben expandiert werden sollen, sind
-wie bei \Macro{addtocontents} mit \Macro{protect} zu schützen.
+\end{lstcode}%
+\end{Example}%
+\iffree{Anweisungen, die nicht bereits beim Schreiben expandiert werden
+ sollen, sind wie bei \Macro{addtocontents} mit \Macro{protect} zu
+ schützen.}{}%
\EndIndexGroup
@@ -373,18 +393,15 @@ wie bei \Macro{addtocontents} mit \Macro{protect} zu schützen.
\Macro{addxcontentsline}\Parameter{Dateierweiterung}\Parameter{Ebene}
\OParameter{Gliederungsnummer}\Parameter{Inhalt}
\end{Declaration}
-Diese\ChangedAt{v3.12}{\Package{tocbasic}}
-Anweisung ähnelt sehr der Anweisung
+Diese\ChangedAt{v3.12}{\Package{tocbasic}} Anweisung ähnelt sehr der Anweisung
\Macro{addcontentsline}\IndexCmd{addcontentsline} aus dem
\LaTeX-Kern. Allerdings besitzt sie ein zusätzliches optionales Argument für
die \PName{Gliederungsnummer} des Eintrags, während diese bei
-\Macro{addcontentsline} im Argument \PName{Inhalt} mit angegeben wird.
-
-Die Anweisung wird verwendet, um nummerierte oder nicht nummerierte Einträge
-in das über die \PName{Dateierweiterung} spezifierte Verzeichnis
-aufzunehmen. Dabei ist \PName{Ebene} der symbolische Name der Gliederungsebene
-und \PName{Inhalt} der entsprechende Eintrag. Die Seitenzahl wird automatisch
-bestimmt.
+\Macro{addcontentsline} im Argument \PName{Inhalt} mit angegeben wird. Sie
+wird verwendet, um nummerierte oder nicht nummerierte Einträge in das über die
+\PName{Dateierweiterung} spezifizierte Verzeichnis aufzunehmen. Dabei ist
+\PName{Ebene} der symbolische Name der Gliederungsebene und \PName{Inhalt} der
+entsprechende Eintrag. Die Seitenzahl wird automatisch bestimmt.
Im Unterschied zu \Macro{addcontentsline} testet \Macro{addxcontentsline}
zunächst, ob Anweisung \Macro{add\PName{Ebene}\PName{Dateierweiterung}entry}
@@ -394,7 +411,7 @@ obligatorisches Argument übergeben wird. Ein Beispiel für eine solche
Anweisung, die von den \KOMAScript-Klassen bereitgestellt wird, wäre
\DescRef{maincls-experts.cmd.addparttocentry} (siehe
\autoref{sec:maincls-experts.experts},
-\DescPageRef{maincls-experts.cmd.addparttocentry}). Ist die entsprechend
+\DescPageRef{maincls-experts.cmd.addparttocentry}). Ist die entsprechende
Anweisung nicht definiert, wird stattdessen die interne Anweisung
\DescRef{\LabelBase.cmd.tocbasic@addxcontentsline} verwendet. Diese erhält
alle vier Argumente als obligatorische Argumente und verwendet dann
@@ -431,7 +448,7 @@ Dateien aus der Liste der bekannten Dateierweiterungen schreibt.
\begin{Example}
Angenommen, Sie sind Klassen-Autor und wollen den Kapiteleintrag nicht nur in
das Inhaltsverzeichnis, sondern in alle Verzeichnisdateien schreiben. Nehmen
- wir weiter an, dass aktuell \PName{\#1} den Titel enthält, der geschrieben
+ wir weiter an, dass aktuell \PValue{\#1} den Titel enthält, der geschrieben
werden soll.
\begin{lstcode}
\addxcontentslinetoeachtocfile{chapter}%
@@ -449,8 +466,8 @@ Dateierweiterung der Datei, in die aktuell geschrieben wird.%
Die Anweisung\ChangedAt{v3.12}{\Package{tocbasic}}
\Macro{addxcontentslinetoeachtocfile} ist wann immer möglich gegenüber
\Macro{addcontentslinetoeachtocfile} vorzuziehen, da die Erweiterungen von
-\DescRef{\LabelBase.cmd.addxcontentsline} nur damit Anwendung finden. Näheres zu diesen
-Erweiterungen und Vorteilen ist in der vorausgehenden Erklärung von
+\DescRef{\LabelBase.cmd.addxcontentsline} nur damit Anwendung finden. Näheres
+zu diesen Erweiterungen und Vorteilen ist in der vorausgehenden Erklärung von
\DescRef{\LabelBase.cmd.addxcontentsline} zu finden.%
%
\EndIndexGroup
@@ -509,8 +526,9 @@ passend zu definieren.
\end{lstcode}
Im zweiten Fall würde natürlich auch ein optional aktivierter Eintrag in das
Inhaltsverzeichnis nicht gesetzt. Näheres zur Eigenschaft des Eintrags in
- das Inhaltsverzeichnis ist bei der Anweisung \DescRef{\LabelBase.cmd.setuptoc},
- \DescPageRef{\LabelBase.cmd.setuptoc} zu finden.
+ das Inhaltsverzeichnis ist bei der Anweisung
+ \DescRef{\LabelBase.cmd.setuptoc}, \DescPageRef{\LabelBase.cmd.setuptoc} zu
+ finden.
Wenn Sie zuvor
\begin{lstcode}
@@ -540,8 +558,15 @@ dieser Anweisungen zu einer Fehlermeldung der Art
\end{lstoutput}
führen, wenn keine Schreibdateien mehr zur Verfügung stehen. Abhilfe kann in
diesem Fall das Laden des in \autoref{cha:scrwfile} beschriebenen Pakets
-\Package{scrwfile}\important{\Package{scrwfile}}\IndexPackage{scrwfile} bieten.
-%
+\Package{scrwfile}\important{\Package{scrwfile}}\IndexPackage{scrwfile}
+bieten.
+
+Das Paket \hyperref[cha:scrhack]{\Package{scrhack}}\IndexPackage{scrhack}%
+\important{ \hyperref[cha:scrhack]{\Package{scrhack}}} enthält übrigens
+Patches für mehrere Pakete wie \Package{float} oder \Package{listings}, damit
+deren Verzeichnisbefehle \Macro{listoftoc} verwenden. Dadurch stehen viele
+Möglichkeiten von \Package{tocbasic} und den \KOMAScript-Klassen auch für
+deren Verzeichnisse zur Verfügung.%
\EndIndexGroup
@@ -552,15 +577,15 @@ diesem Fall das Laden des in \autoref{cha:scrwfile} beschriebenen Pakets
\end{Declaration}
Manchmal ist es nützlich, wenn unmittelbar vor dem Einlesen der Datei mit den
Verzeichnisdaten \PName{Anweisungen} ausgeführt werden können. Mit Hilfe von
-\Macro{BeforeStartingTOC} können Sie genau solche \PName{Anweisungen}
+\Macro{BeforeStartingTOC} können Sie eine solche Ausführung
wahlweise für eine einzelne \PName{Dateierweiterung} oder alle Dateien, die
-mit Hilfe von \DescRef{\LabelBase.cmd.listoftoc*}, \DescRef{\LabelBase.cmd.listoftoc} oder \DescRef{\LabelBase.cmd.listofeachtoc}
+mit Hilfe von \DescRef{\LabelBase.cmd.listoftoc*},
+\DescRef{\LabelBase.cmd.listoftoc} oder \DescRef{\LabelBase.cmd.listofeachtoc}
eingelesen werden, erreichen. Ebenso können Sie \PName{Anweisungen} nach dem
Einlesen der Datei ausführen, wenn Sie diese mit \Macro{AfterStartingTOC}
definieren. Während der Ausführung der \PName{Anweisungen} ist
\Macro{@currext}\IndexCmd{@currext}\important{\Macro{@currext}} die
-Dateierweiterung der Datei, die eingelesen wird bzw. gerade eingelesen
-wurde.
+Dateierweiterung der Datei, die eingelesen wird bzw. gerade eingelesen wurde.
Ein Beispiel\textnote{Beispiel} zur Verwendung von \Macro{BeforeStartingTOC}
ist in \autoref{sec:scrwfile.clonefilefeature} auf
@@ -611,7 +636,7 @@ sondern verwendet wie vorgefunden.
Erlauben\textnote{Tipp!} Sie mir einen Hinweis zu \Macro{MakeUppercase}. Diese
Anweisung ist zum einen nicht voll expandierbar. Das bedeutet, dass sie im
-Zusammenspiel mit anderen Anweisungen zu Problemen führen kann. Darüber hinaus
+Zusammenspiel mit anderen Anweisungen zu Problemen führen kann. Zum anderen
sind sich alle Typografen einig, dass beim Versalsatz, also beim Satz
kompletter Wörter oder Passagen in Großbuchstaben, Sperrung unbedingt
notwendig ist. Dabei darf jedoch kein fester Abstand zwischen den Buchstaben
@@ -624,11 +649,10 @@ ebenso wenig leisten wie der Befehl \Macro{MakeUppercase} selbst. Auch die
automatische Sperrung mit Hilfe des \Package{microtype}-Pakets ist
diesbezüglich nur eine näherungsweise Notlösung, da die von der konkreten
Schrift abhängige Form der Buchstaben auch hier nicht näher betrachtet
-wird. Da\textnote{Empfehlung} Versalsatz also eher etwas für die absoluten
+wird. Da\textnote{Empfehlung} Versalsatz also eher etwas für absolute
Experten ist und fast immer Handarbeit bedeutet, wird Laien empfohlen, darauf
-eher zu verzichten oder ihn nur vorsichtig und nicht an so exponierter Stelle
-wie im Kolumnentitel zu verwenden.
-%
+zu verzichten oder ihn nur vorsichtig und nicht an so exponierter Stelle
+wie dem Kolumnentitel zu verwenden.%
\EndIndexGroup
@@ -637,15 +661,15 @@ wie im Kolumnentitel zu verwenden.
\end{Declaration}
Das Paket \Package{tocbasic} enthält eine Standarddefinition für das Setzen
von Überschriften von Verzeichnissen. Diese Standarddefinition ist durch
-verschiedene Eigenschaften, die bei der Anweisung \DescRef{\LabelBase.cmd.setuptoc} erläutert
-werden, konfigurierbar. Sollte diese Möglichkeit einmal nicht ausreichen, so
-besteht die Möglichkeit, mit \Macro{deftocheading} eine alternative
-Überschriftenanweisung für ein Verzeichnis mit einer bestimmten
-\PName{Dateierweiterung} zu definieren. Die Definition kann als einzigen
-Parameter \PName{\#1} enthalten. Beim Aufruf der Anweisung innerhalb von
-\DescRef{\LabelBase.cmd.listoftoc} oder \DescRef{\LabelBase.cmd.listofeachtoc} wird als dieses Argument dann der
-Titel für das Verzeichnis übergeben.
-%
+verschiedene Eigenschaften, die bei der Anweisung
+\DescRef{\LabelBase.cmd.setuptoc} erläutert werden, konfigurierbar. Sollte
+diese Möglichkeit einmal nicht ausreichen, so besteht die Möglichkeit, mit
+\Macro{deftocheading} eine alternative Überschriftenanweisung für ein
+Verzeichnis mit einer bestimmten \PName{Dateierweiterung} zu definieren. Die
+Definition kann als einzigen Parameter \PValue{\#1} enthalten. Beim Aufruf der
+Anweisung innerhalb von \DescRef{\LabelBase.cmd.listoftoc} oder
+\DescRef{\LabelBase.cmd.listofeachtoc} wird für dieses Argument dann der Titel
+für das Verzeichnis übergeben.%
\EndIndexGroup
@@ -656,23 +680,25 @@ Titel für das Verzeichnis übergeben.
\Parameter{Liste von Eigenschaften}
\end{Declaration}
Mit diesen beiden Anweisungen können \PName{Eigenschaften} für eine
-\PName{Dateierweiterung} bzw. das Verzeichnis, das dazu gehört, gesetzt
-werden. Die \PName{Liste von Eigenschaften} ist dabei eine durch Komma
-getrennte Aneinanderreihung von \PName{Eigenschaften}. Das Paket
+\PName{Dateierweiterung} bzw. das Verzeichnis, das dazu gehört, gesetzt und
+gelöscht werden. Die \PName{Liste von Eigenschaften} ist dabei eine durch
+Komma getrennte Folge von \PName{Eigenschaften}. Das Paket
\Package{tocbasic} wertet folgende Eigenschaften aus:
-\begin{description}
+\begin{description}\setkomafont{descriptionlabel}{}%
\item[\PValue{leveldown}] bedeutet, dass das Verzeichnis nicht mit der
- obersten Gliederungsebene unterhalb von \DescRef{maincls.cmd.part} -- wenn vorhanden
- \DescRef{maincls.cmd.chapter}, sonst \DescRef{maincls.cmd.section} -- erstellt wird, sondern mit einer
- Überschrift der nächst tieferen Gliederungsebene. Diese Eigenschaft wird von
- der internen Überschriftenanweisung ausgewertet. Wird\textnote{Achtung!}
- hingegen eine eigene Überschriftenanweisung mit \DescRef{\LabelBase.cmd.deftocheading}
+ obersten Gliederungsebene unterhalb von \DescRef{maincls.cmd.part} -- wenn
+ vorhanden \DescRef{maincls.cmd.chapter}, sonst \DescRef{maincls.cmd.section}
+ -- erstellt wird, sondern mit einer Überschrift der nächst tieferen
+ Gliederungsebene. Diese Eigenschaft wird von der internen
+ Überschriftenanweisung ausgewertet. Wird\textnote{Achtung!} hingegen eine
+ eigene Überschriftenanweisung mit \DescRef{\LabelBase.cmd.deftocheading}
definiert, liegt die Auswertung der Eigenschaft in der Verantwortung dessen,
der die Definition vornimmt. Die \KOMAScript-Klassen setzen diese
Eigenschaft bei Verwendung der Option
- \OptionValueRef{maincls}{listof}{leveldown}\important{\OptionValueRef{maincls}{listof}{leveldown}}%
- \IndexOption{listof~=\PValue{leveldown}}
- für alle Dateierweiterungen des Besitzers \PValue{float}.
+ \OptionValueRef{maincls}{listof}{leveldown}%
+ \important{\OptionValueRef{maincls}{listof}{leveldown}}%
+ \IndexOption{listof~=\textKValue{leveldown}} für alle Dateierweiterungen des
+ Besitzers \PValue{float}.
\item[\PValue{nobabel}] bedeutet, dass die normalerweise automatisch
verwendete Erweiterung für die Sprachumschaltung mit
\Package{babel}\IndexPackage{babel} für diese Dateierweiterung nicht
@@ -698,7 +724,7 @@ getrennte Aneinanderreihung von \PName{Eigenschaften}. Das Paket
das Abschalten des optischen Randausgleichs in den Verzeichnissen. Optischer
Randausgleich wird standardmäßig abgeschaltet, wenn das Paket
\Package{microtype}\IndexPackage{microtype} oder ein anderes Paket, das die
- Anweisung \Macro{microtypesetup}\IndexCmd{microtypesetup} bereit stellt,
+ Anweisung \Macro{microtypesetup}\IndexCmd{microtypesetup} bereitstellt,
geladen ist. Wenn also optischer Randausgleich in den Verzeichnissen
gewünscht wird, dann muss diese Eigenschaft aktiviert
werden. Es\textnote{Achtung!} ist jedoch zu beachten, dass der optische
@@ -713,14 +739,13 @@ getrennte Aneinanderreihung von \PName{Eigenschaften}. Das Paket
\KOMAScript-Klassen setzen diese Eigenschaft bei Verwendung der Option
\OptionValueRef{maincls}{listof}{numbered}%
\important{\OptionValueRef{maincls}{listof}{numbered}}%
- \IndexOption{listof~=\PValue{numbered}} für alle Dateierweiterungen des
+ \IndexOption{listof~=\textKValue{numbered}} für alle Dateierweiterungen des
Besitzers \Package{float}.
\item[\PValue{numberline}] \ChangedAt{v3.12}{\Package{tocbasic}}%
- bedeutet, dass auch all diejenigen Einträge, die mit Hilfe der Anweisung
+ bedeutet, dass all diejenigen Einträge, die mit Hilfe der Anweisung
\DescRef{\LabelBase.cmd.addxcontentsline} oder der Anweisung
- \DescRef{\LabelBase.cmd.addxcontentslinetoeachtocfile} in das Verzeichnis
- geschrieben werden und bei denen das optionale Argument für die Nummer fehlt
- oder leer ist, mit einer (leeren)
+ \DescRef{\LabelBase.cmd.addxcontentslinetoeachtocfile} vorgenommen werden, wobei das optionale Argument für die Nummer fehlt
+ oder leer ist, mit einer leeren
\DescRef{\LabelBase.cmd.numberline}-Anweisung versehen werden. Das führt in
der Regel dazu, dass diese Einträge nicht linksbündig mit der Nummer,
sondern mit dem Text der nummerierten Einträge gleicher Ebene gesetzt
@@ -734,18 +759,18 @@ getrennte Aneinanderreihung von \PName{Eigenschaften}. Das Paket
Die \KOMAScript-Klassen setzen diese Eigenschaft bei Verwendung der Option
\OptionValueRef{maincls}{listof}{numberline}%
\important{\OptionValueRef{maincls}{listof}{numberline}}%
- \IndexOption{listof~=\PValue{numberline}} für die Dateierweiterungen des
+ \IndexOption{listof~=\textKValue{numberline}} für die Dateierweiterungen des
Besitzers \PValue{float} und bei Verwendung der Option
\OptionValueRef{maincls}{toc}{numberline}%
\important{\OptionValueRef{maincls}{toc}{numberline}}%
- \IndexOption{toc~=\PValue{numberline}} für die Dateierweiterung
+ \IndexOption{toc~=\textKValue{numberline}} für die Dateierweiterung
\PValue{toc}. Entsprechend wird die Eigenschaft bei Verwendung von Option
\OptionValueRef{maincls}{listof}{nonumberline}%
\important{\OptionValueRef{maincls}{listof}{nonumberline}}%
- \IndexOption{listof~=\PValue{nonumberline}} oder
+ \IndexOption{listof~=\textKValue{nonumberline}} oder
\OptionValueRef{maincls}{toc}{nonumberline}%
\important{\OptionValueRef{maincls}{toc}{nonumberline}}%
- \IndexOption{toc~=\PValue{nonumberline}} wieder zurückgesetzt.
+ \IndexOption{toc~=\textKValue{nonumberline}} wieder zurückgesetzt.
\item[\PValue{onecolumn}] \leavevmode\ChangedAt{v3.01}{\Package{tocbasic}}%
bedeutet, dass für dieses Verzeichnis automatisch der \LaTeX-interne
Einspaltenmodus mit \Macro{onecolumn}\IndexCmd{onecolumn} verwendet
@@ -772,17 +797,18 @@ getrennte Aneinanderreihung von \PName{Eigenschaften}. Das Paket
Eigenschaft bei Verwendung der Option
\OptionValueRef{maincls}{listof}{totoc}%
\important{\OptionValueRef{maincls}{listof}{totoc}}%
- \IndexOption{listof~=\PValue{totoc}} für alle Dateierweiterungen des
+ \IndexOption{listof~=\textKValue{totoc}} für alle Dateierweiterungen des
Besitzers \Package{float}.
\end{description}
Die \KOMAScript-Klassen kennen eine weitere Eigenschaft:
-\begin{description}
+\begin{description}\setkomafont{descriptionlabel}{}
\item[\PValue{chapteratlist}] sorgt dafür, dass in dieses Verzeichnis bei
jedem neuen Kapitel eine optionale Gliederung eingefügt wird. In der
Voreinstellung ist diese Untergliederung dann ein vertikaler
Abstand. Näheres zu den Möglichkeiten ist Option
\DescRef{maincls.option.listof}%
- \IndexOption{listof}\important{\DescRef{maincls.option.listof}} in
+ \IndexOption{listof~=\PName{Einstellung}}%
+ \important{\DescRef{maincls.option.listof}} in
\autoref{sec:maincls.floats}, \DescPageRef{maincls.option.listof} zu
entnehmen.
\end{description}
@@ -801,9 +827,9 @@ Die \KOMAScript-Klassen kennen eine weitere Eigenschaft:
\begin{lstcode}
\setuptoc{loa}{chapteratlist}
\end{lstcode}
- Wollen Sie außerdem, dass bei Klassen, die \DescRef{maincls.cmd.chapter} als oberste
- Gliederungsebene verwenden, das Verzeichnis automatisch einspaltig gesetzt
- wird, so verwenden Sie zusätzlich
+Wollen Sie außerdem, dass bei Klassen, die \DescRef{maincls.cmd.chapter} als
+oberste Gliederungsebene verwenden, das Verzeichnis automatisch einspaltig
+gesetzt wird, so verwenden Sie zusätzlich
\begin{lstcode}
\ifundefinedorrelax{chapter}{}{%
\setuptoc{loa}{onecolumn}%
@@ -822,7 +848,7 @@ Die \KOMAScript-Klassen kennen eine weitere Eigenschaft:
Wie Sie hier sehen, unterstützt ein Paket, das \Package{tocbasic} verwendet,
bereits ohne nennenswerten Aufwand diverse Möglichkeiten für die dadurch
realisierten Verzeichnisse, die sonst einigen Implementierungsaufwand
-bedeuteten und deshalb in vielen Paketen leider fehlen.%
+bedeuten würden und deshalb in vielen Paketen leider fehlen.%
\EndIndexGroup
@@ -847,7 +873,7 @@ unterstützen wollen.
\BeginIndex{}{Verzeichnis>Eintrag}
Neben\ChangedAt[2016/03]{v3.20}{\Package{tocbasic}} den eigentlichen
-Verzeichnissen und den zugehörigen Hilfsdateien kann man mit Paket
+Verzeichnissen und den zugehörigen Hilfsdateien kann man mit dem Paket
\Package{tocbasic} ab Version~3.20 auch Einfluss auf die Verzeichniseinträge
nehmen. Dazu können neue Stile definiert werden. Es stehen aber auch mehrere
vordefinierte Stile zur Verfügung. Mittelfristig wird \Package{tocbasic} das
@@ -868,15 +894,14 @@ Ebene Einträge im Verzeichnis ausgegeben werden.
Bei \Class{book} ist \Counter{tocdepth} beispielsweise mit 2 voreingestellt,
es werden also die Einträge der Ebenen \PValue{part}, \PValue{chapter},
\PValue{section} und \PValue{subsection} ausgeben. Tiefere Ebenen wie
-\PValue{subsubsection}, deren numerischer Wert 3 ist, werden nicht
+\PValue{subsubsection}, deren nummerischer Wert 3 ist, werden nicht
ausgegeben. Trotzdem sind die Einträge in der Hilfsdatei für das
Inhaltsverzeichnis vorhanden.
-Die von \Package{tocbasic} definierten Eintragsstile beachten abgesehen von
+Die von \Package{tocbasic} definierten Eintragsstile beachten, abgesehen von
\PValue{gobble} (siehe
\DescRef{\LabelBase.cmd.DeclareTOCStyleEntry}\iffree{}{, weiter unten in
- diesem Abschnitt}) ebenfalls \Counter{tocdepth}.
-%
+ diesem Abschnitt}), ebenfalls \Counter{tocdepth}.%
\EndIndexGroup
@@ -886,25 +911,25 @@ Die von \Package{tocbasic} definierten Eintragsstile beachten abgesehen von
\end{Declaration}
Zwar\ChangedAt[2016/03]{v3.20}{\Package{tocbasic}} definiert bereits der
\LaTeX-Kern eine Anweisung \Macro{numberline}, diese ist allerdings für die
-Anforderungen von \Package{tocbasic} nicht ausreichend. Deshalb definiert es
-eigene Anweisungen und setzt \Macro{numberline} bei Bedarf mit Hilfe von
-\Macro{usetocbasicnumberline} für die einzelnen Verzeichniseinträge
-entsprechend. Eine Umdefinierung von \Macro{numberline} ist daher bei
-Verwendung von \Package{tocbasic} oftmals wirkungslos und führt teilweise auch
-zu Warnungen.
+Anforderungen von \Package{tocbasic} nicht ausreichend. Deshalb definiert
+\Package{tocbasic} eigene Anweisungen und setzt \Macro{numberline} bei Bedarf
+mit Hilfe von \Macro{usetocbasicnumberline} für die einzelnen
+Verzeichniseinträge entsprechend. Eine Umdefinierung von \Macro{numberline}
+ist daher bei Verwendung von \Package{tocbasic} oftmals wirkungslos und führt
+teilweise auch zu Warnungen.
Man kann auch die Definition von \Package{tocbasic} generell nutzen, indem man
bereits in der Dokumentpräambel \Macro{usetocbasicnumberline} aufruft. Die
Anweisung versucht zunächst zu ermitteln, ob in der aktuellen Definition
wichtige interne Anweisungen von \Package{tocbasic} verwendet werden. Ist dies
-nicht der Fall wird \Macro{numberline} entsprechend umdefiniert und zusätzlich
+nicht der Fall, wird \Macro{numberline} entsprechend umdefiniert und zusätzlich
\PName{Code} ausgeführt. Ist kein optionales Arguments angegeben, wird
stattdessen via \Macro{PackageInfo} eine Meldung über die erfolgte
Umdefinierung ausgegeben. Diese Meldung kann man einfach unterdrücken, indem
ein leeres optionales Argument angegeben wird.
Es\textnote{Achtung!} ist zu beachten, dass \Macro{usetocbasicnumberline} den
-internen Schalter \Macro{@tempswa} global verändern kann!%
+internen Schalter \Macro{if@tempswa} global verändern kann!%
\EndIndexGroup
@@ -924,10 +949,11 @@ sein muss. Über die \PName{Optionenliste} können die verschiedenen, meist vom
\PName{Stil} abhängenden Eigenschaften des Eintrags festgelegt werden.
Derzeit werden von \Package{tocbasic} die folgenden Eintragsstile definiert:
-\begin{description}
+\begin{description}\setkomafont{descriptionlabel}{}
\item[\PValue{default}] ist in der Voreinstellung ein Klon von Stil
\PValue{dottedtocline}. Klassenautoren, die \Package{tocbasic} verwenden,
- wird empfohlen, diesen Stil mit Hilfe von \Macro{CloneTOCStyle} auf den
+ wird empfohlen, diesen Stil mit Hilfe von
+ \DescRef{\LabelBase.cmd.CloneTOCEntryStyle} auf den
Standardverzeichniseintragsstil der Klasse zu ändern. Bei den
\KOMAScript-Klassen wird \PValue{default} beispielsweise zu einem Klon von
Stil \PValue{tocline}.
@@ -935,8 +961,8 @@ Derzeit werden von \Package{tocbasic} die folgenden Eintragsstile definiert:
\Class{book} und \Class{report} für die Inhaltsverzeichniseinträge der
Ebenen \PValue{section} bis \PValue{subparagraph} und bei allen
Standardklassen für die Einträge in das Abbildungs- und das
- Tabellenverzeichnis bekannt ist. Er kennt nur die Eigenschaften
- \PValue{level}, \PValue{indent} und \PValue{numwidth}. Die Einträge werden
+ Tabellenverzeichnis bekannt ist. Er kennt nur drei\important{\PValue{level},
+ \PValue{indent}, \PValue{numwidth}} Eigenschaften. Die Einträge werden
um \PValue{indent} von links eingezogen in der aktuellen Schrift
ausgegeben. \DescRef{\LabelBase.cmd.numberline} wird nicht umdefiniert. Die
Breite der Nummer wird von \PValue{numwidth} bestimmt. Bei mehrzeiligen
@@ -999,27 +1025,30 @@ Derzeit werden von \Package{tocbasic} die folgenden Eintragsstile definiert:
nicht ausgegeben sondern sozusagen verschluckt. Dennoch verfügt er über die
Standardeigenschaft \PValue{level}, die jedoch nie ausgewertet wird.
\item[\PValue{largetocline}] entspricht dem Stil, der von den Standardklassen
- für die Ebene \PValue{part} bekannt ist. Er kennt nur die Eigenschaften
+ für die Ebene \PValue{part} bekannt ist. Er kennt
+ nur\important{\PValue{level}, \PValue{indent}} die Eigenschaften
\PName{level} und \PName{indent}. Letzteres ist gleichsam eine Abweichung
von den Standardklassen, die selbst keinen Einzug der \PValue{part}-Einträge
unterstützen.
Vor dem Eintrag wird ein Seitenumbruch erleichtert. Die Einträge werden um
- \PValue{indent} von links eingezogen in \Macro{large}\Macro{bfseries}
- ausgegeben. Sollte \DescRef{\LabelBase.cmd.numberline} verwendet werden, so
- ist die Nummernbreite fest auf 3\Unit{em}
+ \PValue{indent} von links eingezogen und mit den Schrifteinstellungen
+ \Macro{large}\Macro{bfseries} ausgegeben. Sollte
+ \DescRef{\LabelBase.cmd.numberline} verwendet werden, so ist die
+ Nummernbreite fest auf 3\Unit{em}
eingestellt. \DescRef{\LabelBase.cmd.numberline} wird nicht umdefiniert. Die
Standardklassen verwenden für \PName{part}-Einträge kein
\DescRef{\LabelBase.cmd.numberline}. Der Wert hat bei mehrzeiligen Einträgen
auch keine Auswirkung auf den Einzug ab der zweiten Zeile.
- \autoref{fig:tocbasic.largetocline} illustriert die Eigenschaften des
- Stils. Dabei wird auch auffällig, dass der Stil einige Ungereimtheiten der
- Standardklassen übernommen hat, beispielsweise der fehlende Einzug ab der
- zweiten Zeile bei mehrzeiligen Einträgen und zwei unterschiedliche Werte für
- \Macro{@pnumwidth}, die aus einer Abhängigkeit von der Schriftgröße
+ \autoref{fig:tocbasic.largetocline} illustriert die
+ Eigenschaften
+ des Stils. Dabei wird auch auf"|fällig, dass der Stil einige Ungereimtheiten
+ der Standardklassen übernommen hat, beispielsweise der fehlende Einzug ab
+ der zweiten Zeile bei mehrzeiligen Einträgen und zwei unterschiedliche Werte
+ für \Macro{@pnumwidth}, die aus einer Abhängigkeit von der Schriftgröße
resultieren. Daraus resultiert auch der Umstand, dass im Extremfall der Text
- der Überschrift der Seitenzahl zu nah kommen kann. Es ist zu beachten, dass
+ der Überschrift der Seitenzahl zu nahe kommen kann. Es ist zu beachten, dass
die in der Abbildung gezeigte Breite der Gliederungsnummer nur dann
Verwendung findet, wenn auch tatsächlich \DescRef{\LabelBase.cmd.numberline}
verwendet wird. Die Standardklassen setzen hingegen einen festen Abstand von
@@ -1066,21 +1095,23 @@ Derzeit werden von \Package{tocbasic} die folgenden Eintragsstile definiert:
mit Hilfe dieses Stils, ändern dann jedoch den \PName{Initialisierungscode}
der Klone so ab, dass sie unterschiedliche Voreinstellungen besitzen.
- Der Stil kennt die Eigenschaften \PValue{level}, \PValue{beforeskip},
- \PValue{dynnumwidth}, \PValue{entryformat}, \PValue{entrynumberformat},
- \PValue{breakafternumber}, \PValue{indent}, \PValue{linefill},
- \PValue{numsep}, \PValue{numwidth}, \PValue{onstarthigherlevel},
- \PValue{onstartlowerlevel}, \PValue{onstartsamelevel},
- \PValue{pagenumberbox}, \PValue{pagenumberformat}, \PValue{raggedentrytext}
- und \PValue{raggedpagenumber}. Die Voreinstellungen all dieser Eigenschaften
- werden abhängig vom Namen der \PName{Eintragsebene} bestimmt und orientieren
- sich dann an den Ergebnissen der Standardklassen. Es ist daher möglich, nach
- Laden von \Package{tocbasic} den Stil der Inhaltsverzeichniseinträge der
- Standardklassen mit \DescRef{\LabelBase.cmd.DeclareTOCEntryStyle} in \PValue{tocline} zu
- ändern, ohne dass dies unmittelbar zu größeren Veränderungen im Aussehen der
+ Der Stil kennt neben der Standardeigenschaft \PValue{level} noch
+ 16\important{\PValue{level}, \PValue{beforeskip}, \PValue{breakafternumber},
+ \PValue{dynnumwidth}, \PValue{entryformat}, \PValue{entrynumberformat},
+ \PValue{indent}, \PValue{linefill}, \PValue{numsep}, \PValue{numwidth},
+ \PValue{onstarthigherlevel}, \PValue{onstartlowerlevel},
+ \PValue{onstartsamelevel}, \PValue{pagenumberbox},
+ \PValue{pagenumberformat}, \PValue{raggedentrytext},
+ \PValue{raggedpagenumber}} weitere Eigenschaften. Die Voreinstellungen all
+ dieser Eigenschaften werden abhängig vom Namen der \PName{Eintragsebene}
+ bestimmt und orientieren sich dann an den Ergebnissen der
+ Standardklassen. Es ist daher möglich, nach Laden von \Package{tocbasic} den
+ Stil der Inhaltsverzeichniseinträge der Standardklassen mit
+ \DescRef{\LabelBase.cmd.DeclareTOCEntryStyle} in \PValue{tocline} zu ändern,
+ ohne dass dies unmittelbar zu größeren Veränderungen im Aussehen der
Inhaltsverzeichniseinträge führt. So kann man gezielt nur die Eigenschaften
ändern, die für erwünschte Änderungen notwendig sind. Dasselbe gilt für
- Abbildungs- und Tabellenverzeichnis der Standardklassen.
+ Abbildungs- und Tabellenverzeichnis der Standardklassen.%
Aufgrund der hohen Flexibilität kann dieser Stil prinzipiell die Stile
\PValue{dottedtocline}, \PValue{undottedtocline} und \PValue{largetocline}
@@ -1237,19 +1268,17 @@ Derzeit werden von \Package{tocbasic} die folgenden Eintragsstile definiert:
\item[\PValue{undottedtocline}] entspricht dem Stil, der von den
Standardklassen \Class{book} und \Class{report} für die Ebene
\PValue{chapter} und von \Class{article} für die Ebene \PValue{section}
- bekannt ist. Er kennt nur die Eigenschaften \PValue{level}, \PValue{indent}
- und \PValue{numwidth}. Letztere ist gleichsam eine Abweichung von den
- Standardklassen, die selbst keinen Einzug für die genannten Ebenen
- unterstützen.
-
+ bekannt ist. Er kennt\important{\PValue{level}, \PValue{indent},
+ \PValue{numwidth}} nur drei Eigenschaften.
Vor dem Eintrag wird ein Seitenumbruch erleichtert und ein vertikaler
Abstand eingefügt. Die Einträge werden um \PValue{indent} von links
- eingezogen in \Macro{bfseries}
- ausgegeben. \DescRef{\LabelBase.cmd.numberline} wird nicht umdefiniert. Die
- Breite der Nummer wird von \PValue{numwidth} bestimmt. Bei mehrzeiligen
- Einträgen wird der Einzug ab der zweiten Zeile um \PValue{numwidth}
- erhöht. \autoref{fig:tocbasic.undottedtocline} illustriert die Eigenschaften
- des Stils.
+ eingezogen in \Macro{bfseries} ausgegeben. Dies ist gleichsam eine
+ Abweichung von den Standardklassen, die selbst keinen Einzug für Einträge
+ der genannten Ebenen bieten. \DescRef{\LabelBase.cmd.numberline} wird nicht
+ umdefiniert. Die Breite der Nummer wird von \PValue{numwidth} bestimmt. Bei
+ mehrzeiligen Einträgen wird der Einzug ab der zweiten Zeile um
+ \PValue{numwidth} erhöht. \autoref{fig:tocbasic.undottedtocline} illustriert
+ die Eigenschaften des Stils.
\begin{figure}
\centering
\resizebox{.8\linewidth}{!}{%
@@ -1292,16 +1321,19 @@ Derzeit werden von \Package{tocbasic} die folgenden Eintragsstile definiert:
Eine Erklärung zu den Eigenschaften der von \Package{tocbasic} definierten
Stile findet sich in \autoref{tab:tocbasic.tocstyle.attributes}.
Bei\ChangedAt[2016/06]{v3.21}{\Package{tocbasic}} Verwendung der Eigenschaften
-als Optionen für \DescRef{\LabelBase.cmd.DeclareNewTOC} (siehe
+als Optionen für
+\DescRef{\LabelBase.cmd.DeclareNewTOC}\IndexCmd{DeclareNewTOC} (siehe
\DescPageRef{\LabelBase.cmd.DeclareNewTOC}) sind die Namen der Eigenschaften
mit dem Präfix \PValue{tocentry}, also beispielsweise \Option{tocentrylevel}
-an Stelle von \PValue{level} zu
+anstelle von \PValue{level}, zu
verwenden. Bei\ChangedAt[2015/12]{v3.20}{\Package{tocbasic}} Verwendung als
-Optionen für \DescRef{maincls-experts.cmd.DeclareSectionCommand} (siehe
+Optionen für \DescRef{maincls-experts.cmd.DeclareSectionCommand}%
+\IndexCmd{DeclareSectionCommand}\IndexCmd{DeclareNewSectionCommand}%
+\IndexCmd{RedeclareSectionCommand}\IndexCmd{ProvideSectionCommand} (siehe
\DescPageRef{maincls-experts.cmd.DeclareSectionCommand}) und verwandten
Anweisungen sind die Namen der Eigenschaften mit dem Präfix \PValue{toc} zu
-versehen, also beispielsweise \Option{toclevel} an Stelle von \PValue{level}
-zu verwenden.
+versehen, also beispielsweise \Option{toclevel} anstelle von \PValue{level} zu
+verwenden.
Letztlich führt der Aufruf von \Macro{DeclareTOCStyleEntry} zur Definition der
Anweisung \Macro{l@\PName{Eintragsebene}}.
@@ -1324,9 +1356,9 @@ Anweisung \Macro{l@\PName{Eintragsebene}}.
Bei der \PName{Eintragsebene} \PValue{part} wird das Attribut mit
\texttt{2.25em plus 1pt} initialisiert, bei \PValue{chapter} mit
\texttt{1em plus 1pt}. Ist noch keine \PName{Eintragsebene}
- \PValue{chapter} bekannt wird für \PValue{section} ebenfalls \texttt{1em
- plus 1pt} verwendet. Alle anderen Ebenen werden mit \texttt{0pt plus
- .2pt} initialisiert.%
+ \PValue{chapter} bekannt, wird stattdessen für \PValue{section}
+ \texttt{1em plus 1pt} verwendet. Ansonsten wird \PValue{section} wie alle
+ anderen Ebenen mit \texttt{0pt plus .2pt} initialisiert.%
}%
\entry{\OptionVName{breakafternumber}{Schalter}}{%
\PName{Schalter} ist einer der Werte für einfache Schalter aus
@@ -1338,14 +1370,14 @@ Anweisung \Macro{l@\PName{Eintragsebene}}.
In der Voreinstellung ist die Eigenschaft im Stil \PValue{tocline} nicht
gesetzt.
- Ist\textnote{Achtung!} für ein Verzeichnis mit
- \DescRef{\LabelBase.cmd.setuptoc} die Eigenschaft \Option{numberline}
- gesetzt (siehe \autoref{sec:tocbasic.toc},
+ Ist %\textnote{Achtung!}
+ für ein Verzeichnis mit \DescRef{\LabelBase.cmd.setuptoc} die Eigenschaft
+ \Option{numberline} gesetzt (siehe \autoref{sec:tocbasic.toc},
\DescPageRef{\LabelBase.cmd.setuptoc}), wie dies bei den
\KOMAScript-Klassen und Verwendung deren Option
\OptionValueRef{maincls}{toc}{numberline}%
- \IndexOption{toc~=\PValue{numberline}} der Fall ist, führt dies auch dazu,
- dass bei nicht nummerierten Einträgen dennoch die Zeile mit der dann
+ \IndexOption{toc~=\textKValue{numberline}} der Fall ist, führt dies auch
+ dazu, dass bei nicht nummerierten Einträgen dennoch die Zeile mit der dann
leeren Nummer in der Formatierung von \Option{entrynumberformat} gesetzt
wird.%
}%
@@ -1355,8 +1387,8 @@ Anweisung \Macro{l@\PName{Eintragsebene}}.
Schalter beim Stil \PValue{tocline} aktiviert, gibt die Eigenschaft
\PValue{numwidth} nur noch einen Minimalwert an. Übertrifft die beim
letzten \LaTeX-Lauf ermittelte maximale Breite der Eintragsnummern
- gleicher Ebene zuzüglich des Werts von \PValue{numsep} diesen Minimalwert,
- so wird stattdessen der ermittelte Wert verwendet.%
+ gleicher Ebene zuzüglich des Wertes von \PValue{numsep} diesen
+ Minimalwert, so wird stattdessen der ermittelte Wert verwendet.%
}%
\entry{\OptionVName{entryformat}{Befehl}}{%
Über diese Eigenschaft kann die Formatierung des gesamten Eintrags
@@ -1388,14 +1420,15 @@ Anweisung \Macro{l@\PName{Eintragsebene}}.
Initialisiert wird die Eigenschaft mit Ausgabe des übergebenen
Arguments. Die Eintragsnummer wird also unverändert ausgegeben.
- Ist\textnote{Achtung!} für ein Verzeichnis mit
- \DescRef{\LabelBase.cmd.setuptoc} die Eigenschaft \Option{numberline}
- gesetzt (siehe \autoref{sec:tocbasic.toc},
- \DescPageRef{\LabelBase.cmd.setuptoc}), wie dies bei den \KOMAScript-Klassen
- und Verwendung deren Option \OptionValueRef{maincls}{toc}{numberline}%
- \IndexOption{toc~=\PValue{numberline}} der Fall ist, führt dies auch dazu,
- dass bei nicht nummerierten Einträgen \PName{Befehl} dennoch ausgeführt
- wird.%
+ Ist %\textnote{Achtung!}
+ für ein Verzeichnis mit \DescRef{\LabelBase.cmd.setuptoc} die Eigenschaft
+ \Option{numberline} gesetzt (siehe \autoref{sec:tocbasic.toc},
+ \DescPageRef{\LabelBase.cmd.setuptoc}), wie dies bei den
+ \KOMAScript-Klassen und Verwendung deren Option
+ \OptionValueRef{maincls}{toc}{numberline}%
+ \IndexOption{toc~=\textKValue{numberline}} der Fall ist, führt dies auch
+ dazu, dass bei nicht nummerierten Einträgen \PName{Befehl} dennoch
+ ausgeführt wird.%
}%
\entry{\OptionVName{indent}{Länge}}{%
Horizontaler Abstand des Eintrags vom linken Rand (siehe
@@ -1417,7 +1450,8 @@ Anweisung \Macro{l@\PName{Eintragsebene}}.
Nummerischer Wert der \PName{Eintragsebene}. Tatsächlich angezeigt werden
nur Einträge, deren nummerische Ebene nicht größer als Zähler
\DescRef{\LabelBase.counter.tocdepth}%
- \important{\DescRef{\LabelBase.counter.tocdepth}}\IndexCounter{tocdepth}
+ %\important{\DescRef{\LabelBase.counter.tocdepth}}
+ \IndexCounter{tocdepth}
ist.
Diese Eigenschaft ist für alle Stile zwingend und wird bei der
@@ -1495,46 +1529,48 @@ Anweisung \Macro{l@\PName{Eintragsebene}}.
Die Erkennung funktioniert übrigens nur, solange sich \Macro{lastpenalty}
seit dem letzten Eintrag nicht geändert hat.
- Initialisiert wird die Eigenschaft mit \DescRef{\LabelBase.cmd.LastTOCLevelWasLower} (siehe
+ Initialisiert wird die Eigenschaft mit
+ \DescRef{\LabelBase.cmd.LastTOCLevelWasLower} (siehe
\DescPageRef{\LabelBase.cmd.LastTOCLevelWasLower}).%
}%
\entry{\OptionVName{onstartlowerlevel}{Code}}{%
Der Stil \PValue{tocline} kann zu Beginn eines Eintrags eine Aktion in
Abhängigkeit davon ausführen, ob der zuletzt gesetzte Eintrag einen
- höheren, denselben oder einen niedrigeren \PName{level}-Wert
- hatte. Der im Falle, dass der aktuelle Eintrag einen kleineren
- \PName{level}-Wert besitzt, in der Hierarchie der Einträge also höher
- steht, wird der über diese Eigenschaft angegebene \PName{Code} ausgeführt.
+ höheren, denselben oder einen niedrigeren \PName{level}-Wert hatte. Im
+ Falle, dass der aktuelle Eintrag einen kleineren \PName{level}-Wert
+ besitzt, in der Hierarchie der Einträge also höher steht, wird der über
+ diese Eigenschaft angegebene \PName{Code} ausgeführt.
Die Erkennung funktioniert übrigens nur, solange sich \Macro{lastpenalty}
seit dem letzten Eintrag nicht geändert hat.
- Initialisiert wird die Eigenschaft mit \DescRef{\LabelBase.cmd.LastTOCLevelWasHigher} (siehe
+ Initialisiert wird die Eigenschaft mit
+ \DescRef{\LabelBase.cmd.LastTOCLevelWasHigher} (siehe
\DescPageRef{\LabelBase.cmd.LastTOCLevelWasHigher}), was normalerweise
dazu führt, dass ein Umbruch vor dem Eintrag begünstigt wird.%
}%
\entry{\OptionVName{onstartsamelevel}{Code}}{%
Der Stil \PValue{tocline} kann zu Beginn eines Eintrags eine Aktion in
Abhängigkeit davon ausführen, ob der zuletzt gesetzte Eintrag einen
- höheren, denselben oder einen niedrigeren \PName{level}-Wert
- hatte. Der im Falle, dass der aktuelle Eintrag denselben
- \PName{level}-Wert besitzt, in der Hierarchie der Einträge also gleich
- gestellt ist, wird der über diese Eigenschaft angegebene \PName{Code}
- ausgeführt.
+ höheren, denselben oder einen niedrigeren \PName{level}-Wert hatte. Im
+ Falle, dass der aktuelle Eintrag denselben \PName{level}-Wert besitzt, in
+ der Hierarchie der Einträge also gleich gestellt ist, wird der über diese
+ Eigenschaft angegebene \PName{Code} ausgeführt.
Die Erkennung funktioniert übrigens nur, solange sich \Macro{lastpenalty}
seit dem letzten Eintrag nicht geändert hat.
- Initialisiert wird die Eigenschaft mit \DescRef{\LabelBase.cmd.LastTOCLevelWasSame} (siehe
- \DescPageRef{\LabelBase.cmd.LastTOCLevelWasSame}), was normalerweise
- dazu führt, dass ein Umbruch vor dem Eintrag begünstigt wird.%
+ Initialisiert wird die Eigenschaft mit
+ \DescRef{\LabelBase.cmd.LastTOCLevelWasSame} (siehe
+ \DescPageRef{\LabelBase.cmd.LastTOCLevelWasSame}), was normalerweise dazu
+ führt, dass ein Umbruch vor dem Eintrag begünstigt wird.%
}%
\entry{\OptionVName{pagenumberbox}{Befehl}}{%
Normalerweise wird die zu einem Eintrag gehörende Seitenzahl rechtsbündig
in eine Box der Breite \Macro{@pnumwidth} gesetzt. Beim Stil
\PValue{tocline} kann der Befehl, der dazu verwendet wird, über diese
- Eigenschaft konfiguriert werden. Der dabei anzugebende \PName{Befehl}
- hat genau ein Argument zu erwarten.
+ Eigenschaft konfiguriert werden. Der dabei anzugebende \PName{Befehl} hat
+ genau ein Argument zu erwarten.
Initialisiert wird die Eigenschaft mit der bereits erwähnten Box.%
}%
@@ -1542,7 +1578,7 @@ Anweisung \Macro{l@\PName{Eintragsebene}}.
Über diese Eigenschaft kann die Formatierung der Seitenzahl des Eintrags
verändert werden. Der dabei als Wert angegebene \PName{Befehl} hat genau
ein Argument zu erwarten. Font-Änderungen über \Option{entryformat}
- erfolgen ausgehend von \Option{entryformat} gefolgt von
+ erfolgen ausgehend von \Option{entryformat}, gefolgt von
\Macro{normalfont}\Macro{normalsize}.
Initialisiert wird die Eigenschaft für die \PName{Eintragsebene}
@@ -1632,19 +1668,19 @@ Einlesen dieser Hilfsdatei führt \LaTeX{} dann für jedes \Macro{contentsline}
eine Anweisung \Macro{l@\PName{Eintragsebene}} aus.
Wird später einer \PName{Eintragsebene} über
-\DescRef{\LabelBase.cmd.DeclareTOCStyleEntry} der \PName{Stil} zugewiesen, so
-wird zunächst der optionale \PName{Initialisierungscode} ausgeführt und dann
-\Macro{l@\PName{Eintragsebene}} als \PName{Befehlscode}
-definiert. \PName{Befehlscode} ist also letztlich der Code, der bei
+\DescRef{\LabelBase.cmd.DeclareTOCStyleEntry} ein \PName{Stil} zugewiesen, so
+wird zunächst \PName{Initialisierungscode} ausgeführt falls angegeben und dann
+\PName{Befehlscode} für die Definition von \Macro{l@\PName{Eintragsebene}}
+verwendet. \PName{Befehlscode} ist also letztlich der Code, der bei
\Macro{l@\PName{Eintragsebene}} ausgeführt wird. Dabei ist \texttt{\#1} der
Name der Eintragsebene, während \texttt{\#\#1} und \texttt{\#\#2} Platzhalter
für die beiden Argumente von \Macro{l@\PName{Eintragsebene}} sind.
-Der \PName{Initialisierungscode} dient einerseits dazu, alle Einstellungen zu
-initialisieren. Entwickler sollten darauf achten, dass wirklich alle
-Einstellungen hier bereits einen Wert erhalten, damit
-\DescRef{\LabelBase.cmd.DeclareTOCStyleEntry} auch ohne Angabe einer
-\PName{Optionenliste} fehlerfrei funktioniert. Darüber hinaus hat der
+Der \PName{Initialisierungscode} dient einerseits dazu, die Einstellungen
+eines Stils zu initialisieren. Entwickler\textnote{Empfehlung!} sollten darauf
+achten, dass wirklich alle Einstellungen hier bereits einen Wert erhalten. Nur
+dann funktioniert \DescRef{\LabelBase.cmd.DeclareTOCStyleEntry} auch ohne
+Angabe einer \PName{Optionenliste} fehlerfrei. Darüber hinaus hat der
\PName{Initialisierungscode} auch alle Optionen, die der jeweilige Stil
versteht, zu definieren. Zwingend vordefiniert wird lediglich
\Option{level}. Der eingestellte Wert für \Option{level} kann in
@@ -1653,12 +1689,13 @@ versteht, zu definieren. Zwingend vordefiniert wird lediglich
beispielsweise mit dem Wert des Zählers
\DescRef{\LabelBase.counter.tocdepth}\IndexCounter{tocdepth} zu vergleichen.
-Zur Definition neuer Optionen zur Einstellung von Eigenschaften einer
-Eintragsebene stehen nur innerhalb von \PName{Initialisierungscode} die
-Anweisungen \Macro{DefineTOCEntryBooleanOption},
+Zur Definition neuer Optionen für die Eigenschaften einer
+Eintragsebene existieren nur innerhalb von \PName{Initialisierungscode} die
+Anweisungen \iffree{\Macro{DefineTOCEntryBooleanOption},
\Macro{DefineTOCEntryCommandOption}, \Macro{DefineTOCEntryIfOption},
-\Macro{DefineTOCEntryLengthOption} und \Macro{DefineTOCEntryNumberOption}.
-All diese Anweisungen definieren jeweils eine \PName{Option}, die bei ihrem
+\Macro{DefineTOCEntryLengthOption} und
+\Macro{DefineTOCEntryNumberOption}}{\Macro{DefineTOCEntry\dots Option}}.
+Diese Anweisungen definieren jeweils eine \PName{Option}, die bei ihrem
Aufruf eine Anweisung
\Macro{\PName{Präfix}\PName{Eintragsebene}\PName{Postfix}} mit dem übergebenen
Wert oder bei Fehlen einer Wertzuweisung mit dem \PName{Säumniswert}
@@ -1693,29 +1730,32 @@ entsprechen.
Innerhalb von Stil \PValue{tocline} wird beispielsweise
\begin{lstcode}
- \DefineTOCEntryCommandOption{linefill}[\TOCLineLeaderFill]%
- {scr@tso@}{@linefill}{filling between text and page number}%
+ \DefineTOCEntryCommandOption{linefill}%
+ [\TOCLineLeaderFill]{scr@tso@}{@linefill}%
+ {filling between text and page number}%
\end{lstcode}
-verwendet, um Option \Option{linefill} mit dem \PName{Säumniswert}
-\DescRef{\LabelBase.cmd.TOCLineLeaderFill} zu definieren. Ein Aufruf wie
+verwendet, um Option \Option{linefill} zu definieren. Durch die Angabe von
+\DescRef{\LabelBase.cmd.TOCLineLeaderFill} als \PName{Säumniswert} würde ein
+Aufruf wie
\begin{lstcode}
\RedeclareTOCStyleEntry[linefill]{tocline}{part}
\end{lstcode}
-würde daher unter anderem die Definition
+unter anderem die Definition
\begin{lstcode}
\def\scr@tso@part@linefill{\TOCLineLeaderFill}
\end{lstcode}
vornehmen.
-Wer sich selbst einen Stil definieren möchte, dem sei empfohlen, zunächst die
-Definition des Stils \PValue{dottedtocline} zu studieren. Nachdem dessen
-Definition verstanden wurde, gibt dann die deutlich komplexere Definition von
-Stil \PValue{tocline} viele Hinweise darauf, wie die Anweisungen sinnvoll zu
-verwenden sind.
+Wer\textnote{Tipp!} sich selbst einen Stil definieren möchte, dem sei
+empfohlen, zunächst die Definition des Stils \PValue{dottedtocline} zu
+studieren. Nachdem dessen Definition verstanden wurde, gibt dann die deutlich
+komplexere Definition von Stil \PValue{tocline} viele Hinweise darauf, wie die
+Anweisungen sinnvoll zu verwenden sind.
-In vielen Fällen wird es jedoch auch ausreichen, einen der vorhandenen Stile
-mit \DescRef{\LabelBase.cmd.CloneTOCEntryStyle} zu klonen und dann dessen
-Initialisierungscode mit \DescRef{\LabelBase.cmd.TOCEntryStyleInitCode} oder
+In\textnote{Tipp!} vielen Fällen wird es jedoch auch ausreichen, einen der
+vorhandenen Stile mit \DescRef{\LabelBase.cmd.CloneTOCEntryStyle} zu klonen
+und dann dessen Initialisierungscode mit Anweisung
+\DescRef{\LabelBase.cmd.TOCEntryStyleInitCode} oder
\DescRef{\LabelBase.cmd.TOCEntryStyleStartInitCode} abzuändern.
\Macro{DefineTOCEntryOption} dient eher der Definition der übrigen
@@ -1735,9 +1775,12 @@ mit denselben Eigenschaften und Voreinstellungen wie der existierende
\Macro{CloneTOCEntryStyle}, um den Stil \PValue{default} als Klon von
\PValue{dottedtocline} zu deklarieren. Die \KOMAScript-Klassen verwenden die
Anweisung um die Stile \PValue{part}, \PValue{section} und \PValue{chapter}
-oder \PValue{subsection} als Klon von \PValue{tocline} zu deklarieren und den
-Stil \PValue{default} neu als Klon von \PValue{section} beziehungsweise
-\PValue{subsection} zu deklarieren.%
+oder \PValue{subsection} als Klon von \PValue{tocline} zu deklarieren und dann
+mit \DescRef{\LabelBase.cmd.TOCEntryStyleInitCode} und
+\DescRef{\LabelBase.cmd.TOCEntryStyleStartInitCode} abzuändern. Der Stil
+\PValue{default} wird von \Class{scrbook} und \Class{scrreprt} neu als Klon
+von \PValue{section} und von \Class{scrartcl} als Klon von \PValue{subsection}
+deklariert.%
\EndIndexGroup
@@ -1751,14 +1794,15 @@ Jeder\ChangedAt[2016/03]{v3.20}{\Package{tocbasic}} Verzeichniseintragsstil
verfügt über einen Initialisierungscode. Dieser wird immer dann aufgerufen,
wenn einer Verzeichnisebene der entsprechende \PName{Stil} mit
\DescRef{\LabelBase.cmd.DeclareTOCEntryStyle}\IndexCmd{DeclareTOCEntryStyle}
-zugewiesen wird. Dieser \PName{Initialisierungscode} sollte keine globalen
-Seiteneffekte aufweisen, da er auch für lokale Initialisierungen innerhalb
-anderer Anweisungen wie \DescRef{\LabelBase.cmd.DeclareNewTOC}\IndexCmd{DeclareNewTOC}
-verwendet wird. Der \PName{Initialisierungscode} dient einerseits dazu,
-Eigenschaften für den jeweiligen \PName{Stil} zu definieren. Er setzt aber
-auch die Standardeinstellungen für diese Eigenschaften.
-
-Mit Hilfe von \Macro{TOCEntryStyleStartInitCode} und
+zugewiesen wird. Dieser\textnote{Achtung!} \PName{Initialisierungscode} sollte
+keine globalen Seiteneffekte aufweisen, da er auch für lokale
+Initialisierungen innerhalb anderer Anweisungen wie
+\DescRef{\LabelBase.cmd.DeclareNewTOC}\IndexCmd{DeclareNewTOC} verwendet
+wird. Der \PName{Initialisierungscode} dient einerseits dazu, Eigenschaften
+für den jeweiligen \PName{Stil} zu definieren. Er setzt aber auch die
+Standardeinstellungen für diese Eigenschaften.
+
+Mit Hilfe der Anweisungen \Macro{TOCEntryStyleStartInitCode} und
\Macro{TOCEntryStyleInitCode} kann der für einen \PName{Stil} bereits
definierte Initialisierungscode um weiteren \PName{Initialisierungscode}
erweitert werden. Dabei fügt \Macro{TOCEntryStyleStartInitCode} den neuen
@@ -1787,8 +1831,9 @@ definieren.%
\Macro{LastTOCLevelWasLower}
\end{Declaration}
Bei\ChangedAt[2016/03]{v3.20}{\Package{tocbasic}} Einträgen im Stil
-\PValue{tocline} wird am Anfang abhängig von \Macro{lastpenalty} eine dieser
-drei Anweisungen ausgeführt. Dabei fügen \Macro{LastTOCLevelWasHigher} und
+\PValue{tocline} wird am Anfang abhängig vom Wert von
+\Macro{lastpenalty}\IndexCmd{lastpenalty} eine dieser drei Anweisungen
+ausgeführt. Dabei fügen \Macro{LastTOCLevelWasHigher} und
\Macro{LastTOCLevelWasSame} im vertikalen Modus
\Macro{addpenalty}\PParameter{\Macro{@lowpenalty}} ein und ermöglichen so
einen Umbruch vor Einträgen gleicher oder übergeordneter
@@ -1797,8 +1842,8 @@ dass zwischen einem Eintrag und seinem ersten Untereintrag normalerweise ein
Umbruch untersagt ist.
Anwender sollten diese Anweisungen nicht umdefinieren. Stattdessen können und
-sollten Änderungen für die jeweiligen Eintragsebenen gezielt über die
-Eigenschaften \PValue{onstartlowerlevel}, \PValue{onstartsamelevel} und
+sollten Änderungen bei Zuweisung des Stils an eine Eintragsebene gezielt über
+die Eigenschaften \PValue{onstartlowerlevel}, \PValue{onstartsamelevel} und
\PValue{onstarthigherlevel} vorgenommen werden.%
\EndIndexGroup
@@ -1811,11 +1856,12 @@ als Wert für die Eigenschaft \Option{linefill} des Verzeichniseintragsstils
\PName{tocline} verwendet zu werden. Sie erzeugt dann eine Verbindung zwischen
dem Ende des Textes eines Eintrags und der zugehörigen Seitenzahl. Das
\PName{Füllzeichen}, das dazu in regelmäßigem Abstand wiederholt wird, kann
-als optionales Argument angegeben werden. Voreinstellung ist ein Punkt.
+als optionales Argument angegeben werden. Voreinstellung ist ein
+Punkt.\textnote{Voreinstellung}
Wie der Name schon vermuten lässt, werden die Füllzeichen mit Hilfe von
-\Macro{leaders} gesetzt. Als Abstand wird wie bei \Macro{@dottedtocline} aus
-dem \LaTeX-Kern vor und nach dem Füllzeichen
+\Macro{leaders} gesetzt. Als Abstand wird wie bei der \LaTeX-Kern-Anweisung
+\Macro{@dottedtocline} vor und nach dem Füllzeichen
\Macro{mkern}\Macro{@dotsep}\Unit{\texttt{mu}} verwendet.%
\EndIndexGroup
%
@@ -1830,7 +1876,7 @@ Benutzung durch Klassen- und Paketautoren freigegeben ist. Diese Anweisungen
beginnen alle mit \Macro{tocbasic@}. Aber\textnote{Achtung!} auch Klassen- und
Paketautoren sollten diese Anweisungen nur verwenden und nicht etwa
umdefinieren! Ihre interne Funktion kann jederzeit geändert oder erweitert
-werden, so dass Umdefinierung der Anweisungen die Funktion von
+werden, so dass jede Umdefinierung der Anweisungen die Funktion von
\Package{tocbasic} erheblich beschädigen könnte!
@@ -1856,39 +1902,43 @@ die Eigenschaft \PValue{nobabel}\important{\PValue{nobabel}} (siehe
\DescRef{\LabelBase.cmd.setuptoc}, \autoref{sec:tocbasic.toc},
\DescPageRef{\LabelBase.cmd.setuptoc}) kann dies unterdrückt werden. Für die
Dateinamenerweiterungen \File{toc}, \File{lof} und \File{lot} unterdrückt
-\Package{tocbasic} dies bereits selbst, damit die Umschaltung nicht mehrfach
-in die zugehörigen Dateien eingetragen wird.
+\Package{tocbasic} dies bereits selbst, %
+\iftrue% Umbruchvarianten
+da \Package{babel} sie von sich aus vornimmt.%
+\else%
+damit die Umschaltung nicht mehrfach in die zugehörigen Dateien
+eingetragen wird.%
+\fi
Normalerweise gibt es keinen Grund, diese Anweisung selbst aufzurufen. Es sind
allerdings Verzeichnisse denkbar, die nicht unter der Kontrolle von
\Package{tocbasic} stehen, also nicht in der Liste der bekannten
Dateierweiterungen geführt werden, aber trotzdem die Spracherweiterung für
-\Package{babel} nutzen sollen. Für diese ist die Anweisung explizit
-aufzurufen. Bitte achten Sie jedoch darauf, dass dies für jede Dateierweiterung
-nur einmal geschieht!
-%
+\Package{babel} nutzen sollen. Für derartige Verzeichnisse wäre die Anweisung
+explizit aufzurufen. Bitte\textnote{Achtung!} achten Sie jedoch darauf, dass
+dies für jede Dateierweiterung nur einmal geschieht!%
\EndIndexGroup
\begin{Declaration}
\Macro{tocbasic@starttoc}\Parameter{Dateierweiterung}
\end{Declaration}
-Diese Anweisung ist der eigentlich Ersatz der Anweisung
+Diese Anweisung ist der eigentliche Ersatz der Anweisung
\Macro{@starttoc}\IndexCmd{@starttoc}\important{\Macro{@starttoc}} aus dem
-\LaTeX-Kern. Es ist die Anweisung, die sich hinter \DescRef{\LabelBase.cmd.listoftoc*} (siehe
-\autoref{sec:tocbasic.toc}, \DescPageRef{\LabelBase.cmd.listoftoc*})
-verbirgt. Klassen- oder Paketautoren, die Vorteile von \Package{tocbasic}
-nutzen wollen, sollten zumindest diese Anweisung, besser jedoch
-\DescRef{\LabelBase.cmd.listoftoc} verwenden. Die Anweisung baut selbst auf \Macro{@starttoc}
-auf, setzt allerdings zuvor
-\Length{parskip}\IndexLength{parskip}\important[i]{\Length{parskip}\\
- \Length{parindent}\\
- \Length{parfillskip}} und \Length{parindent}\IndexLength{parindent} auf 0
-und \Length{parfillskip}\IndexLength{parfillskip} auf 0 bis
-unendlich. Außerdem wird
-\Macro{@currext}\important{\Macro{@currext}}\IndexCmd{@currext} auf die
+\LaTeX-Kern. Es ist die Anweisung, die sich hinter
+\DescRef{\LabelBase.cmd.listoftoc*} (siehe \autoref{sec:tocbasic.toc},
+\DescPageRef{\LabelBase.cmd.listoftoc*}) verbirgt. Klassen- oder Paketautoren,
+die Vorteile von \Package{tocbasic} nutzen wollen, sollten zumindest diese
+Anweisung, besser jedoch \DescRef{\LabelBase.cmd.listoftoc} verwenden. Die
+Anweisung baut selbst auf \Macro{@starttoc} auf, setzt allerdings zuvor
+\Length{parskip}\IndexLength{parskip}\important[i]{\Length{parskip},
+ \Length{parindent}, \Length{parfillskip}} und
+\Length{parindent}\IndexLength{parindent} auf 0 und
+\Length{parfillskip}\IndexLength{parfillskip} auf 0 bis unendlich. Außerdem
+wird \Macro{@currext}\important{\Macro{@currext}}\IndexCmd{@currext} auf die
aktuelle Dateierweiterung gesetzt, damit diese in den nachfolgend ausgeführten
-Haken ausgewertet werden kann.
+Haken\Index{Haken} ausgewertet werden kann. Die Erklärungen der Haken finden
+Sie im Anschluss.
Da\textnote{Achtung!} \LaTeX{} bei der Ausgabe eines Verzeichnisses auch
gleich eine neue Verzeichnisdatei zum Schreiben öffnet, kann der Aufruf dieser
@@ -1901,8 +1951,7 @@ Anweisung zu einer Fehlermeldung der Art
führen, wenn keine Schreibdateien mehr zur Verfügung stehen. Abhilfe kann in
diesem Fall das Laden des in \autoref{cha:scrwfile} beschriebenen Pakets
\Package{scrwfile}\important{\Package{scrwfile}}\IndexPackage{scrwfile}
-bieten.
-%
+oder die Verwendung von Lua\LaTeX{} bieten.%
\EndIndexGroup
@@ -1910,16 +1959,17 @@ bieten.
\Macro{tocbasic@@before@hook}
\Macro{tocbasic@@after@hook}
\end{Declaration}
-Der Haken \Macro{tocbasic@@before@hook} wird unmittelbar vor dem Einlesen der
-Verzeichnisdatei, noch vor den mit \DescRef{\LabelBase.cmd.BeforeStartingTOC}
-definierten Anweisungen ausgeführt. Es ist erlaubt, diesen Haken mit Hilfe von
+Der Haken\Index{Haken} \Macro{tocbasic@@before@hook} wird unmittelbar vor dem
+Einlesen der Verzeichnisdatei, noch vor den mit
+\DescRef{\LabelBase.cmd.BeforeStartingTOC} definierten Anweisungen
+ausgeführt. Es ist erlaubt, diesen Haken mit Hilfe von
\Macro{g@addto@macro}\IndexCmd{g@addto@macro} zu erweitern.
Ebenso wird \Macro{tocbasic@@after@hook} unmittelbar nach der
Verzeichnisdatei, aber noch vor den mit
\DescRef{\LabelBase.cmd.AfterStartingTOC} definierten Anweisungen
-ausgeführt. Es ist erlaubt, diesen Haken mit Hilfe von \Macro{g@addto@macro}
-zu erweitern.
+ausgeführt. Es ist erlaubt, diesen Haken mit Hilfe von
+\Macro{g@addto@macro}\IndexCmd{g@addto@macro} zu erweitern.
\KOMAScript{} nutzt diese Haken, um Verzeichnisse mit dynamischer Anpassung an
die Breite der Gliederungsnummern zu ermöglichen. Ihre Verwendung ist Klassen
@@ -1932,9 +1982,8 @@ innerhalb der beiden Haken sind nicht gestattet!
Wird keine\textnote{Achtung!} der Anweisungen
\DescRef{\LabelBase.cmd.listofeachtoc}, \DescRef{\LabelBase.cmd.listoftoc} und
\DescRef{\LabelBase.cmd.listoftoc*} für die Ausgabe der Verzeichnisse
-verwendet, sollten die beiden Anweisungen für die Haken trotzdem aufgerufen
-werden.
-%
+verwendet, sollten die Anweisungen für die Haken\Index{Haken} trotzdem
+aufgerufen werden.%
\EndIndexGroup
@@ -1942,19 +1991,20 @@ werden.
\Macro{tb@\PName{Dateierweiterung}@before@hook}
\Macro{tb@\PName{Dateierweiterung}@after@hook}
\end{Declaration}
-Diese Anweisungen werden direkt nach \DescRef{\LabelBase.cmd.tocbasic@@before@hook} bzw. vor
-\DescRef{\LabelBase.cmd.tocbasic@@after@hook} für das jeweilige Verzeichnis mit der
-entsprechenden \PName{Dateierweiterung} ausgeführt. Sie\textnote{Achtung!}
-dürfen keinesfalls von Klassen- und Paketautoren verändert werden. Werden für
-die Ausgabe der Verzeichnisse die Anweisungen
-\DescRef{\LabelBase.cmd.listoftoc}, \DescRef{\LabelBase.cmd.listoftoc*} und
-\DescRef{\LabelBase.cmd.listofeachtoc} nicht verwendet, sollten die beiden
-Anweisungen für die Haken trotzdem aufgerufen werden, soweit sie definiert
-sind. Die Anweisungen können auch undefiniert sein. Für einen entsprechenden
-Test siehe
+Diese Anweisungen werden direkt nach
+\DescRef{\LabelBase.cmd.tocbasic@@before@hook} bzw. vor
+\DescRef{\LabelBase.cmd.tocbasic@@after@hook} für das jeweilige Verzeichnis
+mit der entsprechenden \PName{Dateierweiterung}
+ausgeführt. Sie\textnote{Achtung!} dürfen keinesfalls von Klassen- und
+Paketautoren verändert werden. Werden für die Ausgabe der Verzeichnisse die
+Anweisungen \DescRef{\LabelBase.cmd.listoftoc},
+\DescRef{\LabelBase.cmd.listoftoc*} und \DescRef{\LabelBase.cmd.listofeachtoc}
+nicht verwendet, sollten die beiden Anweisungen für die Haken\Index{Haken}
+trotzdem aufgerufen werden, soweit sie definiert sind. Die Anweisungen können
+auch undefiniert sein. Für einen entsprechenden Test siehe
\DescRef{scrbase.cmd.scr@ifundefinedorrelax}\IndexCmd{scr@ifundefinedorrelax}
-in \autoref{sec:scrbase.if}, \DescPageRef{scrbase.cmd.scr@ifundefinedorrelax}.
-%
+in \autoref{sec:scrbase.if},
+\DescPageRef{scrbase.cmd.scr@ifundefinedorrelax}.%
\EndIndexGroup
@@ -1969,8 +2019,7 @@ Anweisung sein. Wenn Sie Ihre eigene Anweisung für die Überschrift definieren,
können Sie ebenfalls \Macro{tocbasic@listhead} verwenden. In diesem Fall
sollte vor dem Aufruf von \Macro{tocbasic@listhead} die Anweisung
\Macro{@currext}\important{\Macro{@currext}}\IndexCmd{@currext} auf die
-Dateinamenerweiterung, die zu diesem Verzeichnis gehört, gesetzt werden.
-%
+Dateinamenerweiterung, die zu diesem Verzeichnis gehört, gesetzt werden.%
\EndIndexGroup
@@ -1978,9 +2027,9 @@ Dateinamenerweiterung, die zu diesem Verzeichnis gehört, gesetzt werden.
\Macro{tocbasic@listhead@\PName{Dateierweiterung}}\Parameter{Titel}
\end{Declaration}
Ist diese individuelle Anweisung für das Setzen einer Verzeichnisüberschrift
-definiert, so verwendet \DescRef{\LabelBase.cmd.tocbasic@listhead} diese. Anderenfalls
-definiert \DescRef{\LabelBase.cmd.tocbasic@listhead} diese und ruft sie dann auf.
-%
+definiert, so verwendet \DescRef{\LabelBase.cmd.tocbasic@listhead}
+sie. Anderenfalls definiert \DescRef{\LabelBase.cmd.tocbasic@listhead} diese
+vor der Verwendung.%
\EndIndexGroup
@@ -1994,19 +2043,22 @@ definiert \DescRef{\LabelBase.cmd.tocbasic@listhead} diese und ruft sie dann auf
Anweisung\ChangedAt{v3.12}{\Package{tocbasic}}
\Macro{tocbasic@addxcontentsline} nimmt einen \PName{Eintrag} der angegebenen
\PName{Ebene} in das über die \PName{Dateierweiterung} spezifizierte
-Verzeichnis vor. Ob der Eintrag nummeriert wird oder nicht, hängt davon ab, ob
-das Argument \PName{Gliederungsnummer} leer ist oder nicht. Im Falle eines
-leeren Argument wird dem \PName{Eintrag} ein \Macro{nonumberline} ohne
-Argument vorangestellt. Anderenfalls wird wie gewohnt
-\DescRef{\LabelBase.cmd.numberline} mit \PName{Gliederungsnummer} als Argument
-verwendet.
+Verzeichnis vor. Ob der Eintrag nummeriert wird\iffree{ oder
+ nicht}{}% Umbruchvarianten
+, hängt davon ab, ob das Argument \PName{Gliederungsnummer} leer ist oder
+nicht. Im Falle eines leeren Argument wird dem \PName{Eintrag} ein
+\Macro{nonumberline} ohne Argument vorangestellt. Anderenfalls wird wie
+gewohnt \DescRef{\LabelBase.cmd.numberline} mit \PName{Gliederungsnummer} als
+Argument verwendet.
Die Anweisung \Macro{nonumberline} wird innerhalb
\DescRef{\LabelBase.cmd.listoftoc} (siehe \autoref{sec:tocbasic.toc},
\DescPageRef{\LabelBase.cmd.listoftoc}) entsprechend der Eigenschaft
\PValue{numberline} (siehe \autoref{sec:tocbasic.toc},
\DescPageRef{\LabelBase.cmd.setuptoc}) umdefiniert. Dadurch wirkt sich das
-Setzen oder Löschen dieser Eigenschaft bereits beim nächsten \LaTeX-Lauf aus.%
+Setzen oder Löschen dieser Eigenschaft \iffree{bereits beim nächsten
+ \LaTeX-Lauf}{unmittelbar} % Umbruchvarianten
+aus.%
%
\EndIndexGroup
@@ -2017,21 +2069,30 @@ Setzen oder Löschen dieser Eigenschaft bereits beim nächsten \LaTeX-Lauf aus.%
\end{Declaration}
Der\ChangedAt[2016/03]{v3.20}{\Package{tocbasic}} Verzeichniseintragsstil
\PValue{tocline} (siehe \autoref{sec:tocbasic.tocstyle}) setzt am Ende jedes
-Eintrags \Macro{penalty} so, dass nach einem Eintrag kein Seitenumbruch
-erfolgen darf. Dabei wird der genaue Wert abhängig von der
-\PName{Eintragsebene} gewählt. Dies erledigt
-\Macro{tocbasic@SetPenaltyByTOCLevel}. Am Anfang eines Eintrags wird dann über
-\Macro{tocbasic@DependOnPenaltyAndTOCLevel} abhängig von \Macro{lastpenalty}
-und der aktuellen \PName{Eintragsebene} die über die Eigenschaften
-\Option{onstartlowerlevel}, \Option{onstartsamelevel} oder
-\Option{onstarthigherlevel} festgelegte Aktion eines der internen Makros
-\Macro{scr@tso@\PName{Eintragsebene}@LastTOCLevelWasHigher},
-\Macro{scr@tso@\PName{Eintragsebene}@LastTOCLevelWasSame} oder
-\Macro{scr@tso@\PName{Eintragsebene}@LastTOCLevelWasLower} ausgeführt. In der
-Voreinstellung erlauben die ersten beiden einen Umbruch, wenn sie im
-vertikalen Modus ausgeführt werden.
-
-Entwickler, die eigene Stile kompatibel mit Stil \PValue{tocline} erstellen
+Eintrags über \Macro{tocbasic@SetPenaltyByTOCLevel} \Macro{penalty} so, dass
+nach einem Eintrag kein Seitenumbruch erfolgen darf. Der genaue Wert wird
+dabei abhängig von der \PName{Eintragsebene} gewählt.
+
+% \begin{sloppypar}
+\begingroup
+\emergencystretch=2em
+Über \Macro{tocbasic@DependOnPenaltyAndTOCLevel} wird am Anfang eines
+Eintrags, abhängig von \Macro{lastpenalty} und der \PName{Eintragsebene} die
+über die Eigenschaft \Option{onstartlowerlevel} im internen Makro
+\Macro{scr@tso@\PName{Eintragsebene}@LastTOCLevelWasHigher}, über die
+\iffree{Eigenschaft}{Ei\-genschaft}
+\Option{onstartsamelevel} im zugehörigen, internen
+Makro\iffree{
+}{\linebreak}\Macro{scr@tso@\PName{Eintragsebene}@LastTOCLevelWasSame} oder
+über die Eigenschaft \Option{onstarthigherlevel} im zugehörigen, internen
+Makro \Macro{scr@tso@\PName{Eintragsebene}@LastTOCLevelWasLower} gespeicherte
+Aktion ausgeführt. In der Voreinstellung\textnote{Voreinstellung} erlauben die
+ersten beiden einen Umbruch, wenn sie im vertikalen Modus ausgeführt
+werden.\par
+\endgroup
+%\end{sloppypar}
+
+Entwicklern, die eigene Stile kompatibel mit \PValue{tocline} erstellen
wollen, sei empfohlen, dieses Verhalten zu kopieren. Zu diesem Zweck dürfen
sie auf diese eigentlich internen Makros zurückgreifen.%
\EndIndexGroup
@@ -2052,30 +2113,27 @@ verwendet werden müssen.
Als\textnote{Umgebung} erstes wird eine Umgebung benötigt, die diese neue
Gleitumgebung bereitstellt. Das geht ganz einfach mit:
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
- \newenvironment{remarkbox}{%
- \@float{remarkbox}%
- }{%
- \end@float
- }
+ \newenvironment{remarkbox}%
+ {\@float{remarkbox}}%
+ {\end@float}
\end{lstcode}
Die neue Umgebung heißt also \Environment{remarkbox}.
Jede\textnote{Platzierung} Gleitumgebung hat eine Standardplatzierung. Diese
-setzt sich aus den bekannten Platzierungsoptionen zusammen:
-% Umbruchkorrektur: listings korrigiert!
+setzt sich aus einer oder mehreren der bekannten Platzierungsoptionen
+\PValue{b}, \PValue{h}, \PValue{p} und \PValue{t} zusammen:
\begin{lstcode}
\newcommand*{\fps@remarkbox}{tbp}
\end{lstcode}
Die neue Gleitumgebung soll also in der Voreinstellung nur oben, unten oder
auf einer eigenen Seite platziert werden dürfen.
-Gleitumgebungen\textnote{Gleittyp} haben außerdem einen nummerischen
-Gleittyp. Umgebungen, bei denen das gleiche Bit im Gleittyp gesetzt ist,
-dürfen sich nicht gegenseitig überholen. Abbildungen und Tabellen haben
-normalerweise den Typ~1 und 2. Sie dürfen sich also gegenseitig überholen.
-% Umbruchkorrektur: listings korrigiert!
+Gleitumgebungen\textnote{Gleittyp} haben außerdem einen nummerischen Gleittyp
+zwischen 1 und 31. Umgebungen, bei denen das gleiche Bit
+im Gleittyp gesetzt ist, dürfen sich nicht gegenseitig überholen. Abbildungen
+und Tabellen haben normalerweise den Typ~1 und 2. Abbildungen dürfen also
+Tabellen überholen und umgekehrt.
\begin{lstcode}
\newcommand*{\ftype@remarkbox}{4}
\end{lstcode}
@@ -2083,11 +2141,11 @@ Die neue Umgebung hat den Typ~4, darf also Tabellen und Abbildungen überholen
und von diesen überholt werden.
Gleitumgebungen\textnote{Nummer} haben außerdem eine Nummer.
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
\newcounter{remarkbox}
\newcommand*{\remarkboxformat}{%
- Merksatz~\theremarkbox\csname autodot\endcsname}
+ Merksatz~\theremarkbox\csname autodot\endcsname
+ }
\newcommand*{\fnum@remarkbox}{\remarkboxformat}
\end{lstcode}
Hier wird zunächst ein neuer Zähler definiert, der unabhängig von Kapiteln
@@ -2099,7 +2157,6 @@ Ausgabe wird wiederum als Gleitumgebungsnummer für die Verwendung in
Gleitumgebungen\textnote{Dateierweiterung} haben Verzeichnisse und diese haben
eine Datei mit dem Namen \Macro{jobname} und einer Dateierweiterung.
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
\newcommand*{\ext@remarkbox}{lor}
\end{lstcode}
@@ -2109,12 +2166,10 @@ Die\important{\Package{tocbasic}} Umgebung selbst steht damit. Es fehlt
allerdings das Verzeichnis. Damit wir dabei möglichst wenig selbst machen
müssen, verwenden wir das Paket \Package{tocbasic}. Dieses wird in Dokumenten
mit
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
\usepackage{tocbasic}
\end{lstcode}
geladen. Ein Klassen- oder Paketautor würde hingegen
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
\RequirePackage{tocbasic}
\end{lstcode}
@@ -2122,7 +2177,6 @@ verwenden.
Nun\textnote{Dateierweiterung} machen wir die neue Dateierweiterung dem Paket
\Package{tocbasic} bekannt.
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
\addtotoclist[float]{lor}
\end{lstcode}
@@ -2132,7 +2186,6 @@ von Gleitumgebungen beziehen, auch auf das neue Verzeichnis beziehen.
Jetzt\textnote{Verzeichnistitel} definieren wir noch einen Titel für dieses
Verzeichnis:
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
\newcommand*{\listoflorname}{Verzeichnis der Merksätze}
\end{lstcode}
@@ -2144,22 +2197,20 @@ will. Siehe dazu \autoref{sec:scrbase.languageSupport}, ab
Jetzt\textnote{Verzeichniseintrag}\index{Verzeichnis>Eintrag} müssen wir nur
noch definieren, wie ein einzelner Eintrag in dem Verzeichnis aussehen soll:
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
\newcommand*{\l@remarkbox}{\l@figure}
\end{lstcode}
Weil das die einfachste Lösung ist, wurde hier festgelegt, dass Einträge in
das Verzeichnis der Merksätze genau wie Einträge in das Abbildungsverzeichnis
aussehen sollen. Man hätte auch eine explizite Festlegung wie
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
- \newcommand*{\l@remarkbox}{\@dottedtocline{1}{1em}{1.5em}}
+ \DeclareTOCStyleEntry[level=1,indent=1em,numwidth=1.5em]%
+ {tocline}{remarkbox}
\end{lstcode}
verwenden können.
-Außerdem\textnote{Kapiteleintrag} wollen Sie, das Kapiteleinträge sich auf das
+Außerdem\textnote{Kapiteleintrag} wollen Sie, dass sich Kapiteleinträge auf das
Verzeichnis auswirken.
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
\setuptoc{lor}{chapteratlist}
\end{lstcode}
@@ -2174,7 +2225,6 @@ Inhaltsverzeichniseintrag, mit Inhaltsverzeichniseintrag, mit Nummerierung)
wählen und das Verzeichnis mit
\DescRef{\LabelBase.cmd.listoftoc}\PParameter{lor} ausgeben. Mit einem
schlichten
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
\newcommand*{\listofremarkboxes}{\listoftoc{lor}}
\end{lstcode}
@@ -2200,12 +2250,16 @@ dass der Anwender automatisch von etwaigen zukünftigen Erweiterungen von
\Package{tocbasic} profitiert. Soll der Anwender aber nicht mit der Tatsache
belastet werden, dass für die Merksätze die Dateierweiterung \File{lor}
verwendet wird, so genügt
-% Umbruchkorrektur: listings korrigiert!
\begin{lstcode}
\newcommand*{\setupremarkboxes}{\setuptoc{lor}}
\end{lstcode}
+\iffalse%
um eine als Argument an \Macro{setupremarkboxes} übergebene Liste von
-Eigenschaften direkt als Liste von Eigenschaften für \File{lor} zu setzen.
+Eigenschaften direkt als Liste von %
+\else%
+um über \Macro{setupremarkboxes}
+\fi
+Eigenschaften für \File{lor} zu setzen.
\section{Alles mit einer Anweisung}
@@ -2213,7 +2267,7 @@ Eigenschaften direkt als Liste von Eigenschaften für \File{lor} zu setzen.
Das Beispiel aus dem vorherigen Abschnitt hat gezeigt, dass es mit mit
\Package{tocbasic} recht einfach ist, eigene Gleitumgebungen mit eigenen
-Verzeichnissen zu definieren. In diesem Beispiel wird gezeigt, dass es sogar
+Verzeichnissen zu definieren. In diesem Abschnitt wird gezeigt, dass es sogar
noch einfacher gehen kann.
\begin{Declaration}
@@ -2236,8 +2290,9 @@ können dann verwendet werden.
\PName{Dateierweiterung} definiert dabei die Dateiendung der Hilfsdatei, die
das Verzeichnis repräsentiert, wie dies in \autoref{sec:tocbasic.basics}, ab
-\autopageref{sec:tocbasic.basics} bereits erläutert wurde. Dieser Parameter
-muss angegeben werden und darf nicht leer sein!
+\autopageref{sec:tocbasic.basics} bereits erläutert
+wurde. Dieser\textnote{Achtung!} Parameter muss angegeben werden und darf
+nicht leer sein!
\PName{Optionenliste} ist eine durch Komma getrennte Liste, wie dies auch von
\DescRef{maincls.cmd.KOMAoptions} (siehe \autoref{sec:typearea.options},
@@ -2245,145 +2300,30 @@ muss angegeben werden und darf nicht leer sein!
Optionen\textnote{Achtung!} können jedoch \emph{nicht} mit
\DescRef{maincls.cmd.KOMAoptions}\IndexCmd{KOMAoptions} gesetzt werden! Eine
Übersicht über die möglichen Optionen bietet
-\autoref{tab:tocbasic.DeclareNewTOC-options} ab
-\autopageref{tab:tocbasic.DeclareNewTOC-options}.
+\autoref{tab:tocbasic.DeclareNewTOC-options}\iffalse ab
+\autopageref{tab:tocbasic.DeclareNewTOC-options}\fi.
Wird\ChangedAt[2015/12]{v3.20}{\Package{tocbasic}} Option
\Option{tocentrystyle} nicht gesetzt, so wird bei Bedarf der Stil
\PValue{default} verwendet. Näheres zu diesem Stil ist
\autoref{sec:tocbasic.tocstyle} zu entnehmen. Soll kein Befehl für
Verzeichniseinträge definiert werden, so kann ein leeres Argument, also
-wahlweise \OptionValue{tocentrystyle}{} oder
-\OptionValue{tocentrystyle}{\PParameter{}} verwendet werden. Dies birgt
-allerdings das Risiko, dass bei Ausgabe des entsprechenden Verzeichnisses
-diverse Fehler gemeldet werden.
+wahlweise \OptionValue{tocentrystyle}{}\iffree{}{\unskip} oder
+\OptionValue{tocentrystyle}{\PParameter{}} verwendet werden.
Abhängig\ChangedAt[2016/06]{v3.21}{\Package{tocbasic}} vom Stil der
Verzeichniseinträge können auch alle für diesen Stil gültigen Eigenschaften
gesetzt werden, indem die entsprechenden in
\autoref{tab:tocbasic.tocstyle.attributes} ab
-\autopageref{tab:tocbasic.tocstyle.attributes} aufgeführten Namen mit dem
-Präfix \PValue{tocentry} versehen in der \PName{Optionenliste} angegeben
+\autopageref{tab:tocbasic.tocstyle.attributes} aufgeführten Namen, mit dem
+Präfix \PValue{tocentry} versehen, in der \PName{Optionenliste} angegeben
werden. Nachträgliche Änderungen am Stil sind mit
\DescRef{\LabelBase.cmd.DeclareTOCStyleEntry}%
\IndexCmd{DeclareTOCStyleEntry}%
\important{\DescRef{\LabelBase.cmd.DeclareTOCStyleEntry}} jederzeit
möglich. Siehe dazu \autoref{sec:tocbasic.tocstyle},
\DescPageRef{\LabelBase.cmd.DeclareTOCStyleEntry}.
-%
-\begin{Example}
- Das Beispiel aus \autoref{sec:tocbasic.example} kann mit Hilfe der neuen
- Anweisung deutlich verkürzt werden:
-\begin{lstcode}
- \DeclareNewTOC[%
- type=remarkbox,%
- types=remarkboxes,%
- float,% Gleitumgebungen sollen definiert werden.
- floattype=4,%
- name=Merksatz,%
- listname={Verzeichnis der Merks\"atze}%
- ]{lor}
- \setuptoc{lor}{chapteratlist}
-\end{lstcode}
- Neben den Umgebungen \Environment{remarkbox} und \Environment{remarkbox*}
- sind damit auch der Zähler \Counter{remarkbox}, die zur Ausgabe gehörenden
- Anweisungen \Macro{theremarkbox}, \Macro{remarkboxname} und
- \Macro{remarkboxformat}, die für das Verzeichnis benötigten
- \Macro{listremarkboxname} und \Macro{listofremarkboxes} sowie einige intern
- verwendete Anweisungen mit Bezug auf die Dateiendung \File{lor}
- definiert. Soll der Gleitumgebungstyp dem Paket überlassen werden, so kann
- Option \Option{floattype} im Beispiel entfallen. Wird zusätzlich
- die Option \Option{nonfloat} angegeben, wird außerdem eine nicht gleitende
- Umgebung \Environment{remarkbox-} definiert, in der ebenfalls
- \DescRef{maincls.cmd.caption}\IndexCmd{caption} verwendet werden kann.
- Zum besseren Verständnis zeigt \autoref{tab:tocbasic.comparison} eine
- Gegenüberstellung der Anweisungen und Umgebungen für die neu erstellte
- Beispielumgebung \Environment{remarkbox} mit den entsprechenden Befehlen und
- Umgebungen für Abbildungen.%
- \begin{table}
- \centering
- \caption{Gegenüberstellung von Beispielumgebung \Environment{remarkbox}
- und Umgebung \Environment{figure}}
- \label{tab:tocbasic.comparison}
- \begin{tabularx}{\textwidth}{l@{\hskip\tabcolsep}l@{\hskip\tabcolsep}>{\raggedright}p{7em}@{\hskip\tabcolsep}X}
- \toprule
- \begin{tabular}[t]{@{}l@{}}
- Umgebung\\
- \Environment{remarkbox}
- \end{tabular}
- & \begin{tabular}[t]{@{}l@{}}
- Umgebung\\
- \Environment{figure}
- \end{tabular}
- & Optionen von \Macro{DeclareNewTOC} & Kurzbeschreibung \\[1ex]
- \midrule
- \Environment{remarkbox} & \Environment{figure}
- & \Option{type}, \Option{float}
- & Gleitumgebung des jeweiligen Typs.\\[1ex]
- \Environment{remarkbox*} & \Environment{figure*}
- & \Option{type}, \Option{float}
- & spaltenübergreifende Gleitumgebung des jeweiligen Typs \\[1ex]
- \Counter{remarkbox} & \Counter{figure}
- & \Option{type}, \Option{float}
- & Zähler, der von \DescRef{maincls.cmd.caption} verwendet wird \\[1ex]
- \Macro{theremarkbox} & \Macro{thefigure}
- & \Option{type}, \Option{float}
- & Anweisung zur Ausgabe des jeweiligen Zählers \\[1ex]
- \Macro{remarkboxformat} & \DescRef{maincls.cmd.figureformat}
- & \Option{type}, \Option{float}
- & Anweisung zur Formatierung des jeweiligen Zählers in der Ausgabe von
- \DescRef{maincls.cmd.caption}\\[1ex]
- \Macro{remarkboxname} & \Macro{figurename}
- & \Option{type}, \Option{float}, \Option{name}
- & Name, der im Label von \DescRef{maincls.cmd.caption} verwendet
- wird\\[1ex]
- \Macro{listofremarkboxes} & \DescRef{maincls.cmd.listoffigures}
- & \Option{types}, \Option{float}
- & Anweisung zur Ausgabe des jeweiligen Verzeichnisses \\[1ex]
- \Macro{listremarkboxname} & \Macro{listfigurename}
- & \Option{type}, \Option{float}, \Option{listname}
- & Überschrift des jeweiligen Verzeichnisses \\[1ex]
- \Macro{fps@remarkbox} & \Macro{fps@figure}
- & \Option{type}, \Option{float}, \Option{floattype}
- & nummerischer Gleitumge\-bungstyp zwecks
- Reihen\-fol\-gen\-erhalts\\[1ex]
- \File{lor} & \File{lof}
- &
- & Dateiendung der Hilfsdatei für das jeweilige Verzeichnis \\
- \bottomrule
- \end{tabularx}
- \end{table}
-
- Und hier nun eine mögliche Verwendung der Umgebung:
-\begin{lstcode}
- \begin{remarkbox}
- \centering
- Gleiches sollte immer auf gleiche Weise und
- mit gleichem Aussehen gesetzt werden.
- \caption{Erster Hauptsatz der Typografie}
- \label{rem:typo1}
- \end{remarkbox}
-\end{lstcode}
- Ein Ausschnitt aus einer Beispielseite mit dieser Umgebung könnte dann so
- aussehen:
- \begin{center}\footnotesize
- \begin{tabular}
- {|!{\hspace{.1\linewidth}}p{.55\linewidth}!{\hspace{.1\linewidth}}|}
- \\
- \centering
- Gleiches sollte immer auf gleiche Weise und
- mit gleichem Aussehen gesetzt werden.\\[\abovecaptionskip]
- {%
- \usekomafont{caption}\footnotesize
- \begin{tabularx}{\hsize}[t]{@{}l@{ }X@{}}
- \usekomafont{captionlabel}{Merksatz 1:} &
- Erster Hauptsatz der Typografie \\
- \end{tabularx}
- }\\
- \end{tabular}%
- \end{center}%
-\end{Example}%
% Umbruchoptimierung: Tabelle verschoben.
\begin{desclist}
\renewcommand*{\abovecaptionskipcorrection}{-\normalbaselineskip}%
@@ -2410,7 +2350,7 @@ möglich. Siehe dazu \autoref{sec:tocbasic.tocstyle},
\Counter{\PName{Eintragstyp}} (siehe Option \Option{type})
angelegt. Dieser Zähler kann in gleicher Weise wie beispielsweise der
Zähler \Counter{figure} bei \Class{book}-Klassen von Zähler
- \Counter{chapter} abhängt von einem \LaTeX-Zähler ahängig gemacht
+ \Counter{chapter} abhängt, von einem \LaTeX-Zähler ahängig gemacht
werden.}%
\entry{\Option{float}}{%
Es wird nicht nur ein neuer Verzeichnistyp definiert, sondern auch
@@ -2481,7 +2421,7 @@ möglich. Siehe dazu \autoref{sec:tocbasic.tocstyle},
Jedes Verzeichnis hat eine Überschrift, die durch diese Option bestimmt
werden kann. Ist die Option nicht angegeben, so wird als Verzeichnistitel
»\texttt{List of \PName{Mehrzahl des Eintragstyps}}« (siehe Option
- \PName{types}) verwendet, wobei das erste Zeichen der \PName{Mehrzahl des
+ \Option{types}) verwendet, wobei das erste Zeichen der \PName{Mehrzahl des
Eintragstyps} in einen Großbuchstaben gewandelt wird. Es wird auch ein
Makro \Macro{list\PName{Eintragstyp}name} mit diesem Wert definiert, der
jederzeit geändert werden kann. Dieses Makro wird jedoch nur definiert,
@@ -2503,16 +2443,24 @@ möglich. Siehe dazu \autoref{sec:tocbasic.tocstyle},
Es wird nicht nur ein neuer Verzeichnistyp definiert, sondern auch eine
nicht gleitende Umgebungen \Environment{\PName{Eintragstyp}-} (siehe
Option \Option{type}), die ähnlich wie eine Gleitumgebung verwendet werden
- kann, jedoch nicht gleitet und auch nicht die Grenzen der aktuell gültigen
- Umgebung durchbricht.}%
+ kann, jedoch nicht gleitet und auch nicht die Grenzen der Umgebung, in der
+ sie verwendet wird, durchbricht.}%
\entry{\OptionVName{owner}{Besitzer}}{%
Jedes neue Verzeichnis hat bei \Package{tocbasic} einen Besitzer (siehe
\autoref{sec:tocbasic.basics}). Dieser kann hier angegeben werden. Ist
kein Besitzer angegeben, so wird der Besitzer »\PValue{float}« verwendet,
den auch die \KOMAScript-Klassen für das Abbildungs- und das
Tabellenverzeichnis verwenden.}%
+ \entry{\OptionVName{setup}{Liste von Eigenschaften}}{%
+ \ChangedAt{v3.25}{\Package{tocbasic}}%
+ Die \PName{Liste von Eigenschaften} wird via
+ \DescRef{\LabelBase.cmd.setuptoc} gesetzt. Es wird darauf hingewiesen,
+ dass für die Angabe mehrerer durch Komma getrennter Eigenschaften die
+ \PName{Liste von Eigenschaften} in geschweifte Klammern gesetzt werden
+ muss.%
+ }%
\entry{\OptionVName{tocentrystyle}{Eintragsstil}}{%
- \ChangedAt[2015/12]{v3.20}{\Package{tocbasic}}%
+ \ChangedAt{v3.20}{\Package{tocbasic}}%
\PName{Eintragsstil} gibt den Stil an, den Einträge in das entsprechende
Verzeichnis haben sollen. Der Name der Eintragsebene wird dabei über
Option \Option{type} bestimmt. Zusätzlich zu den Optionen dieser Tabelle
@@ -2543,16 +2491,140 @@ möglich. Siehe dazu \autoref{sec:tocbasic.tocstyle},
An verschiedenen Stellen wird auch die Mehrzahlform des Eintragstyps
verwendet, beispielsweise um eine Anweisung \Macro{listof\PName{Mehrzahl
des Eintragstyps}} zu definieren. Wird diese Option nicht verwendet,
- so wird als \PName{Mehrzahl des Eintragstyps} einfach
- »\PName{Eintragstyp}s« verwendet.}%
+ so wird als \PName{Mehrzahl des Eintragstyps} der Wert von
+ \Option{type} mit angehängtem »s« verwendet.}%
+ \entry{\OptionVName{unset}{Liste von Eigenschaften}}{%
+ \ChangedAt{v3.25}{\Package{tocbasic}}%
+ Die \PName{Liste von Eigenschaften} wird via
+ \DescRef{\LabelBase.cmd.unsettoc} aufgehoben. Es wird darauf hingewiesen,
+ dass für die Angabe mehrerer durch Komma getrennter Eigenschaften die
+ \PName{Liste von Eigenschaften} in geschweifte Klammern gesetzt werden
+ muss.%
+ }%
\end{desclist}
-Benutzer von \Package{hyperref}\IndexPackage{hyperref} sollten Option
-\Option{listname} übrigens immer angeben. Anderenfalls kommt es in der Regel
-zu einer Fehlermeldung, weil \Package{hyperref} nicht mit dem
-\Macro{MakeUppercase} im Namen des Verzeichnisses zurecht kommt, das benötigt
-wird, um den ersten Buchstaben des Wert von \Option{types} in Großbuchstaben
-zu wandeln.%
+\begin{Example}
+ Das Beispiel aus \autoref{sec:tocbasic.example} kann mit Hilfe der neuen
+ Anweisung deutlich verkürzt werden:
+\begin{lstcode}
+ \DeclareNewTOC[%
+ type=remarkbox,%
+ types=remarkboxes,%
+ float,% Gleitumgebungen sollen definiert werden.
+ floattype=4,%
+ name=Merksatz,%
+ listname={Verzeichnis der Merks\"atze}%
+ ]{lor}
+ \setuptoc{lor}{chapteratlist}
+\end{lstcode}
+ Neben den Umgebungen \Environment{remarkbox} und \Environment{remarkbox*}
+ sind damit auch der Zähler \Counter{remarkbox}, die zur Ausgabe gehörenden
+ Anweisungen \Macro{theremarkbox}, \Macro{remarkboxname} und
+ \Macro{remarkboxformat}, die für das Verzeichnis benötigten
+ \Macro{listremarkboxname} und \Macro{listofremarkboxes} sowie einige intern
+ verwendete Anweisungen mit Bezug auf die Dateiendung \File{lor}
+ definiert. Soll der Gleitumgebungstyp dem Paket überlassen werden, so kann
+ Option \Option{floattype} im Beispiel entfallen. Wird zusätzlich
+ die Option \Option{nonfloat} angegeben, wird außerdem eine nicht gleitende
+ Umgebung \Environment{remarkbox-} definiert, in der ebenfalls
+ \DescRef{maincls.cmd.caption}\IndexCmd{caption} verwendet werden kann.
+
+ Zum besseren Verständnis zeigt \autoref{tab:tocbasic.comparison} eine
+ Gegenüberstellung der Anweisungen und Umgebungen für die neu erstellte
+ Beispielumgebung \Environment{remarkbox} mit den entsprechenden Befehlen und
+ Umgebungen für Abbildungen.%
+ \begin{table}
+ \centering
+ \caption{Gegenüberstellung von Beispielumgebung \Environment{remarkbox}
+ und Umgebung \Environment{figure}}
+ \label{tab:tocbasic.comparison}
+ \begin{tabularx}{\textwidth}{l@{\hskip\tabcolsep}l@{\hskip\tabcolsep}>{\raggedright}p{7em}@{\hskip\tabcolsep}X}
+ \toprule
+ \begin{tabular}[t]{@{}l@{}}
+ Umgebung\\
+ \Environment{remarkbox}
+ \end{tabular}
+ & \begin{tabular}[t]{@{}l@{}}
+ Umgebung\\
+ \Environment{figure}
+ \end{tabular}
+ & Optionen von \Macro{DeclareNewTOC} & Kurzbeschreibung \\[1ex]
+ \midrule
+ \Environment{remarkbox} & \Environment{figure}
+ & \Option{type}, \Option{float}
+ & Gleitumgebung des jeweiligen Typs.\\[1ex]
+ \Environment{remarkbox*} & \Environment{figure*}
+ & \Option{type}, \Option{float}
+ & spaltenübergreifende Gleitumgebung des jeweiligen Typs \\[1ex]
+ \Counter{remarkbox} & \Counter{figure}
+ & \Option{type}, \Option{float}
+ & Zähler, der von \DescRef{maincls.cmd.caption} verwendet wird \\[1ex]
+ \Macro{theremarkbox} & \Macro{thefigure}
+ & \Option{type}, \Option{float}
+ & Anweisung zur Ausgabe des jeweiligen Zählers \\[1ex]
+ \Macro{remarkboxformat} & \DescRef{maincls.cmd.figureformat}
+ & \Option{type}, \Option{float}
+ & Anweisung zur Formatierung des jeweiligen Zählers in der Ausgabe von
+ \DescRef{maincls.cmd.caption}\\[1ex]
+ \Macro{remarkboxname} & \Macro{figurename}
+ & \Option{type}, \Option{float}, \Option{name}
+ & Name, der im Label von \DescRef{maincls.cmd.caption} verwendet
+ wird\\[1ex]
+ \Macro{listofremarkboxes} & \DescRef{maincls.cmd.listoffigures}
+ & \Option{types}, \Option{float}
+ & Anweisung zur Ausgabe des jeweiligen Verzeichnisses \\[1ex]
+ \Macro{listremarkboxname} & \Macro{listfigurename}
+ & \Option{type}, \Option{float}, \Option{listname}
+ & Überschrift des jeweiligen Verzeichnisses \\[1ex]
+ \Macro{fps@remarkbox} & \Macro{fps@figure}
+ & \Option{type}, \Option{float}, \Option{floattype}
+ & nummerischer Gleitumge\-bungstyp zwecks
+ Reihen\-fol\-gen\-erhalts\\[1ex]
+ \File{lor} & \File{lof}
+ &
+ & Dateiendung der Hilfsdatei für das jeweilige Verzeichnis \\
+ \bottomrule
+ \end{tabularx}
+ \end{table}
+
+ Und hier nun eine mögliche Verwendung der Umgebung:
+\begin{lstcode}
+ \begin{remarkbox}
+ \centering
+ Gleiches sollte immer auf gleiche Weise und
+ mit gleichem Aussehen gesetzt werden.
+ \caption{Erster Hauptsatz der Typografie}
+ \label{rem:typo1}
+ \end{remarkbox}
+\end{lstcode}
+ Ein Ausschnitt aus einer Beispielseite mit dieser Umgebung könnte dann so
+ aussehen:
+ \begin{center}\footnotesize
+ \begin{tabular}
+ {|!{\hspace{.1\linewidth}}p{.55\linewidth}!{\hspace{.1\linewidth}}|}
+ \\
+ \centering
+ Gleiches sollte immer auf gleiche Weise und
+ mit gleichem Aussehen gesetzt werden.\\[\abovecaptionskip]
+ {%
+ \usekomafont{caption}\footnotesize
+ \begin{tabularx}{\hsize}[t]{@{}l@{ }X@{}}
+ \usekomafont{captionlabel}{Merksatz 1:} &
+ Erster Hauptsatz der Typografie%\\
+ \end{tabularx}%
+ }%
+ \\
+ \end{tabular}%
+ \end{center}%
+\end{Example}%
+
+Benutzer von
+\Package{hyperref}\IndexPackage{hyperref}\important{\Package{hyperref}}
+sollten Option \Option{listname} übrigens immer angeben. Anderenfalls kommt es
+in der Regel zu einer Fehlermeldung, weil \Package{hyperref} nicht mit dem
+\Macro{MakeUppercase}\IndexCmd{MakeUppercase} im Namen des Verzeichnisses
+zurecht kommt, das benötigt wird, um den ersten Buchstaben des Wertes von
+\Option{types} in Großbuchstaben zu wandeln.%
\EndIndexGroup
%
\EndIndexGroup
@@ -2568,7 +2640,6 @@ zu wandeln.%
%%% End:
% LocalWords: Verzeichnisdatei Klonquelle Absatzabstandes Absatzabstand
-
% LocalWords: Verzeichniseinträge Verzeichniseintrag Eintragsstile
% LocalWords: Inhaltsverzeichniseinträge Standardklassen Nummernbreite
% LocalWords: Standardeigenschaft Eintragsebene Optionenliste expandierbar
@@ -2578,4 +2649,6 @@ zu wandeln.%
% LocalWords: Eintragsnummer Initialisierungscode Aktivierungswerte
% LocalWords: Deaktivierungswert Verzeichnistitel Eintragstyp Eintragstyps
% LocalWords: Verzeichniseintrags Säumniswert Überschriftenanweisung
-% LocalWords: Eintragstext
+% LocalWords: Eintragstext Dateierweiterung Dateierweiterungen Paketautoren
+% LocalWords: Verzeichnisbefehle Verzeichnisdaten Schrifteinstellungen
+% LocalWords: Eintragsebenen Platzierungsoptionen Kapiteleinträge