texlive[72061] Master/texmf-dist: babel (18aug24)
commits+karl at tug.org
commits+karl at tug.org
Sun Aug 18 21:49:14 CEST 2024
Revision: 72061
https://tug.org/svn/texlive?view=revision&revision=72061
Author: karl
Date: 2024-08-18 21:49:14 +0200 (Sun, 18 Aug 2024)
Log Message:
-----------
babel (18aug24)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/babel/README.md
trunk/Master/texmf-dist/doc/latex/babel/babel-code.pdf
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-bidi-basic-r.lua
trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua
trunk/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua
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/ccp/babel-ccp.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb-Latn.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/cu/babel-cu-Cyrs.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/he/babel-he.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/mk/babel-mk.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/ro/babel-ro.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/sl/babel-sl.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 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/doc/latex/babel/README.md 2024-08-18 19:49:14 UTC (rev 72061)
@@ -1,6 +1,6 @@
-## Babel 24.7
+## Babel 24.8
-2024-06-26
+2024-08-18
`babel` is the multilingual framework for localizing documents in
LaTeX, LuaLaTeX, XeLaTeX. It manages culturally-determined
@@ -10,9 +10,9 @@
The latest stable version is available on <https://ctan.org/pkg/babel>.
-Changes in version 24.7 are described in:
+Changes in version 24.8 are described in:
-https://latex3.github.io/babel/news/whats-new-in-babel-24.7.html
+https://latex3.github.io/babel/news/whats-new-in-babel-24.8.html
Apart from the manual, you can find information on some aspects of babel at:
@@ -43,15 +43,15 @@
https://latex3.github.io/babel/contact.html
-Bugs related to specific languages are best reported to their
+Bugs related to specific languages are best reported to theirs
respective authors.
### Summary of latest changes
```
-24.7 2024-06-26
- * Improvements in some locales:
- - Filipino (thanks to Leothelion, @ponte-vecchio)
- - Line breaking in Blin, Geez, Tigre, Tigrinya, Wolaytta.
+24.8 2024-08-18
+ * Internal changes in bidi=basic (more reliable).
+ * Hook 'foreign' and \BabelWrapText.
+ * Improved some locales thanks to Stephen Huan (@stephen-huan).
```
### Previous changes
Modified: trunk/Master/texmf-dist/doc/latex/babel/babel-code.pdf
===================================================================
(Binary files differ)
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 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/source/latex/babel/babel.dtx 2024-08-18 19:49:14 UTC (rev 72061)
@@ -32,7 +32,7 @@
%
% \iffalse
%<*filedriver>
-\ProvidesFile{babel.dtx}[2024/06/26 v24.7 The Babel package]
+\ProvidesFile{babel.dtx}[2024/08/18 v24.8 The Babel package]
\documentclass{ltxdoc}
\GetFileInfo{babel.dtx}
\usepackage{fontspec}
@@ -3908,11 +3908,15 @@
In \xetex, |bidi-r| and |bidi-l| resort to the package \textsf{bidi}
(by Vafa Khalighi). For RL documents use the former, and for LR ones
-use the latter. However, this package patches heavily lots of macros
-and packages even if the RL script is not the main one, which can lead
-to some surprising results, so for short and simple texts (letters and
-punctuation) the |default| method can be preferable.
+use the latter.
+\begin{warning}
+ This package patches heavily lots of macros and packages even if the
+ RL script is not the main one, which can lead to some surprising
+ results, so for short and simple texts (letters and punctuation) the
+ |default| method is more often than not much preferable.
+\end{warning}
+
There are samples on GitHub, under \texttt{/required/babel/samples}.
See particularly |lua-bidibasic.tex| and |lua-secenum.tex|.
@@ -4293,6 +4297,17 @@
language in this particular case is the language that wrote the code.
The special value |/| means ‘return to the core \babel{} definitions’
(in other words, what follows hasn’t been written by any language).
+\item[foreign] \New{24.8} Executed by |\foreignlanguage| after the
+ language has been set up and just before typesetting the text from the
+ second argument. Its main purpose it to wrap the text with some
+ code, with the help of |\BabelWrapText|. For example, with:
+\begin{verbatim}
+\AddBabelHook{one}{foreign}{\BabelWrapText{\textit{##1}}
+\AddBabelHook{two}{foreign}{\BabelWrapText{\parse{##1}}
+\end{verbatim}
+the text becomes |\textit{\parse{|\m{text}|}}|.
+
+
% STILL UNDER STUDY:
% \item[beforestart] \New{3.34} Executed either at the beginning of the
% |aux| file (when read at the start of the document), or else at begin
@@ -5479,8 +5494,8 @@
% \section{Tools}
%
% \begin{macrocode}
-%<<version=24.7>>
-%<<date=2024/06/26>>
+%<<version=24.8>>
+%<<date=2024/08/18>>
% \end{macrocode}
%
% \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -6984,6 +6999,9 @@
\BabelText{#2}% Still in vertical mode!
{\par}%
\endgroup}
+\providecommand\BabelWrapText[1]{%
+ \def\bbl at tempa{\def\BabelText####1}%
+ \expandafter\bbl at tempa\expandafter{\BabelText{#1}}}
% \end{macrocode}
%
% \end{macro}
@@ -11569,6 +11587,7 @@
\let\bbl at noamsmath\@empty}
\@namedef{bbl at ADJ@bidi.math at off}{%
\let\bbl at noamsmath\relax}
+%
\@namedef{bbl at ADJ@bidi.mapdigits at on}{%
\bbl at adjust@lua{bidi}{digits_mapped=true}}
\@namedef{bbl at ADJ@bidi.mapdigits at off}{%
@@ -12533,11 +12552,10 @@
\let\bbl at textdir@i\@gobbletwo
\let\bbl at xebidipar\@empty
\AddBabelHook{bidi}{foreign}{%
- \def\bbl at tempa{\def\BabelText####1}%
\ifcase\bbl at thetextdir
- \expandafter\bbl at tempa\expandafter{\BabelText{\LR{##1}}}%
+ \BabelWrapText{\LR{##1}}%
\else
- \expandafter\bbl at tempa\expandafter{\BabelText{\RL{##1}}}%
+ \BabelWrapText{\RL{##1}}%
\fi}
\def\bbl at pardir#1{\ifcase#1\relax\setLR\else\setRL\fi}
\fi
@@ -15516,7 +15534,7 @@
return head
end
%
- function Babel.pre_otfload_h(head, gc, sz, pt, dir)
+ function Babel.pre_otfload_h(head, gc, sz, pt, dir) %%% TODO
if Babel.numbers and Babel.digits_mapped then
head = Babel.numbers(head)
end
@@ -15543,7 +15561,8 @@
% The basic setup. The output is modified at a very low level to set
% the |\bodydir| to the |\pagedir|. Sadly, we have to deal with boxes
% in math with basic, so the |\bbl at mathboxdir| hack is activated every
-% math with the package option bidi=.
+% math with the package option bidi=. The hack for the PUA is no longer
+% necessary with |basic|, but it’s kept in |basic-r|.
%
% \begin{macrocode}
\breakafterdirmode=1
@@ -15557,7 +15576,10 @@
\ifcase\expandafter\@gobbletwo\the\bbl at bidimode\or
require('babel-bidi-basic.lua')
\or
- require('babel-bidi-basic-r.lua')
+ require('babel-bidi-basic-r.lua')
+ table.insert(Babel.ranges, {0xE000, 0xF8FF, 'on'})
+ table.insert(Babel.ranges, {0xF0000, 0xFFFFD, 'on'})
+ table.insert(Babel.ranges, {0x100000, 0x10FFFD, 'on'})
\fi}
\newattribute\bbl at attr@dir
\directlua{ Babel.attr_dir = luatexbase.registernumber'bbl at attr@dir' }
@@ -15633,6 +15655,12 @@
end
luatexbase.add_to_callback("hpack_filter", Babel.math_box_dir,
"Babel.math_box_dir", 0)
+ if Babel.unset_atdir then
+ luatexbase.add_to_callback("pre_linebreak_filter", Babel.unset_atdir,
+ "Babel.unset_atdir")
+ luatexbase.add_to_callback("hpack_filter", Babel.unset_atdir,
+ "Babel.unset_atdir")
+ end
}}%
\fi
% \end{macrocode}
@@ -15892,7 +15920,9 @@
{\chardef\bbl at tabular@mode\z@}%
{\chardef\bbl at tabular@mode\@ne}}% Mixed, with LTR cols
\ifnum\bbl at bidimode>\@ne % Any lua bidi= except default=1
- \ifcase\bbl at tabular@mode\or % 1
+ % Redefine: vrules mess up dirs:
+ \def\@arstrut{\relax\copy\@arstrutbox}%
+ \ifcase\bbl at tabular@mode\or % 1 = Mixed - default
\let\bbl at parabefore\relax
\AddToHook{para/before}{\bbl at parabefore}
\AtBeginDocument{%
@@ -15917,7 +15947,7 @@
{\\\do at row@strut\<fi>}{\\\do at row@strut\<fi>\egroup}}}%
{}}%
\fi}%
- \or % 2
+ \or % 2 = All RTL - tabular
\let\bbl at parabefore\relax
\AddToHook{para/before}{\bbl at parabefore}%
\AtBeginDocument{%
@@ -15962,9 +15992,9 @@
\ifnum\bbl at bidimode>\z@ % Any bidi=
\def\bbl at nextfake#1{% non-local changes, use always inside a group!
\bbl at exp{%
- \def\\\bbl at insidemath{0}%
\mathdir\the\bodydir
#1% Once entered in math, set boxes to restore values
+ \def\\\bbl at insidemath{0}%
\<ifmmode>%
\everyvbox{%
\the\everyvbox
@@ -16448,7 +16478,7 @@
if crep then
step = crep.step or step
end
-
+
if crep and crep.after then
crep.insert = true
if dummy_node then
@@ -16459,7 +16489,7 @@
dummy_node = item
end
end
-
+
if crep and not crep.after and dummy_node then
node.remove(head, dummy_node)
dummy_node = nil
@@ -16480,7 +16510,7 @@
sc = sc - 1 -- Nothing has been inserted.
last_match = utf8.offset(w, sc+1+step)
goto next
-
+
elseif crep and crep.kashida then -- Experimental
node.set_attribute(item,
Babel.attr_kashida,
@@ -16558,7 +16588,7 @@
placeholder = ' '
end
head, new = node.insert_before(head, item, d)
-
+
elseif crep and crep.norule then
-- 655360 = 10 pt = 10 * 65536 sp
d = node.new(2, 3) -- (rule, empty) = \no*rule
@@ -16582,7 +16612,7 @@
elseif mode == 0 and crep and crep.space then
-- ERROR
-
+
elseif crep and crep.kern then
d = node.new(13, 1) -- (kern, user)
local quad = font.getfont(item_base.font).size or 655360
@@ -16589,7 +16619,7 @@
d.attr = item_base.attr
d.kern = crep.kern * quad
head, new = node.insert_before(head, item, d)
-
+
elseif crep and crep.node then
d = node.new(crep.node[1], crep.node[2])
d.attr = item_base.attr
@@ -16621,7 +16651,7 @@
print('.....', '/')
Babel.debug_hyph(w, w_nodes, sc, first, last, last_match)
end
-
+
if dummy_node then
node.remove(head, dummy_node)
dummy_node = nil
@@ -16776,7 +16806,6 @@
{0x07C0, 0x085F, 'r'},
{0x0860, 0x086F, 'al'},
{0x08A0, 0x08FF, 'al'},
- {0xE000, 0xF8FF, 'on'}, -- PUA
{0xFB1D, 0xFB4F, 'r'},
{0xFB50, 0xFDFF, 'al'},
{0xFE70, 0xFEFF, 'al'},
@@ -16783,9 +16812,7 @@
{0x10800, 0x10C4F, 'r'},
{0x1E800, 0x1E8DF, 'r'},
{0x1E900, 0x1E95F, 'r'},
- {0x1F300, 0x1F9FF, 'on'},
- {0xF0000, 0xFFFFD, 'on'}, -- PUA
- {0x100000, 0x10FFFD, 'on'} -- PUA
+ {0x1F300, 0x1F9FF, 'on'}
}
Babel.characters = {
@@ -23085,7 +23112,7 @@
elseif first_d and dir ~= strong_lr then
dir_mark(head, first_d, last_d, outer)
first_d, last_d = nil, nil
- end
+ end
end
% \end{macrocode}
%
@@ -23094,11 +23121,9 @@
% clearly <r> and <l>, resptly, but with other combinations depends on
% outer. From all these, we select only those resolving <on> $\to$
% <r>. At the beginning (when |last_lr| is nil) of an R text, they are
-% mirrored directly.
+% mirrored directly. Numbers in R mode are processed. It should not be
+% done, but it doesn't hurt.
%
-% TODO - numbers in R mode are processed. It doesn't hurt, but should
-% not be done.
-%
% \begin{macrocode}
if dir and not last_lr and dir ~= 'l' and outer == 'r' then
item.char = characters[item.char] and
@@ -23254,6 +23279,7 @@
local has_hyperlink = false
local ATDIR = Babel.attr_dir
+ local attr_d
local save_outer
local temp = node.get_attribute(head, ATDIR)
@@ -23285,9 +23311,11 @@
-- current one is not added until we start processing the neutrals.
-- three cases: glyph, dir, otherwise
- if glyph_not_symbol_font(item)
+ if glyph_not_symbol_font(item)
or (item.id == 7 and item.subtype == 2) then
+ if node.get_attribute(item, ATDIR) == 128 then goto nextnode end
+
local d_font = nil
local item_r
if item.id == 7 and item.subtype == 2 then
@@ -23295,6 +23323,7 @@
else
item_r = item
end
+
local chardata = characters[item_r.char]
d = chardata and chardata.d or nil
if not d or d == 'nsm' then
@@ -23422,6 +23451,7 @@
-- Force mathdir in math if ON (currently works as expected only
-- with 'l')
+
if inmath and d == 'on' then
d = ('TRT' == tex.mathdir) and 'r' or 'l'
end
@@ -23437,10 +23467,13 @@
table.insert(nodes, {item, d, outer_first})
end
+ node.set_attribute(item, ATDIR, 128)
outer_first = nil
- end
+ ::nextnode::
+ end -- for each node
+
-- TODO -- repeated here in case EN/ET is the last node. Find a
-- better way of doing things:
if first_et then -- dir may be nil here !
@@ -23600,6 +23633,15 @@
return head
end
+-- Make sure anything is marked as 'bidi done' (including nodes inserted
+-- after the babel algorithm).
+function Babel.unset_atdir(head)
+ local ATDIR = Babel.attr_dir
+ for item in node.traverse(head) do
+ node.set_attribute(item, ATDIR, 128)
+ end
+ return head
+end
%</basic>
% \end{macrocode}
%
Modified: trunk/Master/texmf-dist/source/latex/babel/babel.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/babel/babel.ins 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/source/latex/babel/babel.ins 2024-08-18 19:49:14 UTC (rev 72061)
@@ -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{2024/06/26}
+\def\filedate{2024/08/18}
\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 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/source/latex/babel/bbcompat.dtx 2024-08-18 19:49:14 UTC (rev 72061)
@@ -30,7 +30,7 @@
%
% \iffalse
%<*dtx>
-\ProvidesFile{bbcompat.dtx}[2024/06/26 v24.7]
+\ProvidesFile{bbcompat.dtx}[2024/08/18 v24.8]
%</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-bidi-basic-r.lua
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua 2024-08-18 19:49:14 UTC (rev 72061)
@@ -162,7 +162,7 @@
elseif first_d and dir ~= strong_lr then
dir_mark(head, first_d, last_d, outer)
first_d, last_d = nil, nil
- end
+ end
end
if dir and not last_lr and dir ~= 'l' and outer == 'r' then
item.char = characters[item.char] and
Modified: trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua 2024-08-18 19:49:14 UTC (rev 72061)
@@ -124,6 +124,7 @@
local has_hyperlink = false
local ATDIR = Babel.attr_dir
+ local attr_d
local save_outer
local temp = node.get_attribute(head, ATDIR)
@@ -158,6 +159,8 @@
if glyph_not_symbol_font(item)
or (item.id == 7 and item.subtype == 2) then
+ if node.get_attribute(item, ATDIR) == 128 then goto nextnode end
+
local d_font = nil
local item_r
if item.id == 7 and item.subtype == 2 then
@@ -165,6 +168,7 @@
else
item_r = item
end
+
local chardata = characters[item_r.char]
d = chardata and chardata.d or nil
if not d or d == 'nsm' then
@@ -292,6 +296,7 @@
-- Force mathdir in math if ON (currently works as expected only
-- with 'l')
+
if inmath and d == 'on' then
d = ('TRT' == tex.mathdir) and 'r' or 'l'
end
@@ -307,10 +312,13 @@
table.insert(nodes, {item, d, outer_first})
end
+ node.set_attribute(item, ATDIR, 128)
outer_first = nil
- end
+ ::nextnode::
+ end -- for each node
+
-- TODO -- repeated here in case EN/ET is the last node. Find a
-- better way of doing things:
if first_et then -- dir may be nil here !
@@ -470,3 +478,12 @@
return head
end
+-- Make sure anything is marked as 'bidi done' (including nodes inserted
+-- after the babel algorithm).
+function Babel.unset_atdir(head)
+ local ATDIR = Babel.attr_dir
+ for item in node.traverse(head) do
+ node.set_attribute(item, ATDIR, 128)
+ end
+ return head
+end
Modified: trunk/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua 2024-08-18 19:49:14 UTC (rev 72061)
@@ -43,7 +43,6 @@
{0x07C0, 0x085F, 'r'},
{0x0860, 0x086F, 'al'},
{0x08A0, 0x08FF, 'al'},
- {0xE000, 0xF8FF, 'on'}, -- PUA
{0xFB1D, 0xFB4F, 'r'},
{0xFB50, 0xFDFF, 'al'},
{0xFE70, 0xFEFF, 'al'},
@@ -50,9 +49,7 @@
{0x10800, 0x10C4F, 'r'},
{0x1E800, 0x1E8DF, 'r'},
{0x1E900, 0x1E95F, 'r'},
- {0x1F300, 0x1F9FF, 'on'},
- {0xF0000, 0xFFFFD, 'on'}, -- PUA
- {0x100000, 0x10FFFD, 'on'} -- PUA
+ {0x1F300, 0x1F9FF, 'on'}
}
Babel.characters = {
Modified: trunk/Master/texmf-dist/tex/generic/babel/babel.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel.def 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel.def 2024-08-18 19:49:14 UTC (rev 72061)
@@ -40,7 +40,7 @@
\wlog{File: #1 #4 #3 <#2>}%
\let\ProvidesFile\@undefined}
\fi
-\ProvidesFile{babel.def}[2024/06/26 v24.7 Babel common definitions]
+\ProvidesFile{babel.def}[2024/08/18 v24.8 Babel common definitions]
\ifx\AtBeginDocument\@undefined % TODO. change test.
\def\@empty{}
\def\loadlocalcfg#1{%
@@ -596,8 +596,8 @@
\toks@\expandafter{\bbl at tempc#3}%
\expandafter\edef\csname extras\languagename\endcsname{\the\toks@}%
\fi}
-\def\bbl at version{24.7}
-\def\bbl at date{2024/06/26}
+\def\bbl at version{24.8}
+\def\bbl at date{2024/08/18}
\ifx\language\@undefined
\csname newcount\endcsname\language
\fi
@@ -928,6 +928,9 @@
\BabelText{#2}% Still in vertical mode!
{\par}%
\endgroup}
+\providecommand\BabelWrapText[1]{%
+ \def\bbl at tempa{\def\BabelText####1}%
+ \expandafter\bbl at tempa\expandafter{\BabelText{#1}}}
\def\foreign at language#1{%
% set name
\edef\languagename{#1}%
Modified: trunk/Master/texmf-dist/tex/generic/babel/babel.sty
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel.sty 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel.sty 2024-08-18 19:49:14 UTC (rev 72061)
@@ -34,7 +34,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
-\ProvidesPackage{babel}[2024/06/26 v24.7 The Babel package]
+\ProvidesPackage{babel}[2024/08/18 v24.8 The Babel package]
\@ifpackagewith{babel}{debug}
{\providecommand\bbl at trace[1]{\message{^^J[ #1 ]}}%
\let\bbl at debug\@firstofone
@@ -466,8 +466,8 @@
\expandafter\@secondoftwo
\fi}
\fi
-\def\bbl at version{24.7}
-\def\bbl at date{2024/06/26}
+\def\bbl at version{24.8}
+\def\bbl at date{2024/08/18}
\ifx\language\@undefined
\csname newcount\endcsname\language
\fi
@@ -826,6 +826,9 @@
\BabelText{#2}% Still in vertical mode!
{\par}%
\endgroup}
+\providecommand\BabelWrapText[1]{%
+ \def\bbl at tempa{\def\BabelText####1}%
+ \expandafter\bbl at tempa\expandafter{\BabelText{#1}}}
\def\foreign at language#1{%
% set name
\edef\languagename{#1}%
@@ -4080,11 +4083,10 @@
\let\bbl at textdir@i\@gobbletwo
\let\bbl at xebidipar\@empty
\AddBabelHook{bidi}{foreign}{%
- \def\bbl at tempa{\def\BabelText####1}%
\ifcase\bbl at thetextdir
- \expandafter\bbl at tempa\expandafter{\BabelText{\LR{##1}}}%
+ \BabelWrapText{\LR{##1}}%
\else
- \expandafter\bbl at tempa\expandafter{\BabelText{\RL{##1}}}%
+ \BabelWrapText{\RL{##1}}%
\fi}
\def\bbl at pardir#1{\ifcase#1\relax\setLR\else\setRL\fi}
\fi
Modified: trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg 2024-08-18 19:49:14 UTC (rev 72061)
@@ -38,10 +38,10 @@
\wlog{File: #1 #4 #3 <#2>}%
\let\ProvidesFile\@undefined}
\fi
-\ProvidesFile{hyphen.cfg}[2024/06/26 v24.7 Babel hyphens]
+\ProvidesFile{hyphen.cfg}[2024/08/18 v24.8 Babel hyphens]
\xdef\bbl at format{\jobname}
-\def\bbl at version{24.7}
-\def\bbl at date{2024/06/26}
+\def\bbl at version{24.8}
+\def\bbl at date{2024/08/18}
\ifx\AtBeginDocument\@undefined
\def\@empty{}
\fi
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/ccp/babel-ccp.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/ccp/babel-ccp.ini 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/ccp/babel-ccp.ini 2024-08-18 19:49:14 UTC (rev 72061)
@@ -4,11 +4,12 @@
; * Common Locale Data Repository (license Unicode):
; http://cldr.unicode.org/
; http://unicode.org/copyright.html
+; With some cleaning up by Stephen Huan (@stephen-huan)
[identification]
charset = utf8
-version = 1.0
-date = 2023-12-09
+version = 1.1
+date = 2024-08-11
name.local = 𑄌𑄋𑄴𑄟𑄳𑄦
name.english = Chakma
name.babel = chakma
@@ -146,8 +147,6 @@
[characters]
ranges = 11100..1114F
-
-[characters]
delimiters.quotes =
auxiliary =
exemplarCharacters = [𑄀 𑄁 𑄂 𑄃 𑄄 𑄅 𑄆 𑄇 𑄈 𑄉 𑄊 𑄋 𑄌 𑄍 𑄎 𑄏 𑄐 𑄑 𑄒 𑄓 𑄔 𑄕 𑄖 𑄗 𑄘 𑄙 𑄚 𑄛 𑄜 𑄝 𑄞 𑄟 𑄠 𑄡 𑄢 𑄣 𑄤 𑄥 𑄦 𑄧 𑄨 𑄩 𑄪 𑄫 𑄬 𑄭 𑄮 𑄯 𑄰 𑄱 𑄲 𑄳 𑄴]
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb-Latn.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb-Latn.ini 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb-Latn.ini 2024-08-18 19:49:14 UTC (rev 72061)
@@ -8,11 +8,12 @@
; * Common Locale Data Repository (license Unicode):
; http://cldr.unicode.org/
; http://unicode.org/copyright.html
+; With some cleaning up by Stephen Huan (@stephen-huan)
[identification]
charset = utf8
-version = 1.5
-date = 2022-12-08
+version = 1.6
+date = 2024-08-11
name.local = Kurdîy nawendî
name.english = Central Kurdish
name.babel = sorani centralkurdish-latin
@@ -66,18 +67,6 @@
months.wide.10 = Tişrînî Yekem
months.wide.11 = Tişrînî Dûhem
months.wide.12 = Kanûnî Dûhem
-months.wide.1 =
-months.wide.2 =
-months.wide.3 =
-months.wide.4 =
-months.wide.5 =
-months.wide.6 =
-months.wide.7 =
-months.wide.8 =
-months.wide.9 =
-months.wide.10 =
-months.wide.11 =
-months.wide.12 =
months.narrow.1 =
months.narrow.2 =
months.narrow.3 =
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/cu/babel-cu-Cyrs.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/cu/babel-cu-Cyrs.ini 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/cu/babel-cu-Cyrs.ini 2024-08-18 19:49:14 UTC (rev 72061)
@@ -6,11 +6,12 @@
; * Common Locale Data Repository (license Unicode):
; http://cldr.unicode.org/
; http://unicode.org/copyright.html
+; With some cleaning up by Stephen Huan (@stephen-huan)
[identification]
charset = utf8
-version = 1.4
-date = 2022-12-08
+version = 1.5
+date = 2024-08-11
name.local = словѣ́ньскъ ѩꙁꙑ́къ
name.english = Church Slavic
name.babel = churchslavic-oldcyrillic
@@ -36,7 +37,6 @@
listfigure = Надписа́нїе и҆з̾ѡбраже́нїй
listtable = Надписа́нїе табли́цъ
index = Предмѣ́тный ᲂу҆каза́тель
-author = И҆менно́й ᲂу҆каза́тель
figure = И҆з̾ѡбраже́нїе
table = Табли́ца
part = Ча́сть
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/he/babel-he.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/he/babel-he.ini 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/he/babel-he.ini 2024-08-18 19:49:14 UTC (rev 72061)
@@ -6,11 +6,12 @@
; * Common Locale Data Repository (license Unicode):
; http://cldr.unicode.org/
; http://unicode.org/copyright.html
+; With some cleaning up by Stephen Huan (@stephen-huan)
[identification]
charset = utf8
-version = 1.10
-date = 2023-08-31
+version = 1.11
+date = 2024-08-11
name.local = עברית
name.english = Hebrew
name.babel = hebrew
@@ -47,7 +48,7 @@
page = עמוד
see = ראה
also = ראה גם
-proof = הוכחה}
+proof = הוכחה
glossary = מילון מונחים
[captions.licr]
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini 2024-08-18 19:49:14 UTC (rev 72061)
@@ -6,11 +6,12 @@
; * Common Locale Data Repository (license Unicode):
; http://cldr.unicode.org/
; http://unicode.org/copyright.html
+; With some cleaning up by Stephen Huan (@stephen-huan)
[identification]
charset = utf8
-version = 1.5
-date = 2024-04-18
+version = 1.6
+date = 2024-08-11
name.local = 한국어
name.english = Korean
name.babel = korean-han korean-hani
@@ -56,9 +57,6 @@
also =
proof = 證明
glossary = 語 彙
-section.template = [[presection]] [section] [[postsection]]
-presection = 第
-postsection = 節
[captions.licr]
preface =
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini 2024-08-18 19:49:14 UTC (rev 72061)
@@ -6,11 +6,12 @@
; * Common Locale Data Repository (license Unicode):
; http://cldr.unicode.org/
; http://unicode.org/copyright.html
+; With some cleaning up by Stephen Huan (@stephen-huan)
[identification]
charset = utf8
-version = 1.13
-date = 2024-04-18
+version = 1.14
+date = 2024-08-11
name.local = 한국어
name.english = Korean
name.babel = korean
@@ -57,9 +58,6 @@
also =
proof = 증명
glossary = 용어집
-section.template = [[presection]] [section] [[postsection]]
-presection = 제
-postsection = 절
[captions.licr]
preface =
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/mk/babel-mk.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/mk/babel-mk.ini 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/mk/babel-mk.ini 2024-08-18 19:49:14 UTC (rev 72061)
@@ -8,11 +8,12 @@
; http://unicode.org/copyright.html
; * Some typos fixed by Stojan Trajanovski
; * Some typos fixed by Dario Gjorgjevski
+; With some cleaning up by Stephen Huan (@stephen-huan)
[identification]
charset = utf8
-version = 1.6
-date = 2022-09-07
+version = 1.7
+date = 2024-08-11
name.local = македонски
name.english = Macedonian
name.babel = macedonian
@@ -49,7 +50,7 @@
see = види
also = види исто така
proof = доказ
-glossaryname = Речник
+glossary = Речник
[captions.licr]
preface = \CYRP\cyrr\cyre\cyrd\cyrg\cyro\cyrv\cyro\cyrr
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/ro/babel-ro.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/ro/babel-ro.ini 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/ro/babel-ro.ini 2024-08-18 19:49:14 UTC (rev 72061)
@@ -6,11 +6,12 @@
; * Common Locale Data Repository (license Unicode):
; http://cldr.unicode.org/
; http://unicode.org/copyright.html
+; With some cleaning up by Stephen Huan (@stephen-huan)
[identification]
charset = utf8
-version = 1.4
-date = 2022-10-12
+version = 1.5
+date = 2024-08-11
name.local = română
name.english = Romanian
name.babel = romanian
@@ -36,7 +37,7 @@
contents = Cuprins
listfigure = Listă de figuri
listtable = Listă de tabele
-index = Index
+index = Glosar
figure = Figura
table = Tabela
part = Partea
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/sl/babel-sl.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/sl/babel-sl.ini 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/sl/babel-sl.ini 2024-08-18 19:49:14 UTC (rev 72061)
@@ -6,11 +6,12 @@
; * Common Locale Data Repository (license Unicode):
; http://cldr.unicode.org/
; http://unicode.org/copyright.html
+; With some cleaning up by Stephen Huan (@stephen-huan)
[identification]
charset = utf8
-version = 1.3
-date = 2022-10-12
+version = 1.4
+date = 2024-08-11
name.local = slovenščina
name.english = Slovenian
name.babel = slovene slovenian
@@ -47,7 +48,7 @@
see = glej
also = glej tudi
proof = Dokaz
-glossary = Glossary
+glossary = Slovar
[captions.licr]
preface = Predgovor
Modified: trunk/Master/texmf-dist/tex/generic/babel/luababel.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/luababel.def 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/luababel.def 2024-08-18 19:49:14 UTC (rev 72061)
@@ -1392,7 +1392,7 @@
return head
end
%
- function Babel.pre_otfload_h(head, gc, sz, pt, dir)
+ function Babel.pre_otfload_h(head, gc, sz, pt, dir) %%% TODO
if Babel.numbers and Babel.digits_mapped then
head = Babel.numbers(head)
end
@@ -1426,6 +1426,9 @@
require('babel-bidi-basic.lua')
\or
require('babel-bidi-basic-r.lua')
+ table.insert(Babel.ranges, {0xE000, 0xF8FF, 'on'})
+ table.insert(Babel.ranges, {0xF0000, 0xFFFFD, 'on'})
+ table.insert(Babel.ranges, {0x100000, 0x10FFFD, 'on'})
\fi}
\newattribute\bbl at attr@dir
\directlua{ Babel.attr_dir = luatexbase.registernumber'bbl at attr@dir' }
@@ -1493,6 +1496,12 @@
end
luatexbase.add_to_callback("hpack_filter", Babel.math_box_dir,
"Babel.math_box_dir", 0)
+ if Babel.unset_atdir then
+ luatexbase.add_to_callback("pre_linebreak_filter", Babel.unset_atdir,
+ "Babel.unset_atdir")
+ luatexbase.add_to_callback("hpack_filter", Babel.unset_atdir,
+ "Babel.unset_atdir")
+ end
}}%
\fi
\DeclareRobustCommand\localebox[1]{%
@@ -1702,7 +1711,9 @@
{\chardef\bbl at tabular@mode\z@}%
{\chardef\bbl at tabular@mode\@ne}}% Mixed, with LTR cols
\ifnum\bbl at bidimode>\@ne % Any lua bidi= except default=1
- \ifcase\bbl at tabular@mode\or % 1
+ % Redefine: vrules mess up dirs:
+ \def\@arstrut{\relax\copy\@arstrutbox}%
+ \ifcase\bbl at tabular@mode\or % 1 = Mixed - default
\let\bbl at parabefore\relax
\AddToHook{para/before}{\bbl at parabefore}
\AtBeginDocument{%
@@ -1727,7 +1738,7 @@
{\\\do at row@strut\<fi>}{\\\do at row@strut\<fi>\egroup}}}%
{}}%
\fi}%
- \or % 2
+ \or % 2 = All RTL - tabular
\let\bbl at parabefore\relax
\AddToHook{para/before}{\bbl at parabefore}%
\AtBeginDocument{%
@@ -1753,9 +1764,9 @@
\ifnum\bbl at bidimode>\z@ % Any bidi=
\def\bbl at nextfake#1{% non-local changes, use always inside a group!
\bbl at exp{%
- \def\\\bbl at insidemath{0}%
\mathdir\the\bodydir
#1% Once entered in math, set boxes to restore values
+ \def\\\bbl at insidemath{0}%
\<ifmmode>%
\everyvbox{%
\the\everyvbox
Modified: trunk/Master/texmf-dist/tex/generic/babel/nil.ldf
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/nil.ldf 2024-08-18 19:48:26 UTC (rev 72060)
+++ trunk/Master/texmf-dist/tex/generic/babel/nil.ldf 2024-08-18 19:49:14 UTC (rev 72061)
@@ -33,7 +33,7 @@
%% extension |.ins|) which are part of the distribution.
%%
-\ProvidesLanguage{nil}[2024/06/26 v24.7 Nil language]
+\ProvidesLanguage{nil}[2024/08/18 v24.8 Nil language]
\LdfInit{nil}{datenil}
\ifx\l at nil\@undefined
\newlanguage\l at nil
More information about the tex-live-commits
mailing list.