texlive[63683] Master/texmf-dist: latex-base (21jun22)
commits+karl at tug.org
commits+karl at tug.org
Tue Jun 21 22:23:30 CEST 2022
Revision: 63683
http://tug.org/svn/texlive?view=revision&revision=63683
Author: karl
Date: 2022-06-21 22:23:29 +0200 (Tue, 21 Jun 2022)
Log Message:
-----------
latex-base (21jun22)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/base/README.md
trunk/Master/texmf-dist/doc/latex/base/alltt.pdf
trunk/Master/texmf-dist/doc/latex/base/cfgguide.pdf
trunk/Master/texmf-dist/doc/latex/base/changes.txt
trunk/Master/texmf-dist/doc/latex/base/classes.pdf
trunk/Master/texmf-dist/doc/latex/base/clsguide.pdf
trunk/Master/texmf-dist/doc/latex/base/cmfonts.pdf
trunk/Master/texmf-dist/doc/latex/base/cyrguide.pdf
trunk/Master/texmf-dist/doc/latex/base/doc-code.pdf
trunk/Master/texmf-dist/doc/latex/base/doc.pdf
trunk/Master/texmf-dist/doc/latex/base/docstrip.pdf
trunk/Master/texmf-dist/doc/latex/base/encguide.pdf
trunk/Master/texmf-dist/doc/latex/base/exscale.pdf
trunk/Master/texmf-dist/doc/latex/base/fix-cm.pdf
trunk/Master/texmf-dist/doc/latex/base/fntguide.pdf
trunk/Master/texmf-dist/doc/latex/base/graphpap.pdf
trunk/Master/texmf-dist/doc/latex/base/ifthen.pdf
trunk/Master/texmf-dist/doc/latex/base/inputenc.pdf
trunk/Master/texmf-dist/doc/latex/base/lamport-manual.pdf
trunk/Master/texmf-dist/doc/latex/base/latexrelease.pdf
trunk/Master/texmf-dist/doc/latex/base/latexsym.pdf
trunk/Master/texmf-dist/doc/latex/base/lb2.pdf
trunk/Master/texmf-dist/doc/latex/base/letter.pdf
trunk/Master/texmf-dist/doc/latex/base/lgc2.pdf
trunk/Master/texmf-dist/doc/latex/base/lppl.pdf
trunk/Master/texmf-dist/doc/latex/base/ltcmdhooks-code.pdf
trunk/Master/texmf-dist/doc/latex/base/ltcmdhooks-doc.pdf
trunk/Master/texmf-dist/doc/latex/base/ltfilehook-code.pdf
trunk/Master/texmf-dist/doc/latex/base/ltfilehook-doc.pdf
trunk/Master/texmf-dist/doc/latex/base/lthooks-code.pdf
trunk/Master/texmf-dist/doc/latex/base/lthooks-doc.pdf
trunk/Master/texmf-dist/doc/latex/base/ltluatex.pdf
trunk/Master/texmf-dist/doc/latex/base/ltmarks-code.pdf
trunk/Master/texmf-dist/doc/latex/base/ltmarks-doc.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews01.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews02.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews03.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews04.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews05.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews06.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews07.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews08.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews09.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews10.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews11.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews12.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews13.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews14.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews15.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews16.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews17.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews18.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews19.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews20.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews21.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews22.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews23.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews24.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews25.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews26.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews27.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews28.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews29.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews30.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews31.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews32.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews33.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews34.pdf
trunk/Master/texmf-dist/doc/latex/base/ltnews35.pdf
trunk/Master/texmf-dist/doc/latex/base/ltpara-code.pdf
trunk/Master/texmf-dist/doc/latex/base/ltpara-doc.pdf
trunk/Master/texmf-dist/doc/latex/base/ltshipout-code.pdf
trunk/Master/texmf-dist/doc/latex/base/ltshipout-doc.pdf
trunk/Master/texmf-dist/doc/latex/base/ltx3info.pdf
trunk/Master/texmf-dist/doc/latex/base/ltxdoc.pdf
trunk/Master/texmf-dist/doc/latex/base/makeindx.pdf
trunk/Master/texmf-dist/doc/latex/base/modguide.pdf
trunk/Master/texmf-dist/doc/latex/base/nfssfont.pdf
trunk/Master/texmf-dist/doc/latex/base/proc.pdf
trunk/Master/texmf-dist/doc/latex/base/slides.pdf
trunk/Master/texmf-dist/doc/latex/base/slifonts.pdf
trunk/Master/texmf-dist/doc/latex/base/source2e.pdf
trunk/Master/texmf-dist/doc/latex/base/syntonly.pdf
trunk/Master/texmf-dist/doc/latex/base/tlc2.pdf
trunk/Master/texmf-dist/doc/latex/base/tulm.pdf
trunk/Master/texmf-dist/doc/latex/base/usrguide.pdf
trunk/Master/texmf-dist/doc/latex/base/usrguide3.pdf
trunk/Master/texmf-dist/doc/latex/base/utf8ienc.pdf
trunk/Master/texmf-dist/doc/latex/base/webcomp.pdf
trunk/Master/texmf-dist/source/latex/base/ltclass.dtx
trunk/Master/texmf-dist/source/latex/base/ltkeys.dtx
trunk/Master/texmf-dist/source/latex/base/ltvers.dtx
trunk/Master/texmf-dist/tex/latex/base/latex.ltx
trunk/Master/texmf-dist/tex/latex/base/latexrelease.sty
Modified: trunk/Master/texmf-dist/doc/latex/base/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/base/README.md 2022-06-21 20:21:13 UTC (rev 63682)
+++ trunk/Master/texmf-dist/doc/latex/base/README.md 2022-06-21 20:23:29 UTC (rev 63683)
@@ -1,7 +1,7 @@
The LaTeX kernel
================
-Release 2022-06-01 patch level 1
+Release 2022-06-01 patch level 2
Overview
--------
Modified: trunk/Master/texmf-dist/doc/latex/base/alltt.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/cfgguide.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/changes.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/base/changes.txt 2022-06-21 20:21:13 UTC (rev 63682)
+++ trunk/Master/texmf-dist/doc/latex/base/changes.txt 2022-06-21 20:23:29 UTC (rev 63683)
@@ -10,9 +10,27 @@
All changes above are only part of the development branch for the next release.
================================================================================
-2022-06-16 Joseph Wright <Joseph.Wright at latex-proejct.org>
+#########################
+# 2022-06-01 PL2 Release
+#########################
+2022-06-20 Joseph Wright <Joseph.Wright at latex-project.org>
+
* ltkeys.dtx (subsection{Main mechanism})
+ Use raw options data for keyval handling
+
+2022-06-19 Joseph Wright <Joseph.Wright at latex-proejct.org>
+
+ * ltkeys.dtx (subsection{Main mechanism})
+ Correct approach to removing keys from \@unusedoptionlist
+
+#########################
+# 2022-06-01 PL1 Release
+#########################
+
+2022-06-16 Joseph Wright <Joseph.Wright at latex-project.org>
+
+ * ltkeys.dtx (subsection{Main mechanism})
Remove key name but avoid touching key value in \@unusedoptionlist
2022-06-15 Frank Mittelbach <Frank.Mittelbach at latex-project.org>
Modified: trunk/Master/texmf-dist/doc/latex/base/classes.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/clsguide.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/cmfonts.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/cyrguide.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/doc-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/docstrip.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/encguide.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/exscale.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/fix-cm.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/fntguide.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/graphpap.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ifthen.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/inputenc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/lamport-manual.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/latexrelease.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/latexsym.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/lb2.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/letter.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/lgc2.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/lppl.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltcmdhooks-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltcmdhooks-doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltfilehook-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltfilehook-doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/lthooks-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/lthooks-doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltluatex.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltmarks-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltmarks-doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews01.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews02.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews03.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews04.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews05.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews06.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews07.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews08.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews09.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews10.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews11.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews12.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews13.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews14.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews15.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews16.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews17.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews18.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews19.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews20.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews21.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews22.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews23.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews24.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews25.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews26.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews27.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews28.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews29.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews30.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews31.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews32.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews33.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews34.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltnews35.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltpara-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltpara-doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltshipout-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltshipout-doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltx3info.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/ltxdoc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/makeindx.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/modguide.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/nfssfont.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/proc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/slides.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/slifonts.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/source2e.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/syntonly.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/tlc2.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/tulm.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/usrguide.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/usrguide3.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/utf8ienc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/base/webcomp.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/source/latex/base/ltclass.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/base/ltclass.dtx 2022-06-21 20:21:13 UTC (rev 63682)
+++ trunk/Master/texmf-dist/source/latex/base/ltclass.dtx 2022-06-21 20:23:29 UTC (rev 63683)
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltclass.dtx}
- [2022/04/16 v1.5b LaTeX Kernel (Class & Package Interface)]
+ [2022/06/20 v1.5c LaTeX Kernel (Class & Package Interface)]
% \iffalse
\documentclass{ltxdoc}
\GetFileInfo{ltclass.dtx}
@@ -2150,7 +2150,7 @@
% actions prepend \cs{@currpath} to \cs{@currname} (namely loading,
% as we have to respect the given path).
%
-% A file substituiton isn't followed just yet because at this point
+% A file substitution isn't followed just yet because at this point
% we are parsing user input, so the file is still what the user
% asked for, and not the file actually loaded.
% \begin{macrocode}
@@ -2176,6 +2176,7 @@
\@ifl at aded\@currext\@currname
% \end{macrocode}
% \changes{v1.5b}{2022/03/18}{Switch to \cs{ProcessKeyOptions}}
+% \changes{v1.5c}{2022/06/20}{Pass raw options to \cs{ProcessKeyOptions}}
% In the current preferred approach, a key family name will exist for
% processing using \pkg{ltkeys}. In that case, we replace the previous
% package options with the new ones, then call the key handler.
@@ -2185,7 +2186,9 @@
\@ifundefined{opt at fam@\@currname.\@currext}
{\@onefilewithoptions at clashchk{#2}}
{%
- \@namedef{opt@\@currname.\@currext}{#2}%
+ \expandafter\edef\csname opt@\@currname.\@currext\endcsname
+ {\zap at space#2 \@empty}%
+ \@namedef{@raw at opt@\@currname.\@currext}{#2}%
\expandafter\expandafter\expandafter\ProcessKeyOptions
\expandafter\expandafter\expandafter
[\csname opt at fam@\@currname.\@currext\endcsname]%
Modified: trunk/Master/texmf-dist/source/latex/base/ltkeys.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/base/ltkeys.dtx 2022-06-21 20:21:13 UTC (rev 63682)
+++ trunk/Master/texmf-dist/source/latex/base/ltkeys.dtx 2022-06-21 20:23:29 UTC (rev 63683)
@@ -33,7 +33,7 @@
%<*driver>
% \fi
\ProvidesFile{ltkeys.dtx}
- [2022/06/16 v1.0g LaTeX Kernel (Kevyal options)]
+ [2022/06/20 v1.0h LaTeX Kernel (Kevyal options)]
% \iffalse
\documentclass{l3doc}
\GetFileInfo{ltkeys.dtx}
@@ -258,6 +258,7 @@
%
% \begin{macro}{\@@_options_global:n}
% \changes{v1.0f}{2022/03/18}{Simplify to always cover global options}
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
% Global (class) options are handled differently for \LaTeXe{} packages
% and classes. Hence this function is essentially a check on the current
% file type. The initial test is needed as \LaTeXe{} allows variables to
@@ -266,7 +267,7 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_options_global:n #1
{
- \cs_if_eq:NNF \@classoptionslist \scan_stop:
+ \cs_if_eq:NNF \@raw at classoptionslist \scan_stop:
{
\cs_if_eq:NNTF \@currext \@clsextension
{ \@@_options_class:n {#1} }
@@ -278,8 +279,10 @@
%
% \begin{macro}{\@@_options_class:n}
% \changes{v1.0g}{2022/06/16}{Better handling of option removal}
-% \begin{macro}{\@@_options_remove:nnn}
-% \changes{v1.0g}{2022/06/16}{New function}
+% \changes{v1.0h}{2022/06/19}{Further work on handling of option removal}
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
+% \begin{macro}{\@@_options_class:nnn}
+% \changes{v1.0h}{2022/06/20}{New function}
% For classes, each option (stripped of any content after |=|)
% is checked for existence as a key. If found, the option is added to
% the combined list for processing. On the other hand, unused options
@@ -289,17 +292,17 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_options_class:n #1
{
- \cs_if_free:cF { opt@ \@currname . \@currext }
+ \cs_if_free:cF { @raw at opt@ \@currname . \@currext }
{
\keys_if_exist:nnTF {#1} { unknown }
{
\clist_put_right:Nv \l_@@_options_clist
- { opt@ \@currname . \@currext }
+ { @raw at opt@ \@currname . \@currext }
}
{
- \clist_map_inline:cn { opt@ \@currname . \@currext }
+ \clist_map_inline:cn { @raw at opt@ \@currname . \@currext }
{
- \@@_options_remove:enn
+ \exp_args:Ne \@@_options_class:nnn
{ \@@_remove_equals:n {##1} }
{##1} {#1}
}
@@ -306,13 +309,17 @@
}
}
}
-\cs_new_protected:Npn \@@_options_remove:nnn #1#2#3
+\cs_new_protected:Npn \@@_options_class:nnn #1#2#3
{
\keys_if_exist:nnTF {#3} {#1}
{ \clist_put_right:Nn \l_@@_options_clist {#2} }
- { \clist_put_right:Nn \@unusedoptionlist {#1} }
+ {
+ \str_if_eq:eeF
+ { \exp_not:v { @raw at opt@ \@currname . \@currext } }
+ { \exp_not:V \@raw at classoption }
+ { \clist_put_right:Nn \@unusedoptionlist {#1} }
+ }
}
-\cs_generate_variant:Nn \@@_options_remove:nnn { e }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -319,6 +326,10 @@
%
% \begin{macro}{\@@_options_package:n}
% \changes{v1.0g}{2022/06/16}{Better handling of option removal}
+% \changes{v1.0h}{2022/06/19}{Further work on handling of option removal}
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
+% \begin{macro}{\@@_options_package:nnn}
+% \changes{v1.0h}{2022/06/19}{New function}
% For global options when processing a package, the tasks are slightly
% different from those for a class. The check is the same, but here
% there is nothing to do if the option is not applicable. Each valid
@@ -326,18 +337,28 @@
% \begin{macrocode}
\cs_new_protected:Npn \@@_options_package:n #1
{
- \clist_map_inline:Nn \@classoptionslist
+ \clist_map_inline:Nn \@raw at classoptionslist
{
- \@@_options_remove:enn
+ \exp_args:Ne \@@_options_package:nnn
{ \@@_remove_equals:n {##1} }
{##1} {#1}
}
}
+\cs_new_protected:Npn \@@_options_package:nnn #1#2#3
+ {
+ \keys_if_exist:nnT {#3} {#1}
+ {
+ \clist_put_right:Nn \l_@@_options_clist {#2}
+ \clist_remove_all:Nn \@unusedoptionlist {#1}
+ }
+ }
% \end{macrocode}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\@@_options_local:}
-% If local options are found, the are added to the processing list.
+% \changes{v1.0h}{2022/06/20}{Use raw options data}
+% If local options are found, they are added to the processing list.
% \LaTeXe{} stores options for each file in a macro which may or may not
% exist, hence the need to use \cs{cs_if_exist:c}.
% \begin{macrocode}
@@ -345,10 +366,10 @@
{
\cs_if_eq:NNF \@currext \@clsextension
{
- \cs_if_exist:cT { opt@ \@currname . \@currext }
+ \cs_if_exist:cT { @raw at opt@ \@currname . \@currext }
{
\clist_put_right:Nv \l_@@_options_clist
- { opt@ \@currname . \@currext }
+ { @raw at opt@ \@currname . \@currext }
}
}
}
Modified: trunk/Master/texmf-dist/source/latex/base/ltvers.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/base/ltvers.dtx 2022-06-21 20:21:13 UTC (rev 63682)
+++ trunk/Master/texmf-dist/source/latex/base/ltvers.dtx 2022-06-21 20:23:29 UTC (rev 63683)
@@ -115,7 +115,7 @@
{2022-06-01}
%</2ekernel|latexrelease>
%<*2ekernel>
-\def\patch at level{1}
+\def\patch at level{2}
% \end{macrocode}
%
% \begin{macro}{\development at branch@name}
Modified: trunk/Master/texmf-dist/tex/latex/base/latex.ltx
===================================================================
--- trunk/Master/texmf-dist/tex/latex/base/latex.ltx 2022-06-21 20:21:13 UTC (rev 63682)
+++ trunk/Master/texmf-dist/tex/latex/base/latex.ltx 2022-06-21 20:23:29 UTC (rev 63683)
@@ -706,7 +706,7 @@
\def\fmtname{LaTeX2e}
\edef\fmtversion
{2022-06-01}
-\def\patch at level{1}
+\def\patch at level{2}
\edef\development at branch@name{}
\iffalse
\def\reserved at a#1/#2/#3\@nil{%
@@ -14274,7 +14274,9 @@
\@ifundefined{opt at fam@\@currname.\@currext}
{\@onefilewithoptions at clashchk{#2}}
{%
- \@namedef{opt@\@currname.\@currext}{#2}%
+ \expandafter\edef\csname opt@\@currname.\@currext\endcsname
+ {\zap at space#2 \@empty}%
+ \@namedef{@raw at opt@\@currname.\@currext}{#2}%
\expandafter\expandafter\expandafter\ProcessKeyOptions
\expandafter\expandafter\expandafter
[\csname opt at fam@\@currname.\@currext\endcsname]%
@@ -14852,7 +14854,7 @@
}
\cs_new_protected:Npn \__keys_options_global:n #1
{
- \cs_if_eq:NNF \@classoptionslist \scan_stop:
+ \cs_if_eq:NNF \@raw at classoptionslist \scan_stop:
{
\cs_if_eq:NNTF \@currext \@clsextension
{ \__keys_options_class:n {#1} }
@@ -14861,17 +14863,17 @@
}
\cs_new_protected:Npn \__keys_options_class:n #1
{
- \cs_if_free:cF { opt@ \@currname . \@currext }
+ \cs_if_free:cF { @raw at opt@ \@currname . \@currext }
{
\keys_if_exist:nnTF {#1} { unknown }
{
\clist_put_right:Nv \l__keys_options_clist
- { opt@ \@currname . \@currext }
+ { @raw at opt@ \@currname . \@currext }
}
{
- \clist_map_inline:cn { opt@ \@currname . \@currext }
+ \clist_map_inline:cn { @raw at opt@ \@currname . \@currext }
{
- \__keys_options_remove:enn
+ \exp_args:Ne \__keys_options_class:nnn
{ \__keys_remove_equals:n {##1} }
{##1} {#1}
}
@@ -14878,30 +14880,42 @@
}
}
}
-\cs_new_protected:Npn \__keys_options_remove:nnn #1#2#3
+\cs_new_protected:Npn \__keys_options_class:nnn #1#2#3
{
\keys_if_exist:nnTF {#3} {#1}
{ \clist_put_right:Nn \l__keys_options_clist {#2} }
- { \clist_put_right:Nn \@unusedoptionlist {#1} }
+ {
+ \str_if_eq:eeF
+ { \exp_not:v { @raw at opt@ \@currname . \@currext } }
+ { \exp_not:V \@raw at classoption }
+ { \clist_put_right:Nn \@unusedoptionlist {#1} }
+ }
}
-\cs_generate_variant:Nn \__keys_options_remove:nnn { e }
\cs_new_protected:Npn \__keys_options_package:n #1
{
- \clist_map_inline:Nn \@classoptionslist
+ \clist_map_inline:Nn \@raw at classoptionslist
{
- \__keys_options_remove:enn
+ \exp_args:Ne \__keys_options_package:nnn
{ \__keys_remove_equals:n {##1} }
{##1} {#1}
}
}
+\cs_new_protected:Npn \__keys_options_package:nnn #1#2#3
+ {
+ \keys_if_exist:nnT {#3} {#1}
+ {
+ \clist_put_right:Nn \l__keys_options_clist {#2}
+ \clist_remove_all:Nn \@unusedoptionlist {#1}
+ }
+ }
\cs_new_protected:Npn \__keys_options_local:
{
\cs_if_eq:NNF \@currext \@clsextension
{
- \cs_if_exist:cT { opt@ \@currname . \@currext }
+ \cs_if_exist:cT { @raw at opt@ \@currname . \@currext }
{
\clist_put_right:Nv \l__keys_options_clist
- { opt@ \@currname . \@currext }
+ { @raw at opt@ \@currname . \@currext }
}
}
}
Modified: trunk/Master/texmf-dist/tex/latex/base/latexrelease.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/base/latexrelease.sty 2022-06-21 20:21:13 UTC (rev 63682)
+++ trunk/Master/texmf-dist/tex/latex/base/latexrelease.sty 2022-06-21 20:23:29 UTC (rev 63683)
@@ -13966,7 +13966,9 @@
\@ifundefined{opt at fam@\@currname.\@currext}
{\@onefilewithoptions at clashchk{#2}}
{%
- \@namedef{opt@\@currname.\@currext}{#2}%
+ \expandafter\edef\csname opt@\@currname.\@currext\endcsname
+ {\zap at space#2 \@empty}%
+ \@namedef{@raw at opt@\@currname.\@currext}{#2}%
\expandafter\expandafter\expandafter\ProcessKeyOptions
\expandafter\expandafter\expandafter
[\csname opt at fam@\@currname.\@currext\endcsname]%
More information about the tex-live-commits
mailing list.