texlive[63189] Master/texmf-dist: babel (30apr22)

commits+karl at tug.org commits+karl at tug.org
Sat Apr 30 22:04:04 CEST 2022


Revision: 63189
          http://tug.org/svn/texlive?view=revision&revision=63189
Author:   karl
Date:     2022-04-30 22:04:04 +0200 (Sat, 30 Apr 2022)
Log Message:
-----------
babel (30apr22)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/babel/README.md
    trunk/Master/texmf-dist/doc/latex/babel/babel.pdf
    trunk/Master/texmf-dist/source/latex/babel/babel.dtx
    trunk/Master/texmf-dist/source/latex/babel/babel.ins
    trunk/Master/texmf-dist/source/latex/babel/bbcompat.dtx
    trunk/Master/texmf-dist/source/latex/babel/locale.zip
    trunk/Master/texmf-dist/tex/generic/babel/babel.def
    trunk/Master/texmf-dist/tex/generic/babel/babel.sty
    trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg
    trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-km.ini
    trunk/Master/texmf-dist/tex/generic/babel/locale/mr/babel-mr.ini
    trunk/Master/texmf-dist/tex/generic/babel/locale/tk/babel-tk.ini
    trunk/Master/texmf-dist/tex/generic/babel/luababel.def
    trunk/Master/texmf-dist/tex/generic/babel/nil.ldf

Modified: trunk/Master/texmf-dist/doc/latex/babel/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/babel/README.md	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/doc/latex/babel/README.md	2022-04-30 20:04:04 UTC (rev 63189)
@@ -1,4 +1,4 @@
-## Babel 3.73
+## Babel 3.74
 
 This package manages culturally-determined typographical (and other)
 rules, and hyphenation patterns for a wide range of languages. Many
@@ -8,9 +8,9 @@
 
 The latest stable version is available on <https://ctan.org/pkg/babel>.
 
-Changes in version 3.73 are described in:
+Changes in version 3.74 are described in:
 
-https://latex3.github.io/babel/news/whats-new-in-babel-3.73.html
+https://latex3.github.io/babel/news/whats-new-in-babel-3.74.html
 
 Apart from the manual, you can find information on some aspects of babel at:
 
@@ -19,7 +19,7 @@
 The best way to install and/or update it is with the help of package
 managers.
 
-### Reporting Bugs
+### Reporting bugs
 
 If you wish to report a problem or bug in any of these packages please
 use the
@@ -44,18 +44,13 @@
 Bugs related to specific languages are best reported to their
 respective authors.
 
-### Summary of Latest changes
+### Summary of latest changes
 ```
-3.73   2022-02-26
-       * Fixes a severe bug introduced in 3.72 when amsmath is
-         loaded.
-
-3.72   2022-02-24
-       * Advances in amsmath (lua).
+3.74   2022-04-30
        * Fixes:
-         - Captions in Thai.
-         - Some settings sometimes ignored with 'onchar' (lua).
-         - Extra colon in Polish 'cc' (#172)
+         - Error in transforms if | is active.
+         - Minor fixes in Khemer, Turkmen, Marathi.
+       * RTL math improved (with luatex).
 ```
 
 ### Previous changes

Modified: trunk/Master/texmf-dist/doc/latex/babel/babel.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/babel/babel.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/babel/babel.dtx	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/source/latex/babel/babel.dtx	2022-04-30 20:04:04 UTC (rev 63189)
@@ -32,7 +32,7 @@
 %
 % \iffalse
 %<*filedriver>
-\ProvidesFile{babel.dtx}[2022/02/26 v3.73 The Babel package]
+\ProvidesFile{babel.dtx}[2022/04/30 v3.74 The Babel package]
 \documentclass{ltxdoc}
 \GetFileInfo{babel.dtx}
 \usepackage{fontspec}
@@ -2752,7 +2752,10 @@
   font.
 \end{note}
 
-\New{4.41} Many `ini` locale files has been extended with information
+\Describe{\localenumeral}{\marg{style}\marg{number}}
+\DescribeOther{\localecounterl}{\marg{style}\marg{counter}}
+
+\New{3.41} Many `ini` locale files has been extended with information
 about non-positional numerical systems, based on those predefined in
 CSS. They only work with \xetex{} and \luatex{} and are fully
 expendable (even inside an unprotected |\edef|). Currently, they are
@@ -2784,33 +2787,47 @@
 
 \item[Arabic] |abjad|, |maghrebi.abjad|
 
-\item[Belarusan, Bulgarian, Macedonian, Serbian] |lower|, |upper| 
+\item[Armenian] |lower.letter|, |upper.letter|
 
+\item[Belarusan, Bulgarian, Church Slavic, Macedonian, Serbian] |lower|, |upper| 
+
 \item[Bengali] |alphabetic|
 
-\item[Coptic] |epact|,|lower.letters|
+\item[Central Kurdish] |alphabetic|
 
