texlive[48825] Master/texmf-dist: babel (3oct18)

commits+karl at tug.org commits+karl at tug.org
Thu Oct 4 00:45:31 CEST 2018


Revision: 48825
          http://tug.org/svn/texlive?view=revision&revision=48825
Author:   karl
Date:     2018-10-04 00:45:31 +0200 (Thu, 04 Oct 2018)
Log Message:
-----------
babel (3oct18)

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-khmer.tex
    trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-km.ini
    trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lao.tex
    trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lo.ini
    trunk/Master/texmf-dist/tex/generic/babel/locale/th/babel-thai.tex
    trunk/Master/texmf-dist/tex/generic/babel/luababel.def
    trunk/Master/texmf-dist/tex/generic/babel/nil.ldf
    trunk/Master/texmf-dist/tex/generic/babel/switch.def
    trunk/Master/texmf-dist/tex/generic/babel/xebabel.def

Modified: trunk/Master/texmf-dist/doc/latex/babel/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/babel/README.md	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/doc/latex/babel/README.md	2018-10-03 22:45:31 UTC (rev 48825)
@@ -1,4 +1,4 @@
-## Babel 3.24
+## Babel 3.25
 
 This package manages culturally-determined typographical (and other)
 rules, and hyphenation patterns for a wide range of languages.  Many
@@ -51,6 +51,10 @@
 ### Latest changes
 
 ```
+3.25   - Fixes for 3.23 - mapfont=direction could raise an error.
+         Language and Script were not always defined correctly.
+       - Improved tentative support for Thai, Lao and Khmer in both 
+         luatex and xetex.
 3.24   - Prelimimary support for Thai interword spacing with luatex.
 3.23   - After extensive tests and fixing some issues, bidi=basic is 
          not experimental any longer.
@@ -110,5 +114,5 @@
 ```
 
 Javier Bezos
-2018/09/26
+2018/10/03
 

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	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/source/latex/babel/babel.dtx	2018-10-03 22:45:31 UTC (rev 48825)
@@ -31,7 +31,7 @@
 %
 % \iffalse
 %<*filedriver>
-\ProvidesFile{babel.dtx}[2018/09/26 v3.24 The Babel package]
+\ProvidesFile{babel.dtx}[2018/10/03 v3.25 The Babel package]
 \documentclass{ltxdoc}
 \GetFileInfo{babel.dtx}
 \usepackage{fontspec}
@@ -3857,8 +3857,8 @@
 % \section{Tools}
 %
 %    \begin{macrocode}
-%<<version=3.24>>
-%<<date=2018/09/26>>
+%<<version=3.25>>
+%<<date=2018/10/03>>
 %    \end{macrocode}
 %
 % \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -7739,6 +7739,8 @@
   \let\bbl at KVP@hyphenrules\@nil
   \let\bbl at KVP@mapfont\@nil
   \let\bbl at KVP@maparabic\@nil
