summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-07-04 20:21:24 +0000
committerKarl Berry <karl@freefriends.org>2022-07-04 20:21:24 +0000
commit7770798a0e0cf357fe7333de029151688cc21472 (patch)
tree7829b39c8f67424e53129bb512794174f5bd6bb9 /Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx
parent61e43f410a445f8401e7f644ab978e843cc27858 (diff)
koma-script (4jul22)
git-svn-id: svn://tug.org/texlive/trunk@63809 c570f23f-e606-0410-a88d-b1316a301751
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.dtx43
1 files changed, 29 insertions, 14 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 6c9a8c0302f..44e82629b8f 100644
--- a/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx
+++ b/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx
@@ -16,9 +16,9 @@
%
% The Current Maintainer and author of this work is Markus Kohm.
%
-% This work consists of all files listed in manifest.txt.
+% This work consists of all files listed in MANIFEST.md.
% ======================================================================
-%%% From File: $Id: scrkernel-basics.dtx 3773 2022-03-29 06:27:55Z kohm $
+%%% From File: $Id: scrkernel-basics.dtx 3913 2022-06-28 07:45:49Z kohm $
%<prepare>%%% (run: prepare)
%<option>%%% (run: option)
%<body>%%% (run: body)
@@ -28,9 +28,9 @@
\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
\begingroup
\def\filedate$#1: #2-#3-#4 #5${\def\filedate{#2/#3/#4}}
- \filedate$Date: 2022-03-29 08:27:55 +0200 (Tue, 29 Mar 2022) $
+ \filedate$Date: 2022-06-28 09:45:49 +0200 (Di, 28. Jun 2022) $
\def\filerevision$#1: #2 ${\def\filerevision{r#2}}
- \filerevision$Revision: 3773 $
+ \filerevision$Revision: 3913 $
\edef\reserved@a{%
\noexpand\endgroup
\noexpand\ProvidesFile{scrkernel-basics.dtx}%
@@ -1489,13 +1489,19 @@
%
% \begin{macro}{\@atdocumenttrue,\@atdocumentfalse,\if@atdocument}
% \changes{v2.95}{2002/12/05}{added}
+% \changes{v3.37}{2022/05/06}{\cs{atdocumenttrue} moved with \LaTeX{}
+% 2020/10/01 or newer}
% The boolean switch becomes true while |\begin{document}|. \KOMAScript{} uses
% it for commands and macros, which are different in the document preamble and
% the document body.
% \begin{macrocode}
%<*base>
\newif\if@atdocument
-\AtBeginDocument{\@atdocumenttrue}
+\IfLTXAtLeastTF{2020/10/01}{%
+ \AddToHook{begindocument/before}{\@atdocumenttrue}%
+}{%
+ \AtBeginDocument{\@atdocumenttrue}%
+}
\@onlypreamble\@atdocumentrue
\@onlypreamble\@atdocumentfalse
%</base>
@@ -3321,10 +3327,14 @@
\newcommand*{\scr@show@key@state@error}{%
\ifx\FamilyKeyState\FamilyKeyStateProcessed\else
\PackageError{scrbase}{%
- unknown option
- \ifx\FamilyKeyState\FamilyKeyStateUnknownValue
- value at
- \fi
+ \ifx\FamilyKeyState\FamilyKeyStateNeedValue
+ missing option value at
+ \else
+ unknown option
+ \ifx\FamilyKeyState\FamilyKeyStateUnknownValue
+ value at
+ \fi
+ \fi
`\expandafter\detokenize\expandafter{\scr@key@atlist}'%
}{%
Option
@@ -4425,6 +4435,7 @@
% defined, the user is responsible for that it has to be a number.
% \begin{macro}{\Family@@Counter@@Macro@@Key,\Family@Counter@Macro@Key}
% \changes{v3.15}{2014/12/03}{added}
+% \changes{v3.37}{2022/06/28}{existence test fixed}
% \begin{macrocode}
%<*base>
\newcommand*{\FamilyCounterMacroKey}[3][.\@currname.\@currext]{%
@@ -4434,7 +4445,7 @@
}
\newcommand*{\Family@@Counter@@Macro@@Key}{}
\def\Family@@Counter@@Macro@@Key#1#2#3[#4]#5{%
- \ifdefined#4\else\let#4\z@\fi
+ \ifdefined#5\else\let#5\z@\fi
\DefineFamilyKey[{#1}]{#2}{#3}[{#4}]{\FamilySetCounterMacro{#2}{#3}{#5}{##1}}%
}
\newcommand*{\Family@Counter@Macro@Key}[4]{%
@@ -4880,6 +4891,7 @@
% \cs{def}. So it doesn't matter whether the \meta{macro} is already defined.
% \begin{macro}{\Family@String@Key,\Family@@String@@Key}
% \changes{v3.08}{2010/11/05}{added}
+% \changes{v3.37}{2022/06/28}{state signaling fixed}
% \begin{macrocode}
%<*base>
\newcommand*{\FamilyStringKey}[3][.\@currname.\@currext]{%
@@ -4888,7 +4900,7 @@
}
\newcommand*{\Family@@String@@Key}{}
\long\def\Family@@String@@Key#1#2#3[#4]#5{%
- \DefineFamilyKey[{#1}]{#2}{#3}[{#4}]{\def#5{##1}}%
+ \DefineFamilyKey[{#1}]{#2}{#3}[{#4}]{\def#5{##1}\FamilyKeyStateProcessed}%
}
\newcommand{\Family@String@Key}[4]{%
\DefineFamilyKey[{#1}]{#2}{#3}{\def#4{##1}\FamilyKeyStateProcessed}%
@@ -4913,6 +4925,7 @@
% \begin{macro}{\Family@@CS@@Key}
% \changes{v3.25}{2017/12/08}{added}
% \changes{v3.26}{2018/11/06}{fix: don't overwrite \cs{Family@@String@@Key}}
+% \changes{v3.37}{2022/06/28}{state signaling fixed}
% \begin{macrocode}
%<*base>
\newcommand*{\FamilyCSKey}[3][.\@currname.\@currext]{%
@@ -4921,7 +4934,7 @@
}
\newcommand*{\Family@@CS@@Key}{}
\long\def\Family@@CS@@Key#1#2#3[#4]#5{%
- \DefineFamilyKey[{#1}]{#2}{#3}[{#4}]{\@namedef{#5}{##1}}%
+ \DefineFamilyKey[{#1}]{#2}{#3}[{#4}]{\@namedef{#5}{##1}\FamilyKeyStateProcessed}%
}
\newcommand{\Family@CS@Key}[4]{%
\DefineFamilyKey[{#1}]{#2}{#3}{\@namedef{#4}{##1}\FamilyKeyStateProcessed}%
@@ -4966,6 +4979,8 @@
% \changes{v3.12}{2013/03/04}{test to use \opt{version\quotechar=first}}
% \changes{v3.12a}{2014/01/22}{test fixed}
% \changes{v3.22}{2016/07/29}{added several \cs{detokenize}}
+% \changes{v3.37}{2022/06/21}{message text ``obsolete'' replaced by
+% ``deprecated''}
% One more helper:
% \begin{quote}
% \cs{KOMA@UseDeprecatedOption}\marg{warning command}\marg{classic
@@ -4981,7 +4996,7 @@
\scr@ifundefinedorrelax{KV@KOMA.\@currname.\@currext @version}{%
\edef\reserved@a{\noexpand\endgroup
\noexpand#1{%
- You've used obsolete option `\detokenize{#2}'.\noexpand\MessageBreak
+ You've used deprecated option `\detokenize{#2}'.\noexpand\MessageBreak
Usage of this option is deprecated.\noexpand\MessageBreak
You should simply replace `\detokenize{#2}'\noexpand\MessageBreak
by `\detokenize{#3}'%
@@ -4992,7 +5007,7 @@
}{%
\edef\reserved@a{\noexpand\endgroup
\noexpand#1{%
- You've used obsolete option `\detokenize{#2}'.\noexpand\MessageBreak
+ You've used deprecated option `\detokenize{#2}'.\noexpand\MessageBreak
Usage of this option indicates an old document\noexpand\MessageBreak
and changes compatibility level using\noexpand\MessageBreak
`\detokenize{#3},version=first,\noexpand\MessageBreak