+\item[Chinese] |cjk-earthly-branch|, |cjk-heavenly-stem|,
+|circled.ideograph|, |parenthesized.ideograph|,
+|fullwidth.lower.alpha|, |fullwidth.upper.alpha|
+
+\item[Church Slavic (Glagolitic)] |letters|
+
+\item[Coptic] |epact|, |lower.letters|
+
+\item[French] |date.day| (mainly for internal use).
+
+\item[Georgian] |letters|
+
+\item[Greek] |lower.modern|, |upper.modern|, |lower.ancient|,
+|upper.ancient| (all with keraia)
+
 \item[Hebrew] |letters| (neither geresh nor gershayim yet)
 
 \item[Hindi] |alphabetic|
 
-\item[Armenian] |lower.letter|, |upper.letter|
+\item[Italian] |lower.legal|, |upper.legal|
 
 \item[Japanese] |hiragana|, |hiragana.iroha|, |katakana|,
 |katakana.iroha|, |circled.katakana|, |informal|, |formal|,
-|cjk-earthly-branch|, |cjk-heavenly-stem|, f|ullwidth.lower.alpha|,
+|cjk-earthly-branch|, |cjk-heavenly-stem|, |circled.ideograph|,
+|parenthesized.ideograph|, |fullwidth.lower.alpha|,
 |fullwidth.upper.alpha|
 
-\item[Georgian] |letters|
-
-\item[Greek] |lower.modern|, |upper.modern|, |lower.ancient|,
-|upper.ancient| (all with keraia)
-
 \item[Khmer] |consonant|
 
-\item[Korean] |consonant|, |syllabe|, |hanja.informal|,
-|hanja.formal|, |hangul.formal|, |cjk-earthly-branch|,
-|cjk-heavenly-stem|, |fullwidth.lower.alpha|, |fullwidth.upper.alpha|
+\item[Korean] |consonant|, |syllabe|, |hanja.informal|, |hanja.formal|,
+|hangul.formal|, |cjk-earthly-branch|, |cjk-heavenly-stem|,
+|circled.ideograph|, |parenthesized.ideograph|,
+|fullwidth.lower.alpha|, |fullwidth.upper.alpha|
 
 \item[Marathi] |alphabetic|
 
@@ -2825,9 +2842,6 @@
 \item[Thai] |alphabetic|
 
 \item[Ukrainian] |lower| , |lower.full|, |upper| , |upper.full|
-
-\item[Chinese] |cjk-earthly-branch|, |cjk-heavenly-stem|,
-|fullwidth.lower.alpha|, |fullwidth.upper.alpha|
 \end{description}
 
 \New{3.45} In addition, native digits (in languages defining them) may
@@ -2922,34 +2936,32 @@
 raised. \New{3.47} With the starred version no error is raised, so that
 you can take your own actions with undefined properties.
 
