[latex3-commits] [git/LaTeX3-latex3-latex2e] hotfix/gh422: Docs (cca8084b)
PhelypeOleinik
phelype.oleinik at latex-project.org
Sun Nov 15 00:06:19 CET 2020
Repository : https://github.com/latex3/latex2e
On branch : hotfix/gh422
Link : https://github.com/latex3/latex2e/commit/cca8084b5c7d6d9736fa567aff2dbf188b09ae12
>---------------------------------------------------------------
commit cca8084b5c7d6d9736fa567aff2dbf188b09ae12
Author: PhelypeOleinik <phelype.oleinik at latex-project.org>
Date: Sat Nov 14 20:06:19 2020 -0300
Docs
>---------------------------------------------------------------
cca8084b5c7d6d9736fa567aff2dbf188b09ae12
base/ltclass.dtx | 12 ++++++++++++
base/ltfilehook.dtx | 7 ++++++-
2 files changed, 18 insertions(+), 1 deletion(-)
diff --git a/base/ltclass.dtx b/base/ltclass.dtx
index beefbc78..1d23d19e 100644
--- a/base/ltclass.dtx
+++ b/base/ltclass.dtx
@@ -1176,6 +1176,10 @@
\@ifundefined{opt@\reserved at a}\@empty
{\csname opt@\reserved at a\endcsname,}%
\zap at space#2 \@empty}
+% \end{macrocode}
+% \changes{v1.3u}{2020/11/14}
+% {Copy option list to the requested package.}
+% \begin{macrocode}
\expandafter\let
\csname opt@#3.#1\expandafter\endcsname
\csname opt@\reserved at a\endcsname}
@@ -1838,6 +1842,10 @@
% \cs{@currname} which doesn't have a path attached to it; only few
% 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
+% we are parsing user input, so the file is still what the user
+% asked for, and not the file actually loaded.
% \begin{macrocode}
\@expl@@@filehook at set@curr at file@@nNN{#1.#4}\reserved at a\reserved at b
\edef\reserved at c{\def\noexpand\reserved at c####1%
@@ -2023,6 +2031,10 @@
% \begin{macrocode}
\def\reserved at a{%
\@pass at ptions\@currext{#1}{\@currname}%
+% \end{macrocode}
+% \changes{v1.3u}{2020/11/14}
+% {Copy option list to the requested package.}
+% \begin{macrocode}
\expandafter\let
\csname opt@\@currpkg at reqd\expandafter\endcsname
\csname opt@\@currname.\@currext\endcsname
diff --git a/base/ltfilehook.dtx b/base/ltfilehook.dtx
index bd4082a9..8bb53d7d 100644
--- a/base/ltfilehook.dtx
+++ b/base/ltfilehook.dtx
@@ -1080,11 +1080,15 @@
%
% \begin{macro}{flag @@_file_replaced}
% \begin{macro}{\@@_if_file_replaced:TF}
+% \begin{macro}{\@@_clear_replacement_flag:}
% Since the file replacement is done expandably in a \cs{csname}, use
% a flag to remember if a substitution happened. We use this in
% \cs{set at curr@file} to short-circuit some of it in case no
% substitution happened (by far the most common case, so it's worth
-% optimising).
+% optimising). The flag raised during the file substitution algorithm
+% must be explicitly cleared after the \cs{@@_if_file_replaced:TF}
+% conditional is no longer needed, otherwise further uses of
+% \cs{@@_if_file_replaced:TF} will wrongly return true.
% \begin{macrocode}
\flag_new:n { @@_file_replaced }
\cs_new:Npn \@@_if_file_replaced:TF #1 #2
@@ -1094,6 +1098,7 @@
% \end{macrocode}
% \end{macro}
% \end{macro}
+% \end{macro}
%
% \begin{macro}{\@@_file_subst_begin:nnn}
% First off, start by checking if the current file ($\meta{name} +
More information about the latex3-commits
mailing list.