summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic')
-rw-r--r--Master/texmf-dist/tex/generic/babel/babel.def8
-rw-r--r--Master/texmf-dist/tex/generic/babel/babel.sty10
-rw-r--r--Master/texmf-dist/tex/generic/babel/hyphen.cfg6
-rw-r--r--Master/texmf-dist/tex/generic/babel/locale/bo/babel-tibetan.tex10
-rw-r--r--Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini5
-rw-r--r--Master/texmf-dist/tex/generic/babel/locale/ja/babel-japanese.tex66
-rw-r--r--Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini5
-rw-r--r--Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini5
-rw-r--r--Master/texmf-dist/tex/generic/babel/locale/ko/babel-korean.tex66
-rw-r--r--Master/texmf-dist/tex/generic/babel/locale/yue/babel-cantonese.tex66
-rw-r--r--Master/texmf-dist/tex/generic/babel/locale/yue/babel-yue.ini5
-rw-r--r--Master/texmf-dist/tex/generic/babel/locale/zh/babel-chinese.tex66
-rw-r--r--Master/texmf-dist/tex/generic/babel/luababel.def20
-rw-r--r--Master/texmf-dist/tex/generic/babel/nil.ldf2
-rw-r--r--Master/texmf-dist/tex/generic/babel/xebabel.def9
15 files changed, 313 insertions, 36 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/babel.def b/Master/texmf-dist/tex/generic/babel/babel.def
index a76f7f47b11..af17a4db0ee 100644
--- a/Master/texmf-dist/tex/generic/babel/babel.def
+++ b/Master/texmf-dist/tex/generic/babel/babel.def
@@ -40,7 +40,7 @@
\wlog{File: #1 #4 #3 <#2>}%
\let\ProvidesFile\@undefined}
\fi
-\ProvidesFile{babel.def}[2024/03/29 v24.3 Babel common definitions]
+\ProvidesFile{babel.def}[2024/04/20 v24.4 Babel common definitions]
\ifx\AtBeginDocument\@undefined % TODO. change test.
\def\@empty{}
\def\loadlocalcfg#1{%
@@ -596,8 +596,8 @@
\toks@\expandafter{\bbl@tempc#3}%
\expandafter\edef\csname extras\languagename\endcsname{\the\toks@}%
\fi}
-\def\bbl@version{24.3}
-\def\bbl@date{2024/03/29}
+\def\bbl@version{24.4}
+\def\bbl@date{2024/04/20}
\ifx\language\@undefined
\csname newcount\endcsname\language
\fi
@@ -2267,7 +2267,7 @@
\or
\input xebabel.def
\fi
-\providecommand\babelfont{\bbl@error@{only-lua-xe}{}{}{}}
+\providecommand\babelfont{\bbl@error{only-lua-xe}{}{}{}}
\providecommand\babelprehyphenation{\bbl@error{only-lua}{}{}{}}
\ifx\babelposthyphenation\@undefined
\let\babelposthyphenation\babelprehyphenation
diff --git a/Master/texmf-dist/tex/generic/babel/babel.sty b/Master/texmf-dist/tex/generic/babel/babel.sty
index 35fa58deff0..9e75ee48de2 100644
--- a/Master/texmf-dist/tex/generic/babel/babel.sty
+++ b/Master/texmf-dist/tex/generic/babel/babel.sty
@@ -34,7 +34,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
-\ProvidesPackage{babel}[2024/03/29 v24.3 The Babel package]
+\ProvidesPackage{babel}[2024/04/20 v24.4 The Babel package]
\@ifpackagewith{babel}{debug}
{\providecommand\bbl@trace[1]{\message{^^J[ #1 ]}}%
\let\bbl@debug\@firstofone
@@ -466,8 +466,8 @@
\expandafter\@secondoftwo
\fi}
\fi
-\def\bbl@version{24.3}
-\def\bbl@date{2024/03/29}
+\def\bbl@version{24.4}
+\def\bbl@date{2024/04/20}
\ifx\language\@undefined
\csname newcount\endcsname\language
\fi
@@ -2210,7 +2210,7 @@
\or
\input xebabel.def
\fi
-\providecommand\babelfont{\bbl@error@{only-lua-xe}{}{}{}}
+\providecommand\babelfont{\bbl@error{only-lua-xe}{}{}{}}
\providecommand\babelprehyphenation{\bbl@error{only-lua}{}{}{}}
\ifx\babelposthyphenation\@undefined
\let\babelposthyphenation\babelprehyphenation
@@ -2595,6 +2595,8 @@
\fi
% == transforms ==
% > luababel.def
+ \def\CurrentOption{#2}%
+ \@nameuse{bbl@icsave@#2}%
% == main ==
\ifx\bbl@KVP@main\@nnil % Restore only if not 'main'
\let\languagename\bbl@savelangname
diff --git a/Master/texmf-dist/tex/generic/babel/hyphen.cfg b/Master/texmf-dist/tex/generic/babel/hyphen.cfg
index b667ec61a93..690a0deb2d7 100644
--- a/Master/texmf-dist/tex/generic/babel/hyphen.cfg
+++ b/Master/texmf-dist/tex/generic/babel/hyphen.cfg
@@ -38,10 +38,10 @@
\wlog{File: #1 #4 #3 <#2>}%
\let\ProvidesFile\@undefined}
\fi
-\ProvidesFile{hyphen.cfg}[2024/03/29 v24.3 Babel hyphens]
+\ProvidesFile{hyphen.cfg}[2024/04/20 v24.4 Babel hyphens]
\xdef\bbl@format{\jobname}
-\def\bbl@version{24.3}
-\def\bbl@date{2024/03/29}
+\def\bbl@version{24.4}
+\def\bbl@date{2024/04/20}
\ifx\AtBeginDocument\@undefined
\def\@empty{}
\fi
diff --git a/Master/texmf-dist/tex/generic/babel/locale/bo/babel-tibetan.tex b/Master/texmf-dist/tex/generic/babel/locale/bo/babel-tibetan.tex
index f09c78ad126..587cc5f8e64 100644
--- a/Master/texmf-dist/tex/generic/babel/locale/bo/babel-tibetan.tex
+++ b/Master/texmf-dist/tex/generic/babel/locale/bo/babel-tibetan.tex
@@ -33,6 +33,7 @@
\babelprehyphenation{tibetan}{[{a}{p}]|}%
{ {}, {space=\bbl@tempe, data=1 } }%
% (2) Line breaking
+ % 0f0d=shad, 0f0e=nyis shad, 0f0b=tsheg
\babelprehyphenation{tibetan}{[^^^^0f0d^^^^0f0e]|[^^^^0f0d^^^^0f0e]}%
{ {}, {insert, penalty=10000}, {}, {} }%
\babelprehyphenation{tibetan}{[^^^^0f0d^^^^0f0e][^^^^0f40-^^^^0f6a]}%
@@ -40,9 +41,14 @@
\edef\bbl@tempe{\directlua{
tex.print(table.concat(Babel.tibetan.tsheg, ' ', 1, 3))
}}%
- \babelprehyphenation{tibetan}{^^^^0f0b[^ ^^^^0f0d^^^^0f0e]}%
+ \babelprehyphenation{tibetan}%
+ {^^^^0f0b[^ ^^^^0f0d^^^^0f0e{)}{]}’”»{007D}^^^^0f3b^^^^0f3d〉〉》」』】〕〗〙〛]}%
{ {insert, penalty=10000}, {insert, space=\bbl@tempe, data=1}, {},
- {insert, space=\bbl@tempe, data=1}, {} }}
+ {insert, space=\bbl@tempe, data=1}, {} }%
+ \babelprehyphenation{tibetan}%
+ {^^^^0f0b[{)}{]}’”»{007D}^^^^0f3b^^^^0f3d〉〉》」』】〕〗〙〛]{a}}%
+ { {insert, penalty=10000}, {insert, space=\bbl@tempe, data=1}, {},
+ {}, {insert, space=\bbl@tempe, data=1}, {} }}
\def\bbl@tibetanjust{%
% (3) Justification
diff --git a/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini b/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini
index abdbe0538df..1d44a83d6ae 100644
--- a/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini
+++ b/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini
@@ -9,8 +9,8 @@
[identification]
charset = utf8
-version = 1.10
-date = 2022-09-01
+version = 1.11
+date = 2024-04-18
name.local = 日本語
name.english = Japanese
name.babel = japanese
@@ -25,6 +25,7 @@ script.tag.opentype = kana
level = 1
encodings =
derivate = no
+require.babel = japanese
[captions]
; some key names are tentative
diff --git a/Master/texmf-dist/tex/generic/babel/locale/ja/babel-japanese.tex b/Master/texmf-dist/tex/generic/babel/locale/ja/babel-japanese.tex
index 0ffb953be1d..da7a161f2ec 100644
--- a/Master/texmf-dist/tex/generic/babel/locale/ja/babel-japanese.tex
+++ b/Master/texmf-dist/tex/generic/babel/locale/ja/babel-japanese.tex
@@ -9,4 +9,70 @@
\fi
\BabelBeforeIni{ja}{%
}
+
+
+\ifcase\bbl@engine\or\or % xe
+
+\IfBabelIntercharT{linebreak.basic}{%
+ \bbl@input@classes
+ \bbl@carg\bbl@add{extras\CurrentOption}%
+ {\babel@savevariable\XeTeXinterchartokenstate
+ \XeTeXinterchartokenstate\@ne}%
+%
+ \def\BabelCJKGlue{\hskip0pt plus 0.1em\relax}%
+ \def\BabelCJKSpace{\hskip0.2em plus 0.2em minus 0.1em\relax}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkideogram}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkleftpunctuation}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKSpace}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{default}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{default}%
+ {\nobreak\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{default}%
+ {\BabelCJKSpace}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkideogram}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkleftpunctuation}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkideogram}%
+ {\nobreak\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkleftpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkrightpunctuation}%
+ {\BabelCJKGlue}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkideogram}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkleftpunctuation}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+}
+
+\fi
+
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini b/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini
index 6bf07ad3128..eff48777f29 100644
--- a/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini
+++ b/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini
@@ -9,8 +9,8 @@
[identification]
charset = utf8
-version = 1.4
-date = 2023-03-11
+version = 1.5
+date = 2024-04-18
name.local = 한국어
name.english = Korean
name.babel = korean-han korean-hani
@@ -25,6 +25,7 @@ script.tag.opentype = hani
level = 1
encodings =
derivate = no
+require.babel = korean
[captions]
; names based on kotex
diff --git a/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini b/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini
index 5eb9b89c170..a56ab37a39c 100644
--- a/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini
+++ b/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini
@@ -9,8 +9,8 @@
[identification]
charset = utf8
-version = 1.12
-date = 2023-03-11
+version = 1.13
+date = 2024-04-18
name.local = 한국어
name.english = Korean
name.babel = korean
@@ -26,6 +26,7 @@ script.tag.opentype = hang
level = 1
encodings =
derivate = no
+require.babel = korean
[captions]
; names based on kotex
diff --git a/Master/texmf-dist/tex/generic/babel/locale/ko/babel-korean.tex b/Master/texmf-dist/tex/generic/babel/locale/ko/babel-korean.tex
index eaf6a40400b..e1d8845d841 100644
--- a/Master/texmf-dist/tex/generic/babel/locale/ko/babel-korean.tex
+++ b/Master/texmf-dist/tex/generic/babel/locale/ko/babel-korean.tex
@@ -9,4 +9,70 @@
\fi
\BabelBeforeIni{ko}{%
}
+
+
+\ifcase\bbl@engine\or\or % xe
+
+\IfBabelIntercharT{linebreak.basic}{%
+ \bbl@input@classes
+ \bbl@carg\bbl@add{extras\CurrentOption}%
+ {\babel@savevariable\XeTeXinterchartokenstate
+ \XeTeXinterchartokenstate\@ne}%
+%
+ \def\BabelCJKGlue{\hskip0pt plus 0.1em\relax}%
+ \def\BabelCJKSpace{\hskip0.2em plus 0.2em minus 0.1em\relax}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkideogram}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkleftpunctuation}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKSpace}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{default}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{default}%
+ {\nobreak\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{default}%
+ {\BabelCJKSpace}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkideogram}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkleftpunctuation}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkideogram}%
+ {\nobreak\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkleftpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkrightpunctuation}%
+ {\BabelCJKGlue}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkideogram}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkleftpunctuation}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+}
+
+\fi
+
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/generic/babel/locale/yue/babel-cantonese.tex b/Master/texmf-dist/tex/generic/babel/locale/yue/babel-cantonese.tex
index d92e1387afa..0b51ad9691d 100644
--- a/Master/texmf-dist/tex/generic/babel/locale/yue/babel-cantonese.tex
+++ b/Master/texmf-dist/tex/generic/babel/locale/yue/babel-cantonese.tex
@@ -9,4 +9,70 @@
\fi
\BabelBeforeIni{yue}{%
}
+
+
+\ifcase\bbl@engine\or\or % xe
+
+\IfBabelIntercharT{linebreak.basic}{%
+ \bbl@input@classes
+ \bbl@carg\bbl@add{extras\CurrentOption}%
+ {\babel@savevariable\XeTeXinterchartokenstate
+ \XeTeXinterchartokenstate\@ne}%
+%
+ \def\BabelCJKGlue{\hskip0pt plus 0.1em\relax}%
+ \def\BabelCJKSpace{\hskip0.2em plus 0.2em minus 0.1em\relax}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkideogram}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkleftpunctuation}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKSpace}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{default}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{default}%
+ {\nobreak\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{default}%
+ {\BabelCJKSpace}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkideogram}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkleftpunctuation}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkideogram}%
+ {\nobreak\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkleftpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkrightpunctuation}%
+ {\BabelCJKGlue}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkideogram}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkleftpunctuation}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+}
+
+\fi
+
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/generic/babel/locale/yue/babel-yue.ini b/Master/texmf-dist/tex/generic/babel/locale/yue/babel-yue.ini
index db7094fe6c5..25c65d4d539 100644
--- a/Master/texmf-dist/tex/generic/babel/locale/yue/babel-yue.ini
+++ b/Master/texmf-dist/tex/generic/babel/locale/yue/babel-yue.ini
@@ -9,8 +9,8 @@
[identification]
charset = utf8
-version = 1.7
-date = 2023-03-11
+version = 1.8
+date = 2024-04-18
name.local = 粵語
name.english = Cantonese
name.babel = cantonese
@@ -25,6 +25,7 @@ script.tag.opentype = hani
level = 1
encodings =
derivate = no
+require.babel = cantonese
[captions]
preface =
diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-chinese.tex b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-chinese.tex
index 878566040c1..52f946d4d4a 100644
--- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-chinese.tex
+++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-chinese.tex
@@ -10,7 +10,7 @@
\BabelBeforeIni{zh}{%
}
-\ifcase\bbl@engine\else
+\ifcase\bbl@engine\else % xe/lua
% Shared with zh-*.ini files
\@namedef{bbl@cntr@date.sexagenary@\CurrentOption}#1{%
@@ -24,6 +24,70 @@
戊申\or 己酉\or 庚戌\or 辛亥\or 壬子\or 癸丑\or 甲寅\or
乙卯\or 丙辰\or 丁巳\or 戊午\or 己未\or 庚申\or 辛酉\or
壬戌\or 癸亥\fi}
+
+\fi
+
+\ifcase\bbl@engine\or\or % xe
+
+\IfBabelIntercharT{linebreak.basic}{%
+ \bbl@input@classes
+ \bbl@carg\bbl@add{extras\CurrentOption}%
+ {\babel@savevariable\XeTeXinterchartokenstate
+ \XeTeXinterchartokenstate\@ne}%
+%
+ \def\BabelCJKGlue{\hskip0pt plus 0.1em\relax}%
+ \def\BabelCJKSpace{\hskip0.2em plus 0.2em minus 0.1em\relax}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkideogram}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkleftpunctuation}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {default}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKSpace}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{default}%
+ {\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{default}%
+ {\nobreak\BabelCJKSpace}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{default}%
+ {\BabelCJKSpace}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkideogram}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkleftpunctuation}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkideogram}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkideogram}%
+ {\nobreak\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkleftpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkleftpunctuation}{cjkrightpunctuation}%
+ {\BabelCJKGlue}%
+%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkideogram}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkleftpunctuation}%
+ {\BabelCJKGlue}%
+ \babelinterchar[label=linebreak.basic]{\CurrentOption}%
+ {cjkrightpunctuation}{cjkrightpunctuation}%
+ {\nobreak\BabelCJKGlue}%
+}
\fi
diff --git a/Master/texmf-dist/tex/generic/babel/luababel.def b/Master/texmf-dist/tex/generic/babel/luababel.def
index b531bcdeb3d..4575df0f80a 100644
--- a/Master/texmf-dist/tex/generic/babel/luababel.def
+++ b/Master/texmf-dist/tex/generic/babel/luababel.def
@@ -1859,17 +1859,15 @@ end
\fi
\ifx\tcolorbox\@undefined\else
\def\tcb@drawing@env@begin{%
- \csname tcb@before@\tcb@split@state\endcsname
- \bbl@pictsetdir\tw@
- \begin{\kvtcb@graphenv}%
- \tcb@bbdraw%
- \tcb@apply@graph@patches
- }%
- \def\tcb@drawing@env@end{%
- \end{\kvtcb@graphenv}%
- \bbl@pictresetdir
- \csname tcb@after@\tcb@split@state\endcsname
- }%
+ \csname tcb@before@\tcb@split@state\endcsname
+ \bbl@pictsetdir\tw@
+ \begin{\kvtcb@graphenv}%
+ \tcb@bbdraw
+ \tcb@apply@graph@patches}%
+ \def\tcb@drawing@env@end{%
+ \end{\kvtcb@graphenv}%
+ \bbl@pictresetdir
+ \csname tcb@after@\tcb@split@state\endcsname}%
\fi
}}
{}
diff --git a/Master/texmf-dist/tex/generic/babel/nil.ldf b/Master/texmf-dist/tex/generic/babel/nil.ldf
index 987796efd1e..94709c5e575 100644
--- a/Master/texmf-dist/tex/generic/babel/nil.ldf
+++ b/Master/texmf-dist/tex/generic/babel/nil.ldf
@@ -33,7 +33,7 @@
%% extension |.ins|) which are part of the distribution.
%%
-\ProvidesLanguage{nil}[2024/03/29 v24.3 Nil language]
+\ProvidesLanguage{nil}[2024/04/20 v24.4 Nil language]
\LdfInit{nil}{datenil}
\ifx\l@nil\@undefined
\newlanguage\l@nil
diff --git a/Master/texmf-dist/tex/generic/babel/xebabel.def b/Master/texmf-dist/tex/generic/babel/xebabel.def
index e1f5387a0ef..7a667481643 100644
--- a/Master/texmf-dist/tex/generic/babel/xebabel.def
+++ b/Master/texmf-dist/tex/generic/babel/xebabel.def
@@ -46,6 +46,9 @@
\AddBabelHook{xetex}{stopcommands}{%
\xebbl@stop
\let\xebbl@stop\relax}
+\def\bbl@input@classes{% Used in CJK intraspaces
+ \input{load-unicode-xetex-classes.tex}%
+ \let\bbl@input@classes\relax}
\def\bbl@intraspace#1 #2 #3\@@{%
\bbl@csarg\gdef{xeisp@\languagename}%
{\XeTeXlinebreakskip #1em plus #2em minus #3em\relax}}
@@ -90,7 +93,7 @@
\AtBeginDocument{\bbl@patchfont{\bbl@ispacesize}}%
\fi}%
\fi}
-\ifx\DisableBabelHook\@undefined\endinput\fi
+\ifx\DisableBabelHook\@undefined\endinput\fi %%%% TODO: why
\AddBabelHook{babel-fontspec}{afterextras}{\bbl@switchfont}
\AddBabelHook{babel-fontspec}{beforestart}{\bbl@ckeckstdfonts}
\DisableBabelHook{babel-fontspec}
@@ -302,7 +305,7 @@
\XeTeXcharclass`#1 \bbl@tempc
\fi
\count@`#1\relax}
-\newcommand\IfBabelIntercharT[1]{%
+\newcommand\bbl@ifinterchar[1]{%
\let\bbl@tempa\@gobble % Assume to ignore
\edef\bbl@tempb{\zap@space#1 \@empty}%
\ifx\bbl@KVP@interchar\@nnil\else
@@ -314,6 +317,8 @@
\fi}%
\fi
\bbl@tempa}
+\newcommand\IfBabelIntercharT[2]{%
+ \bbl@carg\bbl@add{bbl@icsave@\CurrentOption}{\bbl@ifinterchar{#1}{#2}}}%
\newcommand\babelcharclass[3]{%
\EnableBabelHook{babel-interchar}%
\bbl@csarg\newXeTeXintercharclass{xeclass@#2@#1}%