diff options
Diffstat (limited to 'macros/latex/contrib/koma-script/source/scrlfile-patcholdlatex.dtx')
-rw-r--r-- | macros/latex/contrib/koma-script/source/scrlfile-patcholdlatex.dtx | 445 |
1 files changed, 200 insertions, 245 deletions
diff --git a/macros/latex/contrib/koma-script/source/scrlfile-patcholdlatex.dtx b/macros/latex/contrib/koma-script/source/scrlfile-patcholdlatex.dtx index 5f5956dc71..d30a0c45a0 100644 --- a/macros/latex/contrib/koma-script/source/scrlfile-patcholdlatex.dtx +++ b/macros/latex/contrib/koma-script/source/scrlfile-patcholdlatex.dtx @@ -1,7 +1,7 @@ % \iffalse^^A meta-comment % ====================================================================== % scrlfile-patcholdlatex.dtx -% Copyright (c) Markus Kohm, 2002-2021 +% Copyright (c) Markus Kohm, 2002-2022 % % This file is part of the work `scrlfile' which is part of the LaTeX2e % KOMA-Script bundle. @@ -18,54 +18,15 @@ % The Current Maintainer and author of this work is Markus Kohm. % % This work consists of all files listed in manifest.txt. -% ---------------------------------------------------------------------- -% scrlfile-patcholdlatex.dtx -% Copyright (c) Markus Kohm, 2002-2021 -% -% Diese Datei ist Teil des Werks `scrlfile', das wiederum Teil des -% LaTeX2e KOMA-Script Pakets ist. -% -% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz, -% Version 1.3c, verteilt und/oder veraendert werden. -% Die neuste Version dieser Lizenz ist -% http://www.latex-project.org/lppl.txt -% und Version 1.3c ist Teil aller Verteilungen von LaTeX -% Version 2005/12/01 oder spaeter und dieses Werks. -% -% Dieses Werk hat den LPPL-Verwaltungs-Status "author-maintained" -% (allein durch den Autor verwaltet). -% -% Der Aktuelle Verwalter und Autor dieses Werkes ist Markus Kohm. -% -% Dieses Werk besteht aus den in manifest.txt aufgefuehrten Dateien. % ====================================================================== -% \fi^^A meta-comment -% -% \CharacterTable -% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -% Digits \0\1\2\3\4\5\6\7\8\9 -% Exclamation \! Double quote \" Hash (number) \# -% Dollar \$ Percent \% Ampersand \& -% Acute accent \' Left paren \( Right paren \) -% Asterisk \* Plus \+ Comma \, -% Minus \- Point \. Solidus \/ -% Colon \: Semicolon \; Less than \< -% Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ -% Right bracket \] Circumflex \^ Underscore \_ -% Grave accent \` Left brace \{ Vertical bar \| -% Right brace \} Tilde \~} -% -% \iffalse -%%% From File: $Id: scrlfile-patcholdlatex.dtx 3626 2021-11-01 10:57:06Z kohm $ +%%% From File: $Id: scrlfile-patcholdlatex.dtx 3773 2022-03-29 06:27:55Z 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: 2021-11-01 11:57:06 +0100 (Mon, 01 Nov 2021) $ + \filedate$Date: 2022-03-29 08:27:55 +0200 (Tue, 29 Mar 2022) $ \def\filerevision$#1: #2 ${\gdef\filerevision{r#2}} - \filerevision$Revision: 3626 $ + \filerevision$Revision: 3773 $ \edef\reserved@a{% \noexpand\endgroup \noexpand\ProvidesFile{scrlfile-patcholdlatex.dtx}% @@ -87,6 +48,7 @@ \generate{\usepreamble\defaultpreamble \file{scrlfile-patcholdlatex.sty}{% \from{scrlfile-patcholdlatex.dtx}{package}% + \from{scrlogo.dtx}{logo}% }% } \@@input scrstrop.inc @@ -94,27 +56,10 @@ \let\endbatchfile\relax \fi \endbatchfile -\documentclass[parskip=half-]{scrdoc} -\usepackage[main=english]{babel} -\CodelineIndex -\RecordChanges -\GetFileInfo{scrlfile-patcholdlatex.dtx} -\title{\KOMAScript{} \partname\ \texttt{\filename}% - \thanks{This file is revision \fileversion\ of file \texttt{\filename}.}} -\date{\filedate} -\author{Markus Kohm\thanks{mailto:komascript@gmx.info}} - +\documentclass[USenglish]{koma-script-source-doc} +\usepackage{babel} \begin{document} - \maketitle - \begin{abstract} - This package provides hooks before and after loading files, packages or - classes. It also provides a hook after the last \cs{clearpage} of the - document. It allowes to replace files, packages and classes by other - files, packages and classes. It is inteded to be used by package and class - authors but may also be used by \LaTeX{} users. - \end{abstract} - - \DocInput{\filename} + \DocInput{scrlfile-patcholdlatex.dtx} \end{document} %</dtx> % \fi^^A meta-comment @@ -122,19 +67,37 @@ % \changes{v2.95}{2002/06/11}{First version split from hugh scrclass.dtx} % \changes{v3.24}{2017/05/06}{standalone manual removed} % \changes{v3.32}{2020/09/02}{new (sub)-package} +% \changes{v3.36}{2022/02/03}{switch over from \cls*{scrdoc} to +% \cls*{koma-script-source-doc}} +% \changes{v3.36}{2022/02/03}{using \file{scrlogo.dtx} to define the logo} +% +% \GetFileInfo{scrlfile-patcholdlatex.dtx} +% \title{\pkg*{scrlfile} \KOMAScript{} Sub-Package \pkg*{scrlfile-patcholdlatex}} +% \author{\href{mailto:komascript@gmx.info}{Markus Kohm}} +% \date{Revision \fileversion{} of \filedate} +% \maketitle +% \begin{abstract} +% This package provides hooks before and after loading files, packages or +% classes. It also provides a hook after the last \cs{clearpage} of the +% document. It allowes to replace files, packages and classes by other +% files, packages and classes. It is inteded to be used by package and class +% authors but may also be used by \LaTeX{} users. +% \end{abstract} +% \tableofcontents % -% \section{The User Manual of \textsf{scrlfile-patcholdlatex}} % -% \textsf{scrlfile-patcholdlatex} implements the part of \textsf{scrlfile} +% \section{User Manual} +% +% \pkg*{scrlfile-patcholdlatex} implements the part of \pkg*{scrlfile} % that patches old \LaTeX{} kernels. % % There isn't any user manual for the user level \LaTeXe{} commands in this -% file. Please see the manual of \textsf{scrlfile} for more information about -% \textsf{scrlfile-patcholdlatex}. +% file. Please see the manual of \pkg*{scrlfile} for more information about +% \pkg*{scrlfile-patcholdlatex}. % -% \StopEventually{\PrintIndex\PrintChanges} +% \MaybeStop{\PrintIndex} % -% \section{Implementation of \textsf{scrlfile-patcholdlatex}} +% \section{Implementation of \pkg*{scrlfile-patcholdlatex}} % % % \subsection{Patching \LaTeX{} Kernel Macros} @@ -143,7 +106,7 @@ % \changes{v3.34}{2021/04/21}{make it more robust agains not recommended % direct usage} % \changes{3.35}{2021/10/31}{\LaTeX{} kernel change results in new variant of -% \Package{scrfile-hook}} +% \pkg*{scrfile-hook}} % \begin{macrocode} \@ifundefined{IfFormatAtLeastTF}{}{% \IfFormatAtLeastTF{2020/10/01}{% @@ -166,8 +129,8 @@ } % \end{macrocode} % -% \begin{macro}{\InputIfFileExists} -% \changes{v2.96}{2006/07/19}{replacement code added}%^^A +% \begin{command}{\InputIfFileExists} +% \changes{v2.96}{2006/07/19}{replacement code added} % \LaTeX{} uses this macro for loading files with % \cs{input}\marg{filename}, \cs{include}, \cs{LoadClass}, % \cs{LoadClassWithOptions}, \cs{documentclass}, \cs{documentstyle}, @@ -180,18 +143,18 @@ % macros\,---\,one before loading the file and one after loading the % file. But before we redefine the macro, we test, if the macro was % defined like we expected. \LaTeX{} will warn, if not. -% \changes{v3.27}{2019/10/06}{\LaTeX{} 2019-10-01 changed the definition}%^^A +% \changes{v3.27}{2019/10/06}{\LaTeX{} 2019-10-01 changed the definition} % -% \changes{v3.28}{2019/11/21}{support for \textsf{memoir}}%^^A -% With \textsf{memoir} their is a special case. It also redefines +% \changes{v3.28}{2019/11/21}{support for \cls{memoir}} +% With \cls{memoir} their is a special case. It also redefines % \cs{InputIfFileExists}. As shown in the source of the class it does so -% because \textsf{scrlfile} does it. However it does it not compatible with -% \textsf{scrlfile} and it does not emulate \textsf{scrlfile} as it do for -% other packages. So if you try to use \textsf{scrlfile} with memoir, -% \textsf{scrbase} has to take care to \textsf{memoir}. And in oposit to -% \textsf{scrlfile} \textsf{memoir} does not always fix the argument order bug +% because \pkg*{scrlfile} does it. However it does it not compatible with +% \pkg*{scrlfile} and it does not emulate \pkg*{scrlfile} as it do for +% other packages. So if you try to use \pkg*{scrlfile} with memoir, +% \pkg*{scrbase} has to take care to \cls{memoir}. And in oposit to +% \pkg*{scrlfile} \cls{memoir} does not always fix the argument order bug % of \LaTeX{} but do so only for the implementation of \LaTeX{} 2019-10-01. -% So in case of \textsf{memoir} we just patch every version of it without +% So in case of \cls{memoir} we just patch every version of it without % testing. % \begin{macrocode} \@ifclassloaded{memoir}{% @@ -242,8 +205,8 @@ } % \end{macrocode} % \begin{macro}{\scr@input@withhook} -% \changes{v3.27}{2019/03/28}{new (internal)}%^^A -% \changes{v3.28}{2019/11/21}{support for \textsf{memoir}}%^^A +% \changes{v3.27}{2019/03/28}{added} +% \changes{v3.28}{2019/11/21}{support for \cls{memoir}} % We need a new internal, because of expanding \cs{@file@und} before inputting % the file. % \begin{macrocode} @@ -266,15 +229,15 @@ }% } % \end{macrocode} -% \end{macro} -% \end{macro} +% \end{macro}^^A \scr@input@withhook +% \end{command}^^A \InputIfFileExists % % \begin{macro}{\@loadwithoptions} -% \changes{v2.96}{2006/07/19}{new redefinition} +% \changes{v2.96}{2006/07/19}{re-implementation} % \begin{macro}{\scr@loadwithoptions} -% \changes{v2.96}{2006/07/19}{new helper macro} +% \changes{v2.96}{2006/07/19}{added} % \begin{macro}{\scr@@loadwithoptions} -% \changes{v2.97a}{2007/03/07}{new helper macro} +% \changes{v2.97a}{2007/03/07}{added} % \LaTeX{} uses this macro for loading classes and packages using % \cs{LoadClassWithOptions} or \cs{RequirePackageWithOptions}. We simply say % now: if the class or package should be replaced by another, try it again @@ -298,16 +261,16 @@ \scr@@loadwithoptions } % \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} +% \end{macro}^^A \scr@@loadwithoptions +% \end{macro}^^A \scr@loadwithoptions +% \end{macro}^^A \@loadwithoptions % % \begin{macro}{\@onefilewithoption} -% \changes{v2.96}{2006/07/19}{new redefinition} +% \changes{v2.96}{2006/07/19}{re-implementation} % \begin{macro}{\scr@onefilewithoption} -% \changes{v2.96}{2006/07/19}{new helper macro} +% \changes{v2.96}{2006/07/19}{added} % \begin{macro}{\scr@@onefilewithoption} -% \changes{v2.98}{2007/12/18}{new helper macro} +% \changes{v2.98}{2007/12/18}{added} % \LaTeX{} uses this macro for loading classes and packages using % \cs{LoadClass}, \cs{documentclass}, \cs{RequirePackage}, and % \cs{usepackage}. We simply say now: if the class or package should be @@ -324,8 +287,8 @@ % \end{macrocode} % Do this ridiculous definition and call outside of \cs{ifx}\dots\cs{fi} % because of some errornous packages like some versions of -% \textsf{breakurl}. This does not avoid an error, but the message about -% unclosed \cs{if} will be outside of \textsf{scrlfile}. +% \pkg{breakurl}. This does not avoid an error, but the message about +% unclosed \cs{if} will be outside of \pkg*{scrlfile}. % \begin{macrocode} \def\scr@@onefilewithoptions{\scr@onefilewithoptions{#1}}% \else @@ -337,25 +300,25 @@ \scr@load@hook{lateafter}{#1.#4}% } % \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} +% \end{macro}^^A \scr@@onefilewithoption +% \end{macro}^^A \scr@onefilewithoption +% \end{macro}^^A \@onefilewithoption % % \begin{macro}{\scr@replacefile@msg} -% \changes{v2.96}{2006/07/19}{new helper command} +% \changes{v2.96}{2006/07/19}{added} % \changes{v2.98}{2007/12/18}{spellfix} -% Last but not least \textsf{scrlfile} will write a message to the log file at +% Last but not least \pkg*{scrlfile} will write a message to the log file at % every replacement. % \begin{macrocode} \newcommand*{\scr@replacefile@msg}[2]{% \PackageInfo{scrlfile}{inputing `#1' instead of `#2'}% } % \end{macrocode} -% \end{macro} +% \end{macro}^^A \scr@replacefile@msg % % \begin{macro}{\scr@load@hook} % \changes{v3.27a}{2019/10/16}{workaround for strange handling of -% \cs{AtEndOfPackage} hook in \cs{@onefilewithoptions}}%^^A +% \cs{AtEndOfPackage} hook in \cs{@onefilewithoptions}} % This macro simply calls a load-file-hook, either the \emph{before} % or the \emph{after} one, if the hook exists. After calling the hook % it will be deleted. First argument is the type of hook @@ -364,11 +327,11 @@ \newcommand*{\scr@load@hook}[2]{% % \end{macrocode} % \begin{macro}{\scrlfile@cmp@hook} -% \changes{v3.27a}{2019/10/23}{local macros renamed}%^^A +% \changes{v3.27a}{2019/10/23}{renamed} % \begin{macro}{\scrlfile@hookname} -% \changes{v3.27a}{2019/10/23}{local macros renamed}%^^A +% \changes{v3.27a}{2019/10/23}{renamed} % \changes{v3.29}{2020/06/01}{do the class and package load hooks only in the -% document preamble}%^^A --> https://komascript.de/node/2274 +% document preamble}^^A --> https://komascript.de/node/2274 % Workaround for strange handling of the \cs{AtEndOfPackage} hook in % \cs{@onefilewithoptions} (becomes \cs{@empty}, if the package already has % been loaded and is not loaded again). This workaround is not nice but @@ -412,9 +375,9 @@ \fi } % \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} +% \end{macro}^^A \scrlfile@hookname +% \end{macro}^^A \scrlfile@cmp@hook +% \end{macro}^^A \scr@load@hook % % \begin{macro}{\scr@set@load@hook} % This command adds stuff to a load-file-hook, either the @@ -424,21 +387,22 @@ % \cs{g@addto@macro}. This third argument is the stuff, which will be % added to the hook. Because of using \cs{g@addto@macro} the hook must % be defined. So we define it, if it isn't. -% TODO: Handling/ignoring an optional argument to make it more compatible with -% \LaTeX's new \cs{AddToHook}. +% \begin{description} +% \item[ToDo:] Handling/ignoring an optional argument to make it more +% compatible with \LaTeX's new \cs{AddToHook}. +% \end{description} % \begin{macrocode} \newcommand*{\scr@set@load@hook}[2]{% \@ifundefined{#2-@#1}{\@namedef{#2-@#1}{}}{}% \expandafter\g@addto@macro\csname #2-@#1\endcsname } % \end{macrocode} -% \end{macro} +% \end{macro}^^A \scr@set@load@hook % % % \subsection{Before and After Commands} % -% \begin{macro}{\BeforeFile} -% \begin{macro}{\AfterFile} +% \begin{command}{\BeforeFile,\AfterFile} % Just add code to the \emph{before} or \emph{after} hook of a file. The % arguments are: % \begin{description} @@ -452,14 +416,12 @@ \newcommand*{\BeforeFile}{\scr@set@load@hook{before}} \newcommand*{\AfterFile}{\scr@set@load@hook{after}} % \end{macrocode} -% \end{macro}%^^A \AfterFile -% \end{macro}%^^A \BeforeFile +% \end{command}^^A \BeforeFile,\AfterFile % -% \begin{macro}{\BeforeClass} +% \begin{command}{\BeforeClass} % \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by -% \cs{kernel@ifnextchar}}%^^A -% \changes{v3.20}{2016/04/12}{\cs{@ifstar} durch \cs{kernel@ifstar} -% ersetzt}%^^A +% \cs{kernel@ifnextchar}} +% \changes{v3.20}{2016/04/12}{\cs{@ifstar} replaced by \cs{kernel@ifstar}} % This is quite simple. It only has to add code to the \emph{before} hook % already known by \cs{BeforeFile}. The arguments are: % \begin{description} @@ -474,14 +436,14 @@ \scr@set@load@hook{before}{#1.\@clsextension}% } % \end{macrocode} -% \end{macro}%^^A \BeforeClass +% \end{command}^^A \BeforeClass % -% \begin{macro}{\AfterClass} +% \begin{command}{\AfterClass} % \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by % \cs{kernel@ifnextchar}} % \changes{v3.20}{2016/04/12}{\cs{@ifstar} replaced by \cs{kernel@ifstar}} % \changes{v3.32}{2020/09/02}{plus and exclamation mark variants removed} -% \begin{macro}{\AfterAtEndOfClass} +% \begin{command}{\AfterAtEndOfClass} % \changes{v3.32}{2020/09/02}{star variant replaces the exclamation mark % variant of \cs{AfterClass}} % These are more complicated. There are four forms: @@ -528,9 +490,9 @@ \scr@set@load@hook{after}{#1.\@clsextension}% } % \end{macrocode} -% \end{macro}%^^A \@AfterClass +% \end{macro}^^A \@AfterClass % \begin{macro}{\@sAfterClass} -% \changes{v3.27a}{2019/10/16}{group removed}%^^A +% \changes{v3.27a}{2019/10/16}{group removed} % This is the internal implementation of: % \cs{AfterClass*}\marg{class name}\marg{code}. % It tests, whether or not \LaTeX{} thinks that the class @@ -548,14 +510,14 @@ {#1}% } % \end{macrocode} -% \end{macro}%^^A \@sAfterClass +% \end{macro}^^A \@sAfterClass % \begin{macrocode} \newcommand*{\AfterAtEndOfClass}{% \kernel@ifstar \@sAfterAtEndOfClass\@AfterAtEndOfClass } % \end{macrocode} % \begin{macro}{\@AfterAtEndOfClass} -% \changes{v3.32}{2020/09/02}{new (internal)} +% \changes{v3.32}{2020/09/02}{added} % Note that \cs{AfterAtEndOfClass} executed the \meta{code} after each try % to load a class, even if the class has already been loaded and you try % to load it again. @@ -565,11 +527,11 @@ } % \end{macrocode} % \begin{macro}{\@sAfterAtEndOfClass} -% \changes{v3.09}{2011/03/09}{new (internal)}%^^A -% \changes{v3.27}{2019/08/26}{using inside class fixed}%^^A -% \changes{v3.27a}{2019/10/15}{renamed from \cs{@@@AfterClass}}%^^A -% \changes{v3.27a}{2019/10/16}{usage of \emph{l@ading} marker}%^^A -% \changes{v3.27a}{2019/10/16}{group removed}%^^A +% \changes{v3.09}{2011/03/09}{added} +% \changes{v3.27}{2019/08/26}{using inside class fixed} +% \changes{v3.27a}{2019/10/15}{renamed from \cs{@@@AfterClass}} +% \changes{v3.27a}{2019/10/16}{usage of \emph{l@ading} marker} +% \changes{v3.27a}{2019/10/16}{group removed} % \changes{v3.32}{2020/09/02}{renamed from \cs{@xAfterClass}} % This is the internal implementation of: % \cs{AfterClass!}\marg{class name}\marg{code}. Note, that the exclamation @@ -608,11 +570,12 @@ {#1}% } % \end{macrocode} -% \end{macro}%^^A \@sAfterAtEndOfClass -% \end{macro}%^^A \AfterAtEndOfClass -% \end{macro}%^^A \AfterClass +% \end{macro}^^A \@sAfterAtEndOfClass +% \end{macro}^^A \@AfterAtEndOfClass +% \end{command}^^A \AfterAtEndOfClass +% \end{command}^^A \AfterClass % -% \begin{macro}{\BeforePackage} +% \begin{command}{\BeforePackage} % This is quite simple. It only has to add code to the \emph{before} hook % already known by \cs{BeforeFile}. The arguments are: % \begin{description} @@ -627,14 +590,13 @@ \scr@set@load@hook{before}{#1.\@pkgextension}% } % \end{macrocode} -% \end{macro}%^^A \BeforePackage +% \end{command}^^A \BeforePackage % -% \begin{macro}{\AfterPackage} +% \begin{command}{\AfterPackage} % \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by -% \cs{kernel@ifnextchar}}%^^A -% \changes{v3.20}{2016/04/12}{\cs{@ifstar} durch \cs{kernel@ifstar} -% ersetzt}%^^A -% \begin{macro}{\AfterAtEndOfPackage} +% \cs{kernel@ifnextchar}} +% \changes{v3.20}{2016/04/12}{\cs{@ifstar} replaced by \cs{kernel@ifstar}} +% \begin{command}{\AfterAtEndOfPackage} % These are more complicated. There are four forms: % \begin{description} % \item[\cs{AfterPackage}] corresponds to \cs{AfterFile}. So the code will be @@ -679,9 +641,9 @@ \scr@set@load@hook{after}{#1.\@pkgextension}% } % \end{macrocode} -% \end{macro}%^^A \@AfterPackage +% \end{macro}^^A \@AfterPackage % \begin{macro}{\@sAfterPackage} -% \changes{v3.27a}{2019/10/16}{group removed}%^^A +% \changes{v3.27a}{2019/10/16}{group removed} % This is the internal implementation of: % \cs{AfterPackage*}\marg{package name}\marg{code}. % It tests, whether or not \LaTeX{} thinks that the package @@ -699,19 +661,19 @@ {#1}% } % \end{macrocode} -% \end{macro}%^^A \@sAfterPackage -% \begin{macrocode} +% \end{macro}^^A \@sAfterPackage +% \begin{macrocode} \newcommand*{\AfterAtEndOfPackage}{% \kernel@ifstar \@sAfterAtEndOfPackage\@AfterAtEndOfPackage } -% \end{macrocode} +% \end{macrocode} % \begin{macro}{\@sAfterAtEndOfPackage} -% \changes{v3.09}{2011/03/09}{new (internal) +% \changes{v3.09}{2011/03/09}{added} % \changes{v3.27}{2019/08/26}{using inside package fixed} -% \changes{v3.27a}{2019/10/15}{renamed from \cs{@@@AfterPackage} +% \changes{v3.27a}{2019/10/15}{renamed from \cs{@@@AfterPackage}} % \changes{v3.27a}{2019/10/16}{usage of \emph{l@ading} marker} % \changes{v3.27a}{2019/10/16}{group removed} -% \changes{v3.32}{2020/09/02}{renamed from \@xAfterPackage} +% \changes{v3.32}{2020/09/02}{renamed from \cs{@xAfterPackage}} % This is the internal implementation of: % \cs{AfterAtEndOfPackage*}\marg{package name}\marg{code}. % \begin{macrocode} @@ -728,11 +690,11 @@ {#1}% } % \end{macrocode} -% \end{macro}%^^A \@sAfterAtEndOfPackage +% \end{macro}^^A \@sAfterAtEndOfPackage % \begin{macro}{\@AfterAtEndOfPackage} -% \changes{v3.32}{2020/09/02}{new (internal)} +% \changes{v3.32}{2020/09/02}{added} % \begin{macro}{\@@AfterAtEndOfPackage} -% \changes{v3.27a}{2019/10/15}{new (internal)} +% \changes{v3.27a}{2019/10/15}{added} % \changes{v3.27a}{2019/10/16}{group removed} % \changes{v3.32}{2020/09/02}{renamed from \cs{@AfterAtEndOfPackage}} % Note that until 3.27a \cs{AfterAtEndOfPackage} executed the \meta{code} @@ -758,16 +720,16 @@ \scr@set@load@hook{lateafter}{#1.\@pkgextension}% } % \end{macrocode} -% \end{macro}%^^A \@@AfterAtEndOfPackage -% \end{macro}%^^A \@AfterEndOfPackage -% \end{macro}%^^A \AfterAtEndOfPackage -% \end{macro}%^^A \AfterPackage +% \end{macro}^^A \@@AfterAtEndOfPackage +% \end{macro}^^A \@AfterEndOfPackage +% \end{command}^^A \AfterAtEndOfPackage +% \end{command}^^A \AfterPackage % % % \subsection{File Substitution} % -% \begin{macro}{\ReplaceInput} -% \changes{v2.96}{2006/07/19}{new command} +% \begin{command}{\ReplaceInput} +% \changes{v2.96}{2006/07/19}{added} % \changes{v3.12}{2013/11/15}{implemented} % Defining the replacement by definition of \cs{\#1-@alias}. % \begin{macrocode} @@ -775,8 +737,8 @@ \expandafter\edef\csname #1-@alias\endcsname{#2}% } % \end{macrocode} -% \begin{macro}{\ReplaceFile} -% \changes{v2.96}{2006/07/19}{new command} +% \begin{command}{\ReplaceFile} +% \changes{v2.96}{2006/07/19}{added} % \changes{v3.12}{2013/11/15}{throw error} % Sorry, but I've implemented the wrong command some time ago. % \begin{macrocode} @@ -794,11 +756,11 @@ \ReplaceInput } % \end{macrocode} -% \end{macro} -% \end{macro} +% \end{command}^^A \ReplaceFile +% \end{command}^^A \ReplaceInput % -% \begin{macro}{\UnReplaceInput} -% \changes{v3.12}{2013/11/15}{new command} +% \begin{command}{\UnReplaceInput} +% \changes{v3.12}{2013/11/15}{added} % Do not longer replace a file. % \begin{macrocode} \newcommand*{\UnReplaceInput}[1]{% @@ -807,14 +769,12 @@ \fi } % \end{macrocode} -% \end{macro} +% \end{command}^^A \UnReplaceInput % -% \begin{macro}{\ReplacePackage} -% \changes{v2.96}{2006/07/19}{new command} -% \begin{macro}{\ReplaceClass} -% \changes{v2.96}{2006/07/19}{new command} +% \begin{command}{\ReplacePackage,\ReplaceClass} +% \changes{v2.96}{2006/07/19}{added} % \begin{macro}{\@replacefilewithext} -% \changes{v2.96}{2006/07/19}{new helper command} +% \changes{v2.96}{2006/07/19}{added} % \changes{v3.32}{2020/09/09}{works global} % Note that replacing a package or class will not replace the input of the % file of the package or class but only the input of package or class. @@ -829,16 +789,13 @@ \@replacefilewithext{#1}{#2}\@clsextension } % \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} +% \end{macro}^^A \@replacefilewithext +% \end{command}^^A\ReplacePackage,\ReplaceClass % -% \begin{macro}{\UnReplacePackage} -% \changes{v3.12}{2013/11/15}{new command} -% \begin{macro}{\UnReplaceClass} -% \changes{v3.12}{2013/11/15}{new command} +% \begin{command}{\UnReplacePackage,\UnReplaceClass} +% \changes{v3.12}{2013/11/15}{added} % \begin{macro}{\@unreplacefilewithext} -% \changes{v3.12}{2013/11/15}{new helper command}%^^A +% \changes{v3.12}{2013/11/15}{added} % \changes{v3.32}{2020/09/09}{works global} % Do not nolonger replace a class or package. % \begin{macrocode} @@ -854,32 +811,31 @@ \@unreplacefilewithext{#1}\@clsextension } % \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} +% \end{macro}^^A \@unreplacefilewithext +% \end{command}^^A \UnReplacePackage,\UnReplaceClass % % % \subsection{Prevent Package from Loading} % -% \begin{macro}{\PreventPackageFromLoading} -% \changes{v3.08}{2010/11/04}{New} +% \begin{command}{\PreventPackageFromLoading} +% \changes{v3.08}{2010/11/04}{added} % \changes{v3.11a}{2012/06/13}{write fault error in \cs{MessageBreak} fixed} % \changes{v3.12}{2012/06/15}{new star version allowes empty argument with % info instead of warning} % \changes{v3.20}{2016/04/12}{\cs{@ifstar} replaced by \cs{kernel@ifstar}} % \changes{v3.32}{2020/09/09}{works global} % \begin{macro}{\@PreventPackageFromLoading} -% \changes{v3.12}{2012/06/15}{New (internal)}%^^A +% \changes{v3.12}{2012/06/15}{added} % \changes{v3.20}{2016/04/12}{\cs{@ifnextchar} replaced by -% \cs{kernel@ifnextchar}}%^^A +% \cs{kernel@ifnextchar}} % \begin{macro}{\@@PreventPackageFromLoading} -% \changes{v3.12}{2013/11/22}{New (internal)}%^^A +% \changes{v3.12}{2013/11/22}{added} % \changes{v3.12}{2013/11/22}{\cs{usepackage} before \cs{documentclass} -% fixed}%^^A +% fixed} % \begin{macro}{\scrlfile@excludedpackages} -% \changes{v3.08}{2010/11/04}{New (internal)}%^^A +% \changes{v3.08}{2010/11/04}{added} % \begin{macro}{\scrlfile@saved@RequirePackage} -% \changes{v3.08}{2010/11/04}{New (internal)}%^^A +% \changes{v3.08}{2010/11/04}{added} % \begin{macrocode} \newcommand*{\scrlfile@excludedpackages}{} \let\scrlfile@excludedpackages\@empty @@ -934,8 +890,8 @@ % packages will be added to the exclusion list. Empty arguments will be % ignored. % \changes{v3.11a}{2012/06/11}{missing \cs{scrlfile@excludedpackages} at -% redefinition of \cs{scrlfile@excludedpackages} added}%^^A -% \changes{v3.26}{2018/08/29}{spurious \cs{expandafter} removed}%^^A +% redefinition of \cs{scrlfile@excludedpackages} added} +% \changes{v3.26}{2018/08/29}{spurious \cs{expandafter} removed} % \begin{macrocode} \@for\reserved@a:=\reserved@b\do {% \ifx\reserved@a\@empty @@ -983,11 +939,11 @@ } \@onlypreamble\PreventPackageFromLoading % \end{macrocode} -% \begin{macro}{\ResetPreventPackageFromLoading} -% \changes{v3.08}{2010/11/04}{New} +% \begin{command}{\ResetPreventPackageFromLoading} +% \changes{v3.08}{2010/11/04}{added} % \changes{v3.32}{2020/09/09}{works global} -% \begin{macro}{\StorePreventPackageFromLoading} -% \changes{v3.08}{2010/11/04}{New} +% \begin{command}{\StorePreventPackageFromLoading} +% \changes{v3.08}{2010/11/04}{added} % These two are very simple % \begin{macrocode} \newcommand*{\ResetPreventPackageFromLoading}{% @@ -1005,13 +961,13 @@ } \@onlypreamble\StorePreventPackageFromLoading % \end{macrocode} -% \begin{macro}{\UnPreventPackageFromLoading} -% \changes{v3.12}{2013/11/22}{New}%^^A +% \begin{command}{\UnPreventPackageFromLoading} +% \changes{v3.12}{2013/11/22}{added} % \changes{v3.20}{2016/04/12}{\cs{@ifstar} durch \cs{kernel@ifstar} -% ersetzt}%^^A +% ersetzt} % \changes{v3.32}{2020/09/09}{works global} % \begin{macro}{\@UnPreventPackageFromLoading} -% \changes{v3.12}{2013/11/22}{New (internal)}%^^A +% \changes{v3.12}{2013/11/22}{added} % This removes packages from the prevent exclude list. The star variant also % undefines the instead code. % \begin{macrocode} @@ -1056,10 +1012,10 @@ \fi } % \end{macrocode} -% \end{macro} -% \end{macro} +% \end{macro}^^A \@UnPreventPackageFromLoading +% \end{command}^^A \UnPreventPackageFromLoading % \begin{macro}{\scrlfile@RequirePackage} -% \changes{v3.08}{2010/11/04}{New (internal)} +% \changes{v3.08}{2010/11/04}{added} % \changes{v3.12}{2013/11/22}{tolerate spaces} % \changes{v3.12}{2013/11/22}{execute the optional argument of % \cs{PreventPackageFromLoading}} @@ -1104,47 +1060,49 @@ \reserved@a } % \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} +% \end{macro}^^A \scrlfile@RequirePackage +% \end{command}^^A \StorePreventPackageFromLoading +% \end{command}^^A \ResetPreventPackageFromLoading +% \end{macro}^^A \scrlfile@saved@RequirePackage +% \end{macro}^^A \scrlfile@excludedpackages +% \end{macro}^^A \@@PreventPackageFromLoading +% \end{macro}^^A \@PreventPackageFromLoading +% \end{command}^^A \PreventPackageFromLoading % % \begin{macro}{\scr@gobbleopt} -% \changes{v3.08}{2010/11/04}{New (internal)} +% \changes{v3.08}{2010/11/04}{added} % \changes{v3.08a}{2011/02/11}{\cs{@gobbleopt} renamed due to compaibility % problems with \texttt{ntheorem}} % Eat the optional argument if it exists. % \begin{macrocode} \providecommand{\scr@gobbleopt}[1][]{} % \end{macrocode} -% \end{macro} +% \end{macro}^^A \scr@gobbleopt % % \begin{macro}{\kernel@ifstar} -% \changes{v3.20}{2016/04/12}{New (internal)} +% \changes{v3.20}{2016/04/12}{added} % I hope, the \LaTeX{} kernel will define this command in future. But % nevertheless, there are \LaTeX{} kernels in real live without this % command. So I do it again if needed: % \begin{macrocode} \providecommand*\kernel@ifstar[1]{\kernel@ifnextchar*{\@firstoftwo{#1}}} % \end{macrocode} -% \end{macro}%^^A \kernel@ifstar +% \end{macro}^^A \kernel@ifstar % % % \subsection{Extra Document Hooks} % -% \begin{macro}{\BeforeClosingMainAux} -% \changes{v2.95}{2002/09/03}{new} -% \begin{macro}{\AfterReadingMainAux} -% \changes{v3.03}{2009/03/25}{new} +% \begin{command}{\BeforeClosingMainAux} +% \changes{v2.95}{2002/09/03}{added} +% \begin{command}{\AfterReadingMainAux} +% \changes{v3.03}{2009/03/25}{added} % These are completly different. First we have to establish a new hook % at \cs{end\{document\}}, just after closing the group and after the % final \cs{clearpage}. -% TODO: Handling/ignoring an optional argument to make them more compatible -% with \LaTeX's new \cs{AddToHook}. +% \begin{description} +% \item[ToDo:] Handling/ignoring an optional argument to make them more +% compatible with \LaTeX's new \cs{AddToHook}. +% \end{description} % \begin{macrocode} \AtEndDocument{% \let\scr@saved@checkend=\@checkend @@ -1168,23 +1126,23 @@ } % \end{macrocode} % \begin{macro}{\scr@saved@checkend} -% \changes{v2.95}{2002/09/03}{new (internal)} +% \changes{v2.95}{2002/09/03}{added} % \begin{macro}{\scr@saved@dofilelist} -% \changes{v3.03}{2009/03/25}{new} +% \changes{v3.03}{2009/03/25}{added} % You may see above, that we need save-to macros. % \begin{macrocode} \newcommand*{\scr@saved@checkend}{} \newcommand*{\scr@saved@dofilelist}{} % \end{macrocode} -% \end{macro} -% \end{macro} +% \end{macro}^^A \scr@saved@dofilelist +% \end{macro}^^A \scr@saved@checkend % \begin{macro}{\scr@redefine@newpage} -% \changes{v3.00}{2008/07/09}{new (internal)} -% Some classes (e.g. \textsf{letter}) write output to the aux file. +% \changes{v3.00}{2008/07/09}{added} +% Some classes (e.g. \cls{letter}) write output to the aux file. % Because of this, redefinition of \cs{newpage} will only be done, if % \cs{BeforeClosingMainAux} is used. % \begin{macro}{\scr@saved@newpage} -% \changes{v3.00}{2008/07/09}{new (internal)} +% \changes{v3.00}{2008/07/09}{added} % And \cs{newpage} will be restored after the hook. % \begin{macro}{\scr@restore@newpage} % \begin{macrocode} @@ -1221,21 +1179,21 @@ } \newcommand*{\scr@restore@newpage}{} % \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} +% \end{macro}^^A \scr@restore@newpage +% \end{macro}^^A \scr@saved@newpage +% \end{macro}^^A \scr@redefine@newpage % \begin{macro}{\scr@hook@bcma} -% \changes{v2.95}{2002/09/03}{new (internal)} +% \changes{v2.95}{2002/09/03}{added} % \begin{macro}{\scr@hook@acma} -% \changes{v3.03}{2009/03/25}{new (internal)} +% \changes{v3.03}{2009/03/25}{added} % We also need macros, that saves the commands at the hooks and are % extendable using \cs{g@addto@macro}. % \begin{macrocode} \newcommand*{\scr@hook@bcma}{} \newcommand*{\scr@hook@acma}{} % \end{macrocode} -% \end{macro} -% \end{macro} +% \end{macro}^^A \scr@hook@acma +% \end{macro}^^A \scr@hook@bcma % Now we are able to write the user command. Here we also warn, if we detect % one more \cs{newpage}\,---\,maybe at a \cs{clearpage} or % \cs{cleardoublepage}. @@ -1260,8 +1218,8 @@ \g@addto@macro\scr@hook@acma% } % \end{macrocode} -% \end{macro} -% \end{macro} +% \end{command}^^A \AfterReadingMainAux +% \end{command}^^A \BeforeClosingMainAux % % \begin{macro}{\protected@immediate@write} % Like \LaTeX{} kernel's |\protected@write| but using |\immediate\write|. In @@ -1279,18 +1237,15 @@ % \end{macrocode} % \end{macro} % -% \subsection{The \KOMAScript{} Logo} -% -% Last but not least this is a \KOMAScript{} package, so we also define the -% \KOMAScript{} logo: -% \begin{macrocode} -\RequirePackage{scrlogo} -% \end{macrocode} % % \Finale -% +% \PrintChanges % \endinput % Local Variables: % mode: doctex +% ispell-local-dictionary: "en_US" +% eval: (flyspell-mode 1) % TeX-master: t +% TeX-engine: luatex-dev +% eval: (setcar (or (cl-member "Index" (setq-local TeX-command-list (copy-alist TeX-command-list)) :key #'car :test #'string-equal) (setq-local TeX-command-list (cons nil TeX-command-list))) '("Index" "mkindex %s" TeX-run-index nil t :help "makeindex for dtx")) % End: |