+  \let\bbl at KVP@intraspace\@nil
+  \let\bbl at KVP@intrapenalty\@nil
   \bbl at forkv{#1}{\bbl at csarg\def{KVP@##1}{##2}}%  TODO - error handling
   \ifx\bbl at KVP@import\@nil\else
     \bbl at exp{\\\bbl at ifblank{\bbl at KVP@import}}%
@@ -7770,6 +7772,7 @@
         \\\foreignlanguage{\languagename}%
         {####1}}}}%
     {}%
+  % To override script and language names
   \ifx\bbl at KVP@script\@nil\else
     \bbl at csarg\edef{sname@#2}{\bbl at KVP@script}%
   \fi
@@ -7776,6 +7779,7 @@
   \ifx\bbl at KVP@language\@nil\else
     \bbl at csarg\edef{lname@#2}{\bbl at KVP@language}%
   \fi
+  % For bidi texts, to switch the language based on direction
   \ifx\bbl at KVP@mapfont\@nil\else
     \bbl at ifsamestring{\bbl at KVP@mapfont}{direction}{}%
       {\bbl at error{Option `\bbl at KVP@mapfont' unknown for\\%
@@ -7791,7 +7795,9 @@
         \let\bbl at mapselect\relax
         \edef\bbl at prefontid{\fontid\font}}%
       \def\bbl at mapdir##1{%
-        {\def\languagename{##1}\bbl at switchfont
+        {\def\languagename{##1}%
+         \let\bbl at ifrestoring\@firstoftwo % avoid font warning
+         \bbl at switchfont
          \directlua{Babel.fontmap
            [\the\csname bbl at wdir@##1\endcsname]%
            [\bbl at prefontid]=\fontid\font}}}%
@@ -7798,6 +7804,7 @@
     \fi
     \bbl at exp{\\\bbl at add\\\bbl at mapselect{\\\bbl at mapdir{\languagename}}}%
   \fi
+  % For Southeast Asian, if interspace in ini
   \ifcase\bbl at engine\or
     \bbl at ifunset{bbl at intsp@\languagename}{}%
       {\expandafter\ifx\csname bbl at intsp@\languagename\endcsname\@empty\else
@@ -7823,8 +7830,30 @@
         \expandafter\bbl at intrapenalty\bbl at KVP@intrapenalty\@@
       \fi}%
   \or 
-    %% TODO - xetex
+    \bbl at ifunset{bbl at intsp@\languagename}{}%
+      {\expandafter\ifx\csname bbl at intsp@\languagename\endcsname\@empty\else
+        \ifx\bbl at KVP@intraspace\@nil
+           \bbl at exp{%
+             \\\bbl at intraspace\bbl at cs{intsp@\languagename}\\\@@}%
+        \fi
+        \ifx\bbl at KVP@intrapenalty\@nil
+          \bbl at intrapenalty0\@@
+        \fi
+      \fi
+      \ifx\bbl at KVP@intraspace\@nil\else % We may override the ini
+        \expandafter\bbl at intraspace\bbl at KVP@intraspace\@@
+      \fi
+      \ifx\bbl at KVP@intrapenalty\@nil\else
+        \expandafter\bbl at intrapenalty\bbl at KVP@intrapenalty\@@
+      \fi
+      \ifx\bbl at ispacesize\@undefined
+        \AtBeginDocument{%
+          \expandafter\bbl at add
+          \csname selectfont \endcsname{\bbl at ispacesize}}%
+        \def\bbl at ispacesize{\bbl at cs{xeisp@\bbl at cs{sbcp@\languagename}}}%
+      \fi}%
   \fi
+  % Native digits, if provided in ini
   \ifcase\bbl at engine\else
     \bbl at ifunset{bbl at dgnat@\languagename}{}%
       {\expandafter\ifx\csname bbl at dgnat@\languagename\endcsname\@empty\else
@@ -7841,6 +7870,7 @@
         \fi
       \fi}%
   \fi
+  % To load or reaload the babel-*.tex, if require.babel in ini
   \bbl at ifunset{bbl at rqtex@\languagename}{}%
     {\expandafter\ifx\csname bbl at rqtex@\languagename\endcsname\@empty\else
        \let\BabelBeforeIni\@gobbletwo
@@ -7851,6 +7881,13 @@
        \let\atcatcode\relax
      \fi}%
   \let\languagename\bbl at savelangname}
+%    \end{macrocode}
+%
+% A tool to define the macros for native digits from the list provided 
+% in the |ini| file. Somewhat convoluted because there are 10 digits, 
+% but only 9 arguments in \TeX.
+%
+%    \begin{macrocode}
 \def\bbl at setdigits#1#2#3#4#5{%
   \bbl at exp{%
     \def\<\languagename digits>####1{%       ie, \langdigits
@@ -8217,13 +8254,7 @@
   \bbl at csarg\bbl at add@list{lsys@#1}{Script=\bbl at cs{sname@#1}}%
   \bbl at ifunset{bbl at lname@#1}{}%
     {\bbl at csarg\bbl at add@list{lsys@#1}{Language=\bbl at cs{lname@#1}}}%
-  \bbl at csarg\bbl at toglobal{lsys@#1}%
-  \bbl at exp{% TODO - should be global, but even local does its job
-           % I'm still not sure -- must investigate 
-    \<keys_if_exist:nnF>{fontspec-opentype}{Script/\bbl at cs{sname@#1}}%
-      {\\\newfontscript{\bbl at cs{sname@#1}}{\bbl at cs{sotf@#1}}}%
-    \<keys_if_exist:nnF>{fontspec-opentype}{Language/\bbl at cs{lname@#1}}%
-      {\\\newfontlanguage{\bbl at cs{lname@#1}}{\bbl at cs{lotf@#1}}}}}
+  \bbl at csarg\bbl at toglobal{lsys@#1}}
 %    \end{macrocode}
 %
 % The following |ini| reader ignores everything but the
@@ -10679,10 +10710,11 @@
   \ifx\fontspec\@undefined
     \usepackage{fontspec}%
   \fi
-  \EnableBabelHook{babel-fontspec}%
+  \EnableBabelHook{babel-fontspec}% Just calls \bbl at switchfont
   \bbl at bblfont}
 \newcommand\bbl at bblfont[2][]{% 1=features 2=fontname
   \bbl at ifunset{\bbl at tempb family}{\bbl at providefam{\bbl at tempb}}{}%
+  % For the default font, just in case:
   \bbl at ifunset{bbl at lsys@\languagename}{\bbl at provide@lsys{\languagename}}{}%
   \expandafter\bbl at ifblank\expandafter{\bbl at tempa}%
     {\bbl at csarg\edef{\bbl at tempb dflt@}{<>{#1}{#2}}% save bbl at rmdflt@
@@ -10731,8 +10763,9 @@
   \def\bbl at tempa{%
     \bbl at warning{The current font is not a standard family:\\%
       \fontname\font\\%
-      Script and Language are not applied. Consider defining a\\%
-      new family with \string\babelfont. Reported}}%
+      Script and Language are not applied. Consider\\%
+      defining a new family with \string\babelfont.\\%
+      Reported}}%
   \bbl at foreach\bbl at font@fams{%     don't gather with prev for
     \bbl at ifunset{bbl@##1dflt@\languagename}%
       {\bbl at cs{famrst@##1}%
@@ -10766,8 +10799,18 @@
 \def\bbl at fontspec@set#1#2#3{% eg \bbl at rmdflt@lang fnt-opt fnt-nme
   \let\bbl at tempe\bbl at mapselect
   \let\bbl at mapselect\relax
-  \bbl at exp{\<fontspec_set_family:Nnn>\\#1%
-    {\bbl at cs{lsys@\languagename},#2}}{#3}%
+  \bbl at exp{% TODO - should be global, but even local does its job
+        % I'm still not sure -- must investigate 
+    \<keys_if_exist:nnF>{fontspec-opentype}%
+        {Script/\bbl at cs{sname@\languagename}}%
+      {\\\newfontscript{\bbl at cs{sname@\languagename}}%
+        {\bbl at cs{sotf@\languagename}}}%
+    \<keys_if_exist:nnF>{fontspec-opentype}%
+        {Language/\bbl at cs{lname@\languagename}}%
+      {\\\newfontlanguage{\bbl at cs{lname@\languagename}}%
+        {\bbl at cs{lotf@\languagename}}}%
+    \<fontspec_set_family:Nnn>\\#1%
+      {\bbl at cs{lsys@\languagename},#2}}{#3}% ie \bbl at exp{..}{#3}
   \let\bbl at mapselect\bbl at tempe
   \bbl at toglobal#1}%
 %    \end{macrocode}
@@ -10961,6 +11004,12 @@
 \AddBabelHook{xetex}{stopcommands}{%
   \xebbl at stop
   \let\xebbl at stop\relax}
+\def\bbl at intraspace#1 #2 #3\@@{%
+  \bbl at csarg\gdef{xeisp@\bbl at cs{sbcp@\languagename}}%
+    {\XeTeXlinebreakskip #1em plus #2em minus #3em\relax}}
+\def\bbl at intrapenalty#1\@@{%
+  \bbl at csarg\gdef{xeipn@\bbl at cs{sbcp@\languagename}}%
+    {\XeTeXlinebreakpenalty #1\relax}}
 \AddBabelHook{xetex}{loadkernel}{%
 <@Restore Unicode catcodes before loading patterns@>}
 \ifx\DisableBabelHook\@undefined\endinput\fi

Modified: trunk/Master/texmf-dist/source/latex/babel/babel.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/babel/babel.ins	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/source/latex/babel/babel.ins	2018-10-03 22:45:31 UTC (rev 48825)
@@ -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{2018/09/26}
+\def\filedate{2018/10/03}
 \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	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/source/latex/babel/bbcompat.dtx	2018-10-03 22:45:31 UTC (rev 48825)
@@ -30,7 +30,7 @@
 %
 % \iffalse
 %<*dtx>
-\ProvidesFile{bbcompat.dtx}[2018/09/26 v3.24]
+\ProvidesFile{bbcompat.dtx}[2018/10/03 v3.25]
 %</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	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel.def	2018-10-03 22:45:31 UTC (rev 48825)
@@ -41,7 +41,7 @@
     \wlog{File: #1 #4 #3 <#2>}%
     \let\ProvidesFile\@undefined}
 \fi
-\ProvidesFile{babel.def}[2018/09/26 3.24 Babel common definitions]
+\ProvidesFile{babel.def}[2018/10/03 3.25 Babel common definitions]
 \ifx\AtBeginDocument\@undefined
   \input plain.def\relax
 \fi
@@ -1314,6 +1314,8 @@
   \let\bbl at KVP@hyphenrules\@nil
   \let\bbl at KVP@mapfont\@nil
   \let\bbl at KVP@maparabic\@nil
+  \let\bbl at KVP@intraspace\@nil
+  \let\bbl at KVP@intrapenalty\@nil
   \bbl at forkv{#1}{\bbl at csarg\def{KVP@##1}{##2}}%  TODO - error handling
   \ifx\bbl at KVP@import\@nil\else
     \bbl at exp{\\\bbl at ifblank{\bbl at KVP@import}}%
@@ -1345,6 +1347,7 @@
         \\\foreignlanguage{\languagename}%
         {####1}}}}%
     {}%
+  % To override script and language names
   \ifx\bbl at KVP@script\@nil\else
     \bbl at csarg\edef{sname@#2}{\bbl at KVP@script}%
   \fi
@@ -1351,6 +1354,7 @@
   \ifx\bbl at KVP@language\@nil\else
     \bbl at csarg\edef{lname@#2}{\bbl at KVP@language}%
   \fi
+  % For bidi texts, to switch the language based on direction
   \ifx\bbl at KVP@mapfont\@nil\else
     \bbl at ifsamestring{\bbl at KVP@mapfont}{direction}{}%
       {\bbl at error{Option `\bbl at KVP@mapfont' unknown for\\%
@@ -1366,7 +1370,9 @@
         \let\bbl at mapselect\relax
         \edef\bbl at prefontid{\fontid\font}}%
       \def\bbl at mapdir##1{%
-        {\def\languagename{##1}\bbl at switchfont
+        {\def\languagename{##1}%
+         \let\bbl at ifrestoring\@firstoftwo % avoid font warning
+         \bbl at switchfont
          \directlua{Babel.fontmap
            [\the\csname bbl at wdir@##1\endcsname]%
            [\bbl at prefontid]=\fontid\font}}}%
@@ -1373,6 +1379,7 @@
     \fi
     \bbl at exp{\\\bbl at add\\\bbl at mapselect{\\\bbl at mapdir{\languagename}}}%
   \fi
+  % For Southeast Asian, if interspace in ini
   \ifcase\bbl at engine\or
     \bbl at ifunset{bbl at intsp@\languagename}{}%
       {\expandafter\ifx\csname bbl at intsp@\languagename\endcsname\@empty\else
@@ -1398,8 +1405,30 @@
         \expandafter\bbl at intrapenalty\bbl at KVP@intrapenalty\@@
       \fi}%
   \or
-    %% TODO - xetex
+    \bbl at ifunset{bbl at intsp@\languagename}{}%
+      {\expandafter\ifx\csname bbl at intsp@\languagename\endcsname\@empty\else
+        \ifx\bbl at KVP@intraspace\@nil
+           \bbl at exp{%
+             \\\bbl at intraspace\bbl at cs{intsp@\languagename}\\\@@}%
+        \fi
+        \ifx\bbl at KVP@intrapenalty\@nil
+          \bbl at intrapenalty0\@@
+        \fi
+      \fi
+      \ifx\bbl at KVP@intraspace\@nil\else % We may override the ini
+        \expandafter\bbl at intraspace\bbl at KVP@intraspace\@@
+      \fi
+      \ifx\bbl at KVP@intrapenalty\@nil\else
+        \expandafter\bbl at intrapenalty\bbl at KVP@intrapenalty\@@
+      \fi
+      \ifx\bbl at ispacesize\@undefined
+        \AtBeginDocument{%
+          \expandafter\bbl at add
+          \csname selectfont \endcsname{\bbl at ispacesize}}%
+        \def\bbl at ispacesize{\bbl at cs{xeisp@\bbl at cs{sbcp@\languagename}}}%
+      \fi}%
   \fi
+  % Native digits, if provided in ini
   \ifcase\bbl at engine\else
     \bbl at ifunset{bbl at dgnat@\languagename}{}%
       {\expandafter\ifx\csname bbl at dgnat@\languagename\endcsname\@empty\else
@@ -1416,6 +1445,7 @@
         \fi
       \fi}%
   \fi
+  % To load or reaload the babel-*.tex, if require.babel in ini
   \bbl at ifunset{bbl at rqtex@\languagename}{}%
     {\expandafter\ifx\csname bbl at rqtex@\languagename\endcsname\@empty\else
        \let\BabelBeforeIni\@gobbletwo
@@ -1708,13 +1738,7 @@
   \bbl at csarg\bbl at add@list{lsys@#1}{Script=\bbl at cs{sname@#1}}%
   \bbl at ifunset{bbl at lname@#1}{}%
     {\bbl at csarg\bbl at add@list{lsys@#1}{Language=\bbl at cs{lname@#1}}}%
-  \bbl at csarg\bbl at toglobal{lsys@#1}%
-  \bbl at exp{% TODO - should be global, but even local does its job
-           % I'm still not sure -- must investigate
-    \<keys_if_exist:nnF>{fontspec-opentype}{Script/\bbl at cs{sname@#1}}%
-      {\\\newfontscript{\bbl at cs{sname@#1}}{\bbl at cs{sotf@#1}}}%
-    \<keys_if_exist:nnF>{fontspec-opentype}{Language/\bbl at cs{lname@#1}}%
-      {\\\newfontlanguage{\bbl at cs{lname@#1}}{\bbl at cs{lotf@#1}}}}}
+  \bbl at csarg\bbl at toglobal{lsys@#1}}
 \def\bbl at ini@ids#1{%
   \def\BabelBeforeIni##1##2{%
     \begingroup

Modified: trunk/Master/texmf-dist/tex/generic/babel/babel.sty
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel.sty	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel.sty	2018-10-03 22:45:31 UTC (rev 48825)
@@ -33,7 +33,7 @@
 %%
 
 \NeedsTeXFormat{LaTeX2e}[2005/12/01]
-\ProvidesPackage{babel}[2018/09/26 3.24 The Babel package]
+\ProvidesPackage{babel}[2018/10/03 3.25 The Babel package]
 \@ifpackagewith{babel}{debug}
   {\providecommand\bbl at trace[1]{\message{^^J[ #1 ]}}%
    \let\bbl at debug\@firstofone}

Modified: trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg	2018-10-03 22:45:31 UTC (rev 48825)
@@ -37,7 +37,7 @@
     \wlog{File: #1 #4 #3 <#2>}%
     \let\ProvidesFile\@undefined}
 \fi
-\ProvidesFile{hyphen.cfg}[2018/09/26 3.24 Babel hyphens]
+\ProvidesFile{hyphen.cfg}[2018/10/03 3.25 Babel hyphens]
 \xdef\bbl at format{\jobname}
 \ifx\AtBeginDocument\@undefined
   \def\@empty{}

Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-khmer.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-khmer.tex	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-khmer.tex	2018-10-03 22:45:31 UTC (rev 48825)
@@ -9,4 +9,23 @@
 \fi
 \BabelBeforeIni{km}{%
 }
+
+\addto\datekhmer{%
+  \babel at save\BabelDated
+  \def\BabelDated#1{{\expandafter\khmerdigits\expandafter{#1}}}%
+  \babel at save\BabelDatey
+  \def\BabelDatey#1{{\expandafter\khmerdigits\expandafter{#1}}}}
+  
+\ifcase\bbl at engine\or\or
+  \bbl at tentative{khmer}%
+  \bbl at add\extraskhmer{%
+    \XeTeXlinebreaklocale "kh" 
+    \bbl at xeisp@Khmr
+    \bbl at xeipn@Khmr
+  }
+  \bbl at add\noextraskhmer{% 
+   \XeTeXlinebreaklocale "en"
+  }
+\fi
+
 \endinput
\ No newline at end of file

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	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-km.ini	2018-10-03 22:45:31 UTC (rev 48825)
@@ -11,8 +11,8 @@
 
 [identification]
 charset = utf8
-version = 1.2
-date = 2018-09-07
+version = 1.3
+date = 2018-10-02
 name.local = ខ្មែរ
 name.english = Khmer
 name.babel = khmer
@@ -24,6 +24,7 @@
 level = 1
 encodings = 
 derivate = no
+require.babel = khmer
 
 [captions]
 preface = អារម្ភកថា

Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lao.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lao.tex	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lao.tex	2018-10-03 22:45:31 UTC (rev 48825)
@@ -9,4 +9,15 @@
 \fi
 \BabelBeforeIni{lo}{%
 }
+
+\ifcase\bbl at engine\or\or
+  \bbl at tentative{lao}%
+  \addto\extraslao{%
+    \XeTeXlinebreaklocale "lo"
+    \bbl at xeisp@Laoo
+    \bbl at xeipn@Laoo}
+  \addto\noextraslao{%
+    \XeTeXlinebreaklocale "en"}
+\fi
+
 \endinput
\ No newline at end of file

Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lo.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lo.ini	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lo.ini	2018-10-03 22:45:31 UTC (rev 48825)
@@ -11,8 +11,8 @@
 
 [identification]
 charset = utf8
-version = 1.2
-date = 2018-09-07
+version = 1.3
+date = 2018-10-02
 name.local = ລາວ
 name.english = Lao
 name.babel = lao
@@ -24,6 +24,7 @@
 level = 1
 encodings = 
 derivate = no
+require.babel = lao
 
 [captions]
 preface = ຄໍານໍາ

Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/th/babel-thai.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/th/babel-thai.tex	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/th/babel-thai.tex	2018-10-03 22:45:31 UTC (rev 48825)
@@ -16,10 +16,10 @@
 
 \ifcase\bbl at engine\or\or
   \bbl at tentative{thai}%
-  % \XeTeXlinebreakskip should be reset with \fontsize
   \addto\extrasthai{%
     \XeTeXlinebreaklocale "th"
-    \XeTeXlinebreakskip 0em plus .1em}
+    \bbl at xeisp@Thai
+    \bbl at xeipn@Thai}
   \addto\noextrasthai{%
     \XeTeXlinebreaklocale "en"}
 \fi

Modified: trunk/Master/texmf-dist/tex/generic/babel/luababel.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/luababel.def	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/luababel.def	2018-10-03 22:45:31 UTC (rev 48825)
@@ -417,10 +417,11 @@
   \ifx\fontspec\@undefined
     \usepackage{fontspec}%
   \fi
-  \EnableBabelHook{babel-fontspec}%
+  \EnableBabelHook{babel-fontspec}% Just calls \bbl at switchfont
   \bbl at bblfont}
 \newcommand\bbl at bblfont[2][]{% 1=features 2=fontname
   \bbl at ifunset{\bbl at tempb family}{\bbl at providefam{\bbl at tempb}}{}%
+  % For the default font, just in case:
   \bbl at ifunset{bbl at lsys@\languagename}{\bbl at provide@lsys{\languagename}}{}%
   \expandafter\bbl at ifblank\expandafter{\bbl at tempa}%
     {\bbl at csarg\edef{\bbl at tempb dflt@}{<>{#1}{#2}}% save bbl at rmdflt@
@@ -457,8 +458,9 @@
   \def\bbl at tempa{%
     \bbl at warning{The current font is not a standard family:\\%
       \fontname\font\\%
-      Script and Language are not applied. Consider defining a\\%
-      new family with \string\babelfont. Reported}}%
+      Script and Language are not applied. Consider\\%
+      defining a new family with \string\babelfont.\\%
+      Reported}}%
   \bbl at foreach\bbl at font@fams{%     don't gather with prev for
     \bbl at ifunset{bbl@##1dflt@\languagename}%
       {\bbl at cs{famrst@##1}%
@@ -481,8 +483,18 @@
 \def\bbl at fontspec@set#1#2#3{% eg \bbl at rmdflt@lang fnt-opt fnt-nme
   \let\bbl at tempe\bbl at mapselect
   \let\bbl at mapselect\relax
-  \bbl at exp{\<fontspec_set_family:Nnn>\\#1%
-    {\bbl at cs{lsys@\languagename},#2}}{#3}%
+  \bbl at exp{% TODO - should be global, but even local does its job
+        % I'm still not sure -- must investigate
+    \<keys_if_exist:nnF>{fontspec-opentype}%
+        {Script/\bbl at cs{sname@\languagename}}%
+      {\\\newfontscript{\bbl at cs{sname@\languagename}}%
+        {\bbl at cs{sotf@\languagename}}}%
+    \<keys_if_exist:nnF>{fontspec-opentype}%
+        {Language/\bbl at cs{lname@\languagename}}%
+      {\\\newfontlanguage{\bbl at cs{lname@\languagename}}%
+        {\bbl at cs{lotf@\languagename}}}%
+    \<fontspec_set_family:Nnn>\\#1%
+      {\bbl at cs{lsys@\languagename},#2}}{#3}% ie \bbl at exp{..}{#3}
   \let\bbl at mapselect\bbl at tempe
   \bbl at toglobal#1}%
 \def\bbl at font@rst#1#2#3#4{%

Modified: trunk/Master/texmf-dist/tex/generic/babel/nil.ldf
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/nil.ldf	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/nil.ldf	2018-10-03 22:45:31 UTC (rev 48825)
@@ -32,7 +32,7 @@
 %% extension |.ins|) which are part of the distribution.
 %%
 
-\ProvidesLanguage{nil}[2018/09/26 3.24 Nil language]
+\ProvidesLanguage{nil}[2018/10/03 3.25 Nil language]
 \LdfInit{nil}{datenil}
 \ifx\l at nohyphenation\@undefined
    \@nopatterns{nil}

Modified: trunk/Master/texmf-dist/tex/generic/babel/switch.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/switch.def	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/switch.def	2018-10-03 22:45:31 UTC (rev 48825)
@@ -37,7 +37,7 @@
     \wlog{File: #1 #4 #3 <#2>}%
     \let\ProvidesFile\@undefined}
 \fi
-\ProvidesFile{switch.def}[2018/09/26 3.24 Babel switching mechanism]
+\ProvidesFile{switch.def}[2018/10/03 3.25 Babel switching mechanism]
 \ifx\AtBeginDocument\@undefined
   \input plain.def\relax
 \fi
@@ -58,8 +58,8 @@
   \countdef\last at language=19
   \def\addlanguage{\alloc at 9\language\chardef\@cclvi}
 \fi
-\def\bbl at version{3.24}
-\def\bbl at date{2018/09/26}
+\def\bbl at version{3.25}
+\def\bbl at date{2018/10/03}
 \def\adddialect#1#2{%
   \global\chardef#1#2\relax
   \bbl at usehooks{adddialect}{{#1}{#2}}%

Modified: trunk/Master/texmf-dist/tex/generic/babel/xebabel.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/xebabel.def	2018-10-03 22:44:10 UTC (rev 48824)
+++ trunk/Master/texmf-dist/tex/generic/babel/xebabel.def	2018-10-03 22:45:31 UTC (rev 48825)
@@ -45,6 +45,12 @@
 \AddBabelHook{xetex}{stopcommands}{%
   \xebbl at stop
   \let\xebbl at stop\relax}
+\def\bbl at intraspace#1 #2 #3\@@{%
+  \bbl at csarg\gdef{xeisp@\bbl at cs{sbcp@\languagename}}%
+    {\XeTeXlinebreakskip #1em plus #2em minus #3em\relax}}
+\def\bbl at intrapenalty#1\@@{%
+  \bbl at csarg\gdef{xeipn@\bbl at cs{sbcp@\languagename}}%
+    {\XeTeXlinebreakpenalty #1\relax}}
 \AddBabelHook{xetex}{loadkernel}{%
   \begingroup
       % Reset chars "80-"C0 to category "other", no case mapping:
@@ -85,10 +91,11 @@
   \ifx\fontspec\@undefined
     \usepackage{fontspec}%
   \fi
-  \EnableBabelHook{babel-fontspec}%
+  \EnableBabelHook{babel-fontspec}% Just calls \bbl at switchfont
   \bbl at bblfont}
 \newcommand\bbl at bblfont[2][]{% 1=features 2=fontname
   \bbl at ifunset{\bbl at tempb family}{\bbl at providefam{\bbl at tempb}}{}%
+  % For the default font, just in case:
   \bbl at ifunset{bbl at lsys@\languagename}{\bbl at provide@lsys{\languagename}}{}%
   \expandafter\bbl at ifblank\expandafter{\bbl at tempa}%
     {\bbl at csarg\edef{\bbl at tempb dflt@}{<>{#1}{#2}}% save bbl at rmdflt@
@@ -125,8 +132,9 @@
   \def\bbl at tempa{%
     \bbl at warning{The current font is not a standard family:\\%
       \fontname\font\\%
-      Script and Language are not applied. Consider defining a\\%
-      new family with \string\babelfont. Reported}}%
+      Script and Language are not applied. Consider\\%
+      defining a new family with \string\babelfont.\\%
+      Reported}}%
   \bbl at foreach\bbl at font@fams{%     don't gather with prev for
     \bbl at ifunset{bbl@##1dflt@\languagename}%
       {\bbl at cs{famrst@##1}%
@@ -149,8 +157,18 @@
 \def\bbl at fontspec@set#1#2#3{% eg \bbl at rmdflt@lang fnt-opt fnt-nme
   \let\bbl at tempe\bbl at mapselect
   \let\bbl at mapselect\relax
-  \bbl at exp{\<fontspec_set_family:Nnn>\\#1%
-    {\bbl at cs{lsys@\languagename},#2}}{#3}%
+  \bbl at exp{% TODO - should be global, but even local does its job
+        % I'm still not sure -- must investigate
+    \<keys_if_exist:nnF>{fontspec-opentype}%
+        {Script/\bbl at cs{sname@\languagename}}%
+      {\\\newfontscript{\bbl at cs{sname@\languagename}}%
+        {\bbl at cs{sotf@\languagename}}}%
+    \<keys_if_exist:nnF>{fontspec-opentype}%
+        {Language/\bbl at cs{lname@\languagename}}%
+      {\\\newfontlanguage{\bbl at cs{lname@\languagename}}%
+        {\bbl at cs{lotf@\languagename}}}%
+    \<fontspec_set_family:Nnn>\\#1%
+      {\bbl at cs{lsys@\languagename},#2}}{#3}% ie \bbl at exp{..}{#3}
   \let\bbl at mapselect\bbl at tempe
   \bbl at toglobal#1}%
 \def\bbl at font@rst#1#2#3#4{%



More information about the tex-live-commits mailing list