+\Describe{\localeid}{}
+Each language in the \babel{} sense has its own unique numeric
+identifier, which can be retrieved with |\localeid|.
+
+The |\localeid| is not the same as the |\language| identifier, which
+refers to a set of hyphenation patters (which, in turn, is just a
+component of the line breaking algorithm described in the next
+section). The data about preloaded patterns are store in an internal
+macro named |\bbl at languages| (see the code for further details), but
+note several locales may share a single |\language|, so they are
+separated concepts. In \luatex, the |\localeid| is saved in each node
+(when it makes sense) as an attribute, too.
+
+\Describe{\LocaleForEach}{\marg{code}}
 \Babel{} remembers which |ini| files have been loaded. There is a loop
 named |\LocaleForEach| to traverse the list, where |#1| is the name of
 the current item, so that |\LocaleForEach{\message{ **#1** }}| just
 shows the loaded |ini|’s. 
 
-\begin{note}
+\Describe{\BabelEnsureInfo}{}
 |ini| files are loaded with |\babelprovide| and also when languages are
-selected if there is a |\babelfont|. To ensure the |ini| files are
-loaded (and therefore the corresponding data) even if these two
-conditions are not met, write |\BabelEnsureInfo| in the preamble.
-\end{note}
+selected if there is a |\babelfont| or they have not been explicitly
+declared. To ensure the |ini| files are loaded (and therefore the
+corresponding data) even if these two conditions are not met, write
+|\BabelEnsureInfo| in the preamble.
 
-\Describe{\localeid}{}
-
-Each language in the \babel{} sense has its own unique numeric
-identifier, which can be retrieved with |\localeid|.
-
-\begin{note}
-  The |\localeid| is not the same as the |\language| identifier, which
-  refers to a set of hyphenation patters (which, in turn, is just a
-  component of the line breaking algorithm described in the next
-  section). The data about preloaded patterns are store in an internal
-  macro named |\bbl at languages| (see the code for further details), but
-  note several locales may share a single |\language|, so they are
-  separated concepts. In \luatex, the |\localeid| is saved in each node
-  (where it makes sense) as an attribute, too.
-\end{note}
-
 \subsection{Hyphenation and line breaking}
 
 \Babel{} deals with three kinds of line breaking rules: Western,
@@ -5104,8 +5116,8 @@
 % \section{Tools}
 %
 %    \begin{macrocode}
-%<<version=3.73>>
-%<<date=2022/02/26>>
+%<<version=3.74>>
+%<<date=2022/04/30>>
 %    \end{macrocode}
 %
 % \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -11156,6 +11168,8 @@
 \DeclareOption{safe=none}{\let\bbl at opt@safe\@empty}
 \DeclareOption{safe=bib}{\def\bbl at opt@safe{B}}
 \DeclareOption{safe=ref}{\def\bbl at opt@safe{R}}
+\DeclareOption{safe=refbib}{\def\bbl at opt@safe{BR}}
+\DeclareOption{safe=bibref}{\def\bbl at opt@safe{BR}}
 %<</More package options>>
 %    \end{macrocode}
 %
@@ -11168,7 +11182,7 @@
 %
 %    \begin{macrocode}
 \bbl at trace{Cross referencing macros}
-\ifx\bbl at opt@safe\@empty\else
+\ifx\bbl at opt@safe\@empty\else % ie, if 'ref' and/or 'bib'
   \def\@newl at bel#1#2#3{%
    {\@safe at activestrue
     \bbl at ifunset{#1@#2}%
@@ -11235,10 +11249,24 @@
 %    \begin{macrocode}
 \bbl at xin@{R}\bbl at opt@safe
 \ifin@
-  \bbl at redefinerobust\ref#1{%
-    \@safe at activestrue\org at ref{#1}\@safe at activesfalse}
-  \bbl at redefinerobust\pageref#1{%
-    \@safe at activestrue\org at pageref{#1}\@safe at activesfalse}
+  \edef\bbl at tempc{\expandafter\string\csname ref code\endcsname}%
+  \bbl at xin@{\expandafter\strip at prefix\meaning\bbl at tempc}%
+    {\expandafter\strip at prefix\meaning\ref}%
+  \ifin@
+    \bbl at redefine\@kernel at ref#1{%
+      \@safe at activestrue\org@@kernel at ref{#1}\@safe at activesfalse}
+    \bbl at redefine\@kernel at pageref#1{%
+      \@safe at activestrue\org@@kernel at pageref{#1}\@safe at activesfalse}
+    \bbl at redefine\@kernel at sref#1{%
+      \@safe at activestrue\org@@kernel at sref{#1}\@safe at activesfalse}
+    \bbl at redefine\@kernel at spageref#1{%
+      \@safe at activestrue\org@@kernel at spageref{#1}\@safe at activesfalse}
+  \else
+    \bbl at redefinerobust\ref#1{%
+      \@safe at activestrue\org at ref{#1}\@safe at activesfalse}
+    \bbl at redefinerobust\pageref#1{%
+      \@safe at activestrue\org at pageref{#1}\@safe at activesfalse}
+  \fi
 \else
   \let\org at ref\ref
   \let\org at pageref\pageref
@@ -11502,28 +11530,30 @@
 %
 %    \begin{macrocode}
 \bbl at trace{Preventing clashes with other packages}
-\bbl at xin@{R}\bbl at opt@safe
-\ifin@
-  \AtBeginDocument{%
-    \@ifpackageloaded{ifthen}{%
-      \bbl at redefine@long\ifthenelse#1#2#3{%
-        \let\bbl at temp@pref\pageref
-        \let\pageref\org at pageref
-        \let\bbl at temp@ref\ref
-        \let\ref\org at ref
-        \@safe at activestrue
-        \org at ifthenelse{#1}%
-          {\let\pageref\bbl at temp@pref
-           \let\ref\bbl at temp@ref
-           \@safe at activesfalse
-           #2}%
-          {\let\pageref\bbl at temp@pref
-           \let\ref\bbl at temp@ref
-           \@safe at activesfalse
-           #3}%
-        }%
-      }{}%
-    }
+\ifx\org at ref\@undefined\else
+  \bbl at xin@{R}\bbl at opt@safe
+  \ifin@
+    \AtBeginDocument{%
+      \@ifpackageloaded{ifthen}{%
+        \bbl at redefine@long\ifthenelse#1#2#3{%
+          \let\bbl at temp@pref\pageref
+          \let\pageref\org at pageref
+          \let\bbl at temp@ref\ref
+          \let\ref\org at ref
+          \@safe at activestrue
+          \org at ifthenelse{#1}%
+            {\let\pageref\bbl at temp@pref
+             \let\ref\bbl at temp@ref
+             \@safe at activesfalse
+             #2}%
+            {\let\pageref\bbl at temp@pref
+             \let\ref\bbl at temp@ref
+             \@safe at activesfalse
+             #3}%
+          }%
+        }{}%
+      }
+\fi
 %    \end{macrocode}
 %
 %  \end{macro}
@@ -11575,7 +11605,6 @@
 %
 % \subsubsection{\pkg{hhline}}
 %
-%
 % \begin{macro}{\hhline}
 %
 % Delaying the activation of the shorthand characters has introduced
@@ -14283,6 +14312,7 @@
 \catcode`\~=12
 \catcode`\%=12
 \catcode`\&=14
+\catcode`\|=12
 \gdef\babelprehyphenation{&%
   \@ifnextchar[{\bbl at settransform{0}}{\bbl at settransform{0}[]}}
 \gdef\babelposthyphenation{&%
@@ -14541,38 +14571,80 @@
 %
 %    \begin{macrocode}
 \bbl at trace{Redefinitions for bidi layout}
+%
+%<<*More package options>>
+\chardef\bbl at eqnpos\z@
+\DeclareOption{leqno}{\chardef\bbl at eqnpos\@ne}
+\DeclareOption{fleqn}{\chardef\bbl at eqnpos\tw@}
+%<</More package options>>
+%
 \def\BabelNoAMSMath{\let\bbl at noamsmath\relax}
 \ifnum\bbl at bidimode>\z@
+  \ifx\matheqdirmode\@undefined\else
+    \matheqdirmode\@ne
+  \fi
   \let\bbl at eqnodir\relax
-%   \ifx\matheqdirmode\@undefined\else
-%     \matheqdirmode\@ne
-%   \fi
+  \def\bbl at eqdel{()}
+  \def\bbl at eqnum{%
+    {\normalfont\normalcolor
+     \expandafter\@firstoftwo\bbl at eqdel
+     \theequation
+     \expandafter\@secondoftwo\bbl at eqdel}}
+  \def\bbl at puteqno#1{\eqno\hbox{#1}}
+  \def\bbl at putleqno#1{\leqno\hbox{#1}}
+  \def\bbl at eqno@flip#1{%
+    \ifdim\predisplaysize=-\maxdimen
+      \eqno
+      \hb at xt@.01pt{\hb at xt@\displaywidth{\hss{#1}}\hss}%
+    \else
+      \leqno\hbox{#1}%
+    \fi}
+  \def\bbl at leqno@flip#1{%
+    \ifdim\predisplaysize=-\maxdimen
+      \leqno
+      \hb at xt@.01pt{\hss\hb at 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 at thetextdir>\z@
+          \let\@eqnnum\bbl at eqnum
           \edef\bbl at eqnodir{\noexpand\bbl at textdir{\the\bbl at thetextdir}}%
           \chardef\bbl at thetextdir\z@
           \bbl at add\normalfont{\bbl at eqnodir}%
+          \ifcase\bbl at eqnpos
+            \let\bbl at puteqno\bbl at eqno@flip
+          \or
+            \let\bbl at puteqno\bbl at leqno@flip
+          \fi
         \fi}%
-      \AddToHook{env/equation/begin}{%
+      \ifnum\bbl at eqnpos=\tw@\else
+        \def\endequation{\bbl at puteqno{\@eqnnum}$$\@ignoretrue}%
+      \fi
+      \AddToHook{env/eqnarray/begin}{%
         \ifnum\bbl at thetextdir>\z@
           \edef\bbl at eqnodir{\noexpand\bbl at textdir{\the\bbl at thetextdir}}%
           \chardef\bbl at thetextdir\z@
           \bbl at add\normalfont{\bbl at eqnodir}%
-          \pardir TLT % dir for \eqno is \pardir!
-        \fi}%
-      \bbl at 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 at eqnpos=\@ne
+            \def\@eqnnum{%
+             \setbox\z@\hbox{\bbl at eqnum}%
+             \hbox to0.01pt{\hss\hbox to\displaywidth{\box\z@\hss}}}%
+          \else
+             \let\@eqnnum\bbl at eqnum
+          \fi
+        \fi}
+      % Hack. YA luatex bug?:
+      \expandafter\bbl at sreplace\csname] \endcsname{$$}{\eqno\kern.001pt$$}%
     \else % amstex
       \ifx\bbl at noamsmath\@undefined
-        \@ifpackagewith{amsmath}{leqno}%
-          {\let\bbl at ams@lap\hbox}% = leqno
-          {\let\bbl at ams@lap\llap}% = default
+        \ifnum\bbl at eqnpos=\@ne
+          \let\bbl at ams@lap\hbox
+        \else
+          \let\bbl at ams@lap\llap
+        \fi
         \ExplSyntaxOn
         \bbl at sreplace\intertext@{\normalbaselines}%
           {\normalbaselines
@@ -14592,12 +14664,21 @@
             \bbl at sreplace\textdef@{\hbox}{\bbl at ams@tagbox\hbox}%
             \bbl at sreplace\maketag@@@{\hbox}{\bbl at ams@tagbox#1}%
           \fi}%
-        \AddToHook{env/equation/begin}{%
-          \ifnum\bbl at thetextdir>\z@
-            \ifx\bbl at ams@lap\llap\hrule\@height\z@\fi
-            \bbl at ams@preset\bbl at ams@flip
-          \fi}%
-        \AddToHook{env/equation*/begin}{\bbl at ams@preset\bbl at ams@flip}%
+        \ifnum\bbl at eqnpos=\tw@\else
+          \def\bbl at ams@equation{%
+            \ifnum\bbl at thetextdir>\z@
+              \edef\bbl at eqnodir{\noexpand\bbl at textdir{\the\bbl at thetextdir}}%
+              \chardef\bbl at thetextdir\z@
+              \bbl at add\normalfont{\bbl at eqnodir}%
+              \ifcase\bbl at eqnpos
+                \def\veqno##1##2{\bbl at eqno@flip{##1##2}}%
+              \or
+                \def\veqno##1##2{\bbl at leqno@flip{##1##2}}%
+              \fi
+            \fi}%
+          \AddToHook{env/equation/begin}{\bbl at ams@equation}%
+          \AddToHook{env/equation*/begin}{\bbl at ams@equation}%
+        \fi
         \AddToHook{env/cases/begin}{\bbl at ams@preset\bbl at ams@lap}%
         \AddToHook{env/multline/begin}{\bbl at ams@preset\hbox}%
         \AddToHook{env/gather/begin}{\bbl at ams@preset\bbl at ams@lap}%

Modified: trunk/Master/texmf-dist/source/latex/babel/babel.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/babel/babel.ins	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/source/latex/babel/babel.ins	2022-04-30 20:04:04 UTC (rev 63189)
@@ -26,7 +26,7 @@
 %% and covered by LPPL is defined by the unpacking scripts (with
 %% extension .ins) which are part of the distribution.
 %%
-\def\filedate{2022/02/26}
+\def\filedate{2022/04/30}
 \def\batchfile{babel.ins}
 \input docstrip.tex
 

Modified: trunk/Master/texmf-dist/source/latex/babel/bbcompat.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/babel/bbcompat.dtx	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/source/latex/babel/bbcompat.dtx	2022-04-30 20:04:04 UTC (rev 63189)
@@ -30,7 +30,7 @@
 %
 % \iffalse
 %<*dtx>
-\ProvidesFile{bbcompat.dtx}[2022/02/26 v3.73]
+\ProvidesFile{bbcompat.dtx}[2022/04/30 v3.74]
 %</dtx>
 %
 %% File 'bbcompat.dtx'

Modified: trunk/Master/texmf-dist/source/latex/babel/locale.zip
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/tex/generic/babel/babel.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel.def	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel.def	2022-04-30 20:04:04 UTC (rev 63189)
@@ -40,7 +40,7 @@
     \wlog{File: #1 #4 #3 <#2>}%
     \let\ProvidesFile\@undefined}
 \fi
-\ProvidesFile{babel.def}[2022/02/26 3.73 Babel common definitions]
+\ProvidesFile{babel.def}[2022/04/30 3.74 Babel common definitions]
 \ifx\AtBeginDocument\@undefined  % TODO. change test.
   \def\@empty{}
 \def\loadlocalcfg#1{%
@@ -406,8 +406,8 @@
 \expandafter\newif\csname ifbbl at single\endcsname
 \chardef\bbl at bidimode\z@
 \fi
-\def\bbl at version{3.73}
-\def\bbl at date{2022/02/26}
+\def\bbl at version{3.74}
+\def\bbl at date{2022/04/30}
 \ifx\language\@undefined
   \csname newcount\endcsname\language
 \fi

Modified: trunk/Master/texmf-dist/tex/generic/babel/babel.sty
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel.sty	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel.sty	2022-04-30 20:04:04 UTC (rev 63189)
@@ -34,7 +34,7 @@
 %%
 
 \NeedsTeXFormat{LaTeX2e}[2005/12/01]
-\ProvidesPackage{babel}[2022/02/26 3.73 The Babel package]
+\ProvidesPackage{babel}[2022/04/30 3.74 The Babel package]
 \@ifpackagewith{babel}{debug}
   {\providecommand\bbl at trace[1]{\message{^^J[ #1 ]}}%
    \let\bbl at debug\@firstofone
@@ -360,6 +360,8 @@
 \DeclareOption{safe=none}{\let\bbl at opt@safe\@empty}
 \DeclareOption{safe=bib}{\def\bbl at opt@safe{B}}
 \DeclareOption{safe=ref}{\def\bbl at opt@safe{R}}
+\DeclareOption{safe=refbib}{\def\bbl at opt@safe{BR}}
+\DeclareOption{safe=bibref}{\def\bbl at opt@safe{BR}}
 \chardef\bbl at bidimode\z@
 \DeclareOption{bidi=default}{\chardef\bbl at bidimode=\@ne}
 \DeclareOption{bidi=basic}{\chardef\bbl at bidimode=101 }
@@ -367,6 +369,9 @@
 \DeclareOption{bidi=bidi}{\chardef\bbl at bidimode=201 }
 \DeclareOption{bidi=bidi-r}{\chardef\bbl at bidimode=202 }
 \DeclareOption{bidi=bidi-l}{\chardef\bbl at bidimode=203 }
+\chardef\bbl at eqnpos\z@
+\DeclareOption{leqno}{\chardef\bbl at eqnpos\@ne}
+\DeclareOption{fleqn}{\chardef\bbl at eqnpos\tw@}
 \let\bbl at opt@shorthands\@nnil
 \let\bbl at opt@config\@nnil
 \let\bbl at opt@main\@nnil
@@ -453,8 +458,8 @@
       \expandafter\@secondoftwo
     \fi}
 \fi
-\def\bbl at version{3.73}
-\def\bbl at date{2022/02/26}
+\def\bbl at version{3.74}
+\def\bbl at date{2022/04/30}
 \ifx\language\@undefined
   \csname newcount\endcsname\language
 \fi
@@ -3723,7 +3728,7 @@
   \fi
 \fi
 \bbl at trace{Cross referencing macros}
-\ifx\bbl at opt@safe\@empty\else
+\ifx\bbl at opt@safe\@empty\else % ie, if 'ref' and/or 'bib'
   \def\@newl at bel#1#2#3{%
    {\@safe at activestrue
     \bbl at ifunset{#1@#2}%
@@ -3755,10 +3760,24 @@
 \fi
 \bbl at xin@{R}\bbl at opt@safe
 \ifin@
-  \bbl at redefinerobust\ref#1{%
-    \@safe at activestrue\org at ref{#1}\@safe at activesfalse}
-  \bbl at redefinerobust\pageref#1{%
-    \@safe at activestrue\org at pageref{#1}\@safe at activesfalse}
+  \edef\bbl at tempc{\expandafter\string\csname ref code\endcsname}%
+  \bbl at xin@{\expandafter\strip at prefix\meaning\bbl at tempc}%
+    {\expandafter\strip at prefix\meaning\ref}%
+  \ifin@
+    \bbl at redefine\@kernel at ref#1{%
+      \@safe at activestrue\org@@kernel at ref{#1}\@safe at activesfalse}
+    \bbl at redefine\@kernel at pageref#1{%
+      \@safe at activestrue\org@@kernel at pageref{#1}\@safe at activesfalse}
+    \bbl at redefine\@kernel at sref#1{%
+      \@safe at activestrue\org@@kernel at sref{#1}\@safe at activesfalse}
+    \bbl at redefine\@kernel at spageref#1{%
+      \@safe at activestrue\org@@kernel at spageref{#1}\@safe at activesfalse}
+  \else
+    \bbl at redefinerobust\ref#1{%
+      \@safe at activestrue\org at ref{#1}\@safe at activesfalse}
+    \bbl at redefinerobust\pageref#1{%
+      \@safe at activestrue\org at pageref{#1}\@safe at activesfalse}
+  \fi
 \else
   \let\org at ref\ref
   \let\org at pageref\pageref
@@ -3841,29 +3860,31 @@
        \bbl at tempc
      \fi}  % end ifbbl at single, end \IfBabelLayout
 \bbl at trace{Preventing clashes with other packages}
-\bbl at xin@{R}\bbl at opt@safe
-\ifin@
+\ifx\org at ref\@undefined\else
+  \bbl at xin@{R}\bbl at opt@safe
+  \ifin@
+    \AtBeginDocument{%
+      \@ifpackageloaded{ifthen}{%
+        \bbl at redefine@long\ifthenelse#1#2#3{%
+          \let\bbl at temp@pref\pageref
+          \let\pageref\org at pageref
+          \let\bbl at temp@ref\ref
+          \let\ref\org at ref
+          \@safe at activestrue
+          \org at ifthenelse{#1}%
+            {\let\pageref\bbl at temp@pref
+             \let\ref\bbl at temp@ref
+             \@safe at activesfalse
+             #2}%
+            {\let\pageref\bbl at temp@pref
+             \let\ref\bbl at temp@ref
+             \@safe at activesfalse
+             #3}%
+          }%
+        }{}%
+      }
+\fi
   \AtBeginDocument{%
-    \@ifpackageloaded{ifthen}{%
-      \bbl at redefine@long\ifthenelse#1#2#3{%
-        \let\bbl at temp@pref\pageref
-        \let\pageref\org at pageref
-        \let\bbl at temp@ref\ref
-        \let\ref\org at ref
-        \@safe at activestrue
-        \org at ifthenelse{#1}%
-          {\let\pageref\bbl at temp@pref
-           \let\ref\bbl at temp@ref
-           \@safe at activesfalse
-           #2}%
-          {\let\pageref\bbl at temp@pref
-           \let\ref\bbl at temp@ref
-           \@safe at activesfalse
-           #3}%
-        }%
-      }{}%
-    }
-  \AtBeginDocument{%
     \@ifpackageloaded{varioref}{%
       \bbl at redefine\@@vpageref#1[#2]#3{%
         \@safe at activestrue

Modified: trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg	2022-04-30 20:04:04 UTC (rev 63189)
@@ -38,10 +38,10 @@
     \wlog{File: #1 #4 #3 <#2>}%
     \let\ProvidesFile\@undefined}
 \fi
-\ProvidesFile{hyphen.cfg}[2022/02/26 3.73 Babel hyphens]
+\ProvidesFile{hyphen.cfg}[2022/04/30 3.74 Babel hyphens]
 \xdef\bbl at format{\jobname}
-\def\bbl at version{3.73}
-\def\bbl at date{2022/02/26}
+\def\bbl at version{3.74}
+\def\bbl at date{2022/04/30}
 \ifx\AtBeginDocument\@undefined
   \def\@empty{}
 \fi

Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-km.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-km.ini	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-km.ini	2022-04-30 20:04:04 UTC (rev 63189)
@@ -11,8 +11,8 @@
 
 [identification]
 charset = utf8
-version = 1.9
-date = 2020-10-11
+version = 1.10
+date = 2022-04-07
 name.local = ខ្មែរ
 name.english = Khmer
 name.babel = khmer
@@ -149,7 +149,7 @@
 linebreaking = s
 
 [characters]
-ranges = 1780..17FF
+ranges = 1780..17FF 19E0..19FF
 delimiters.quotes = “”‘’
 auxiliary = [\u17B4\u17B5\u200B \u17CC \u17CE \u17CF \u17D1 ឝ ឞ]
 exemplarCharacters = [\u17D0 ៈ \u17CB \u17C9 \u17CA \u17CD ក ខ គ ឃ ង ច ឆ ជ ឈ ញ ដ ឋ ឌ ឍ ណ ត ថ ទ ធ ន ប ផ ព ភ ម យ រ ឫ ឬ ល ឭ ឮ វ ស ហ ឡ អ {អា} ឥ ឦ ឧ {ឧក} ឩ ឪ ឯ ឰ ឱ ឲ ឳ ា \u17B7 \u17B8 \u17B9 \u17BA \u17BB \u17BC \u17BD ើ ឿ ៀ េ ែ ៃ ោ ៅ \u17C6 ះ \u17D2]

Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/mr/babel-mr.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/mr/babel-mr.ini	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/mr/babel-mr.ini	2022-04-30 20:04:04 UTC (rev 63189)
@@ -13,8 +13,8 @@
 
 [identification]
 charset = utf8
-version = 1.11
-date = 2021-06-25
+version = 1.12
+date = 2022-04-07
 name.local = मराठी
 name.english = Marathi
 name.babel = marathi
@@ -24,8 +24,8 @@
 tag.bcp47.likely = mr-Deva-IN
 tag.opentype = MAR
 script.name = Devanagari
-script.tag.bcp47 = Mahj
-script.tag.opentype = mahj
+script.tag.bcp47 = Deva
+script.tag.opentype = deva
 level = 1
 encodings = 
 derivate = no

Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/tk/babel-tk.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/tk/babel-tk.ini	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/tk/babel-tk.ini	2022-04-30 20:04:04 UTC (rev 63189)
@@ -11,8 +11,8 @@
 
 [identification]
 charset = utf8
-version = 1.4
-date = 2020-06-30
+version = 1.5
+date = 2022-04-07
 name.local = tk
 name.english = Turkmen
 name.babel = turkmen
@@ -21,7 +21,7 @@
 language.tag.bcp47 = tk
 tag.bcp47.likely = tk-Latn-TM
 tag.opentype = TKM
-script.name = Arabic
+script.name = Latin
 script.tag.bcp47 = Latn
 script.tag.opentype = latn
 level = 1

Modified: trunk/Master/texmf-dist/tex/generic/babel/luababel.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/luababel.def	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/tex/generic/babel/luababel.def	2022-04-30 20:04:04 UTC (rev 63189)
@@ -1162,6 +1162,7 @@
 \catcode`\~=12
 \catcode`\%=12
 \catcode`\&=14
+\catcode`\|=12
 \gdef\babelprehyphenation{&%
   \@ifnextchar[{\bbl at settransform{0}}{\bbl at settransform{0}[]}}
 \gdef\babelposthyphenation{&%
@@ -1377,33 +1378,71 @@
 \bbl at trace{Redefinitions for bidi layout}
 \def\BabelNoAMSMath{\let\bbl at noamsmath\relax}
 \ifnum\bbl at bidimode>\z@
+  \ifx\matheqdirmode\@undefined\else
+    \matheqdirmode\@ne
+  \fi
   \let\bbl at eqnodir\relax
+  \def\bbl at eqdel{()}
+  \def\bbl at eqnum{%
+    {\normalfont\normalcolor
+     \expandafter\@firstoftwo\bbl at eqdel
+     \theequation
+     \expandafter\@secondoftwo\bbl at eqdel}}
+  \def\bbl at puteqno#1{\eqno\hbox{#1}}
+  \def\bbl at putleqno#1{\leqno\hbox{#1}}
+  \def\bbl at eqno@flip#1{%
+    \ifdim\predisplaysize=-\maxdimen
+      \eqno
+      \hb at xt@.01pt{\hb at xt@\displaywidth{\hss{#1}}\hss}%
+    \else
+      \leqno\hbox{#1}%
+    \fi}
+  \def\bbl at leqno@flip#1{%
+    \ifdim\predisplaysize=-\maxdimen
+      \leqno
+      \hb at xt@.01pt{\hss\hb at 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 at thetextdir>\z@
+          \let\@eqnnum\bbl at eqnum
           \edef\bbl at eqnodir{\noexpand\bbl at textdir{\the\bbl at thetextdir}}%
           \chardef\bbl at thetextdir\z@
           \bbl at add\normalfont{\bbl at eqnodir}%
+          \ifcase\bbl at eqnpos
+            \let\bbl at puteqno\bbl at eqno@flip
+          \or
+            \let\bbl at puteqno\bbl at leqno@flip
+          \fi
         \fi}%
-      \AddToHook{env/equation/begin}{%
+      \ifnum\bbl at eqnpos=\tw@\else
+        \def\endequation{\bbl at puteqno{\@eqnnum}$$\@ignoretrue}%
+      \fi
+      \AddToHook{env/eqnarray/begin}{%
         \ifnum\bbl at thetextdir>\z@
           \edef\bbl at eqnodir{\noexpand\bbl at textdir{\the\bbl at thetextdir}}%
           \chardef\bbl at thetextdir\z@
           \bbl at add\normalfont{\bbl at eqnodir}%
-          \pardir TLT % dir for \eqno is \pardir!
-        \fi}%
-      \bbl at 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 at eqnpos=\@ne
+            \def\@eqnnum{%
+             \setbox\z@\hbox{\bbl at eqnum}%
+             \hbox to0.01pt{\hss\hbox to\displaywidth{\box\z@\hss}}}%
+          \else
+             \let\@eqnnum\bbl at eqnum
+          \fi
+        \fi}
+      % Hack. YA luatex bug?:
+      \expandafter\bbl at sreplace\csname] \endcsname{$$}{\eqno\kern.001pt$$}%
     \else % amstex
       \ifx\bbl at noamsmath\@undefined
-        \@ifpackagewith{amsmath}{leqno}%
-          {\let\bbl at ams@lap\hbox}% = leqno
-          {\let\bbl at ams@lap\llap}% = default
+        \ifnum\bbl at eqnpos=\@ne
+          \let\bbl at ams@lap\hbox
+        \else
+          \let\bbl at ams@lap\llap
+        \fi
         \ExplSyntaxOn
         \bbl at sreplace\intertext@{\normalbaselines}%
           {\normalbaselines
@@ -1423,12 +1462,21 @@
             \bbl at sreplace\textdef@{\hbox}{\bbl at ams@tagbox\hbox}%
             \bbl at sreplace\maketag@@@{\hbox}{\bbl at ams@tagbox#1}%
           \fi}%
-        \AddToHook{env/equation/begin}{%
-          \ifnum\bbl at thetextdir>\z@
-            \ifx\bbl at ams@lap\llap\hrule\@height\z@\fi
-            \bbl at ams@preset\bbl at ams@flip
-          \fi}%
-        \AddToHook{env/equation*/begin}{\bbl at ams@preset\bbl at ams@flip}%
+        \ifnum\bbl at eqnpos=\tw@\else
+          \def\bbl at ams@equation{%
+            \ifnum\bbl at thetextdir>\z@
+              \edef\bbl at eqnodir{\noexpand\bbl at textdir{\the\bbl at thetextdir}}%
+              \chardef\bbl at thetextdir\z@
+              \bbl at add\normalfont{\bbl at eqnodir}%
+              \ifcase\bbl at eqnpos
+                \def\veqno##1##2{\bbl at eqno@flip{##1##2}}%
+              \or
+                \def\veqno##1##2{\bbl at leqno@flip{##1##2}}%
+              \fi
+            \fi}%
+          \AddToHook{env/equation/begin}{\bbl at ams@equation}%
+          \AddToHook{env/equation*/begin}{\bbl at ams@equation}%
+        \fi
         \AddToHook{env/cases/begin}{\bbl at ams@preset\bbl at ams@lap}%
         \AddToHook{env/multline/begin}{\bbl at ams@preset\hbox}%
         \AddToHook{env/gather/begin}{\bbl at ams@preset\bbl at ams@lap}%

Modified: trunk/Master/texmf-dist/tex/generic/babel/nil.ldf
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/nil.ldf	2022-04-30 20:02:45 UTC (rev 63188)
+++ trunk/Master/texmf-dist/tex/generic/babel/nil.ldf	2022-04-30 20:04:04 UTC (rev 63189)
@@ -33,7 +33,7 @@
 %% extension |.ins|) which are part of the distribution.
 %%
 
-\ProvidesLanguage{nil}[2022/02/26 3.73 Nil language]
+\ProvidesLanguage{nil}[2022/04/30 3.74 Nil language]
 \LdfInit{nil}{datenil}
 \ifx\l at nil\@undefined
   \newlanguage\l at nil



More information about the tex-live-commits mailing list.