summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/babel/luababel.def
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2022-04-30 20:04:04 +0000
committerKarl Berry <karl@freefriends.org>2022-04-30 20:04:04 +0000
commitc672bfbc647851808b23bd991236f0eb93f2b404 (patch)
tree1ad6d8d9791ad149b199614322d168e7286cb8fb /Master/texmf-dist/tex/generic/babel/luababel.def
parent3bf07308bf7627c8c23570e03f2bf8ae7058c8c1 (diff)
babel (30apr22)
git-svn-id: svn://tug.org/texlive/trunk@63189 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel/luababel.def')
-rw-r--r--Master/texmf-dist/tex/generic/babel/luababel.def86
1 files changed, 67 insertions, 19 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/luababel.def b/Master/texmf-dist/tex/generic/babel/luababel.def
index f0682627191..3deb849a853 100644
--- a/Master/texmf-dist/tex/generic/babel/luababel.def
+++ b/Master/texmf-dist/tex/generic/babel/luababel.def
@@ -1162,6 +1162,7 @@ end
\catcode`\~=12
\catcode`\%=12
\catcode`\&=14
+\catcode`\|=12
\gdef\babelprehyphenation{&%
\@ifnextchar[{\bbl@settransform{0}}{\bbl@settransform{0}[]}}
\gdef\babelposthyphenation{&%
@@ -1377,33 +1378,71 @@ end
\bbl@trace{Redefinitions for bidi layout}
\def\BabelNoAMSMath{\let\bbl@noamsmath\relax}
\ifnum\bbl@bidimode>\z@
+ \ifx\matheqdirmode\@undefined\else
+ \matheqdirmode\@ne
+ \fi
\let\bbl@eqnodir\relax
+ \def\bbl@eqdel{()}
+ \def\bbl@eqnum{%
+ {\normalfont\normalcolor
+ \expandafter\@firstoftwo\bbl@eqdel
+ \theequation
+ \expandafter\@secondoftwo\bbl@eqdel}}
+ \def\bbl@puteqno#1{\eqno\hbox{#1}}
+ \def\bbl@putleqno#1{\leqno\hbox{#1}}
+ \def\bbl@eqno@flip#1{%
+ \ifdim\predisplaysize=-\maxdimen
+ \eqno
+ \hb@xt@.01pt{\hb@xt@\displaywidth{\hss{#1}}\hss}%
+ \else
+ \leqno\hbox{#1}%
+ \fi}
+ \def\bbl@leqno@flip#1{%
+ \ifdim\predisplaysize=-\maxdimen
+ \leqno
+ \hb@xt@.01pt{\hss\hb@xt@\displaywidth{{#1}\hss}}%
+ \else
+ \eqno\hbox{#1}%
+ \fi}
\AtBeginDocument{%
\ifx\maketag@@@\@undefined % Normal equation, eqnarray
- \AddToHook{env/eqnarray/begin}{%
+ \AddToHook{env/equation/begin}{%
\ifnum\bbl@thetextdir>\z@
+ \let\@eqnnum\bbl@eqnum
\edef\bbl@eqnodir{\noexpand\bbl@textdir{\the\bbl@thetextdir}}%
\chardef\bbl@thetextdir\z@
\bbl@add\normalfont{\bbl@eqnodir}%
+ \ifcase\bbl@eqnpos
+ \let\bbl@puteqno\bbl@eqno@flip
+ \or
+ \let\bbl@puteqno\bbl@leqno@flip
+ \fi
\fi}%
- \AddToHook{env/equation/begin}{%
+ \ifnum\bbl@eqnpos=\tw@\else
+ \def\endequation{\bbl@puteqno{\@eqnnum}$$\@ignoretrue}%
+ \fi
+ \AddToHook{env/eqnarray/begin}{%
\ifnum\bbl@thetextdir>\z@
\edef\bbl@eqnodir{\noexpand\bbl@textdir{\the\bbl@thetextdir}}%
\chardef\bbl@thetextdir\z@
\bbl@add\normalfont{\bbl@eqnodir}%
- \pardir TLT % dir for \eqno is \pardir!
- \fi}%
- \bbl@xin@{,leqno,}{,\@classoptionslist,}%
- \ifin@
- \def\@eqnnum{%
- \setbox\z@\hbox{\normalfont\normalcolor(\theequation)}%
- \hbox to0.01pt{\hss\hbox to\displaywidth{\box\z@\hss}}}%
- \fi
+ \ifnum\bbl@eqnpos=\@ne
+ \def\@eqnnum{%
+ \setbox\z@\hbox{\bbl@eqnum}%
+ \hbox to0.01pt{\hss\hbox to\displaywidth{\box\z@\hss}}}%
+ \else
+ \let\@eqnnum\bbl@eqnum
+ \fi
+ \fi}
+ % Hack. YA luatex bug?:
+ \expandafter\bbl@sreplace\csname] \endcsname{$$}{\eqno\kern.001pt$$}%
\else % amstex
\ifx\bbl@noamsmath\@undefined
- \@ifpackagewith{amsmath}{leqno}%
- {\let\bbl@ams@lap\hbox}% = leqno
- {\let\bbl@ams@lap\llap}% = default
+ \ifnum\bbl@eqnpos=\@ne
+ \let\bbl@ams@lap\hbox
+ \else
+ \let\bbl@ams@lap\llap
+ \fi
\ExplSyntaxOn
\bbl@sreplace\intertext@{\normalbaselines}%
{\normalbaselines
@@ -1423,12 +1462,21 @@ end
\bbl@sreplace\textdef@{\hbox}{\bbl@ams@tagbox\hbox}%
\bbl@sreplace\maketag@@@{\hbox}{\bbl@ams@tagbox#1}%
\fi}%
- \AddToHook{env/equation/begin}{%
- \ifnum\bbl@thetextdir>\z@
- \ifx\bbl@ams@lap\llap\hrule\@height\z@\fi
- \bbl@ams@preset\bbl@ams@flip
- \fi}%
- \AddToHook{env/equation*/begin}{\bbl@ams@preset\bbl@ams@flip}%
+ \ifnum\bbl@eqnpos=\tw@\else
+ \def\bbl@ams@equation{%
+ \ifnum\bbl@thetextdir>\z@
+ \edef\bbl@eqnodir{\noexpand\bbl@textdir{\the\bbl@thetextdir}}%
+ \chardef\bbl@thetextdir\z@
+ \bbl@add\normalfont{\bbl@eqnodir}%
+ \ifcase\bbl@eqnpos
+ \def\veqno##1##2{\bbl@eqno@flip{##1##2}}%
+ \or
+ \def\veqno##1##2{\bbl@leqno@flip{##1##2}}%
+ \fi
+ \fi}%
+ \AddToHook{env/equation/begin}{\bbl@ams@equation}%
+ \AddToHook{env/equation*/begin}{\bbl@ams@equation}%
+ \fi
\AddToHook{env/cases/begin}{\bbl@ams@preset\bbl@ams@lap}%
\AddToHook{env/multline/begin}{\bbl@ams@preset\hbox}%
\AddToHook{env/gather/begin}{\bbl@ams@preset\bbl@ams@lap}%