summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbookreportarticle-experts.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbookreportarticle-experts.tex')
-rw-r--r--Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbookreportarticle-experts.tex516
1 files changed, 516 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbookreportarticle-experts.tex b/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbookreportarticle-experts.tex
new file mode 100644
index 00000000000..a1df28b88fa
--- /dev/null
+++ b/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbookreportarticle-experts.tex
@@ -0,0 +1,516 @@
+% ======================================================================
+% scrbookreportarticle-experts.tex
+% Copyright (c) Markus Kohm, 2001-2008
+%
+% This file is part of the LaTeX2e KOMA-Script bundle.
+%
+% This work may be distributed and/or modified under the conditions of
+% the LaTeX Project Public License, version 1.3b of the license.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3b or later is part of all distributions of LaTeX
+% version 2005/12/01 or later and of this work.
+%
+% This work has the LPPL maintenance status "author-maintained".
+%
+% The Current Maintainer and author of this work is Markus Kohm.
+%
+% This work consists of all files listed in manifest.txt.
+% ----------------------------------------------------------------------
+% scrbookreportarticle-experts.tex
+% Copyright (c) Markus Kohm, 2001-2008
+%
+% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz,
+% Version 1.3b, verteilt und/oder veraendert werden.
+% Die neuste Version dieser Lizenz ist
+% http://www.latex-project.org/lppl.txt
+% und Version 1.3b ist Teil aller Verteilungen von LaTeX
+% Version 2005/12/01 oder spaeter und dieses Werks.
+%
+% Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained"
+% (allein durch den Autor verwaltet).
+%
+% Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm.
+%
+% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien.
+% ======================================================================
+%
+% Chapter about scrbook, scrreprt, and scrartcl of the KOMA-Script guide
+% expert part
+% Maintained by Markus Kohm
+%
+% ----------------------------------------------------------------------
+%
+% Kapitel über scrbook, scrreprt und scrartcl im Experten-Teil der
+% KOMA-Script-Anleitung
+% Verwaltet von Markus Kohm
+%
+% ============================================================================
+
+\ProvidesFile{scrbookreportarticle-experts.tex}[2008/09/11 KOMA-Script guide (chapter: scrbook, scrreprt, scrartcl for experts)]
+
+\chapter[{Zusätzliche Informationen zu den Hauptklassen und \Package{scrextend}}]{Zusätzliche
+ Informationen zu den Hauptklassen
+ \Class{scrbook}, \Class{scrreprt} und
+ \Class{scrartcl} sowie dem
+ Paket \Package{scrextend}}
+\labelbase{maincls-experts}
+
+In diesem Kapitel finden Sie zusätzliche Informationen zu den
+\KOMAScript-Klassen \Class{scrbook}, \Class{scrreprt} und \Class{scrartcl} und
+einigen Anweisungen, die auch in \Package{scrextend} vorhanden sind.
+\iffree{Einige Teile des Kapitels sind dabei dem \KOMAScript-Buch
+ \cite{book:komascript} vorbehalten. Dies sollte kein Problem sein, denn
+ der}{Der} normale Anwender, der die Klassen einfach nur verwenden will, wird
+diese Informationen normalerweise nicht benötigen. Ein Teil der Informationen
+richtet sich an Anwender, die ausgefallene Aufgaben lösen oder eigene Klassen
+schreiben wollen, die auf einer der drei \KOMAScript-Klassen basieren. Ein
+weiterer Teil der Informationen behandelt Möglichkeiten der Klassen, die aus
+Gründen der Kompatibilität zu den Standardklassen oder früheren Versionen von
+\KOMAScript{} existieren. Die Teile, die nur aus Gründen der Kompatibilität zu
+früheren Versionen von \KOMAScript{} existieren, sind in serifenloser Schrift
+gesetzt und sollten nicht mehr verwendet werden.
+
+\LoadNonFree{scrbookreportarticle-experts}{0}
+
+\section{Ergänzende Hinweise zu Benutzeranweisungen}
+\label{sec:maincls-experts.addInfos}
+
+\LoadNonFree{scrbookreportarticle-experts}{1}
+
+
+\section{Zusammenspiel von \KOMAScript{} und anderen Paketen}
+\label{sec:maincls-experts.coexistence}
+
+\LoadNonFree{scrbookreportarticle-experts}{2}
+
+
+\section{Anweisungen für Experten}
+\label{sec:maincls-experts.experts}
+
+In diesem Abschnitt werden Anweisungen beschrieben, die für den normalen
+Anwender kaum oder gar nicht von Interesse sind. Experten bieten diese
+Anweisungen zusätzliche Möglichkeiten. Da die Beschreibungen für Experten
+gedacht sind, sind sie kürzer gefasst.
+
+
+\begin{Declaration}
+ \Macro{KOMAClassName}\\
+ \Macro{ClassName}
+\end{Declaration}
+\BeginIndex{Cmd}{KOMAClassName}%
+\BeginIndex{Cmd}{ClassName}%
+In \Macro{KOMAClassName} ist der Name der aktuell verwendeten
+\KOMAScript-Klasse abgelegt. Will man also wissen, ob eine oder welche
+\KOMAScript-Klasse verwendet wird, so kann man einfach auf diese Anweisung
+testen. Demgegenüber gibt \Macro{ClassName} Auskunft, welche Standardklasse
+durch diese \KOMAScript-Klasse ersetzt wird.
+
+Es sei in diesem Zusammenhang darauf hingewiesen, dass demgegenüber die
+Existenz von \Macro{KOMAScript}\IndexCmd{KOMAScript} nicht als Indiz für die
+Verwendung einer \KOMAScript-Klasse dienen kann. Zum einen definieren alle
+\KOMAScript-Pakete diese Anweisung, zum anderen können auch andere Pakete es
+für sinnvoll erachten, das \KOMAScript-Piktogramm unter diesem Namen zu
+definieren.%
+%
+\EndIndex{Cmd}{ClassName}%
+\EndIndex{Cmd}{KOMAClassName}%
+
+
+\begin{Declaration}
+ \Macro{@fontsizefilebase}
+\end{Declaration}
+\BeginIndex{Cmd}{@fontsizefilebase}%
+Der auf \autopageref{desc:maincls-experts.option.fontsize} für die
+Schriftgrößendateien angegebene Präfix \File{scrsize}, ist lediglich die
+Voreinstellung für das interne Makro
+\Macro{@fontsizefilebase}\IndexCmd{@fontsizefilebase}, die verwendet wird,
+wenn das Makro beim Laden der Klasse oder des Pakets \Package{scrextend} noch
+nicht definiert ist. Autoren von Wrapper-Klassen können dieses Makro
+abweichend definieren, um andere Schriftgrößendateien zu verwenden. Ebenso
+können Autoren von Wrapper-Klassen die \emph{fallback}-Lösung dadurch ändern
+oder abschalten, dass sie das Macro
+\Macro{changefontsizes}\IndexCmd{changefontsize}, das als Argument die
+gewünschte Größe erwartet, umdefinieren.%
+%
+\EndIndex{Cmd}{@fontsizefilebase}%
+
+
+\begin{Declaration}
+ \Macro{newkomafont}\OParameter{Warnung}\Parameter{Element}\Parameter{Voreinstellung}\\
+ \Macro{aliaskomafont}\Parameter{Aliasname}\Parameter{Element}
+\end{Declaration}
+\BeginIndex{Cmd}{newkomafont}%
+\BeginIndex{Cmd}{aliaskomafont}%
+Experten können mit \Macro{newkomafont} eine \PName{Voreinstellung} für die
+Schrift eines \PName{Element}s definieren. Anschließend kann diese
+Voreinstellung mit den Anweisungen \Macro{setkomafont} und
+\Macro{addtokomafont} (siehe \autoref{sec:maincls.textmarkup},
+\autopageref{desc:maincls.cmd.setkomafont}) verändert werden. Natürlich wird
+diese Schrift damit noch lange nicht verwendet. Der Experte muss selbst Sorge
+dafür tragen, dass er an den entsprechenden Stellen die Anweisung
+\Macro{usekomafont} (siehe \autopageref{desc:maincls.cmd.usekomafont}) für
+dieses Element in seinen Definitionen einbaut.
+
+Das optionale Argument \PName{Warnung} definiert eine Warnmeldung. Diese wird
+bei den \KOMAScript-Klassen per \Macro{ClassWarning} oder beim Paket
+\Package{scrextend} per \Macro{PackageWarning} immer dann ausgegeben, wenn die
+Voreinstellung für das Element verändert wird. Dabei wird als Urheber der
+Warnung die verwendete \KOMAScript-Klasse oder das Paket \Package{scrextend}
+ausgegeben.
+
+Mit \Macro{aliaskomafont} kann für ein existierendes \PName{Element} ein
+\PName{Aliasname} definiert werden. \KOMAScript{} informiert den Benutzer
+automatisch über den Namen des tatsächlichen Elements, wenn dieser den
+\PName{Aliasname} verwendet. \PName{Aliasname}n können beispielsweise dann
+eingesetzt werden, wenn der Entwickler sich später einen besseren Namen für
+ein Element überlegt und der alte Name aus Kompatibilitätsgründen weiter
+verwendbar bleiben soll. Außerdem kann damit die Benutzerfreundlichkeit erhöht
+werden, indem einem Element all die Namen als Alias zugeordnet werden, die
+unterschiedliche Benutzer intuitiv wählen würden. \KOMAScript{} selbst macht
+von dieser Möglichkeit reichen Gebrauch.
+%
+\EndIndex{Cmd}{aliaskomafont}%
+\EndIndex{Cmd}{newkomafont}%
+
+
+\begin{Declaration}
+ \Macro{setparsizes}\Parameter{Einzug}\Parameter{Abstand}%^^A
+ \Parameter{Endzeilenleerraum}
+\end{Declaration}
+\BeginIndex{Cmd}{setparsizes}%
+\KOMAScript{} bietet mit dieser Anweisung die Möglichkeit, sowohl den
+Absatzeinzug, als auch den Absatzabstand und den Freiraum am Ende der
+letzten Zeile des Absatzes einzustellen. Diese Anweisung ist immer dann zu
+verwenden, wenn die Änderungen auch bei Einstellung
+\OptionValue{parskip}{relative} beachtet werden sollen. \KOMAScript{} selbst
+verwendet sie beispielsweise in der Form
+\begin{lstcode}[belowskip=\dp\strutbox]
+ \setparsizes{0pt}{0pt}{0pt plus 1fil}
+\end{lstcode}
+um sowohl den Einzug als auch den Abstand abzuschalten und am Ende des
+Absatzes beliebigen Freiraum zu erlauben. Eine solche Maßnahme ist sinnvoll,
+wenn ein Absatz nur aus einer Box besteht, die ohne Abstand nach oben oder
+unten gesetzt werden soll und die gesamte Spaltenbreite einnimmt. Soll
+demgegenüber die Box nur die gesamte Breite einnehmen, jedoch mit der
+aktuellen Einstellung bezüglich des Absatzabstandes gesetzt werden, so ist
+\begin{lstcode}[belowskip=\dp\strutbox]
+ \setlength{\parfillskip}{0pt plus 1fil}
+\end{lstcode}
+vorzuziehen.%
+\EndIndex{Cmd}{setparsizes}%
+
+
+\begin{Declaration}
+ \Macro{raggedchapterentry}
+\end{Declaration}
+\BeginIndex{Cmd}{raggedchapterentry}%
+Diese Anweisung ist nicht mit ähnlichen Anweisungen wie \Macro{raggedsection}
+zu vergleichen. Während jene Anweisungen es ermöglichen, bestimmte Elemente im
+Blocksatz oder im rechts- oder linksbündigen oder beidseitigen Flattersatz zu
+setzen, besteht mit Hilfe von \Macro{raggedchapterentry} lediglich die
+Möglichkeit, Kapiteleinträge im Inhaltsverzeichnis statt im voreingestellten
+Blocksatz im linksbündigen Flattersatz zu setzen. Dazu ist die Anweisung als
+\Macro{raggedright} zu definieren. Siehe hierzu auch die einschränkenden
+Hinweise in \autoref{sec:maincls-experts.coexistence},
+\autopageref{desc:maincls-experts.cmd.raggedsection}.%
+%
+\EndIndex{Cmd}{raggedchapterentry}
+
+\LoadNonFree{scrbookreportarticle-experts}{3}
+
+\begin{Declaration}
+ \Macro{chapterheadstartvskip}\\
+ \Macro{chapterheadendvskip}\\
+ \Macro{partheadstartvskip}\\
+ \Macro{partheadmidvskip}\\
+ \Macro{partheadendvskip}
+\end{Declaration}
+\BeginIndex{Cmd}{chapterheadstartvskip}%
+\BeginIndex{Cmd}{chapterheadendvskip}%
+\BeginIndex{Cmd}{partheadstartvskip}%
+\BeginIndex{Cmd}{partheadmidvskip}%
+\BeginIndex{Cmd}{partheadendvskip}%
+Diese Anweisungen werden innerhalb der Definition der Überschriften
+\Macro{chapter} und \Macro{part} sowie deren Varianten, einschließlich
+\Macro{addchap} und \Macro{addpart} verwendet. Dabei ist
+\Macro{chapterheadstartvskip} eine Anweisung, die dafür vorgesehen ist, vor
+der Kapitelüberschrift einen vertikalen Abstand einzufügen. Entsprechend ist
+\Macro{chapterheadendvskip} eine Anweisung, die dafür vorgesehen ist, nach der
+Kapitelüberschrift einen vertikalen Abstand einzufügen.
+
+Die Anweisungen \Macro{partheadstartvskip} und \Macro{partheadendvskip} sind
+dafür vorgesehen, über und unter den Teile-Überschriften vertikalen Abstand
+einzufügen. Dabei wird ein Seitenumbruch quasi als vertikaler Abstand
+interpretiert und ist in der Voreinstellung von \Macro{partheadendvskip}
+enthalten. Die Anweisung \Macro{partheadmidvskip} ist für den Abstand zwischen
+der Teile-Nummer und dem Text der Teile-Überschrift vorgesehen.
+
+Die Voreinstellungen für diese fünf Anweisungen ist
+\autoref{tab:maincls-experts.headvskip} und
+\autoref{tab:maincls-experts.headvskip2} zu entnehmen. Auf \cite{homepage}
+gibt es außerdem ein Beispiel, bei dem \Macro{chapterheadstartvskip} und
+\Macro{chapterheadendvskip} verwendet werden, um horizontale Linien über und
+unter der Kapitelüberschrift zu setzen.%
+%
+\begin{table}
+ \centering
+ \caption[{Voreinstellungen der Anweisungen für die vertikalen Abstände bei
+ Kapitel- und Teile-Überschriften von \Class{scrbook} und
+ \Class{scrreprt}}]{Voreinstellungen der Anweisungen für
+ die vertikalen Abstände bei Kapitel- und Teile-Überschriften bei
+ \Class{scrbook} und \Class{scrreprt} abhängig von den Optionen}
+ \label{tab:maincls-experts.headvskip}
+ \begin{tabular}{ll}
+ \multicolumn{2}{@{}l}{\bfseries Mit \OptionValue{headings}{big}:}\\
+ \toprule
+ Anweisung & Voreinstellung \\
+ \midrule
+ \Macro{chapterheadstartvskip} &
+ \Macro{vspace*}\PParameter{2.3\Macro{baselineskip}} \\
+ \Macro{chapterheadendvskip} &
+ \Macro{vspace*}\texttt{\{1.725\Macro{baselineskip}} \\ &
+ \quad\texttt{plus .115\Macro{baselinekip}} \\ &
+ \quad\texttt{minus .192\Macro{baselineskip}\}} \\
+ \Macro{partheadstartvskip} & \Macro{null}\Macro{vfil} \\
+ \Macro{partheadmidvskip} & \Macro{par}\Macro{nobreak}\Macro{vskip} \texttt{20pt}\\
+ \Macro{partheadendvskip} & \Macro{vfil}\Macro{newpage} \\
+ \bottomrule\\
+ \multicolumn{2}{@{}l}{\bfseries Mit \OptionValue{headings}{normal}:}\\
+ \toprule
+ Anweisung & Voreinstellung \\
+ \midrule
+ \Macro{chapterheadstartvskip} &
+ \Macro{vspace*}\PParameter{2\Macro{baselineskip}} \\
+ \Macro{chapterheadendvskip} &
+ \Macro{vspace*}\texttt{\{1.5\Macro{baselineskip}}\\ &
+ \quad\texttt{plus .1\Macro{baselinekip}} \\ &
+ \quad\texttt{minus .167\Macro{baselineskip}\}} \\
+ \Macro{partheadstartvskip} & \Macro{null}\Macro{vfil} \\
+ \Macro{partheadmidvskip} & \Macro{vskip} \texttt{20pt}\\
+ \Macro{partheadendvskip} & \Macro{par}\Macro{nobreak}\Macro{vfil}\Macro{newpage} \\
+ \bottomrule\\
+ \multicolumn{2}{@{}l}{\bfseries Mit \OptionValue{headings}{small}:}\\
+ \toprule
+ Anweisung & Voreinstellung \\
+ \midrule
+ \Macro{chapterheadstartvskip} &
+ \Macro{vspace*}\PParameter{1.8\Macro{baselineskip}} \\
+ \Macro{chapterheadendvskip} &
+ \Macro{vspace*}\texttt{\{1.35\Macro{baselineskip}}\\ &
+ \quad\texttt{plus .09\Macro{baselinekip}} \\ &
+ \quad\texttt{minus .15\Macro{baselineskip}\}} \\
+ \Macro{partheadstartvskip} & \Macro{null}\Macro{vfil} \\
+ \Macro{partheadmidvskip} & \Macro{vskip} \texttt{20pt}\\
+ \Macro{partheadendvskip} & \Macro{par}\Macro{nobreak}\Macro{vfil}\Macro{newpage} \\
+ \bottomrule\\
+\end{tabular}
+\end{table}
+%
+\begin{table}
+ \centering
+ \caption{Voreinstellungen der Anweisungen für
+ die vertikalen Abstände bei Teile-Überschriften bei
+ \Class{scrartcl}}
+ \label{tab:maincls-experts.headvskip2}
+ \begin{tabular}{ll}
+ \toprule
+ Anweisung & Voreinstellung \\
+ \midrule
+ \Macro{partheadstartvskip} & \Macro{addvspace}\PParameter{4ex} \\
+ \Macro{partheadmidvskip} & \Macro{par}\Macro{nobreak}\\
+ \Macro{partheadendvskip} & \Macro{vskip} \texttt{3ex}\\
+ \bottomrule
+ \end{tabular}
+\end{table}%
+\EndIndex{Cmd}{partheadendvskip}%
+\EndIndex{Cmd}{partheadmidvskip}%
+\EndIndex{Cmd}{partheadstartvskip}%
+\EndIndex{Cmd}{chapterheadendvskip}%
+\EndIndex{Cmd}{chapterheadstartvskip}%
+
+
+\begin{Declaration}
+ \Macro{appendixmore}
+\end{Declaration}%
+\BeginIndex{Cmd}{appendixmore}%
+Bei den {\KOMAScript}-Klassen gibt es innerhalb der Anweisung \Macro{appendix}
+eine Besonderheit. Ist nämlich die Anweisung \Macro{appendixmore} definiert,
+so wird sie von der \Macro{appendix}-Anweisung ebenfalls ausgeführt. Intern
+wird dies von den {\KOMAScript}-Klassen \Class{scrbook} und \Class{scrreprt}
+für die Realisierung der Layoutoption \Option{appendixprefix}
+genutzt (siehe \autoref{sec:maincls.structure},
+\autopageref{desc:maincls.option.appendixprefix}). Dies sollten Sie unbedingt
+beachten, falls Sie selbst das Makro \Macro{appendixmore} definieren oder
+umdefinieren wollen. Ist eine dieser beiden Optionen gesetzt, so erhalten Sie
+bei \verb|\newcommand{\appendixmore}{|\dots\verb|}| eine Fehlermeldung.
+Dadurch soll verhindert werden, dass Sie die Optionen außer Kraft setzen, ohne
+es zu merken.
+
+\begin{Example}
+ Sie wollen nicht, dass bei Verwendung der Klasse \Class{scrbook} oder
+ \Class{scrreprt} im Hauptteil die Kapitel mit einer Präfixzeile versehen
+ werden (siehe Layoutoption \Option{chapterprefix} und
+ in \autoref{sec:maincls.structure},
+ \autopageref{desc:maincls.option.chapterprefix}). Damit die Konsistenz
+ gewahrt bleibt, wollen Sie auch nicht, dass eine solche Zeile im Anhang
+ verwendet wird. Stattdessen sollen in den Anhängen direkt vor dem
+ Kapitelbuchstaben das Wort »Anhang« in der jeweiligen Sprache stehen. Dies
+ soll auch für die Kolumnentitel gelten. Also verwenden Sie nicht die
+ Layoutoption \Option{appendixprefix}, sondern
+ definieren in der Dokumentpräambel:
+\begin{lstcode}
+ \newcommand*{\appendixmore}{%
+ \renewcommand*{\chapterformat}{%
+ \appendixname~\thechapter\autodot\enskip}%
+ \renewcommand*{\chaptermarkformat}{%
+ \appendixname~\thechapter\autodot\enskip}}
+\end{lstcode}
+ Sollten Sie später dann doch noch entscheiden, dass Sie die Option
+ \Option{appendixprefix} verwenden wollen, so erhalten Sie aufgrund
+ der dann bereits definierten Anweisung \Macro{appendixmore} eine
+ Fehlermeldung. Damit wird verhindert, dass obige Definition
+ unbemerkt die Einstellungen überschreibt, die Sie per Option
+ getroffen haben.
+
+ Wenn Sie ein vergleichbares Verhalten des Anhangs für die Klasse
+ \Class{scrartcl} erreichen wollen, so ist dies ebenfalls
+ möglich. Dazu schreiben Sie in die Präambel Ihres Dokuments:
+\begin{lstcode}[moretexcs={ifthenelse,equal}]
+ \newcommand*{\appendixmore}{%
+ \renewcommand*{\othersectionlevelsformat}[3]{%
+ \ifthenelse{\equal{##1}{section}}{%
+ \appendixname~}{}%
+ ##3\autodot\enskip}
+ \renewcommand*{\sectionmarkformat}{%
+ \appendixname~\thesection\autodot\enskip}}
+\end{lstcode}
+ Sie benötigen dafür außerdem das
+ \Package{ifthen}-Paket\IndexPackage{ifthen} (siehe
+ \cite{package:ifthen}).
+
+ Eine alternative Implementierung wäre:
+\begin{lstcode}
+ \newcommand*{\appendixmore}{%
+ \renewcommand*{\othersectionlevelsformat}[3]{%
+ \ifstr{##1}{section}{\appendixname~}{}%
+ ##3\autodot\enskip}
+ \renewcommand*{\sectionmarkformat}{%
+ \appendixname~\thesection\autodot\enskip}}
+\end{lstcode}
+ Die dabei verwendete Anweisung \Macro{ifstr}\IndexCmd[indexmain]{ifstr} wird
+ von \KOMAScript{} bereitgestellt. Siehe dazu \autoref{sec:scrbase.if},
+ \autopageref{desc:scrbase.cmd.ifstr}.
+
+ Die Erklärungen zu den in diesem Beispiel umdefinierten Anweisungen finden
+ Sie in \autoref{sec:maincls.structure},
+ \autopageref{desc:maincls.cmd.chapterformat} und
+ \autopageref{desc:maincls.cmd.chaptermarkformat}.
+\end{Example}%
+%
+\EndIndex{Cmd}{appendixmore}%
+
+
+\begin{Declaration}
+ \Macro{newbibstyle}\OParameter{Elternstil}\Parameter{Name}%^^A
+ \Parameter{Anweisungen}\\
+ \Macro{newblock}\\
+ \Macro{@openbib@code}\\
+ \Macro{bib@beginhook}\\
+ \Macro{bib@endhook}
+\end{Declaration}
+\BeginIndex{Cmd}{newbibstyle}%
+\BeginIndex{Cmd}{newblock}%
+\BeginIndex{Cmd}{@openbib@code}%
+\BeginIndex{Cmd}{bib@beginhook}%
+\BeginIndex{Cmd}{bib@endhook}%
+Schon die Standardklassen kennen zur Unterteilung der Einträge in das
+Literaturverzeichnis die Anweisung \Macro{newblock}. Was diese Anweisung genau
+macht, hängt dabei von den Klassenoptionen ab. Wird die Option
+\Option{openbib} verwendet, so wird am Ende der Standardklasse die Anweisung
+\Macro{@openbib@code} und \Macro{newblock} selbst umdefiniert. Von den
+Standardklassen wird die Anweisung \Macro{@openbib@code} beim Start der Liste
+für das Literaturverzeichnis -- genauer: bei der Festlegung der Parameter für
+diese Liste -- ausgeführt. Es darf davon ausgegangen werden, dass auch viele
+Pakete, die das Literaturverzeichnis umdefinieren, diese Anweisung
+entsprechend abarbeiten.
+
+Bei \KOMAScript{} geschieht Ähnliches. Allerdings wird \Macro{@openbib@code}
+nicht am Ende der Klasse umdefiniert. Stattdessen wird mit \Macro{newbibstyle}
+der Literaturverzeichnisstil \PValue{openstyle} definiert. Die
+\PName{Anweisungen}, die dabei in der Implementierung angegeben wurden,
+beinhalten die gewünschten Umdefinierung von \Macro{@openbib@code} und von
+\Macro{newblock}. Wird nun mit Hilfe der Option
+\OptionValue{bibliography}{openstyle} dieser Literaturverzeichnisstil gewählt,
+so werden die \PName{Anweisungen} unmittelbar ausgeführt, also
+\Macro{@openbib@code} und \Macro{newblock} umdefiniert.
+
+Neben \Macro{@openbib@code} und \Macro{newblock} können in den
+\PName{Anweisungen} auch noch Umdefinierungen von \Macro{bib@beginhook} und
+\Macro{bib@endhook} vorgenommen werden. Die Anweisung \Macro{bib@beginhook}
+wird unmittelbar nach der Überschrift und der Präambel des
+Literaturverzeichnisses, aber noch vor der Liste der Literatureinträge
+ausgeführt. Die Anweisung \Macro{bib@endhook} wird unmittelbar nach der Liste
+der Literatureinträge am Ende des Literaturverzeichnisses ausgeführt. Im Falle
+eines mit \Macro{BreakBibliography} (siehe \autoref{sec:maincls.bibliography},
+\autopageref{desc:maincls.cmd.BreakBibliography}) unterbrochenen
+Literaturverzeichnisses werden diese Anweisungen außerdem am Anfang und Ende
+jedes Teil, also unmittelbar vor und nach \Macro{BreakBibliography}
+ausgeführt.
+
+Die Anweisungen \Macro{bib@beginhook}, \Macro{bib@endhook},
+\Macro{@openbib@code} und \Macro{newblock} werden bei der Verwendung eines
+neuen Literaturverzeichnisstils zunächst als leer definiert. Danach werden
+die \PName{Anweisungen} des bei der Definition des Stils optional angegebenen
+Elternstils ausgeführt und dann erst die \PName{Anweisungen}, die bei
+Definition des neuen Stils angegeben wurden.
+
+Setzt der Anwender mit den beiden Anweisungen \Macro{AtEndBibliography} und
+\Macro{AfterBibliographyPreamble} weitere \PName{Anweisungen} für die
+Ausführung nach der Präambel und am Ende des Literaturverzeichnisses, so
+werden die \PName{Anweisungen} aus \Macro{AfterBibliographyPreamble} einmalig
+am Anfang des Literaturverzeichnisses nach \Macro{bib@beginhook} und die
+\PName{Anweisungen} von \Macro{AtEndBibliography} einmalig am Ende des
+Literaturverzeichnisses vor \Macro{bib@endhook} ausgeführt.
+
+Mit Hilfe des Pakets \Package{multicol}\IndexPackage{multicol} (siehe
+\cite{package:multicol}) könnte man beispielsweise einen Literaturstil für
+ein zweispaltiges Literaturverzeichnis definieren:
+% Umbruchkorrektur: listings korrigiert
+\begin{lstcode}[belowskip=\dp\strutbox]
+ \newbibstyle{twocolumstyle}{%
+ \renewcommand*{\bib@beginhook}{\begin{multicols}{2}}%
+ \renewcommand*{\bib@endhook}{\end{multicols}}}%
+\end{lstcode}
+Soll es außerdem eine \emph{open}-Variante davon geben, kann man hier die
+Möglichkeiten der Vererbung verwenden und bei der Definition einen Elternstil
+mit angeben:
+% Umbruchkorrektur: listings korrigiert
+\begin{lstcode}[belowskip=\dp\strutbox]
+ \newbibstyle{twocolumstyle}[openstyle]{%
+ \renewcommand*{\bib@beginhook}{\begin{multicols}{2}}%
+ \renewcommand*{\bib@endhook}{\end{multicols}}}%
+\end{lstcode}
+Die Auswahl eines dieser neuen Stile erfolgt dann einfach wieder über die
+Option \Option{bibliography}.
+%
+\EndIndex{Cmd}{bib@endhook}%
+\EndIndex{Cmd}{bib@beginhook}%
+\EndIndex{Cmd}{@openbib@code}%
+\EndIndex{Cmd}{newblock}%
+\EndIndex{Cmd}{newbibstyle}%
+
+
+
+\section{Mehr oder weniger obsolete Optionen und Anweisungen}
+\label{sec:maincls-experts.obsolete}
+
+\LoadNonFree{scrbookreportarticle-experts}{4}
+
+\endinput
+
+%%% Local Variables:
+%%% mode: latex
+%%% coding: iso-latin-1
+%%% TeX-master: "guide.tex"
+%%% End: