diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx | 68 |
1 files changed, 58 insertions, 10 deletions
diff --git a/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx b/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx index 9ba05887eeb..c347177f85a 100644 --- a/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx +++ b/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx @@ -1,8 +1,8 @@ -% \CheckSum{3830} +% \CheckSum{3893} % \iffalse meta-comment % ====================================================================== % scrkernel-basics.dtx -% Copyright (c) Markus Kohm, 2002-2018 +% Copyright (c) Markus Kohm, 2002-2019 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -20,7 +20,7 @@ % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrkernel-basics.dtx -% Copyright (c) Markus Kohm, 2002-2018 +% Copyright (c) Markus Kohm, 2002-2019 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. @@ -55,7 +55,7 @@ % Right brace \} Tilde \~} % % \iffalse -%%% From File: $Id: scrkernel-basics.dtx 3043 2018-11-06 07:50:06Z kohm $ +%%% From File: $Id: scrkernel-basics.dtx 3063 2019-02-01 07:39:11Z kohm $ %<prepare>%%% (run: prepare) %<option>%%% (run: option) %<body>%%% (run: body) @@ -65,7 +65,7 @@ \ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi \begingroup \def\filedate$#1: #2-#3-#4 #5${\def\filedate{#2/#3/#4}} - \filedate$Date: 2018-11-06 08:50:06 +0100 (Tue, 06 Nov 2018) $ + \filedate$Date: 2019-02-01 08:39:11 +0100 (Fri, 01 Feb 2019) $ \def\filerevision$#1: #2 ${\def\filerevision{r#2}} \filerevision$Revision: 1638 $ \xdef\fileinfo{\filedate\space\filerevision\space} @@ -1166,15 +1166,18 @@ % \begin{macro}{\scr@sp@def} % \changes{v3.26}{2018/08/29}{von \texttt{tocbasic.dtx} nach % \texttt{scrkernel-basics.dtx} verschoben und umbenannt}^^A +% \changes{v3.26b}{2019/01/17}{\cs{long}}^^A % \begin{macro}{\scr@sp@d} % \changes{v3.26}{2018/08/29}{von \texttt{tocbasic.dtx} nach % \texttt{scrkernel-basics.dtx} verschoben und umbenannt}^^A % \begin{macro}{\scr@sp@b} % \changes{v3.26}{2018/08/29}{von \texttt{tocbasic.dtx} nach % \texttt{scrkernel-basics.dtx} verschoben und umbenannt}^^A +% \changes{v3.26b}{2019/01/17}{\cs{long}}^^A % \begin{macro}{\scr@sp@c} % \changes{v3.26}{2018/08/29}{von \texttt{tocbasic.dtx} nach % \texttt{scrkernel-basics.dtx} verschoben und umbenannt}^^A +% \changes{v3.26b}{2019/01/17}{\cs{long}}^^A % Die Hilfsanweisung \cs{scr@sp@def} definiert eine Anweisung (erstes % Argument) mit einer Tokenliste (zweites Argument) und entfernt dabei % führende und abschließende Leerzeichen. Die Anweisung stammt ursprünglich @@ -1182,7 +1185,7 @@ % der Hilfsanweisung. % \begin{macrocode} \def\@tempa#1{% - \def\scr@sp@def##1##2{% + \long\def\scr@sp@def##1##2{% \futurelet\scr@sp@tempa\scr@sp@d##2\@nil\@nil#1\@nil\relax##1}% \def\scr@sp@d{% \ifx\scr@sp@tempa\@sptoken @@ -1190,10 +1193,10 @@ \else \expandafter\scr@sp@b\expandafter#1% \fi}% - \def\scr@sp@b#1##1 \@nil{\scr@sp@c##1}% + \long\def\scr@sp@b#1##1 \@nil{\scr@sp@c##1}% } \@tempa{ } -\def\scr@sp@c#1\@nil#2\relax#3{\@temptokena{#1}\edef#3{\the\@temptokena}} +\long\def\scr@sp@c#1\@nil#2\relax#3{\@temptokena{#1}\edef#3{\the\@temptokena}} %</base> % \end{macrocode} % \end{macro}^^A \scr@sp@c @@ -3389,6 +3392,7 @@ % % \begin{macro}{\FamilyOption} % \changes{v3.00}{2008/04/30}{Neue Anweisung}^^A +% \changes{v3.26b}{2019/01/09}{Tyischen Fehler abgefangen}^^A % \begin{macro}{\@FamilyOptions} % \changes{v3.14}[2014/10/17]{Neue streng interne Anweisung}^^A % \changes{v3.26}{2018/08/29}{Verwendung von \cs{scr@sp@def} statt @@ -3397,7 +3401,7 @@ % \changes{v3.00}{2008/04/30}{Neu (intern)}^^A % \changes{v3.12}{2013/03/04}{entfernt}^^A % \end{macro} -% \changes{v3.04b}{2010/01/29}{\cs{edef} durch \cs{protected@edef} ersetzt} +% \changes{v3.04b}{2010/01/29}{\cs{edef} durch \cs{protected@edef} ersetzt} % Im Gegensatz zu \cs{FamilyOptions} kann man mit dieser Anweisung nur eine % einzige Option setzen. Dafür kann man gleich mehrere durch Komma getrennte % Argumente für diese Option setzen. Das erste obligatorische Argument ist @@ -3405,7 +3409,51 @@ % dritte, obligatorische Argument ist die Liste der Werte für diese Option. % \begin{macrocode} %<*base> -\newcommand*{\FamilyOption}[2]{\@FamilyOption{#1}{#2}} +\newcommand*{\FamilyOption}[2]{% + \begingroup + \def\reserved@a##1,##2\@nil{\IfArgIsEmpty{##2}{}{\@tempswatrue}}% + \@tempswafalse\expandafter\reserved@a#2,\@nil + \if@tempswa + \PackageError{scrbase}{% + syntax error in key `\detokenize{#2}'% + }{% + You've used `\string\...Option' to set the key + `\detokenize{#2}'\MessageBreak + to new value(s), but `,' is not allowed in the key of + an option\MessageBreak + (and `\string\...Option' does not use `,' to separate several + keys).\MessageBreak + Maybe you've meant \string\...Options\space instead of + \string\...Option.\MessageBreak + If you'll continue, I'll give it a try, but you should expect + further\MessageBreak + and even strange error messages.% + }% + \else + \def\reserved@a##1=##2\@nil{% + \IfArgIsEmpty{##2}{}{\@tempswatrue\def\reserved@a{=}}}% + \expandafter\reserved@a#2=\@nil + \if@tempswa + \PackageError{scrbase}{% + syntax error in key `\detokenize{#2}'% + }{% + You've used `\string\...Option' to set the key + `\detokenize{#2}'\MessageBreak + to new value(s), but `=' is not allowed in the key of + an option\MessageBreak + (and `\string\...Option' does not use `=' to separate key and + value).\MessageBreak + Maybe you've meant \string\...Options\space instead of + \string\...Option.\MessageBreak + If you'll continue, I'll give it a try, but you should expect + further\MessageBreak + and even strange error messages.% + }% + \fi + \fi + \endgroup + \@FamilyOption{#1}{#2}% +} \newcommand{\@FamilyOption}[3]{% \expandafter\scr@sp@def\expandafter\scr@key@name\expandafter{#2}% % \end{macrocode} |