diff options
author | Karl Berry <karl@freefriends.org> | 2015-07-02 22:11:36 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2015-07-02 22:11:36 +0000 |
commit | 28c9b4ce4d428d1582c35205f79c62da999cf4d0 (patch) | |
tree | ebaab8a451d923c648016ddecaf5f9dcdbb043eb /Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbase.tex | |
parent | a55a0c408532e7d4dbeb629215c40b9a29b1f98d (diff) |
koma-script (2jul15)
git-svn-id: svn://tug.org/texlive/trunk@37734 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbase.tex')
-rw-r--r-- | Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbase.tex | 49 |
1 files changed, 46 insertions, 3 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbase.tex b/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbase.tex index 0c8da19490c..ed61ae005ac 100644 --- a/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbase.tex +++ b/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrbase.tex @@ -46,7 +46,7 @@ % ====================================================================== \KOMAProvidesFile{scrbase.tex} - [$Date: 2015-03-31 11:10:59 +0200 (Tue, 31 Mar 2015) $ + [$Date: 2015-06-17 12:15:52 +0200 (Wed, 17 Jun 2015) $ KOMA-Script package scrbase] \chapter{Grundlegende Funktionen im Paket \Package{scrbase}} @@ -351,7 +351,7 @@ Mitglieds gesetzt wird. \begin{lstcode} \FamilyProcessOptions{Fleischermeister} \end{lstcode} - ergänzt wird, so kann der Anwender bereits beim Laden der Pakete, die + ergänzt wird, so kann der Anwender bereits beim Laden der Pakete die Eigenschaft \Option{Aufschnitt} wählen. Wird die Option global, also bei \Macro{documentclass} angegeben, so wird die Eigenschaft automatisch bei allen drei Paketen gesetzt, wenn alle drei Pakete geladen werden. @@ -377,6 +377,49 @@ Ausführung von Optionen Pakete zu laden.%, die selbst % \EndIndex{Cmd}{FamilyProcessOptions}% +\begin{Declaration} + \Macro{BeforeFamilyProcessOptions}\OParameter{Mitglied}\Parameter{Familie}% + \Parameter{Code}% +\end{Declaration} +\BeginIndex{Cmd}{BeforeFamilyProcessOptions}% +Insbesondere\ChangedAt{v3.18}{\Package{scrbase}} Autoren von Wrapper-Klassen +wünschen manchmal, in ein Paket oder eine Klasse noch vor der Verarbeitung der +Optionen eines zukünftig geladenen Pakets oder einer zukünftig geladenen +Klasse mit \Macro{FamilyProcessOptions} eingreifen zu können. Dies ist mit +\Macro{BeforeFamilyProcessOptions} möglich. Das Paket \Package{scrbase} bietet +dafür einen sogenannten Haken (engl. \emph{hook}). Diesem kann man mit +\Macro{BeforeFamilyProcessOptions} neuen \PName{Code} hinzufügen. Die +Parameter \PName{Mitglied} und \PName{Familie} entsprechen dabei denen von +\Macro{FammilyProcessOptions}. Allerdings kann man auch den Haken von +Familien-Mitgliedern \PName{Code} hinzufügen, wenn bisher die \PName{Familie} +oder das \PName{Mitglied} noch gar nicht definiert ist. + +Der Haken eines Familien-Mitglieds wird übrigens nach dessen Ausführung +automatisch gelöscht. Verwendet man hingegen ein leeres \PName{Mitglied}, so +wird dieser Haken für alle Mitglieder der \PName{Familie} ausgeführt und +bleibt auch über die Ausführung hinaus erhalten. + +\begin{Example} + Sie schreiben ein Paket, das selbst \Package{Mettwurst} lädt. Allerdings + wollen Sie nicht, dass für dieses Paket die Option \Option{Aufschnitt} + gesetzt werden kann. Daher deaktivieren sie die Option vor dem Laden des + Pakets über \Macro{BeforeFamilyProcessOptions}. +\begin{lstcode} + \RequirePackage{scrbase} + \BeforeFamilyProcessOptions[.Mettwurst.sty]{Fleischermeister}{% + \RelaxFamilyKey[.Mettwurst.sty]{Fleischermeister}{Aufschnitt}% + } + \RequirePackageWithOptions{Mettwurst} +\end{lstcode} + Versucht nun jemand Ihr Paket mit Option \Option{Aufschnitt} zu laden, so + meldet das Paket \Package{Mettwurst}, dass diese Option nicht bekannt + ist. Wird die Option \Option{Aufschnitt} als globale Option angegeben, so + ignoriert Paket \Package{Mettwurst} diese. Voreinstellungen innerhalb des + Pakets beispielsweise mit \Macro{FamilyExecuteOptions} noch vor + \Macro{FamilyProcessOptions} sind allerdings davon unabhängig. +\end{Example} +\EndIndex{Cmd}{BeforeFamilyProcessOptions}% + \begin{Declaration} \Macro{FamilyExecuteOptions}\OParameter{Mitglied}\Parameter{Familie}% @@ -851,7 +894,7 @@ statt.% \BeginIndex{Cmd}{FamilyStringKey}% Hier wird nun\ChangedAt{v3.08}{\Package{scrbase}} ein Schlüssel definiert, der jeden beliebigen Wert annehmen kann. Der Wert wird in dem angegebenen -\PName{Makro} gespeichert. Wird das optionales Argument für den +\PName{Makro} gespeichert. Wird das optionale Argument für den \PName{Säumniswert} weggelassen, so entspricht die Anweisung: \begin{lstcode}[belowskip=\dp\strutbox plus 1pt,escapeinside=»«] \DefineFamilyKey[»\PName{Mitglied}«]{»\PName{Familie}«}{»\PName{Schlüssel}«} |