From d2d86e5041a7b35d055ccfa595df7b1252234d4b Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 28 Jun 2021 20:36:34 +0000 Subject: koma-script (28jun21) git-svn-id: svn://tug.org/texlive/trunk@59737 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/english/scrbookreportarticle-experts.tex | 20 +- .../latex/koma-script/doc/english/scrhack.tex | 11 +- .../latex/koma-script/doc/english/scrwfile.tex | 11 +- .../doc/ngerman/scrbookreportarticle-experts.tex | 22 +- .../latex/koma-script/doc/ngerman/scrhack.tex | 9 +- .../latex/koma-script/doc/ngerman/scrwfile.tex | 9 +- .../source/latex/koma-script/doc/scrguide.pdf | Bin 3271249 -> 3270828 bytes .../source/latex/koma-script/doc/scrguien.pdf | Bin 3186652 -> 3186892 bytes .../source/latex/koma-script/scrhack.dtx | 300 +++++++++++---------- .../source/latex/koma-script/scrkernel-basics.dtx | 99 +++++-- .../latex/koma-script/scrkernel-compatibility.dtx | 10 +- .../source/latex/koma-script/scrkernel-floats.dtx | 199 +++++--------- .../source/latex/koma-script/scrkernel-fonts.dtx | 115 ++++---- .../latex/koma-script/scrkernel-paragraphs.dtx | 15 +- .../latex/koma-script/scrkernel-sections.dtx | 171 +++++++----- .../source/latex/koma-script/scrkernel-version.dtx | 4 +- .../latex/koma-script/scrlayer-notecolumn.dtx | 94 ++++--- .../source/latex/koma-script/scrlayer-scrpage.dtx | 39 +-- .../source/latex/koma-script/scrlfile-hook.dtx | 40 ++- .../latex/koma-script/scrlfile-patcholdlatex.dtx | 30 ++- .../source/latex/koma-script/scrwfile.dtx | 73 +++-- 21 files changed, 712 insertions(+), 559 deletions(-) (limited to 'Master/texmf-dist/source/latex/koma-script') diff --git a/Master/texmf-dist/source/latex/koma-script/doc/english/scrbookreportarticle-experts.tex b/Master/texmf-dist/source/latex/koma-script/doc/english/scrbookreportarticle-experts.tex index 325431cf595..18638fc967b 100644 --- a/Master/texmf-dist/source/latex/koma-script/doc/english/scrbookreportarticle-experts.tex +++ b/Master/texmf-dist/source/latex/koma-script/doc/english/scrbookreportarticle-experts.tex @@ -1,6 +1,6 @@ % ====================================================================== % scrbookreportarticle-experts.tex -% Copyright (c) Markus Kohm, 2001-2019 +% Copyright (c) Markus Kohm, 2001-2021 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -18,7 +18,7 @@ % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrbookreportarticle-experts.tex -% Copyright (c) Markus Kohm, 2001-2019 +% Copyright (c) Markus Kohm, 2001-2021 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. @@ -48,13 +48,13 @@ % ============================================================================ \KOMAProvidesFile{scrbookreportarticle-experts.tex} - [$Date: 2019-12-06 11:54:25 +0100 (Fri, 06 Dec 2019) $ + [$Date: 2021-06-25 10:07:54 +0200 (Fri, 25 Jun 2021) $ KOMA-Script guide (chapter: scrbook, scrreprt, scrartcl for experts)] \translator{Gernot Hassenpflug\and Markus Kohm\and Karl Hagen} -% Date of the translated German file: 2019-12-06 +% Date of the translated German file: 2021-06-25 \chapter[{Additional Information about the Main Classes and \Package{scrextend}}]{Additional Information about the Main Classes @@ -204,8 +204,8 @@ Package authors and authors of wrapper classes can redefine this command to alter the entries. For example\textnote{Example}, you could use \begin{lstcode} \renewcommand{\addtocentrydefault}[3]{% - \Ifstr{#3}{}{% - \Ifstr{#2}{}{% + \IfArgIsEmpty{#3}{% + \IfArgIsEmpty{#2}{% \addcontentsline{toc}{#1}{#3}% }{% \addcontentsline{toc}{#1}{\protect\numberline{#2}#3}% @@ -213,10 +213,10 @@ alter the entries. For example\textnote{Example}, you could use }% }% \end{lstcode} -to\IndexCmd{Ifstr} omit entries with an empty \PName{heading}. In practice, -such a change is not necessary because the \KOMAScript{} classes already use -another method to suppress empty entries. See the description of the -sectioning commands in \autoref{sec:maincls.structure}, starting on +to\IndexCmd{IfArgIsEmpty} omit entries with an empty \PName{heading}. In +practice, such a change is not necessary because the \KOMAScript{} classes +already use another method to suppress empty entries. See the description of +the sectioning commands in \autoref{sec:maincls.structure}, starting on \DescPageRef{maincls.cmd.part} for this.% % \EndIndexGroup diff --git a/Master/texmf-dist/source/latex/koma-script/doc/english/scrhack.tex b/Master/texmf-dist/source/latex/koma-script/doc/english/scrhack.tex index 760052b8cc7..6e31224fafd 100644 --- a/Master/texmf-dist/source/latex/koma-script/doc/english/scrhack.tex +++ b/Master/texmf-dist/source/latex/koma-script/doc/english/scrhack.tex @@ -1,6 +1,6 @@ % ====================================================================== % scrhack.tex -% Copyright (c) Markus Kohm, 2001-2019 +% Copyright (c) Markus Kohm, 2001-2021 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -18,7 +18,7 @@ % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrhack.tex -% Copyright (c) Markus Kohm, 2001-2019 +% Copyright (c) Markus Kohm, 2001-2021 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. @@ -46,11 +46,11 @@ % ============================================================================ \KOMAProvidesFile{scrhack.tex} - [$Date: 2019-11-26 11:13:57 +0100 (Tue, 26 Nov 2019) $ + [$Date: 2021-06-03 19:56:49 +0200 (Thu, 03 Jun 2021) $ KOMA-Script guide (chapter: scrhack)] \translator{Markus Kohm\and Karl Hagen} -% Date of the translated German file: 2019-11-26 +% Date of the translated German file: 2021-06-03 \chapter{Improving Third-Party Packages with \Package{scrhack}} \labelbase{scrhack} @@ -65,6 +65,9 @@ created. This package alters the commands and definitions of other to work better with \KOMAScript{}. Some changes are also useful when using other classes. +It is recommended to load the \Package{scrhack} package as early as +possible. In particular, loading should be done before the affected packages. + \section{Development Status} \label{scr:scrhack.draft} diff --git a/Master/texmf-dist/source/latex/koma-script/doc/english/scrwfile.tex b/Master/texmf-dist/source/latex/koma-script/doc/english/scrwfile.tex index c92f777f74f..144386a23ba 100644 --- a/Master/texmf-dist/source/latex/koma-script/doc/english/scrwfile.tex +++ b/Master/texmf-dist/source/latex/koma-script/doc/english/scrwfile.tex @@ -1,6 +1,6 @@ % ====================================================================== % scrwfile.tex -% Copyright (c) Markus Kohm, 2010-2019 +% Copyright (c) Markus Kohm, 2010-2021 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -18,7 +18,7 @@ % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrwfile.tex -% Copyright (c) Markus Kohm, 2010-2019 +% Copyright (c) Markus Kohm, 2010-2021 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. @@ -46,10 +46,10 @@ % ============================================================================ \KOMAProvidesFile{scrwfile.tex}% - [$Date: 2019-11-18 10:57:08 +0100 (Mon, 18 Nov 2019) $ + [$Date: 2021-05-30 19:31:59 +0200 (Sun, 30 May 2021) $ KOMA-Script guide (chapter: scrwfile)] -% Date of the translated German file: 2019-11-18 +% Date of the translated German file: 2020-05-30 \translator{Markus Kohm\and Jana Schubert\and Karl Hagen} @@ -154,7 +154,8 @@ Since \Macro{@writefile}\IndexCmd{@writefile} has already been modified for the single-file method described in the previous system so that it no longer writes directly to the corresponding auxiliary file, a further possibility suggests itself. When copying the \Macro{@writefile} statements into the -\File{wrt} file, you can also copy them to other destinations. +\File{wrt} file, you can also copy them to other destinations. It should be +explicitly noted that this only works in the document preamble. \begin{Declaration} \Macro{TOCclone}% 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 index a6da4982583..51c3359e348 100644 --- 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 @@ -1,6 +1,6 @@ % ====================================================================== % scrbookreportarticle-experts.tex -% Copyright (c) Markus Kohm, 2001-2019 +% Copyright (c) Markus Kohm, 2001-2021 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -18,7 +18,7 @@ % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrbookreportarticle-experts.tex -% Copyright (c) Markus Kohm, 2001-2019 +% Copyright (c) Markus Kohm, 2001-2021 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. @@ -48,7 +48,7 @@ % ============================================================================ \KOMAProvidesFile{scrbookreportarticle-experts.tex}% - [$Date: 2019-12-03 09:41:21 +0100 (Tue, 03 Dec 2019) $ + [$Date: 2021-06-25 10:07:17 +0200 (Fri, 25 Jun 2021) $ KOMA-Script guide (chapter: scrbook, scrreprt, scrartcl for experts)] @@ -220,9 +220,9 @@ umdefinieren, um Einfluss auf die Einträge zu nehmen. So\textnote{Beispiel} wäre beispielsweise denkbar, mit \begin{lstcode} \renewcommand{\addtocentrydefault}[3]{% - \Ifstr{#3}{}{% + \IfArgIsEmpty{#3}{% }{% - \Ifstr{#2}{}{% + \IfArgIsEmpty{#2}{% \addcontentsline{toc}{#1}{\protect\nonumberline#3}% }{% \addcontentsline{toc}{#1}{\protect\numberline{#2}#3}% @@ -230,12 +230,12 @@ wäre beispielsweise denkbar, mit }% }% \end{lstcode} -dafür\IndexCmd{Ifstr} zu sorgen, dass Einträge mit leerer \PName{Überschrift} -erst gar nicht vorgenommen werden. Eine solche Änderung ist in der Praxis -jedoch nicht notwendig, da die Unterdrückung leerer Einträge bereits auf -andere Weise in die \KOMAScript-Klassen eingebaut ist. Siehe hierzu auch die -Erklärung zu den Gliederungsbefehlen in \autoref{sec:maincls.structure} ab -\DescPageRef{maincls.cmd.part}.% +dafür\IndexCmd{IfArgIsEmpty} zu sorgen, dass Einträge mit leerer +\PName{Überschrift} erst gar nicht vorgenommen werden. Eine solche Änderung +ist in der Praxis jedoch nicht notwendig, da die Unterdrückung leerer Einträge +bereits auf andere Weise in die \KOMAScript-Klassen eingebaut ist. Siehe +hierzu auch die Erklärung zu den Gliederungsbefehlen in +\autoref{sec:maincls.structure} ab \DescPageRef{maincls.cmd.part}.% % \EndIndexGroup diff --git a/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrhack.tex b/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrhack.tex index 2164484b871..942858109b4 100644 --- a/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrhack.tex +++ b/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrhack.tex @@ -1,6 +1,6 @@ % ====================================================================== % scrhack.tex -% Copyright (c) Markus Kohm, 2001-2019 +% Copyright (c) Markus Kohm, 2001-2021 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -18,7 +18,7 @@ % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrhack.tex -% Copyright (c) Markus Kohm, 2001-2019 +% Copyright (c) Markus Kohm, 2001-2021 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. @@ -46,7 +46,7 @@ % ============================================================================ \KOMAProvidesFile{scrhack.tex} - [$Date: 2019-11-26 11:13:57 +0100 (Tue, 26 Nov 2019) $ + [$Date: 2021-06-03 19:56:49 +0200 (Thu, 03 Jun 2021) $ KOMA-Script guide (chapter: scrhack)] \chapter{Fremdpakete verbessern mit \Package{scrhack}} @@ -63,6 +63,9 @@ Anweisungen und Definitionen anderer Pakete, damit sie besser mit \KOMAScript{} zusammenarbeiten. Einige Änderungen sind auch bei Verwendung anderer Klassen nützlich. +Es wird empfohlen, das Paket \Package{scrhack} so früh wie möglich zu +laden. Insbesondere sollte das Laden vor den betroffenen Paketen erfolgen. + \section{Entwicklungsstand} \seclabel{draft} diff --git a/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrwfile.tex b/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrwfile.tex index 34400d50a30..e8e9774ad7a 100644 --- a/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrwfile.tex +++ b/Master/texmf-dist/source/latex/koma-script/doc/ngerman/scrwfile.tex @@ -1,6 +1,6 @@ % ====================================================================== % scrwfile.tex -% Copyright (c) Markus Kohm, 2001-2019 +% Copyright (c) Markus Kohm, 2001-2021 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -18,7 +18,7 @@ % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrwfile.tex -% Copyright (c) Markus Kohm, 2001-2019 +% Copyright (c) Markus Kohm, 2001-2021 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. @@ -46,7 +46,7 @@ % ============================================================================ \KOMAProvidesFile{scrwfile.tex} - [$Date: 2019-11-18 10:57:08 +0100 (Mon, 18 Nov 2019) $ + [$Date: 2021-05-30 19:31:59 +0200 (Sun, 30 May 2021) $ KOMA-Script guide (chapter: scrwfile)] \chapter{Dateien mit \Package{scrwfile} sparen und ersetzen} @@ -158,7 +158,8 @@ Nachdem \Macro{@writefile}\IndexCmd{@writefile} für das Eindateiensystem aus dem vorherigen Abschnitt bereits so geändert wurde, dass es nicht direkt in die entsprechende Hilfsdatei schreibt, lag eine weitere Idee nahe. Beim Kopieren der \Macro{@writefile}-Anweisungen in die \File{wrt}-Datei können -diese auch für andere Zielendungen übernommen werden. +diese auch für andere Zielendungen übernommen werden. Es sei ausdrücklich +darauf hingewiesen, dass dies nur in der Dokumentpräambel funktioniert. \begin{Declaration} \Macro{TOCclone}\OParameter{Verzeichnisüberschrift} diff --git a/Master/texmf-dist/source/latex/koma-script/doc/scrguide.pdf b/Master/texmf-dist/source/latex/koma-script/doc/scrguide.pdf index 4fd118b7ba3..27077eab0ff 100644 Binary files a/Master/texmf-dist/source/latex/koma-script/doc/scrguide.pdf and b/Master/texmf-dist/source/latex/koma-script/doc/scrguide.pdf differ diff --git a/Master/texmf-dist/source/latex/koma-script/doc/scrguien.pdf b/Master/texmf-dist/source/latex/koma-script/doc/scrguien.pdf index 9ac9db361fe..b6d781f947c 100644 Binary files a/Master/texmf-dist/source/latex/koma-script/doc/scrguien.pdf and b/Master/texmf-dist/source/latex/koma-script/doc/scrguien.pdf differ diff --git a/Master/texmf-dist/source/latex/koma-script/scrhack.dtx b/Master/texmf-dist/source/latex/koma-script/scrhack.dtx index 49cf81ef4e5..1a75956680f 100644 --- a/Master/texmf-dist/source/latex/koma-script/scrhack.dtx +++ b/Master/texmf-dist/source/latex/koma-script/scrhack.dtx @@ -1,7 +1,7 @@ % \iffalse meta-comment % ====================================================================== % scrhack.dtx -% Copyright (c) Markus Kohm, 2008-2020 +% Copyright (c) Markus Kohm, 2008-2021 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -22,7 +22,7 @@ % of TeX would generate the implementation documentation. % ---------------------------------------------------------------------- % scrhack.dtx -% Copyright (c) Markus Kohm, 2008-2020 +% Copyright (c) Markus Kohm, 2008-2021 % % Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, % Version 1.3c, verteilt und/oder veraendert werden. @@ -61,7 +61,7 @@ % Right brace \} Tilde \~} % % \iffalse -%%% From File: $Id: scrhack.dtx 3508 2020-07-08 08:45:20Z kohm $ +%%% From File: $Id: scrhack.dtx 3602 2021-06-03 17:24:02Z kohm $ %%%% using: package,identify %%%% using: package,option %%%% using: package,body @@ -70,7 +70,7 @@ \ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi \begingroup \def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}} - \filedate$Date: 2020-07-08 10:45:20 +0200 (Wed, 08 Jul 2020) $ + \filedate$Date: 2021-06-03 19:24:02 +0200 (Thu, 03 Jun 2021) $ \def\filerevision$#1: #2 ${\gdef\filerevision{r#2}} \filerevision$Revision: 1962 $ \endgroup @@ -481,44 +481,44 @@ % \end{macro} % % -% \subsection{Der \textsf{float}-Hack} +% \subsection{Der \textsf{floatrow}-Hack} % -% Das \textsf{float}-Paket verwendet das Makro \cs{float@listhead} zum +% Das \textsf{floatrow}-Paket verwendet das Makro \cs{float@listhead} zum % Setzen der Überschriften. Dies wird seit \KOMAScript~3 nicht mehr empfohlen % und fliegt demnächst komplett aus der Unterstützung. Stattdessen wird % empfohlen, dass Pakete \textsf{tocbasic} unterstützen. Der Aufwand dafür ist % sehr gering und wird mit vielen neuen Möglichkeiten belohnt. % -% Dieser Hack rüstet die \textsf{tocbasic}-Unterstützung für \textsf{float} +% Dieser Hack rüstet die \textsf{tocbasic}-Unterstützung für \textsf{floatrow} % nach. % -% \begin{option}{float} -% \changes{v3.12}{2013/03/05}{Signalisierung mit -% \cs{FamilyKeyStateProcessed}}%^^A +% \begin{option}{floatrow} +% \changes{v3.12}{2013/03/05}{Signalisierung mit \cs{FamilyKeyStateProcessed}} % \changes{v3.17}{2015/03/09}{Defaulteinstellung mit -% \cs{KOMAExecuteOptions}}%^^A +% \cs{KOMAExecuteOptions}} +% \changes{v3.34}{2021/06/03}{Deaktivierung des \textsf{float}-Hacks} % \begin{macrocode} %<*package&option> -\KOMA@ifkey{float}{@scrhack@float}% -\KOMAExecuteOptions{float=true}% +\KOMA@ifkey{floatrow}{@scrhack@floatrow} +\KOMAExecuteOptions{floatrow=true} % %<*package&body> -\AfterPackage*{float}{% - \KOMA@key[.scrhack.sty]{float}{% - \PackageWarning{scrhack}{option `float' ignored}% +\AfterPackage*{floatrow}{% + \KOMAoptions{float=false}% + \PackageInfo{scrhack}{option `float' deactivated}% + \KOMA@key[.scrhack.sty]{floatrow}{% + \PackageWarning{scrhack}{option `floatrow' ignored}% \FamilyKeyStateProcessed }% - \if@scrhack@float\scr@hack@load\@pkgextension{float}\fi + \if@scrhack@floatrow\scr@hack@load\@pkgextension{floatrow}\fi } % % \end{macrocode} % \end{option} % % -% \begin{macro}{\newfloat} -% \changes{v3.28}{2019/11/19}{\cs{ifattoclist} replaced by -% \cs{Ifattoclist}}%^^A -% Über die Anweisung \cs{newfloat} wird eine neue Gleitumgebung +% \begin{macro}{\DeclareNewFloatType} +% Über die Anweisung \cs{DeclareNewFloatType} wird eine neue Gleitumgebung % definiert. Hier muss die neue Erweiterung aus dem dritten Argument % \textsf{tocbasic} bekannt gemacht werden. % \begin{macro}{\listof} @@ -529,68 +529,51 @@ % Diese Anweisung wird nicht länger benötigt und daher auf die ursprüngliche % Definition zurückgesetzt. % \begin{macrocode} -%<*float&body> -\scr@ifexpected{\newfloat}{% - \long\def\newfloat#1#2#3{\@namedef{ext@#1}{#3} - \let\float@do=\relax - \xdef\@tempa{\noexpand\float@exts{\the\float@exts \float@do{#3}}}% - \@tempa - \floatplacement{#1}{#2}% - \@ifundefined{fname@#1}{\floatname{#1}{#1}}{} - \expandafter\edef\csname ftype@#1\endcsname{\value{float@type}}% - \addtocounter{float@type}{\value{float@type}} - \restylefloat{#1}% - \expandafter\edef\csname fnum@#1\endcsname% - {\expandafter\noexpand\csname fname@#1\endcsname{} - \expandafter\noexpand\csname the#1\endcsname} - \@ifnextchar[%] - {\float@newx{#1}}% - {\@ifundefined{c@#1}{\newcounter{#1}\@namedef{the#1}{\arabic{#1}}}% - {}}}% +%<*floatrow&body> +\scr@ifexpected{\DeclareNewFloatType}{% + \long\def\DeclareNewFloatType#1#2{\def\FB@captype{#1}% + \expandafter\edef\csname ftype@#1\endcsname{\the\c@float@type}% + \addtocounter{float@type}{\value{float@type}}% + \@namedef{#1name}{#1}\newcounter{#1}% + \expandafter\edef\csname fnum@#1\endcsname + {\expandafter\noexpand\csname #1name\endcsname\nobreakspace + \expandafter\noexpand\csname the#1\endcsname}% + \@namedef{the#1}{\arabic{#1}}\flnew@ext{lo#1}\@namedef{fps@#1}{tbp}% + \@namedef{l@#1}{\@dottedtocline{1}{1.5em}{2.3em}}% + \caption@setkeys[floatrow]{newfloat}{#2}\let\FR@tmp=\relax + \xdef\@tempa{\noexpand\flrow@types{\the\flrow@types \FR@tmp{#1}}}% + \@tempa}% }{% \scr@ifexpected{\listof}{% \def\listof#1#2{% - \@ifundefined{ext@#1}{\float@error{#1}}{% - \@namedef{l@#1}{\@dottedtocline{1}{1.5em}{2.3em}}% + \@ifundefined{ext@#1}{\flrow@error{Unknown float style `#1'}}{% + \expandafter\providecommand\csname l@#1\endcsname + {\@dottedtocline{1}{1.5em}{2.3em}}% \float@listhead{#2}% \begingroup\setlength{\parskip}{\z@}% \@starttoc{\@nameuse{ext@#1}}% \endgroup}}% }{% \RequirePackage{tocbasic}% - \PackageInfo{scrhack}{redefining \string\newfloat}% - \renewcommand\newfloat[3]{% - \Ifattoclist{#3}{% - \PackageError{scrhack}{extension `#3' already in use}{% - Each extension may be used only once.\MessageBreak - You, the class, or another package already uses extension - `#3'.\MessageBreak - \string\newfloat\space command will be ignored!}% - }{% - \addtotoclist[float]{#3}% - \setuptoc{#3}{chapteratlist}% - \@namedef{ext@#1}{#3}% - \let\float@do=\relax - \xdef\@tempa{\noexpand\float@exts{\the\float@exts \float@do{#3}}}% - \@tempa - \floatplacement{#1}{#2}% - \@ifundefined{fname@#1}{\floatname{#1}{#1}}{}% - \expandafter\edef\csname ftype@#1\endcsname{\value{float@type}}% - \addtocounter{float@type}{\value{float@type}} - \restylefloat{#1}% - \expandafter\edef\csname fnum@#1\endcsname% - {\expandafter\noexpand\csname fname@#1\endcsname{} - \expandafter\noexpand\csname the#1\endcsname}% - \@ifnextchar[%] - {\float@newx{#1}}% - {\@ifundefined{c@#1}{\newcounter{#1}\@namedef{the#1}{\arabic{#1}}}% - {}}}% - }% - \PackageInfo{scrhack}{redefining \string\listof}% - \renewcommand*\listof[2]{% - \@ifundefined{ext@#1}{\float@error{#1}}{% - \@ifundefined{l@#1}{\expandafter\let\csname l@#1\endcsname\l@figure - \@ifundefined{l@#1}{% + \PackageInfo{scrhack}{redefining \string\DeclareNewFloatType}% +% \end{macrocode} +% Eigentlich wäre es besser, wie im \textsf{float}-Hack einen Test +% vorzuschalten, ob die Dateiendung bereits in Gebrauch ist. Aber das würde +% voraussetzen, dass die Reihenfolge der Anweisungen geändert wird. Dazu +% stecke ich aber im Code von \textsf{floatrow} zu wenig +% drin. (\emph{\foreignlanguage{english}{Note: It would be better to first +% test, if the new extension is already in use like done at the +% \textsf{float} hack. But I don't know the \textsf{floatrow} code good +% enough to make such a change!}}) +% \begin{macrocode} + \renewcommand\DeclareNewFloatType[2]{\def\FB@captype{#1}% + \expandafter\edef\csname ftype@#1\endcsname{\the\c@float@type}% + \addtocounter{float@type}{\value{float@type}}% + \@namedef{#1name}{#1}\newcounter{#1}% + \expandafter\edef\csname fnum@#1\endcsname + {\expandafter\noexpand\csname #1name\endcsname\nobreakspace + \expandafter\noexpand\csname the#1\endcsname}% + \@namedef{the#1}{\arabic{#1}}\flnew@ext{lo#1}\@namedef{fps@#1}{tbp}% % \end{macrocode} % \changes{v3.25}{2018/03/16}{Verwendung von \cs{DeclareTOCStyleEntry}}%^^A % Bis Version 3.24 wurde hier nun wie üblich |\l@#1| unter Verwendung von @@ -600,6 +583,23 @@ % \end{verbatim} % Da aber \Package{tocbasic} inzwischen diese schöne Schnittstelle für die % Verzeichniseinträge bietet, verwenden wir die hier nun auch: +% \begin{macrocode} + \DeclareTOCStyleEntry[level=1,numwidth=2.3em,indent=1.5em]{default}{#1}% + \caption@setkeys[floatrow]{newfloat}{#2}\let\FR@tmp=\relax + \xdef\@tempa{\noexpand\flrow@types{\the\flrow@types \FR@tmp{#1}}}% + \@tempa + \xdef\@tempa{\noexpand\addtotoclist[float]{\@nameuse{ext@\FB@captype}}% + \noexpand\setuptoc{\@nameuse{ext@\FB@captype}}{chapteratlist}% + }% + \@tempa + }% + \PackageInfo{scrhack}{redefining \string\listof}% + \renewcommand*\listof[2]{% + \@ifundefined{ext@#1}{\flrow@error{Unknown float style `#1'}}{% + \@ifundefined{l@#1}{\expandafter\let\csname l@#1\endcsname\l@figure + \@ifundefined{l@#1}{% +% \end{macrocode} +% Siehe die Anmerkung zur Verwendung von \cs{DeclareTOCStyleEntry} oben. % \begin{macrocode} \DeclareTOCStyleEntry[level=1,numwidth=2.3em,indent=1.5em] {default}{#1}% @@ -617,61 +617,63 @@ }{% \PackageWarningNoLine{scrhack}{unkown \string\float@addtolists\space definition found!\MessageBreak - Maybe you are using a unsupported float version}% + Maybe you are using a unsupported floatrow version}% }% }{% \PackageWarningNoLine{scrhack}{unknown \string\listof\space definition found!\MessageBreak - Maybe you are using a unsupported float version}% + Maybe you are using a unsupported floatrow version}% }% }{% - \PackageWarningNoLine{scrhack}{unknown \string\newfloat\space + \PackageWarningNoLine{scrhack}{unknown \string\DeclareNewFloatType\space definition found!\MessageBreak - Maybe you are using a unsupported float version}% + Maybe you are using a unsupported floatrow version}% } -% +% % \end{macrocode} % \end{macro} % \end{macro} % \end{macro} % % -% \subsection{Der \textsf{floatrow}-Hack} +% \subsection{Der \textsf{float}-Hack} % -% Das \textsf{floatrow}-Paket verwendet das Makro \cs{float@listhead} zum +% Das \textsf{float}-Paket verwendet das Makro \cs{float@listhead} zum % Setzen der Überschriften. Dies wird seit \KOMAScript~3 nicht mehr empfohlen % und fliegt demnächst komplett aus der Unterstützung. Stattdessen wird % empfohlen, dass Pakete \textsf{tocbasic} unterstützen. Der Aufwand dafür ist % sehr gering und wird mit vielen neuen Möglichkeiten belohnt. % -% Dieser Hack rüstet die \textsf{tocbasic}-Unterstützung für \textsf{floatrow} +% Dieser Hack rüstet die \textsf{tocbasic}-Unterstützung für \textsf{float} % nach. % -% \begin{option}{floatrow} +% \begin{option}{float} % \changes{v3.12}{2013/03/05}{Signalisierung mit % \cs{FamilyKeyStateProcessed}}%^^A % \changes{v3.17}{2015/03/09}{Defaulteinstellung mit % \cs{KOMAExecuteOptions}}%^^A % \begin{macrocode} %<*package&option> -\KOMA@ifkey{floatrow}{@scrhack@floatrow} -\KOMAExecuteOptions{floatrow=true} +\KOMA@ifkey{float}{@scrhack@float}% +\KOMAExecuteOptions{float=true}% % %<*package&body> -\AfterPackage*{floatrow}{% - \KOMA@key[.scrhack.sty]{floatrow}{% - \PackageWarning{scrhack}{option `floatrow' ignored}% +\AfterPackage*{float}{% + \KOMA@key[.scrhack.sty]{float}{% + \PackageWarning{scrhack}{option `float' ignored}% \FamilyKeyStateProcessed }% - \if@scrhack@floatrow\scr@hack@load\@pkgextension{floatrow}\fi + \if@scrhack@float\scr@hack@load\@pkgextension{float}\fi } % % \end{macrocode} % \end{option} % % -% \begin{macro}{\DeclareNewFloatType} -% Über die Anweisung \cs{DeclareNewFloatType} wird eine neue Gleitumgebung +% \begin{macro}{\newfloat} +% \changes{v3.28}{2019/11/19}{\cs{ifattoclist} replaced by +% \cs{Ifattoclist}}%^^A +% Über die Anweisung \cs{newfloat} wird eine neue Gleitumgebung % definiert. Hier muss die neue Erweiterung aus dem dritten Argument % \textsf{tocbasic} bekannt gemacht werden. % \begin{macro}{\listof} @@ -682,51 +684,68 @@ % Diese Anweisung wird nicht länger benötigt und daher auf die ursprüngliche % Definition zurückgesetzt. % \begin{macrocode} -%<*floatrow&body> -\scr@ifexpected{\DeclareNewFloatType}{% - \long\def\DeclareNewFloatType#1#2{\def\FB@captype{#1}% - \expandafter\edef\csname ftype@#1\endcsname{\the\c@float@type}% - \addtocounter{float@type}{\value{float@type}}% - \@namedef{#1name}{#1}\newcounter{#1}% - \expandafter\edef\csname fnum@#1\endcsname - {\expandafter\noexpand\csname #1name\endcsname\nobreakspace - \expandafter\noexpand\csname the#1\endcsname}% - \@namedef{the#1}{\arabic{#1}}\flnew@ext{lo#1}\@namedef{fps@#1}{tbp}% - \@namedef{l@#1}{\@dottedtocline{1}{1.5em}{2.3em}}% - \caption@setkeys[floatrow]{newfloat}{#2}\let\FR@tmp=\relax - \xdef\@tempa{\noexpand\flrow@types{\the\flrow@types \FR@tmp{#1}}}% - \@tempa}% +%<*float&body> +\scr@ifexpected{\newfloat}{% + \long\def\newfloat#1#2#3{\@namedef{ext@#1}{#3} + \let\float@do=\relax + \xdef\@tempa{\noexpand\float@exts{\the\float@exts \float@do{#3}}}% + \@tempa + \floatplacement{#1}{#2}% + \@ifundefined{fname@#1}{\floatname{#1}{#1}}{} + \expandafter\edef\csname ftype@#1\endcsname{\value{float@type}}% + \addtocounter{float@type}{\value{float@type}} + \restylefloat{#1}% + \expandafter\edef\csname fnum@#1\endcsname% + {\expandafter\noexpand\csname fname@#1\endcsname{} + \expandafter\noexpand\csname the#1\endcsname} + \@ifnextchar[%] + {\float@newx{#1}}% + {\@ifundefined{c@#1}{\newcounter{#1}\@namedef{the#1}{\arabic{#1}}}% + {}}}% }{% \scr@ifexpected{\listof}{% \def\listof#1#2{% - \@ifundefined{ext@#1}{\flrow@error{Unknown float style `#1'}}{% - \expandafter\providecommand\csname l@#1\endcsname - {\@dottedtocline{1}{1.5em}{2.3em}}% + \@ifundefined{ext@#1}{\float@error{#1}}{% + \@namedef{l@#1}{\@dottedtocline{1}{1.5em}{2.3em}}% \float@listhead{#2}% \begingroup\setlength{\parskip}{\z@}% \@starttoc{\@nameuse{ext@#1}}% \endgroup}}% }{% \RequirePackage{tocbasic}% - \PackageInfo{scrhack}{redefining \string\DeclareNewFloatType}% -% \end{macrocode} -% Eigentlich wäre es besser, wie im \textsf{float}-Hack einen Test -% vorzuschalten, ob die Dateiendung bereits in Gebrauch ist. Aber das würde -% voraussetzen, dass die Reihenfolge der Anweisungen geändert wird. Dazu -% stecke ich aber im Code von \textsf{floatrow} zu wenig -% drin. (\emph{\foreignlanguage{english}{Note: It would be better to first -% test, if the new extension is already in use like done at the -% \textsf{float} hack. But I don't know the \textsf{floatrow} code good -% enough to make such a change!}}) -% \begin{macrocode} - \renewcommand\DeclareNewFloatType[2]{\def\FB@captype{#1}% - \expandafter\edef\csname ftype@#1\endcsname{\the\c@float@type}% - \addtocounter{float@type}{\value{float@type}}% - \@namedef{#1name}{#1}\newcounter{#1}% - \expandafter\edef\csname fnum@#1\endcsname - {\expandafter\noexpand\csname #1name\endcsname\nobreakspace - \expandafter\noexpand\csname the#1\endcsname}% - \@namedef{the#1}{\arabic{#1}}\flnew@ext{lo#1}\@namedef{fps@#1}{tbp}% + \PackageInfo{scrhack}{redefining \string\newfloat}% + \renewcommand\newfloat[3]{% + \Ifattoclist{#3}{% + \PackageError{scrhack}{extension `#3' already in use}{% + Each extension may be used only once.\MessageBreak + You, the class, or another package already uses extension + `#3'.\MessageBreak + \string\newfloat\space command will be ignored!}% + }{% + \addtotoclist[float]{#3}% + \setuptoc{#3}{chapteratlist}% + \@namedef{ext@#1}{#3}% + \let\float@do=\relax + \xdef\@tempa{\noexpand\float@exts{\the\float@exts \float@do{#3}}}% + \@tempa + \floatplacement{#1}{#2}% + \@ifundefined{fname@#1}{\floatname{#1}{#1}}{}% + \expandafter\edef\csname ftype@#1\endcsname{\value{float@type}}% + \addtocounter{float@type}{\value{float@type}} + \restylefloat{#1}% + \expandafter\edef\csname fnum@#1\endcsname% + {\expandafter\noexpand\csname fname@#1\endcsname{} + \expandafter\noexpand\csname the#1\endcsname}% + \@ifnextchar[%] + {\float@newx{#1}}% + {\@ifundefined{c@#1}{\newcounter{#1}\@namedef{the#1}{\arabic{#1}}}% + {}}}% + }% + \PackageInfo{scrhack}{redefining \string\listof}% + \renewcommand*\listof[2]{% + \@ifundefined{ext@#1}{\float@error{#1}}{% + \@ifundefined{l@#1}{\expandafter\let\csname l@#1\endcsname\l@figure + \@ifundefined{l@#1}{% % \end{macrocode} % \changes{v3.25}{2018/03/16}{Verwendung von \cs{DeclareTOCStyleEntry}}%^^A % Bis Version 3.24 wurde hier nun wie üblich |\l@#1| unter Verwendung von @@ -736,23 +755,6 @@ % \end{verbatim} % Da aber \Package{tocbasic} inzwischen diese schöne Schnittstelle für die % Verzeichniseinträge bietet, verwenden wir die hier nun auch: -% \begin{macrocode} - \DeclareTOCStyleEntry[level=1,numwidth=2.3em,indent=1.5em]{default}{#1}% - \caption@setkeys[floatrow]{newfloat}{#2}\let\FR@tmp=\relax - \xdef\@tempa{\noexpand\flrow@types{\the\flrow@types \FR@tmp{#1}}}% - \@tempa - \xdef\@tempa{\noexpand\addtotoclist[float]{\@nameuse{ext@\FB@captype}}% - \noexpand\setuptoc{\@nameuse{ext@\FB@captype}}{chapteratlist}% - }% - \@tempa - }% - \PackageInfo{scrhack}{redefining \string\listof}% - \renewcommand*\listof[2]{% - \@ifundefined{ext@#1}{\flrow@error{Unknown float style `#1'}}{% - \@ifundefined{l@#1}{\expandafter\let\csname l@#1\endcsname\l@figure - \@ifundefined{l@#1}{% -% \end{macrocode} -% Siehe die Anmerkung zur Verwendung von \cs{DeclareTOCStyleEntry} oben. % \begin{macrocode} \DeclareTOCStyleEntry[level=1,numwidth=2.3em,indent=1.5em] {default}{#1}% @@ -770,19 +772,19 @@ }{% \PackageWarningNoLine{scrhack}{unkown \string\float@addtolists\space definition found!\MessageBreak - Maybe you are using a unsupported floatrow version}% + Maybe you are using a unsupported float version}% }% }{% \PackageWarningNoLine{scrhack}{unknown \string\listof\space definition found!\MessageBreak - Maybe you are using a unsupported floatrow version}% + Maybe you are using a unsupported float version}% }% }{% - \PackageWarningNoLine{scrhack}{unknown \string\DeclareNewFloatType\space + \PackageWarningNoLine{scrhack}{unknown \string\newfloat\space definition found!\MessageBreak - Maybe you are using a unsupported floatrow version}% + Maybe you are using a unsupported float version}% } -% +% % \end{macrocode} % \end{macro} % \end{macro} 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 fa5cb5e9a68..9c8358b4661 100644 --- a/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx +++ b/Master/texmf-dist/source/latex/koma-script/scrkernel-basics.dtx @@ -36,7 +36,7 @@ % Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien. % ====================================================================== % -%%% 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) % % % \end{macrocode} % \end{macro} % \end{macro} % % +% \selectlanguage{ngerman} % \subsection{Teile} % % \changes{v2.8e}{2001/07/10}{\cs{@thepart} entfernt} @@ -4596,53 +4603,93 @@ % \end{option} % \end{option} % +% \selectlanguage{english} % \begin{option}{appendixprefix} -% \changes{v2.8}{2001/06/15}{neue Option}%^^A -% \changes{v2.95c}{2006/08/21}{als \textsf{keyval}-Option}%^^A -% \changes{v3.12}{2013/03/05}{Verwendung der Status-Signalisierung mit -% \cs{FamilyKeyState}}%^^A -% \changes{v3.17}{2015/03/09}{interne Speicherung des Wert}%^^A -% \begin{option}{noappendixprefix} -% \changes{v2.8}{2001/06/15}{neue Option}%^^A -% \changes{v2.95c}{2006/08/21}{obsolete Option}%^^A -% \changes{v3.01a}{2008/11/20}{deprecated}%^^A -% Will man abweichend von der Option \texttt{chapterprefix} die großen -% Überschriften für den Anhang aktivieren oder deaktivieren, so kann man das -% mit dieser Option erreichen. Allerdings setzt diese keinen Schalter, sondern -% ein Zusatzmakro, das auch für andere Zwecke genutzt werden kann. Übrigens -% ist keine der beiden Einstellungen die Voreinstellung! +% \changes{v2.8}{2001/06/15}{new option} +% \changes{v2.95c}{2006/08/21}{re-implementation as \textsf{keyval} option} +% \changes{v3.12}{2013/03/05}{usage of \cs{FamilyKeyState}} +% \changes{v3.17}{2015/03/09}{internal value storage} +% \changes{v3.34}{2021/04/30}{usage of \LaTeX{} hook, if available} +% \changes{v3.34}{2021/04/30}{new value \texttt{default} with \LaTeX{} hooks} +% If the appendix chapters should be with or without prefix line independent +% from the chapters of the main part, option \Option{appendixprefix} can be +% used. This does not set up a new boolean but just activates or deactivates +% the boolean for chapters inside \cs{appendix}. From \KOMAScript{} v3.34 and +% \LaTeX{} 2020/10/01 this is done using a new \LaTeX{} hook. Otherwise still +% \cs{appendixmore} is used. Default is, using the settings for chapters. % \begin{macrocode} %<*option> -\KOMA@key{appendixprefix}[true]{% - \KOMA@set@ifkey{appendixprefix}{@tempswa}{#1}% - \ifx\FamilyKeyState\FamilyKeyStateProcessed - \KOMA@kav@xreplacevalue{.\KOMAClassFileName}{appendixprefix}{#1}% - \KOMA@kav@remove{.\KOMAClassFileName}{headings}{twolineappendix}% - \KOMA@kav@remove{.\KOMAClassFileName}{headings}{onelineappendix}% - \if@tempswa - \KOMA@kav@add{.\KOMAClassFileName}{headings}{twolineappendix}% - \@ifundefined{appendixmore}{% - \def\appendixmore{\@chapterprefixtrue}% - }{% - \l@addto@macro\appendixmore{\@chapterprefixtrue}% - }% - \else - \KOMA@kav@add{.\KOMAClassFileName}{headings}{onelineappendix}% - \@ifundefined{appendixmore}{% - \def\appendixmore{\@chapterprefixfalse}% - }{% - \l@addto@macro\appendixmore{\@chapterprefixfalse}% +\IfLTXAtLeastTF{2020/10/01}{% + \KOMA@key{appendixprefix}[true]{% + \Ifstr{#1}{default}{% + \KOMA@kav@removekey{.\KOMAClassFileName}{appendixprefix}% + \KOMA@kav@remove{.\KOMAClassFileName}{headings}{twolineappendix}% + \KOMA@kav@remove{.\KOMAClassFileName}{headings}{onelineappendix}% + \IfHookEmptyTF{\KOMAClassName/appendix}{}{% + \RemoveFromHook{\KOMAClassName/appendix}[appendixprefix]% }% + \FamilyKeyStateProcessed + }{% + \KOMA@set@ifkey{appendixprefix}{@tempswa}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed + \KOMA@kav@xreplacevalue{.\KOMAClassFileName}{appendixprefix}{#1}% + \KOMA@kav@remove{.\KOMAClassFileName}{headings}{twolineappendix}% + \KOMA@kav@remove{.\KOMAClassFileName}{headings}{onelineappendix}% + \IfHookEmptyTF{\KOMAClassName/appendix}{}{% + \RemoveFromHook{\KOMAClassName/appendix}[appendixprefix]% + }% + \if@tempswa + \KOMA@kav@add{.\KOMAClassFileName}{headings}{twolineappendix}% + \AddToHook{\KOMAClassName/appendix}[appendixprefix]% + {\@chapterprefixtrue}% + \else + \KOMA@kav@add{.\KOMAClassFileName}{headings}{onelineappendix}% + \AddToHook{\KOMAClassName/appendix}[appendixprefix]% + {\@chapterprefixfalse}% + \fi + \fi + }% + }% +}{% + \KOMA@key{appendixprefix}[true]{% + \KOMA@set@ifkey{appendixprefix}{@tempswa}{#1}% + \ifx\FamilyKeyState\FamilyKeyStateProcessed + \KOMA@kav@xreplacevalue{.\KOMAClassFileName}{appendixprefix}{#1}% + \KOMA@kav@remove{.\KOMAClassFileName}{headings}{twolineappendix}% + \KOMA@kav@remove{.\KOMAClassFileName}{headings}{onelineappendix}% + \if@tempswa + \KOMA@kav@add{.\KOMAClassFileName}{headings}{twolineappendix}% + \@ifundefined{appendixmore}{% + \def\appendixmore{\@chapterprefixtrue}% + }{% + \l@addto@macro\appendixmore{\@chapterprefixtrue}% + }% + \else + \KOMA@kav@add{.\KOMAClassFileName}{headings}{onelineappendix}% + \@ifundefined{appendixmore}{% + \def\appendixmore{\@chapterprefixfalse}% + }{% + \l@addto@macro\appendixmore{\@chapterprefixfalse}% + }% + \fi \fi - \fi + }% } +% \end{macrocode} +% \end{option}%^^A appendixprefix +% +% \begin{option}{noappendixprefix} +% \changes{v2.8}{2001/06/15}{new option} +% \changes{v2.95c}{2006/08/21}{obsolete option} +% \changes{v3.01a}{2008/11/20}{deprecated} +% \begin{macrocode} \KOMA@DeclareDeprecatedOption{noappendixprefix}{appendixprefix=false} % % \end{macrocode} % \end{option}%^^A noappendixprefix -% \end{option}%^^A appendixprefix % % +% \selectlanguage{ngerman} % \begin{macro}{\size@chapter} % \changes{v2.8o}{2001/09/14}{neu (intern)}%^^A % \changes{v2.96a}{2006/12/02}{letztes Element darf ein Argument erwarten, diff --git a/Master/texmf-dist/source/latex/koma-script/scrkernel-version.dtx b/Master/texmf-dist/source/latex/koma-script/scrkernel-version.dtx index 6bf55b77952..2f09f4d0837 100644 --- a/Master/texmf-dist/source/latex/koma-script/scrkernel-version.dtx +++ b/Master/texmf-dist/source/latex/koma-script/scrkernel-version.dtx @@ -55,7 +55,7 @@ % Right brace \} Tilde \~} % % \iffalse -%%% 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 $ % \fi % % \iffalse @@ -123,7 +123,7 @@ \fi % \fi - \@CheckKOMAScriptVersion{2021/03/17 v3.33 KOMA-Script}% + \@CheckKOMAScriptVersion{2021/06/25 v3.34 KOMA-Script}% \endgroup % \end{macrocode} % \end{macro} diff --git a/Master/texmf-dist/source/latex/koma-script/scrlayer-notecolumn.dtx b/Master/texmf-dist/source/latex/koma-script/scrlayer-notecolumn.dtx index d0c33a8c927..e169ac4772f 100644 --- a/Master/texmf-dist/source/latex/koma-script/scrlayer-notecolumn.dtx +++ b/Master/texmf-dist/source/latex/koma-script/scrlayer-notecolumn.dtx @@ -1,7 +1,7 @@ % \iffalse^^A meta-comment % ====================================================================== % scrlayer-notecolumn.dtx -% Copyright (c) Markus Kohm, 2013-2020 +% Copyright (c) Markus Kohm, 2013-2021 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -19,7 +19,7 @@ % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrlayer-notecolumn.dtx -% Copyright (c) Markus Kohm, 2013-2020 +% Copyright (c) Markus Kohm, 2013-2021 % % Diese Datei ist Teil der LaTeX2e KOMA-Script-Sammlung. % @@ -38,7 +38,7 @@ % Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien. % ====================================================================== % -%%% From File: $Id: scrlayer-notecolumn.dtx 3533 2020-09-11 13:32:10Z kohm $ +%%% From File: $Id: scrlayer-notecolumn.dtx 3601 2021-05-30 19:11:44Z kohm $ %%%% (run: identify) %%%% (run: init) %%%% (run: options) @@ -48,9 +48,9 @@ \ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi \begingroup \def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}} - \filedate$Date: 2020-09-11 15:32:10 +0200 (Fri, 11 Sep 2020) $ + \filedate$Date: 2021-05-30 21:11:44 +0200 (Sun, 30 May 2021) $ \def\filerevision$#1: #2 ${\gdef\filerevision{v0.3.#2}} - \filerevision$Revision: 3533 $ + \filerevision$Revision: 3601 $ \edef\reserved@a{% \noexpand\endgroup \noexpand\ProvidesFile{scrlayer-notecolumn.dtx}% @@ -211,8 +211,8 @@ % % Here we test the used pdf\TeX{} primitives. % \changes{v0.1}{2015/10/07}{ready for renaming \cs{pdfsavepos} and -% \cs{pdflastypos} in luaTeX}%^^A -% \changes{v0.1.2483}{2016/06/28}{grouping fixed}%^^A +% \cs{pdflastypos} in luaTeX} +% \changes{v0.1.2483}{2016/06/28}{grouping fixed} % \begin{macrocode} \@tempswatrue \scr@ifundefinedorrelax{pdfsavepos}{% @@ -292,7 +292,7 @@ % text width. So we can use a macro too. Both will be initialised to the % normal marginal note column later. % \changes{3.27}{2019/02/14}{initialization of one colour stack per note -% column}%^^A +% column} % For colour support we also need one colour stack per note column. A colour % stack is a feature only available for pdf\TeX{} and lua\TeX{}. % \begin{macrocode} @@ -363,7 +363,7 @@ } % \end{macrocode} % \begin{macro}{\slnc@initial@black} -% \changes{v0.2.3085}{2019/02/14}{new internal}%^^A +% \changes{v0.2.3085}{2019/02/14}{new internal} % The initial black is the colour used to initialize the colour stacks. As long % as only pdf\TeX{} and lua\TeX{} provide colour stacks, we can initialize it % with \texttt{0 g 0 G}. However it may be better to use the initial @@ -642,11 +642,11 @@ % % \begin{macro}{\tf@slnc} % \changes{v0.1.2395}{2016/03/25}{write to \texttt{aux}-file with -% \cs{if@filesw}}%^^A +% \cs{if@filesw}} % \begin{macro}{\slnc@initwrite} % \begin{macro}{\slnc@openwrite} % \changes{v0.1.2928}{2018/02/02}{use \cs{closein} instead of \cs{closeout} -% to close \cs{slnc@file}}%^^A +% to close \cs{slnc@file}} % First of all we need a file to write the notes to. We use the % \File{aux}-file to write into the file, because we need to read the file % while the document will be typeset and the same time we need to write into @@ -678,9 +678,9 @@ % calculate the md5 checksum of the \File{slnc}-file. If it has been changed % we set |\if@tempswa| to |\iftrue| to provocate a rerun message. % \changes{v0.1.2872}{2018/01/17}{usage of Lua function -% \texttt{slncmdfivesum}}%^^A +% \texttt{slncmdfivesum}} % \changes{v0.1.2972}{2018/04/01}{usage of not yet documented Xe\TeX{} -% primitive \cs{mdfivesum}}%^^A +% primitive \cs{mdfivesum}} % \begin{macrocode} \AfterReadingMainAux{% \immediate\closeout\tf@slnc @@ -688,7 +688,7 @@ \scr@ifundefinedorrelax{pdfmdfivesum}{% \scr@ifundefinedorrelax{mdfivesum}{% \ifdefined\directlua - \edef\reserved@a{\directlua{slncmdfivesum("\jobname.slnc")}}% + \edef\reserved@a{\directlua{slnc.mdfivesum(slnc.slncfile)}}% \else \let\reserved@a\relax \fi @@ -732,6 +732,18 @@ } % % \end{macrocode} +% \changes{v0.3.3600}{2021/05/30}{use of \textsf{scrwfile}'s never list}% +% The easiest way to make it compatible with \Package{scrwfile} is to put it +% on the \emph{never} list. +% \begin{macrocode} +%<*body> +\AfterPackage*{scrwfile}{% + \@ifundefined{scrwfile@never}{\def}{\g@addto@macro}% + \scrwfile@never{slnc}% +} +% +% \end{macrocode} +% % \end{macro}%^^A \slnc@openwrite % \end{macro}%^^A \slnc@initwrite % \end{macro}%^^A \tf@slnc @@ -749,9 +761,9 @@ % There is a star variant with the same parameters, that writes the % \meta{code} un-expanded. To do so, we need some internal commands. % \begin{macro}{\slnc@unexpanded} -% \changes{0.1.2583}{2017/02/08}{new (internal)}%^^A +% \changes{v0.1.2583}{2017/02/08}{new (internal)} % \begin{macro}{\slnc@makenote} -% \changes{0.1.2583}{2017/02/08}{new (internal)}%^^A +% \changes{v0.1.2583}{2017/02/08}{new (internal)} % \begin{macrocode} %<*body> \newcommand*{\slnc@unexpanded}{} @@ -847,7 +859,7 @@ \expandafter\hsize\csname slnc@#1@width\endcsname \normalfont\normalsize % \end{macrocode} -% \changes{v0.2.3085}{2019/02/14}{using colour stack if available}%^^A +% \changes{v0.2.3085}{2019/02/14}{using colour stack if available} % If a color stack is available we switch to it before changing the font. So a % color definition inside the font would overwrite every color change inside % the column! But if we don't have a color stack, color switching is not @@ -864,7 +876,7 @@ \fi % \end{macrocode} % \changes{v0.1}{2015/10/07}{ready for renaming \cs{pdfpageheight} in -% luaTeX}%^^A +% luaTeX} % From lua\TeX~0.80.1 \cs{pdfpageheight} will be renamed into % \cs{pageheight}. So we have to do an extra test for the new primitive. % \begin{macrocode} @@ -920,7 +932,7 @@ \ifdim\@tempdima>\z@ \kern\@tempdima\fi \fi % \end{macrocode} -% \changes{v0.1.2582}{2017/02/08}{restore several commands}%^^A +% \changes{v0.1.2582}{2017/02/08}{restore several commands} % Some commands have to be restored when processing the note. % \begin{macrocode} \slnc@restoreinnote @@ -967,7 +979,7 @@ \splitmaxdepth\baselineskip % \end{macrocode} % Bring back the colours: -% \changes{v0.2.3085}{2019/02/14}{\cs{slnc@switchcolorstack} added}%^^A +% \changes{v0.2.3085}{2019/02/14}{\cs{slnc@switchcolorstack} added} % \begin{macrocode} \usekomafont{notecolumn.#1}{% \expandafter\vsplit\csname slnc@#1@box\endcsname to @@ -986,7 +998,7 @@ % % \end{macrocode} % Bring back the colours: -% \changes{v0.2.3085}{2019/02/14}{\cs{slnc@switchcolorstack} added}%^^A +% \changes{v0.2.3085}{2019/02/14}{\cs{slnc@switchcolorstack} added} % \begin{macrocode} \usekomafont{notecolumn.#1}{% \slnc@switchcolorstack{#1}% @@ -1001,7 +1013,7 @@ } % \end{macrocode} % \begin{macro}{\slnc@switchcolorstack} -% \changes{v0.2.3085}{2019/02/14}{new internal}%^^A +% \changes{v0.2.3085}{2019/02/14}{new internal} % This either redefines \cs{set@color} or switches to the colour stack of the % note column given by the argument. % \begin{macrocode} @@ -1050,9 +1062,9 @@ % \end{macrocode} % \end{macro}%^^A \slnc@switchcolorstack % \begin{macro}{\restoreinnote} -% \changes{0.1.2582}{2017/02/08}{new command}%^^A +% \changes{v0.1.2582}{2017/02/08}{new command} % \begin{macro}{\slnc@restoreinnote} -% \changes{0.1.2582}{2017/02/08}{new (internal)}%^^A +% \changes{v0.1.2582}{2017/02/08}{new (internal)} % Some commands have to be restored while processing the notes. By default % these are \cs{label}, \cs{index}, \cs{glossary}. More can be added using % \cs{restoreinnote}. The storage is \cs{slnc@restoreinnote}. @@ -1080,7 +1092,7 @@ % \Macro{slnc@note} or \Macro{slnc@sync} in the file is greater than % \Counter{slncpage}. Put all these to the corresponding unprocessed list. % \begin{macro}{\slnc@catcodes} -% \changes{v0.3}{2019/03/02}{new internal}%^^A +% \changes{v0.3}{2019/03/02}{new internal} % We need a helper macro \cs{slnc@catcodes} to restore (some of) the catcodes % before reading from file. % \begin{macrocode} @@ -1193,12 +1205,15 @@ % \begin{macro}{\slnc@file} % The input file with the unprocessed notes. % \changes{v0.1.2928}{2018/02/02}{use \cs{closein} instead of \cs{closeout} -% to close \cs{slnc@file}}%^^A +% to close \cs{slnc@file}} % \begin{macro}{\slnc@mdfivesum} % \changes{v0.1.2872}{2018/01/17}{definition and usage of Lua function -% \texttt{slncmdfivesum}}%^^A +% \texttt{slncmdfivesum}} % \changes{v0.1.2972}{2018/04/01}{usage of not yet documented Xe\TeX{} -% primitive \cs{mdfivesum}}%^^A +% primitive \cs{mdfivesum}} +% \changes{v0.3.3591}{2021/03/25}{Lua function name changed to +% \texttt{slnc.mdfivesum}} +% \changes{v0.3.3591}{2021/03/25}{new Lua variable \texttt{slnc.slncfile}} % The MD5 sum of the file before opening it for reading. % \begin{macrocode} %<*body> @@ -1208,7 +1223,8 @@ \scr@ifundefinedorrelax{mdfivesum}{% \ifdefined\directlua \directlua{% - function slncmdfivesum(filename) + slnc = slnc or {} + function slnc.mdfivesum(filename) local fh = io.open(filename,"rb") if fh then local sum=md5.sumhexa(fh:read("*a")) @@ -1216,8 +1232,16 @@ fh:close() end end + if (string.sub(tex.jobname,1,1) == '"') + and (string.sub(tex.jobname,string.len(tex.jobname),-1) == '"') + then + slnc.slncfile = string.sub(tex.jobname,2,-2) + else + slnc.slncfile = tex.jobname + end + slnc.slncfile = slnc.slncfile .. '.slnc' }% - \xdef\slnc@mdfivesum{\directlua{slncmdfivesum("\jobname.slnc")}}% + \xdef\slnc@mdfivesum{\directlua{slnc.mdfivesum(slnc.slncfile)}}% \fi }{% \xdef\slnc@mdfivesum{\mdfivesum file {\jobname.slnc}}% @@ -1410,8 +1434,8 @@ % \end{macro}%^^A \clearnotecolumn % % \begin{macro}{\clearnotecolumns} -% \changes{v3.26}{2018/08/29}{\cs{scr@trim@spaces} added}%^^A -% \changes{v3.26}{2018/08/29}{removed spurious \cs{expandafter}}%^^A +% \changes{v3.26}{2018/08/29}{\cs{scr@trim@spaces} added} +% \changes{v3.26}{2018/08/29}{removed spurious \cs{expandafter}} % \begin{description} % \item[\OParameter{string list}:] comma separated list of note column names % (must be fully expandable and each element must expand to a string only, @@ -1572,8 +1596,8 @@ % synchronisation of the text with the note. % % \begin{macro}{\syncwithnotecolumn} -% \changes{v3.26}{2018/08/29}{\cs{scr@trim@spaces} added}%^^A -% \changes{v3.26}{2018/08/29}{removed spurious \cs{expandafter}}%^^A +% \changes{v3.26}{2018/08/29}{\cs{scr@trim@spaces} added} +% \changes{v3.26}{2018/08/29}{removed spurious \cs{expandafter}} % \begin{description} % \item[\OParameter{string}:] the name of the note column to sync with (this % must be fully expandable and expand to the name of a note column). By @@ -1696,7 +1720,7 @@ }% % \end{macrocode} % \changes{v0.1}{2015/10/07}{ready for renaming \cs{pdfpageheight} in -% luaTeX}%^^A +% luaTeX} % From lua\TeX~0.80.1 \cs{pdfpageheight} will be renamed into % \cs{pageheight}. So we have to do an extra test for the new primitive. % \begin{macrocode} diff --git a/Master/texmf-dist/source/latex/koma-script/scrlayer-scrpage.dtx b/Master/texmf-dist/source/latex/koma-script/scrlayer-scrpage.dtx index 6f223ad9449..d7a264f89ee 100644 --- a/Master/texmf-dist/source/latex/koma-script/scrlayer-scrpage.dtx +++ b/Master/texmf-dist/source/latex/koma-script/scrlayer-scrpage.dtx @@ -1,7 +1,7 @@ % \iffalse^^A meta-comment % ====================================================================== % scrlayer-scrpage.dtx -% Copyright (c) Markus Kohm, 2012-2020 +% Copyright (c) Markus Kohm, 2012-2021 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -19,7 +19,7 @@ % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrlayer-scrpage.dtx -% Copyright (c) Markus Kohm, 2012-2020 +% Copyright (c) Markus Kohm, 2012-2021 % % Diese Datei ist Teil der LaTeX2e KOMA-Script-Sammlung. % @@ -38,7 +38,7 @@ % Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien. % ====================================================================== % -%%% From File: $Id: scrlayer-scrpage.dtx 3531 2020-09-11 12:28:41Z kohm $ +%%% From File: $Id: scrlayer-scrpage.dtx 3595 2021-05-16 07:11:07Z kohm $ %%%% (run: identify) %%%% (run: init) %%%% (run: options) @@ -47,9 +47,9 @@ \ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi \begingroup \def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}} - \filedate$Date: 2020-09-11 14:28:41 +0200 (Fri, 11 Sep 2020) $ + \filedate$Date: 2021-05-16 09:11:07 +0200 (Sun, 16 May 2021) $ \def\filerevision$#1: #2 ${\gdef\filerevision{r#2}} - \filerevision$Revision: 3531 $ + \filerevision$Revision: 3595 $ \edef\reserved@a{% \noexpand\endgroup \noexpand\ProvidesFile{scrlayer-scrpage.dtx}% @@ -1507,19 +1507,20 @@ }% % \end{macrocode} % \begin{macro}{\sls@secure@box} -% \begin{description} -% \item[\Parameter{length}:] a \LaTeX{} length, that gives the maximum -% height + depth of the \meta{content}. It has to be either -% \cs{headheight} or \cs{footheight}. -% \item[\Parameter{content}:] what should be output (inside the box). -% \end{description} +% \changes{v3.34}{2021/05/16}{\LaTeX{} team requested for additional \cs{par}} +% \begin{description} +% \item[\Parameter{length}:] a \LaTeX{} length, that gives the maximum +% height + depth of the \meta{content}. It has to be either +% \cs{headheight} or \cs{footheight}. +% \item[\Parameter{content}:] what should be output (inside the box). +% \end{description} % Note, that several length may be changed, to fit. % \begin{macrocode} \newcommand*{\sls@secure@box}[2]{% \begingroup \setbox\z@\vbox{% \ifsls@leavevmode\leavevmode\expandafter\ignorespaces\fi - #2% + #2\par }% \ifdim #1<\dimexpr \ht\z@+\dp\z@\relax \PackageWarning{scrlayer-scrpage}{% @@ -1671,12 +1672,13 @@ % \end{macro}%^^A \footfont % % \begin{macro}{\sls@hf@rule} -% \begin{description} -% \item[\Parameter{rule name}:] one of \texttt{headtop}, \texttt{headsep}, -% \texttt{footsep}, or \texttt{footbot} -% \item[\Parameter{dimensional expression}:] the line length (width) -% \item[\Parameter{dimensional expression}:] the line thickness (height) -% \end{description} +% \changes{v3.34}{2021/05/16}{\LaTeX{} team requested for additional \cs{par}} +% \begin{description} +% \item[\Parameter{rule name}:] one of \texttt{headtop}, \texttt{headsep}, +% \texttt{footsep}, or \texttt{footbot} +% \item[\Parameter{dimensional expression}:] the line length (width) +% \item[\Parameter{dimensional expression}:] the line thickness (height) +% \end{description} % Helper to draw the line. % \begin{macrocode} \newcommand*\sls@hf@rule[3]{% @@ -1699,6 +1701,7 @@ \if@tempswa \hskip \z@\@plus 1fill\@minus \paperwidth\null \fi + \par }% }% \endgroup diff --git a/Master/texmf-dist/source/latex/koma-script/scrlfile-hook.dtx b/Master/texmf-dist/source/latex/koma-script/scrlfile-hook.dtx index 9ebbd46ee4f..7dc937a5dfe 100644 --- a/Master/texmf-dist/source/latex/koma-script/scrlfile-hook.dtx +++ b/Master/texmf-dist/source/latex/koma-script/scrlfile-hook.dtx @@ -45,9 +45,9 @@ \ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi \begingroup \def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}} - \filedate$Date: 2021-03-02 08:40:05 +0100 (Tue, 02 Mar 2021) $ + \filedate$Date: 2021-04-21 12:11:38 +0200 (Wed, 21 Apr 2021) $ \def\filerevision$#1: #2 ${\gdef\filerevision{r#2}} - \filerevision$Revision: 3574 $ + \filerevision$Revision: 3593 $ \edef\reserved@a{% \noexpand\endgroup \noexpand\ProvidesFile{scrlfile-hook.dtx}% @@ -147,19 +147,35 @@ %<@@=scrlfile> % \end{macrocode} % -% Test whether the uses \LaTeX{} provides all commands we need. +% Test whether the used \LaTeX{} provides all commands we need. +% \changes{v3.34}{2021/04/21}{make it more robust agains not recommended +% direct usage} % \begin{macrocode} -\@ifundefined{AddToHook}{% - \PackageError{scrlfile-hook}{LaTeX too old for this package}{% - \string\AddToHook\space of LaTeX 2020-10-01 or newer is - needed.\MessageBreak - Please update LaTeX or use package scrlfile-patch instead of\MessageBreak - scrlfile-hook.\MessageBreak - If you would continue, I will try to load scrlfile-patch +\@ifundefined{IfFormatAtLeastTF}{% + \PackageError{scrlfile-hook}{not recommended usage of package}{% + It seems this package has been loaded directly using a LaTeX + version\MessageBreak + prior to 2020-10-01. This is not recommend. Please always load + package\MessageBreak + scrlfile instead of scrlfile-hook.\MessageBreak + If you would continue, I will try to load scrlfile-patcholdlatex% }% - \RequirePackage{scrlfile-patch}% + \RequirePackage{scrlfile-patcholdlatex}% \endinput -}{} +}{% + \IfFormatAtLeastTF{2020/10/01}{}{% + \PackageError{scrlfile-hook}{LaTeX too old for this package}{% + It seems this package has been loaded directly using a LaTeX + version\MessageBreak + prior to 2020-10-01. This is not recommend. Please always load + package\MessageBreak + scrlfile instead of scrlfile-hook.\MessageBreak + If you would continue, I will try to load scrlfile-patcholdlatex% + }% + \RequirePackage{scrlfile-patcholdlatex}% + \endinput + }{}% +} % \end{macrocode} % % diff --git a/Master/texmf-dist/source/latex/koma-script/scrlfile-patcholdlatex.dtx b/Master/texmf-dist/source/latex/koma-script/scrlfile-patcholdlatex.dtx index 070d28a5dd3..bae36b7a3fb 100644 --- a/Master/texmf-dist/source/latex/koma-script/scrlfile-patcholdlatex.dtx +++ b/Master/texmf-dist/source/latex/koma-script/scrlfile-patcholdlatex.dtx @@ -1,7 +1,7 @@ % \iffalse^^A meta-comment % ====================================================================== % scrlfile-patcholdlatex.dtx -% Copyright (c) Markus Kohm, 2002-2020 +% Copyright (c) Markus Kohm, 2002-2021 % % This file is part of the work `scrlfile' which is part of the LaTeX2e % KOMA-Script bundle. @@ -20,7 +20,7 @@ % This work consists of all files listed in manifest.txt. % ---------------------------------------------------------------------- % scrlfile-patcholdlatex.dtx -% Copyright (c) Markus Kohm, 2002-2020 +% Copyright (c) Markus Kohm, 2002-2021 % % Diese Datei ist Teil des Werks `scrlfile', das wiederum Teil des % LaTeX2e KOMA-Script Pakets ist. @@ -58,14 +58,14 @@ % Right brace \} Tilde \~} % % \iffalse -%%% From File: $Id: scrlfile-patcholdlatex.dtx 3527 2020-09-11 09:44:32Z kohm $ +%%% From File: $Id: scrlfile-patcholdlatex.dtx 3593 2021-04-21 10:11:38Z kohm $ %<*dtx> \ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi \begingroup \def\filedate$#1: #2-#3-#4 #5${\gdef\filedate{#2/#3/#4}} - \filedate$Date: 2020-09-11 11:44:32 +0200 (Fri, 11 Sep 2020) $ + \filedate$Date: 2021-04-21 12:11:38 +0200 (Wed, 21 Apr 2021) $ \def\filerevision$#1: #2 ${\gdef\filerevision{r#2}} - \filerevision$Revision: 3527 $ + \filerevision$Revision: 3593 $ \edef\reserved@a{% \noexpand\endgroup \noexpand\ProvidesFile{scrlfile-patcholdlatex.dtx}% @@ -139,6 +139,26 @@ % % \subsection{Patching \LaTeX{} Kernel Macros} % +% Test whether the used \LaTeX{} is old enough. +% \changes{v3.34}{2021/04/21}{make it more robust agains not recommended +% direct usage} +% \begin{macrocode} +\@ifundefined{IfFormatAtLeastTF}{}{% + \IfFormatAtLeastTF{2020/10/01}{% + \PackageError{scrlfile-hook}{LaTeX too young for this package}{% + It seems this package has been loaded directly using a LaTeX + version\MessageBreak + 2020-10-01 or newer. This is not recommend. Please always load + package\MessageBreak + scrlfile instead of scrlfile-patcholdlatex.\MessageBreak + If you would continue, I will try to load scrlfile-hook% + }% + \RequirePackage{scrlfile-hook}% + \endinput + }{}% +} +% \end{macrocode} +% % \begin{macro}{\InputIfFileExists} % \changes{v2.96}{2006/07/19}{replacement code added}%^^A % \LaTeX{} uses this macro for loading files with diff --git a/Master/texmf-dist/source/latex/koma-script/scrwfile.dtx b/Master/texmf-dist/source/latex/koma-script/scrwfile.dtx index 26e3b0af9e4..7228e756abc 100644 --- a/Master/texmf-dist/source/latex/koma-script/scrwfile.dtx +++ b/Master/texmf-dist/source/latex/koma-script/scrwfile.dtx @@ -1,8 +1,7 @@ -% \CheckSum{306} % \iffalse meta-comment % ====================================================================== % scrwfile.dtx -% Copyright (c) Markus Kohm, 2010-2020 +% Copyright (c) Markus Kohm, 2010-2021 % % This file is part of the LaTeX2e KOMA-Script bundle. % @@ -29,7 +28,7 @@ % at least three times. % ---------------------------------------------------------------------- % scrwfile.dtx -% Copyright (c) Markus Kohm, 2010-2020 +% Copyright (c) Markus Kohm, 2010-2021 % % Diese Datei ist Teil des LaTeX2e KOMA-Script-Pakets. % @@ -75,7 +74,7 @@ % Right brace \} Tilde \~} % % \iffalse -%%% From File: $Id: scrwfile.dtx 3453 2020-02-25 07:33:30Z kohm $ +%%% From File: $Id: scrwfile.dtx 3600 2021-05-30 19:00:56Z kohm $ %<*dtx> \ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi \ProvidesFile{scrwfile.dtx} @@ -84,7 +83,7 @@ %\ProvidesPackage{scrwfile} %\ProvidesFile{scrwfile.drv} %<*dtx|(package&identify)|driver> - [2013/08/05 v0.1f-alpha KOMA-Script package (write and clone files)] + [2021/05/30 v0.1.9-alpha KOMA-Script package (write and clone files)] % %<*dtx> \ifx\documentclass\undefined @@ -158,7 +157,8 @@ % \selectlanguage{english} % % \changes{v0.1}{2010/10/01}{start of new package} -% \changes{v0.1g}{2014/10/13}{manual moved to \KOMAScript{} manual} +% \changes{v0.1.7}{2014/10/13}{manual moved to \KOMAScript{} manual} +% \changes{v0.1.9}{2021/05/30}{version number scheme changed} % % \StopEventually{% % \clearpage @@ -210,17 +210,27 @@ \RequirePackage{scrbase}[2010/09/17] % \end{macrocode} % -% Package \textsf{tocbasic} is needed for the lists of cloned TOCs. -% \begin{macrocode} -\RequirePackage{tocbasic}[2010/10/01] -% \end{macrocode} -% % Package \textsf{scrlfile} is needed because of the \texttt{aux} file % handling and \verb|\protected@immediate@write|. % \begin{macrocode} \RequirePackage{scrlfile}[2010/09/30] % \end{macrocode} % +% \subsubsection{Is is needed?} +% +% \changes{v0.1.9}{2021/05/30}{with Lua\LaTeX{} using is not recommended} +% If the user uses Lua\LaTeX{} usage of \textsf{scrwfile} should not be +% needed. +% \begin{macrocode} +\scr@ifluatex{% + \PackageInfoNoLine{scrwfile}{LuaLaTeX detected.\MessageBreak + With LuaLaTeX you should never get an error message:\MessageBreak + \space\space`No room for a new \string\write'.\MessageBreak + So scrwfile could make much more harm than benefit\MessageBreak + and using it is not recommended}% +}{} +% \end{macrocode} +% % \subsubsection{\LaTeX{} Kernel Patchs} % % For some features we need to patch \LaTeX{} kernel macros. Those features @@ -249,7 +259,7 @@ \if@tempswa \scr@ifundefinedorrelax{scrwfile@never}{}{% \edef\reserved@b{#1}% - \@for\reserved@a:=\scrwfile@only\do + \@for\reserved@a:=\scrwfile@never\do {\ifx\reserved@a\reserved@b\@tempswafalse\fi}% }% \fi @@ -356,13 +366,35 @@ \fi } % \end{macrocode} +% \changes{v0.1.8}{2021/05/30}{added order rule for +% \textsf{scrlayer-notecolumn}} +% Note: Here we use a \LaTeX{} version test, because a do-nothing-definition +% like the one of \textsf{latexrelease} wouldn't be correct, if the command is +% not supported by the current \LaTeX{} kernel version setting. +% \begin{macrocode} +\IfLTXAtLeastTF{2020/10/01}{% + \DeclareHookRule{enddocument/afteraux}% + {scrwfile}{before}{scrlayer-notecolumn}% +}{% + \@ifpackageloaded{scrlayer-notecolumn}{% + \PackageWarningNoLine{scrwfile}{% + Dangerous package order detected!\MessageBreak + As a general rule, you should load scrwfile as soon\MessageBreak + as possible, maybe even before `\string\documentclass'\MessageBreak + (using `\string\RequirePackage' instead of + `\string\usepackage').\MessageBreak + Following packages should be loaded after scrwfile:\MessageBreak + \space - scrlayer-notecolumn}% + }{}% +} +% \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\@starttoc} % We have to add the single handle feature to this. % \begin{macro}{\scrwfile@saved@starttoc} -% \changes{v0.1e}{2013/07/24}{take care for unfriendly \textsl{hyperref}} +% \changes{v0.1.5}{2013/07/24}{take care for unfriendly \textsl{hyperref}} % This is the original definition, that will be used, if the file is not under % \texttt{scrwfile}'s control. Because of package \textsl{hyperref}, that does % a hard redefinition without any care for changed definitions, we have to @@ -449,12 +481,13 @@ % \end{macro} % % \begin{macro}{\TOCclone} -% \changes{v3.28}{2019/11/18}{\cs{ifstr} umbenannt in \cs{Ifstr}}%^^A -% \changes{v3.28}{2019/11/19}{\cs{ifattoclist} replaced by -% \cs{Ifattoclist}}%^^A -% \changes{v3.28}{2019/11/19}{\cs{iftocfeature} replaced by -% \cs{Iftocfeature}}%^^A -% \changes{v3.30}{2020/02/25}{spurious space in warning message removed}%^^A +% \changes{v0.1.8}{2019/11/18}{\cs{ifstr} umbenannt in \cs{Ifstr}} +% \changes{v0.1.8}{2019/11/19}{\cs{ifattoclist} replaced by \cs{Ifattoclist}} +% \changes{v0.1.8}{2019/11/19}{\cs{iftocfeature} replaced by +% \cs{Iftocfeature}} +% \changes{v0.1.8}{2020/02/25}{spurious space in warning message removed} +% \changes{v0.1.9}{2021/05/30}{requires package \textsf{tocbasic}} +% \changes{v0.1.9}{2021/05/30}{can be used only in preamble} % Clone the entries from the second (first mandatory) argument TOC to the % third (second mandatory) argument TOC. If the first (optional) argument was % given, define |\listof#3name| to this and also define |\listof#3| and clone @@ -465,6 +498,7 @@ % extensions. % \begin{macrocode} \newcommand*{\TOCclone}[3][]{% + \RequirePackage{tocbasic}% \scr@ifundefinedorrelax{scrwfile@clone@#2}{% \expandafter\protected@edef\csname scrwfile@clone@#2\endcsname{% #3,\protect\csname scrwfile@clone@#3\endcsname @@ -499,6 +533,7 @@ \Iftocfeature{#2}{totoc}{\setuptoc{#3}{totoc}}{}% }% } +\@onlypreamble\TOCClone % \end{macrocode} % \end{macro} % -- cgit v1.2.3