summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/koma-script/scrbase.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-06-28 20:36:34 +0000
committerKarl Berry <karl@freefriends.org>2021-06-28 20:36:34 +0000
commitd2d86e5041a7b35d055ccfa595df7b1252234d4b (patch)
treea5ed8da5681ed4925c460155463ef424710fb9e0 /Master/texmf-dist/tex/latex/koma-script/scrbase.sty
parent2ed3ed36e3f3c4b550390d0e26e641a19ac46c3a (diff)
koma-script (28jun21)
git-svn-id: svn://tug.org/texlive/trunk@59737 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/koma-script/scrbase.sty')
-rw-r--r--Master/texmf-dist/tex/latex/koma-script/scrbase.sty83
1 files changed, 57 insertions, 26 deletions
diff --git a/Master/texmf-dist/tex/latex/koma-script/scrbase.sty b/Master/texmf-dist/tex/latex/koma-script/scrbase.sty
index 760e50da1fb..ad2958d298f 100644
--- a/Master/texmf-dist/tex/latex/koma-script/scrbase.sty
+++ b/Master/texmf-dist/tex/latex/koma-script/scrbase.sty
@@ -44,7 +44,7 @@
%% find a complete unmodified copy of LaTeX2e at
%% <http://mirror.ctan.org/tex-archive/macros/latex/base/>.
%%
-%%% From File: $Id: scrkernel-version.dtx 3586 2021-03-17 13:57:48Z kohm $
+%%% From File: $Id: scrkernel-version.dtx 3609 2021-06-25 08:18:08Z kohm $
\begingroup
\catcode`\@11\relax
\ifx\KOMAScriptVersion\undefined
@@ -66,19 +66,19 @@
\fi
}
\fi
- \@CheckKOMAScriptVersion{2021/03/17 v3.33 KOMA-Script}%
+ \@CheckKOMAScriptVersion{2021/06/25 v3.34 KOMA-Script}%
\endgroup
\providecommand*{\scr@pkgextension}{\@pkgextension}
\AtBeginDocument{%
\let\scr@pkgextension\@pkgextension
}
-%%% From File: $Id: scrkernel-basics.dtx 3578 2021-03-12 16:50:00Z kohm $
+%%% From File: $Id: scrkernel-basics.dtx 3606 2021-06-08 08:28:35Z kohm $
%%% (run: prepare)
\NeedsTeXFormat{LaTeX2e}[1995/06/01]
\ProvidesPackage{%
scrbase%
}[%
- 2021/03/17 v3.33 KOMA-Script
+ 2021/06/25 v3.34 KOMA-Script
package
(%
KOMA-Script-independent
@@ -248,8 +248,8 @@
\newcommand*{\FamilyOfKey}{}
\newcommand*{\FamilyMemberOfKey}{}
\newcommand*{\@globaloptionslist}{}
-\IncludeInRelease{2021/05/01}{\FamilyProcessOptions}{%
- Usage of raw option list}
+\IncludeInRelease{2021/05/01}{\FamilyProcessOptions}%
+ {Usage of raw or classic option list}
\newcommand*{\FamilyProcessOptions}[2][.\@currname.\@currext]{%
\ifx\AtEndOfFamilyOptions\scr@AtEndOfFamilyOptions
\PackageError{scrbase}{nested \string\FamilyProcessOptions\space
@@ -300,24 +300,55 @@
\csname @raw@opt@\@currname.\@currext\endcsname
}%
\ifx\@currext\@clsextension\else
- \@for\CurrentOption:=\@raw@classoptionslist\do{%
- \scr@trim@spaces\CurrentOption
- \ifx\CurrentOption\@empty\else
- \@ifundefined{ds@\CurrentOption}{%
- \scr@ifprocess@curroption{#1}{#2}{%
- \@expandtwoargs\@removeelement{%
- \expandafter\@remove@eq@value\CurrentOption=\@nil}%
- \@unusedoptionlist\@unusedoptionlist
- }{}%
- }{%
- \@use@ption
- \expandafter\let\csname ds@\CurrentOption\endcsname\@empty
- }%
- \fi
+ \@ifundefined{@raw@classoptionslist}{}{%
+ \@for\CurrentOption:=\@raw@classoptionslist\do{%
+ \scr@trim@spaces\CurrentOption
+ \ifx\CurrentOption\@empty\else
+ \@ifundefined{ds@\CurrentOption}{%
+ \scr@ifprocess@curroption{#1}{#2}{%
+ \@expandtwoargs\@removeelement{%
+ \expandafter\@remove@eq@value\CurrentOption=\@nil}%
+ \@unusedoptionlist\@unusedoptionlist
+ }{}%
+ }{%
+ \@use@ption
+ \expandafter\let\csname ds@\CurrentOption\endcsname\@empty
+ }%
+ \fi
+ }%
}%
\fi
- \@for\CurrentOption:=\@curroptions\do{%
- \scr@trim@spaces\CurrentOption
+ \@for\reserved@a:=\@curroptions\do{%
+ \scr@trim@spaces\reserved@a
+ \def\reserved@b{\CurrentOption}%
+ \ifx\reserved@a\reserved@b
+ \PackageError{scrbase}{%
+ \string\CurrentOption\space loop detected\MessageBreak
+ Perhaps someone uses:\MessageBreak\space\space
+ \ifx\@currext\@clsextension
+ \string\PassOptionsToClass
+ \else
+ \string\PassOptionsToPackage
+ \fi
+ {\string\CurrentOption}{^^e2^^80^^a6}.\MessageBreak
+ With LaTeX 2020/10/01 or 2021/06/01 this results in
+ \string\CurrentOption\MessageBreak
+ in the raw option list and therefore is not allowed.\MessageBreak
+ Please ask the class or package author to use:\MessageBreak\space\space
+ \string\expandafter
+ \ifx\@currext\@clsextension
+ \string\PassOptionsToClass
+ \else
+ \string\PassOptionsToPackage
+ \fi
+ \MessageBreak\space\space\space
+ \string\expandafter{\string\CurrentOption}{^^e2^^80^^a6}\MessageBreak
+ instead or update LaTeX (if possible)%
+ }%
+ \let\CurrentOption\@empty
+ \else
+ \let\CurrentOption\reserved@a
+ \fi
\@ifundefined{ds@\CurrentOption}{%
\@use@ption
\scr@ifprocess@curroption{#1}{#2}{}\default@ds
@@ -333,8 +364,8 @@
\@nameuse{scr@after@options@#2@hook}%
}
\EndIncludeInRelease
-\IncludeInRelease{0000/00/00}{\FamilyProcessOptions}{%
- compatibility for LaTeX before 2021/05/01}
+\IncludeInRelease{0000/00/00}{\FamilyProcessOptions}%
+ {Usage of raw or classic option list}
\newcommand*{\FamilyProcessOptions}[2][.\@currname.\@currext]{%
\ifx\AtEndOfFamilyOptions\scr@AtEndOfFamilyOptions
\PackageError{scrbase}{nested \string\FamilyProcessOptions\space
@@ -566,7 +597,7 @@
\long\def\l@addto@macro#1#2{%
\edef#1{\unexpanded\expandafter{#1#2}}%
}%
-%%% From File: $Id: scrkernel-basics.dtx 3578 2021-03-12 16:50:00Z kohm $
+%%% From File: $Id: scrkernel-basics.dtx 3606 2021-06-08 08:28:35Z kohm $
%%% (run: option)
\DefineFamily{KOMA}
\DefineFamilyMember{KOMA}
@@ -580,7 +611,7 @@
\FamilyProcessOptions{KOMA}\relax
%%% From File: $Id: scrkernel-language.dtx 3480 2020-04-13 09:39:03Z kohm $
%%% (run: option)
-%%% From File: $Id: scrkernel-basics.dtx 3578 2021-03-12 16:50:00Z kohm $
+%%% From File: $Id: scrkernel-basics.dtx 3606 2021-06-08 08:28:35Z kohm $
%%% (run: body)
\newcommand*{\XdivY}[2]{%
\numexpr ( #1 + #2 / 2 ) / #2 - 1\relax