From 1f549499c63bd9e6345c4015f74a5475cb7fd2fa Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
Date: Fri, 29 Oct 2021 03:00:58 +0000
Subject: CTAN sync 202110290300

---
 macros/latex/contrib/breqn/breqn.dtx | 69 +++++++++++++++++++++++++++++-------
 1 file changed, 56 insertions(+), 13 deletions(-)

(limited to 'macros/latex/contrib/breqn/breqn.dtx')

diff --git a/macros/latex/contrib/breqn/breqn.dtx b/macros/latex/contrib/breqn/breqn.dtx
index ce68c555b6..bd33b11cfd 100644
--- a/macros/latex/contrib/breqn/breqn.dtx
+++ b/macros/latex/contrib/breqn/breqn.dtx
@@ -151,8 +151,8 @@
 %
 %
 % \title{The \pkg{breqn} package}
-% \def\fileversion{0.98k}
-% \def\filedate{2020/09/24}
+% \def\fileversion{0.98l}
+% \def\filedate{2021/10/28}
 % \date{\pkg{breqn} bundle: \filedate\space\fileversion}
 % \author{Authors: Michael J. Downes, Morten H\o gholm\\ Maintained by Morten H\o gholm, Will Robertson\\ Feedback: \texttt{https://github.com/wspr/breqn/issues}}
 %
@@ -1377,7 +1377,7 @@
 % Declare package name and date.
 %    \begin{macrocode}
 \RequirePackage{expl3}
-\ProvidesExplPackage{breqn}{2020/09/24}{0.98k}{Breaking equations}
+\ProvidesExplPackage{breqn}{2021/10/28}{0.98l}{Breaking equations}
 %    \end{macrocode}
 %   Regrettably, \pkg{breqn} is internally a mess, so we have to take
 %   some odd steps.
@@ -1458,6 +1458,30 @@
 %
 % \section{Some useful tools}
 %
+%
+%
+%  \begin{macro}{\MaybeRawNoindent}
+%    Breqn does a lot of low-level paragraph stuff which iesn't
+%    supposed to execute paragraph hooks, so with a newer \LaTeX{} it
+%    needs to run the versions that prevent the hooks from executing.
+%    \begin{macrocode}
+\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
+%    \end{macrocode}
+%
+%    \begin{macrocode}
+\IfFormatAtLeastTF{2021/06/01}
+  {%
+    \def\MaybeRawNoindent{\ifvmode\expandafter\RawNoindent\fi}%
+  }%
+  {%
+   \let\MaybeRawNoindent\noindent
+   \let\RawParEnd\@@par
+  }
+%    \end{macrocode}
+%  \end{macro}
+%
+%
+%
 % \begin{macro}{\@nx}
 % \begin{macro}{\@xp}
 % The comparative brevity of \cs{@nx} and \cs{@xp} is
@@ -3114,19 +3138,25 @@
 \def\eq@typeset@L@single{%
   \nobreak
   \eq@params\eq@parshape
-  \nointerlineskip\noindent
+  \nointerlineskip
+%  \noindent
+  \MaybeRawNoindent
   \add@grp@label
   \rlap{\kern-\leftskip\box\EQ@numbox}%
   \if F\eq@frame
   \else
     \rlap{\raise\eq@firstht\hbox to\z@{\eq@addframe\hss}}%
   \fi
-  \eq@dump@box\unhbox\EQ@box \@@par
+  \eq@dump@box\unhbox\EQ@box
+  %\@@par
+  \RawParEnd
 }
 \def\eq@typeset@R@single{%
   \nobreak
   \eq@params\eq@parshape
-  \nointerlineskip\noindent
+  \nointerlineskip
+%  \noindent
+  \MaybeRawNoindent
   \add@grp@label
   \if F\eq@frame
   \else
@@ -3134,7 +3164,8 @@
   \fi
   \rlap{\kern-\leftskip\kern\linewidth\kern-\wd\EQ@numbox\copy\EQ@numbox}%
   \eq@dump@box\unhbox\EQ@box
-  \@@par
+  %\@@par
+  \RawParEnd
 }
 %    \end{macrocode}
 %
@@ -3535,7 +3566,9 @@
 \def\eq@startup{%
   \global\let\EQ@hasLHS\@False
   \setbox\z@\vbox\bgroup
-    \noindent \@@math \displaystyle
+%    \noindent
+    \MaybeRawNoindent                   % no matching \RawParEnd (implicit at box end)
+    \@@math \displaystyle
     \penalty-\@Mi
 }
 %    \end{macrocode}
@@ -5332,7 +5365,9 @@
 %    \begin{macrocode}
 \def\eq@dump@box#1#2{%
 %\debug@box#1%
-  \noindent #1#2\setbox\f@ur\lastbox \setbox\tw@\lastbox
+%  \noindent
+  \MaybeRawNoindent                                   % did not find the end yet
+  #1#2\setbox\f@ur\lastbox \setbox\tw@\lastbox
 %    \end{macrocode}
 % If the LHS contains shrinkable glue, in an L layout the alignment
 % could be thrown off if the first line is shrunk noticeably.
@@ -5609,9 +5644,13 @@
 \def\eq@typeset@equation{%
   \nobreak
   \eq@params\eq@parshape
-  \nointerlineskip\noindent
+  \nointerlineskip
+%  \noindent
+  \MaybeRawNoindent
   \add@grp@label
-  \eq@dump@box\unhbox\EQ@box\@@par
+  \eq@dump@box\unhbox\EQ@box
+%  \@@par
+  \RawParEnd
 }
 %    \end{macrocode}
 %
@@ -6007,7 +6046,9 @@
 % 10000, it means a sub and/or superscript is present on the right
 % delimiter and the box containing them must be taken off first.
 %    \begin{macrocode}
-  \noindent\unhbox\z@ \unskip
+%  \noindent
+  \MaybeRawNoindent
+  \unhbox\z@ \unskip
   \subsup@flag-\lastpenalty \unpenalty
   \xdef\right@delim@code{\number\lastpenalty}%
   \unpenalty
@@ -6029,7 +6070,9 @@
 % this complication.    The penalty value $-10001$ is a no-op case
 % in the case statement of \cs{eq@repacka}.
 %    \begin{macrocode}
-  \penalty-\@Mi\z@rule\@@par
+  \penalty-\@Mi\z@rule
+%  \@@par
+  \RawParEnd
   \setbox\z@\lastbox \unskip\unpenalty
 %%{\showboxbreadth\maxdimen\showboxdepth99\showlists}%
 }
-- 
cgit v1.2.3

