[latex3-commits] [git/LaTeX3-latex3-latex2e] everymath: Prevent math grabbing inside \m at th (95b72a3a)
Joseph Wright
joseph.wright at morningstar2.co.uk
Mon Jan 9 10:41:39 CET 2023
Repository : https://github.com/latex3/latex2e
On branch : everymath
Link : https://github.com/latex3/latex2e/commit/95b72a3aa489f7beba3d588de52733d5032f5926
>---------------------------------------------------------------
commit 95b72a3aa489f7beba3d588de52733d5032f5926
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Mon Jan 9 09:41:39 2023 +0000
Prevent math grabbing inside \m at th
This is needed as there are places that \m at th is used *within* a math mode construct. For example, \@tabarray uses \m at th, but is itself
used to construct the array env. The result is that if one 're-activates' math grabbing inside \m at th, \mathchoice in particular 'shows up'.
We will need to examine how to deal with truly
nested math-inside-text-using-\m at th later.
A knock-on of this change is we no longer need
to do anything with \mathchoice, as that always
shows up only inside math mode or inside a \m at th construct.
>---------------------------------------------------------------
95b72a3aa489f7beba3d588de52733d5032f5926
required/latex-lab/latex-lab-mathcapture.dtx | 24 ++--------------------
.../testfiles-mathcapture/mathcapture-007.lvt | 4 ----
.../testfiles-mathcapture/mathcapture-007.tlg | 3 ---
.../testfiles-mathcapture/mathcapture-009.tlg | 3 ---
.../testfiles-mathcapture/mathcapture-012.lvt | 2 --
.../testfiles-mathcapture/mathcapture-012.tlg | 13 ------------
.../testfiles-mathcapture/mathcapture-014.lvt | 2 --
.../testfiles-mathcapture/mathcapture-014.tlg | 4 ----
8 files changed, 2 insertions(+), 53 deletions(-)
diff --git a/required/latex-lab/latex-lab-mathcapture.dtx b/required/latex-lab/latex-lab-mathcapture.dtx
index b52e4841..24401e2b 100644
--- a/required/latex-lab/latex-lab-mathcapture.dtx
+++ b/required/latex-lab/latex-lab-mathcapture.dtx
@@ -208,22 +208,6 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\mathchoice}
-% Avoid issues with multiple collection.
-% \begin{macrocode}
-\cs_gset_protected:Npn \mathchoice #1#2#3#4
- {
- \bool_if:NTF \l_@@_collected_bool
- { \tex_mathchoice:D {#1} {#2} {#3} {#4} }
- {
- \bool_set_true:N \l_@@_collected_bool
- \tex_mathchoice:D {#1} {#2} {#3} {#4}
- \bool_set_false:N \l_@@_collected_bool
- }
- }
-% \end{macrocode}
-% \end{macro}
-%
% \subsection{Marking math environments}
%
% A general mechanism for math mode environments that do no grab their
@@ -388,18 +372,14 @@
% \end{macrocode}
%
% \begin{macro}{\@@_m at th:, \m at th}
-% Handle non-math use of math mode but allow for nesting.
+% Handle non-math use of math mode. At present nesting isn't supported as
+% \cs{m at th} pops up in a few places that \emph{are} math mode!
% \begin{macrocode}
\cs_new_eq:NN \@@_m at th: \m at th
\cs_gset_protected:Npn \m at th
{
\bool_set_true:N \l_@@_collected_bool
\@@_m at th:
- \exp_args:No \tex_everymath:D
- {
- \tex_the:D \tex_everymath:D
- \bool_set_false:N \l_@@_collected_bool
- }
}
% \end{macrocode}
% \end{macro}
diff --git a/required/latex-lab/testfiles-mathcapture/mathcapture-007.lvt b/required/latex-lab/testfiles-mathcapture/mathcapture-007.lvt
index 81fa58de..1725f76f 100644
--- a/required/latex-lab/testfiles-mathcapture/mathcapture-007.lvt
+++ b/required/latex-lab/testfiles-mathcapture/mathcapture-007.lvt
@@ -32,10 +32,6 @@
\START
-\TYPE {-----------------------------------}
-\TYPE{==> Unable to properly define \string\@@mathchoice; primitive \string\mathchoice\space no longer primitive.}
-\TYPE{==> conflict with breqn/mathcapture ; needs checking}
-
11-2-28:
\begin{dmath}
f_{h, \ve}(x, y)
diff --git a/required/latex-lab/testfiles-mathcapture/mathcapture-007.tlg b/required/latex-lab/testfiles-mathcapture/mathcapture-007.tlg
index eaf8c4a2..d010e87f 100644
--- a/required/latex-lab/testfiles-mathcapture/mathcapture-007.tlg
+++ b/required/latex-lab/testfiles-mathcapture/mathcapture-007.tlg
@@ -1,9 +1,6 @@
This is a generated file for the l3build validation system.
Don't change this file in any respect.
-----------------------------------
-==> Unable to properly define \@@mathchoice; primitive \mathchoice no longer primitive.
-==> conflict with breqn/mathcapture ; needs checking
------------------------------------
Math env dmath
f_{h, \ve }(x, y) = \ve \bfE _{x, y} \int _0^{\tve } L_{x, \yvf (\ve u)} \vf (x) \,du = h \int L_{x, z} \vf (x) \rho _x(dz) + h \biggl [ \frac {1}{\tve } \biggl ( \bfE _{y} \int _0^{\tve } L_{x, y^x(s)} \vf (x) \,ds - \tve \int L_{x, z} \vf (x) \rho _x(dz) \biggr ) + \frac {1}{\tve } \biggl ( \bfE _{y} \int _0^{\tve } L_{x, y^x(s)} \vf (x) \,ds - \bfE _{x, y} \int _0^{\tve } L_{x, \yvf (\ve s)} \vf (x) \,ds \biggr ) \biggr ]
==> tagging not working properly
diff --git a/required/latex-lab/testfiles-mathcapture/mathcapture-009.tlg b/required/latex-lab/testfiles-mathcapture/mathcapture-009.tlg
index ca2c9299..c9b2a6f8 100644
--- a/required/latex-lab/testfiles-mathcapture/mathcapture-009.tlg
+++ b/required/latex-lab/testfiles-mathcapture/mathcapture-009.tlg
@@ -3,8 +3,5 @@ Don't change this file in any respect.
-----------------------------------
Math env equation*
\begin {array}{ccc} S^{\mathcal {W}_\Lambda }\otimes T & \stackrel {j}{\longrightarrow } & T \\ \Big \downarrow & & \Big \downarrow \vcenter {\rlap {$\scriptstyle {\mathrm {End}}\,P$}} \\ (S\otimes T)/I & = & (Z\otimes T)/J \end {array}
------------------------------------
-Math env math
-\bool_set_false:N \l__math_collected_bool \scriptstyle {\mathrm {End}}\,P
[1
] (mathcapture-009.aux)
diff --git a/required/latex-lab/testfiles-mathcapture/mathcapture-012.lvt b/required/latex-lab/testfiles-mathcapture/mathcapture-012.lvt
index 22fee172..05c0ed35 100644
--- a/required/latex-lab/testfiles-mathcapture/mathcapture-012.lvt
+++ b/required/latex-lab/testfiles-mathcapture/mathcapture-012.lvt
@@ -58,8 +58,6 @@ The in-text layout: $ u = v + 1 \pmod{n^2} $
\xmapsto{x>0} A \xleftrightarrow[\text{letters}]{} Z
\end{gather}
-\TYPE{==> again spurious extra captures above}
-
11-4-22:
\begin{gather*}
\ropen{a,d}=\closed{a,b} + \lopen{b,c} + \dotsb \\[3pt]
diff --git a/required/latex-lab/testfiles-mathcapture/mathcapture-012.tlg b/required/latex-lab/testfiles-mathcapture/mathcapture-012.tlg
index 0e7ff328..ba943e19 100644
--- a/required/latex-lab/testfiles-mathcapture/mathcapture-012.tlg
+++ b/required/latex-lab/testfiles-mathcapture/mathcapture-012.tlg
@@ -13,19 +13,6 @@ u = v + 1 \pmod {n^2}
Math env gather
A \xLeftarrow {\ x} B \xRightarrow [y\ ]{} C \xLeftrightarrow [y]{\ x\ } D \\ A \xhookleftarrow {x} B \xhookrightarrow [bbb]{a} C \\ \xleftharpoondown {} \xleftharpoonup {} \xleftrightharpoons {xxx} \xrightleftharpoons [yy]{} \xrightharpoondown {} \xrightharpoonup {} \\ \xmapsto {x>0} A \xleftrightarrow [\text {letters}]{} Z
-----------------------------------
-Math env math
-\bool_set_false:N \l__math_collected_bool \m at th \thickmuskip 0mu\medmuskip \thickmuskip \thinmuskip \thickmuskip \relax \displaystyle \leftharpoonup \mkern -7mu\cleaders \hbox {$\displaystyle \mkern -2mu\relbar \mkern -2mu$}\hfill \mkern -7mu\relbar
------------------------------------
-Math env math
-\bool_set_false:N \l__math_collected_bool \m at th \thickmuskip 0mu\medmuskip \thickmuskip \thinmuskip \thickmuskip \relax \displaystyle \relbar \mkern -7mu\cleaders \hbox {$\displaystyle \mkern -2mu\relbar \mkern -2mu$}\hfill \mkern -7mu\rightharpoondown
------------------------------------
-Math env math
-\bool_set_false:N \l__math_collected_bool \m at th \thickmuskip 0mu\medmuskip \thickmuskip \thinmuskip \thickmuskip \relax \displaystyle \relbar \mkern -7mu\cleaders \hbox {$\displaystyle \mkern -2mu\relbar \mkern -2mu$}\hfill \mkern -7mu\rightharpoonup
------------------------------------
-Math env math
-\bool_set_false:N \l__math_collected_bool \m at th \thickmuskip 0mu\medmuskip \thickmuskip \thinmuskip \thickmuskip \relax \displaystyle \leftharpoondown \mkern -7mu\cleaders \hbox {$\displaystyle \mkern -2mu\relbar \mkern -2mu$}\hfill \mkern -7mu\relbar
-==> again spurious extra captures above
------------------------------------
Math env gather*
\ropen {a,d}=\closed {a,b} + \lopen {b,c} + \dotsb \\[3pt] \open {\frac {a}{b}} \approx \open *{\frac {a}{b}} \neq \closed [\Bigg ]{x}
-----------------------------------
diff --git a/required/latex-lab/testfiles-mathcapture/mathcapture-014.lvt b/required/latex-lab/testfiles-mathcapture/mathcapture-014.lvt
index d8e858c1..e14a6dd1 100644
--- a/required/latex-lab/testfiles-mathcapture/mathcapture-014.lvt
+++ b/required/latex-lab/testfiles-mathcapture/mathcapture-014.lvt
@@ -87,7 +87,5 @@ $ \dot{S} \quad \ddot{P} \quad \dddot{Q} \quad \ddddot{R} $
\overbrace[e]{\enspace a_ix^i + a_{i+1}x^{i+1}} + \dots + a_{n-1}x^{n-1}
\end{multline*}
-\TYPE{==> some surplus capture with abraces}
-
\end{document}
diff --git a/required/latex-lab/testfiles-mathcapture/mathcapture-014.tlg b/required/latex-lab/testfiles-mathcapture/mathcapture-014.tlg
index b4cbff20..b6e46cc5 100644
--- a/required/latex-lab/testfiles-mathcapture/mathcapture-014.tlg
+++ b/required/latex-lab/testfiles-mathcapture/mathcapture-014.tlg
@@ -27,9 +27,5 @@ Math env gather*
-----------------------------------
Math env multline*
f(x)=a_0+a_1x+a_2x^2+ \overbrace [B]{a_3x^3 + a_4x^4 + \dots + a_{i-1}x^{i-1} + \enspace } ^{\text {some explanation}} \\ \overbrace [e]{\enspace a_ix^i + a_{i+1}x^{i+1}} + \dots + a_{n-1}x^{n-1}
------------------------------------
-Math env math
-\bool_set_false:N \l__math_collected_bool \scriptstyle \text {some explanation}
-==> some surplus capture with abraces
[1
] (mathcapture-014.aux)
More information about the latex3-commits
mailing list.