diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/l3kernel/l3text.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/l3kernel/l3text.dtx | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3text.dtx b/Master/texmf-dist/source/latex/l3kernel/l3text.dtx index ba97945154a..694053ff487 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3text.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3text.dtx @@ -43,7 +43,7 @@ % }^^A % } % -% \date{Released 2020-01-22} +% \date{Released 2020-01-31} % % \maketitle % @@ -538,7 +538,7 @@ % \begin{macro}[EXP]{\@@_expand_replace:N} % \begin{macro}[EXP]{\@@_expand_replace:n} % \begin{macro}[EXP]{\@@_expand_cs_expand:N} -% \begin{macro}[EXP]{\@@_expand_noexpand:n} +% \begin{macro}[EXP]{\@@_expand_noexpand:nn} % After precautions against |&| tokens, start a simple loop: that of % course means that \enquote{text} cannot contain the two recursion % quarks. The loop here must be \texttt{f}-type expandable; we have @@ -893,13 +893,14 @@ % Finally, expand any macros which can be: this then loops back around to % deal with what they produce. The only issue is if the token is % \cs{exp_not:n}, as that must apply to the following balanced text. +% There might be an \cs{exp_after:wN} there, so we check for it. % \begin{macrocode} \cs_new:Npn \@@_expand_cs_expand:N #1 { \@@_if_expandable:NTF #1 { - \str_if_eq:nnTF {#1} { \exp_not:n } - { \@@_expand_noexpand:n } + \token_if_eq_meaning:NNTF #1 \exp_not:n + { \@@_expand_noexpand:w } { \exp_after:wN \@@_expand_loop:w #1 } } { @@ -907,9 +908,11 @@ \@@_expand_loop:w } } -\cs_new:Npn \@@_expand_noexpand:n #1 +\cs_new:Npn \@@_expand_noexpand:w #1# + { \@@_expand_noexpand:nn {#1} } +\cs_new:Npn \@@_expand_noexpand:nn #1#2 { - \@@_expand_store:n {#1} + #1 \@@_expand_store:n #1 {#2} \@@_expand_loop:w } % \end{macrocode} |