diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel')
36 files changed, 763 insertions, 127 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua b/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua index a0bfe0b3a7c..371a4ce840c 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua +++ b/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua @@ -7,7 +7,7 @@ -- babel.dtx (with options: `basic-r') -- -- --- Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +-- Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. -- Copyright (C) 1989-2012 Johannes L. Braams and -- any individual authors listed elsewhere in this file. -- All rights reserved. @@ -42,7 +42,7 @@ local ranges = Babel.ranges local DIR = node.id("dir") local function dir_mark(head, from, to, outer) - dir = (outer == 'r') and 'TLT' or 'TRT' -- ie, reverse + dir = (outer == 'r') and 'TLT' or 'TRT' -- i.e., reverse local d = node.new(DIR) d.dir = '+' .. dir node.insert_before(head, from, d) diff --git a/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua b/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua index 8b3ef3e62e4..81f88aa84be 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua +++ b/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua @@ -7,7 +7,7 @@ -- babel.dtx (with options: `basic') -- -- --- Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +-- Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. -- Copyright (C) 1989-2012 Johannes L. Braams and -- any individual authors listed elsewhere in this file. -- All rights reserved. @@ -32,7 +32,7 @@ -- and covered by LPPL is defined by the unpacking scripts (with -- extension |.ins|) which are part of the distribution. -- --- eg, Babel.fontmap[1][<prefontid>]=<dirfontid> +-- e.g., Babel.fontmap[1][<prefontid>]=<dirfontid> Babel.fontmap = Babel.fontmap or {} Babel.fontmap[0] = {} -- l @@ -60,7 +60,7 @@ local GLYPH = node.id('glyph') local function insert_implicit(head, state, outer) local new_state = state if state.sim and state.eim and state.sim ~= state.eim then - dir = ((outer == 'r') and 'TLT' or 'TRT') -- ie, reverse + dir = ((outer == 'r') and 'TLT' or 'TRT') -- i.e., reverse local d = node.new(DIR) d.dir = '+' .. dir node.insert_before(head, state.sim, d) @@ -444,9 +444,7 @@ function Babel.bidi(head, ispar, hdir) end head = node.prev(head) or head - - -------------- FIX HYPERLINKS ---------------- - + --- FIXES --- if has_hyperlink then local flag, linking = 0, 0 for item in node.traverse(head) do @@ -473,10 +471,23 @@ function Babel.bidi(head, ispar, hdir) end end + for item in node.traverse_id(10, head) do + local p = item + local flag = false + while p.prev and p.prev.id == 14 do + flag = true + p = p.prev + end + if flag then + node.insert_before(head, p, node.copy(item)) + node.remove(head,item) + end + end + return head end -- Make sure anything is marked as 'bidi done' (including nodes inserted --- after the babel algorithm). +-- after the babel algorithm). 128 = 1000 0000. function Babel.unset_atdir(head) local ATDIR = Babel.attr_dir for item in node.traverse(head) do diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-buddhist.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-buddhist.tex index 837d83ff400..533ab3eee1c 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-buddhist.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-buddhist.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-buddhist') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-chinese.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-chinese.tex index cff847e02c4..be005c65e4d 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-chinese.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-chinese.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-chinese') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-coptic.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-coptic.tex index 43d23a1479e..df61580aeb9 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-coptic.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-coptic.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-coptic') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-ethiopic.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-ethiopic.tex index 95a8ef64656..4d1612ac82c 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-ethiopic.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-ethiopic.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-ethiopic') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-hebrew.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-hebrew.tex index 315180da5af..c0a2ad7ad86 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-hebrew.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-hebrew.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-hebrew') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-islamic.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-islamic.tex index 28c5dd9dc03..a2b0e493b33 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-islamic.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-islamic.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-islamic') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-persian.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-persian.tex index f896cbeba63..64c7ec3cb08 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-persian.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-persian.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-persian') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua b/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua index 80ec84ca1ae..f7aebcda5e8 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua +++ b/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua @@ -7,7 +7,7 @@ -- babel.dtx (with options: `bididata') -- -- --- Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +-- Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. -- Copyright (C) 1989-2012 Johannes L. Braams and -- any individual authors listed elsewhere in this file. -- All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua b/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua index 49623e9f9ce..7cf177f8d94 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua +++ b/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua @@ -7,7 +7,7 @@ -- babel.dtx (with options: `cjkdata') -- -- --- Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +-- Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. -- Copyright (C) 1989-2012 Johannes L. Braams and -- any individual authors listed elsewhere in this file. -- All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/babel-transforms.lua b/Master/texmf-dist/tex/generic/babel/babel-transforms.lua index 3e14af381d0..678f30ff2cf 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-transforms.lua +++ b/Master/texmf-dist/tex/generic/babel/babel-transforms.lua @@ -7,7 +7,7 @@ -- babel.dtx (with options: `transforms') -- -- --- Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +-- Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. -- Copyright (C) 1989-2012 Johannes L. Braams and -- any individual authors listed elsewhere in this file. -- All rights reserved. @@ -44,6 +44,15 @@ function Babel.tovalue(v) end end +Babel.attr_hboxed = luatexbase.registernumber'bbl@attr@hboxed' + +function Babel.set_hboxed(head, gc) + for item in node.traverse(head) do + node.set_attribute(item, Babel.attr_hboxed, 1) + end + return head +end + Babel.fetch_subtext = {} Babel.ignore_pre_char = function(node) @@ -76,7 +85,11 @@ Babel.fetch_subtext[0] = function(head) if Babel.ignore_pre_char(item) then word_string = word_string .. Babel.us_char else - word_string = word_string .. unicode.utf8.char(item.char) + if node.has_attribute(item, Babel.attr_hboxed) then + word_string = word_string .. Babel.us_char + else + word_string = word_string .. unicode.utf8.char(item.char) + end end word_nodes[#word_nodes+1] = item else @@ -84,7 +97,11 @@ Babel.fetch_subtext[0] = function(head) end elseif item.id == 12 and item.subtype == 13 then - word_string = word_string .. ' ' + if node.has_attribute(item, Babel.attr_hboxed) then + word_string = word_string .. Babel.us_char + else + word_string = word_string .. ' ' + end word_nodes[#word_nodes+1] = item -- Ignore leading unrecognized nodes, too. @@ -125,7 +142,11 @@ Babel.fetch_subtext[1] = function(head) if item.lang == lang or lang == nil then if (item.char ~= 124) and (item.char ~= 61) then -- not =, not | lang = lang or item.lang - word_string = word_string .. unicode.utf8.char(item.char) + if node.has_attribute(item, Babel.attr_hboxed) then + word_string = word_string .. Babel.us_char + else + word_string = word_string .. unicode.utf8.char(item.char) + end word_nodes[#word_nodes+1] = item end else @@ -133,11 +154,19 @@ Babel.fetch_subtext[1] = function(head) end elseif item.id == 7 and item.subtype == 2 then - word_string = word_string .. '=' + if node.has_attribute(item, Babel.attr_hboxed) then + word_string = word_string .. Babel.us_char + else + word_string = word_string .. '=' + end word_nodes[#word_nodes+1] = item elseif item.id == 7 and item.subtype == 3 then - word_string = word_string .. '|' + if node.has_attribute(item, Babel.attr_hboxed) then + word_string = word_string .. Babel.us_char + else + word_string = word_string .. '|' + end word_nodes[#word_nodes+1] = item -- (1) Go to next word if nothing was found, and (2) implicitly @@ -442,7 +471,7 @@ function Babel.hyphenate_replace(head, mode) d.attr = item_base.attr head, new = node.insert_before(head, item, d) - end -- ie replacement cases + end -- i.e., replacement cases -- Shared by disc, space(factor), kern, node and penalty. if sc == 1 then diff --git a/Master/texmf-dist/tex/generic/babel/babel.def b/Master/texmf-dist/tex/generic/babel/babel.def index 04d0bc4372d..c4eb33d3b58 100644 --- a/Master/texmf-dist/tex/generic/babel/babel.def +++ b/Master/texmf-dist/tex/generic/babel/babel.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `core') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -39,7 +39,7 @@ \wlog{File: #1 #4 #3 <#2>}% \let\ProvidesFile\@undefined} \fi -\ProvidesFile{babel.def}[2024/11/30 v24.14 Babel common definitions] +\ProvidesFile{babel.def}[2025/01/01 v25.1 Babel common definitions] \ifx\AtBeginDocument\@undefined \def\@empty{} \def\loadlocalcfg#1{% @@ -595,8 +595,8 @@ \toks@\expandafter{\bbl@tempc#3}% \expandafter\edef\csname extras\languagename\endcsname{\the\toks@}% \fi} -\def\bbl@version{24.14} -\def\bbl@date{2024/11/30} +\def\bbl@version{25.1} +\def\bbl@date{2025/01/01} \ifx\language\@undefined \csname newcount\endcsname\language \fi @@ -717,7 +717,7 @@ \bbl@ifunset{bbl@id@@\languagename}% {\count@\bbl@id@last\relax \advance\count@\@ne - \bbl@csarg\chardef{id@@\languagename}\count@ + \global\bbl@csarg\chardef{id@@\languagename}\count@ \edef\bbl@id@last{\the\count@}% \ifcase\bbl@engine\or \directlua{ @@ -841,7 +841,7 @@ \bbl@xin@{/u}{/\bbl@tempa}% \ifin@\else\bbl@xin@{/e}{/\bbl@tempa}\fi % elongated forms \ifin@\else\bbl@xin@{/k}{/\bbl@tempa}\fi % only kashida - \ifin@\else\bbl@xin@{/p}{/\bbl@tempa}\fi % padding (eg, Tibetan) + \ifin@\else\bbl@xin@{/p}{/\bbl@tempa}\fi % padding (e.g., Tibetan) \ifin@\else\bbl@xin@{/v}{/\bbl@tempa}\fi % variable font % hyphenation - save mins \babel@savevariable\lefthyphenmin @@ -1931,12 +1931,12 @@ \def\bbl@sctest{% \bbl@xin@{,\bbl@opt@strings,}{,\bbl@sc@label,\bbl@sc@fontenc,}}% \fi - \ifx\bbl@opt@strings\@nnil % ie, no strings key -> defaults - \else\ifx\bbl@opt@strings\relax % ie, strings=encoded + \ifx\bbl@opt@strings\@nnil % i.e., no strings key -> defaults + \else\ifx\bbl@opt@strings\relax % i.e., strings=encoded \let\AfterBabelCommands\bbl@aftercmds \let\SetString\bbl@setstring \let\bbl@stringdef\bbl@encstring - \else % ie, strings=value + \else % i.e., strings=value \bbl@sctest \ifin@ \let\AfterBabelCommands\bbl@aftercmds @@ -1980,10 +1980,10 @@ \endgroup \bbl@scafter} \let\bbl@endcommands\EndBabelCommands -\def\bbl@setstring#1#2{% eg, \prefacename{<string>} +\def\bbl@setstring#1#2{% e.g., \prefacename{<string>} \bbl@forlang\bbl@tempa{% \edef\bbl@LC{\bbl@tempa\bbl@stripslash#1}% - \bbl@ifunset{\bbl@LC}% eg, \germanchaptername + \bbl@ifunset{\bbl@LC}% e.g., \germanchaptername {\bbl@exp{% \global\\\bbl@add\<\bbl@G\bbl@tempa>{\\\bbl@scset\\#1\<\bbl@LC>}}}% {}% diff --git a/Master/texmf-dist/tex/generic/babel/babel.sty b/Master/texmf-dist/tex/generic/babel/babel.sty index 8cb741d94ff..ed9d26229e1 100644 --- a/Master/texmf-dist/tex/generic/babel/babel.sty +++ b/Master/texmf-dist/tex/generic/babel/babel.sty @@ -7,7 +7,7 @@ %% babel.dtx (with options: `package') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -34,7 +34,7 @@ %% \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{babel}% - [2024/11/30 v24.14 + [2025/01/01 v25.1 The multilingual framework for pdfLaTeX, LuaLaTeX and XeLaTeX] \@ifpackagewith{babel}{debug} {\providecommand\bbl@trace[1]{\message{^^J[ #1 ]}}% @@ -466,8 +466,8 @@ \expandafter\@secondoftwo \fi} \fi -\def\bbl@version{24.14} -\def\bbl@date{2024/11/30} +\def\bbl@version{25.1} +\def\bbl@date{2025/01/01} \ifx\language\@undefined \csname newcount\endcsname\language \fi @@ -588,7 +588,7 @@ \bbl@ifunset{bbl@id@@\languagename}% {\count@\bbl@id@last\relax \advance\count@\@ne - \bbl@csarg\chardef{id@@\languagename}\count@ + \global\bbl@csarg\chardef{id@@\languagename}\count@ \edef\bbl@id@last{\the\count@}% \ifcase\bbl@engine\or \directlua{ @@ -712,7 +712,7 @@ \bbl@xin@{/u}{/\bbl@tempa}% \ifin@\else\bbl@xin@{/e}{/\bbl@tempa}\fi % elongated forms \ifin@\else\bbl@xin@{/k}{/\bbl@tempa}\fi % only kashida - \ifin@\else\bbl@xin@{/p}{/\bbl@tempa}\fi % padding (eg, Tibetan) + \ifin@\else\bbl@xin@{/p}{/\bbl@tempa}\fi % padding (e.g., Tibetan) \ifin@\else\bbl@xin@{/v}{/\bbl@tempa}\fi % variable font % hyphenation - save mins \babel@savevariable\lefthyphenmin @@ -1802,12 +1802,12 @@ \def\bbl@sctest{% \bbl@xin@{,\bbl@opt@strings,}{,\bbl@sc@label,\bbl@sc@fontenc,}}% \fi - \ifx\bbl@opt@strings\@nnil % ie, no strings key -> defaults - \else\ifx\bbl@opt@strings\relax % ie, strings=encoded + \ifx\bbl@opt@strings\@nnil % i.e., no strings key -> defaults + \else\ifx\bbl@opt@strings\relax % i.e., strings=encoded \let\AfterBabelCommands\bbl@aftercmds \let\SetString\bbl@setstring \let\bbl@stringdef\bbl@encstring - \else % ie, strings=value + \else % i.e., strings=value \bbl@sctest \ifin@ \let\AfterBabelCommands\bbl@aftercmds @@ -1851,10 +1851,10 @@ \endgroup \bbl@scafter} \let\bbl@endcommands\EndBabelCommands -\def\bbl@setstring#1#2{% eg, \prefacename{<string>} +\def\bbl@setstring#1#2{% e.g., \prefacename{<string>} \bbl@forlang\bbl@tempa{% \edef\bbl@LC{\bbl@tempa\bbl@stripslash#1}% - \bbl@ifunset{\bbl@LC}% eg, \germanchaptername + \bbl@ifunset{\bbl@LC}% e.g., \germanchaptername {\bbl@exp{% \global\\\bbl@add\<\bbl@G\bbl@tempa>{\\\bbl@scset\\#1\<\bbl@LC>}}}% {}% @@ -2338,7 +2338,7 @@ \ifx\bbl@latinarabic\@undefined \expandafter\let\expandafter\@arabic \csname bbl@counter@\languagename\endcsname - \else % ie, if layout=counters, which redefines \@arabic + \else % i.e., if layout=counters, which redefines \@arabic \expandafter\let\expandafter\bbl@latinarabic \csname bbl@counter@\languagename\endcsname \fi @@ -2787,11 +2787,11 @@ \let\bbl@inikv@numbers\bbl@inikv \def\bbl@maybextx{-\bbl@csarg\ifx{extx@\languagename}\@empty x-\fi} \def\bbl@inikv@characters#1#2{% - \bbl@ifsamestring{#1}{casing}% eg, casing = uV + \bbl@ifsamestring{#1}{casing}% e.g., casing = uV {\bbl@exp{% \\\g@addto@macro\\\bbl@release@casing{% \\\bbl@casemapping{}{\languagename}{\unexpanded{#2}}}}}% - {\in@{$casing.}{$#1}% eg, casing.Uv = uV + {\in@{$casing.}{$#1}% e.g., casing.Uv = uV \ifin@ \lowercase{\def\bbl@tempb{#1}}% \bbl@replace\bbl@tempb{casing.}{}% @@ -2910,7 +2910,7 @@ \else % % The following code is still under study. You can test it and make - % suggestions. Eg, enumerate.2 = ([enumi]).([enumii]). It's + % suggestions. E.g., enumerate.2 = ([enumi]).([enumii]). It's % language dependent. \in@{enumerate.}{#1}% \ifin@ @@ -2990,7 +2990,7 @@ {\bbl@ld@calendar}\bbl@they\bbl@them\bbl@thed \fi \fi - \@nameuse{bbl@precalendar}% Remove, eg, +, -civil (-ca-islamic) + \@nameuse{bbl@precalendar}% Remove, e.g., +, -civil (-ca-islamic) \edef\bbl@calendar{% Used in \month..., too \bbl@ld@calendar \ifx\bbl@ld@variant\@empty\else @@ -3195,19 +3195,19 @@ {\bbl@input@texini{#1}}} \def\bbl@setdigits#1#2#3#4#5{% \bbl@exp{% - \def\<\languagename digits>####1{% ie, \langdigits + \def\<\languagename digits>####1{% i.e., \langdigits \<bbl@digits@\languagename>####1\\\@nil}% \let\<bbl@cntr@digits@\languagename>\<\languagename digits>% - \def\<\languagename counter>####1{% ie, \langcounter + \def\<\languagename counter>####1{% i.e., \langcounter \\\expandafter\<bbl@counter@\languagename>% \\\csname c@####1\endcsname}% - \def\<bbl@counter@\languagename>####1{% ie, \bbl@counter@lang + \def\<bbl@counter@\languagename>####1{% i.e., \bbl@counter@lang \\\expandafter\<bbl@digits@\languagename>% \\\number####1\\\@nil}}% \def\bbl@tempa##1##2##3##4##5{% \bbl@exp{% Wow, quite a lot of hashes! :-( \def\<bbl@digits@\languagename>########1{% - \\\ifx########1\\\@nil % ie, \bbl@digits@lang + \\\ifx########1\\\@nil % i.e., \bbl@digits@lang \\\else \\\ifx0########1#1% \\\else\\\ifx1########1#2% @@ -3290,7 +3290,7 @@ \fi \expandafter\bbl@casemapping@ii\bbl@tempb\@@} \def\bbl@casemapping@ii#1#2#3\@@{% - \in@{#1#3}{<>}% ie, if <u>, <l>, <t> + \in@{#1#3}{<>}% i.e., if <u>, <l>, <t> \ifin@ \edef\bbl@tempe{% \if#2u1 \else\if#2l2 \else\if#2t3 \fi\fi\fi}% @@ -3537,7 +3537,7 @@ \@namedef{bbl@ADJ@select.encoding@off}{% \let\bbl@encoding@select@off\@empty} \bbl@trace{Cross referencing macros} -\ifx\bbl@opt@safe\@empty\else % ie, if 'ref' and/or 'bib' +\ifx\bbl@opt@safe\@empty\else % i.e., if 'ref' and/or 'bib' \def\@newl@bel#1#2#3{% {\@safe@activestrue \bbl@ifunset{#1@#2}% @@ -4076,7 +4076,7 @@ \edef\bbl@tempa{\bbl@tempf,\bbl@language@opts}% \bbl@foreach\bbl@tempa{\edef\bbl@tempb{#1,\bbl@tempb}}% \bbl@foreach\bbl@tempb{% \bbl@tempb is a reversed list - \ifx\bbl@opt@main\@nnil % ie, if not yet assigned + \ifx\bbl@opt@main\@nnil % i.e., if not yet assigned \ifodd\bbl@iniflag % = *= \IfFileExists{babel-#1.tex}{\def\bbl@opt@main{#1}}{}% \else % n += @@ -4087,7 +4087,7 @@ \else \bbl@info{Main language set with 'main='. Except if you have\\% problems, prefer the default mechanism for setting\\% - the main language, ie, as the last declared.\\% + the main language, i.e., as the last declared.\\% Reported} \fi \ifx\bbl@opt@main\@nnil\else diff --git a/Master/texmf-dist/tex/generic/babel/blplain.tex b/Master/texmf-dist/tex/generic/babel/blplain.tex index e6a4076d6d1..a2c33d76ef7 100644 --- a/Master/texmf-dist/tex/generic/babel/blplain.tex +++ b/Master/texmf-dist/tex/generic/babel/blplain.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `blplain') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/bplain.tex b/Master/texmf-dist/tex/generic/babel/bplain.tex index 0483d7eb722..c9820aeaca9 100644 --- a/Master/texmf-dist/tex/generic/babel/bplain.tex +++ b/Master/texmf-dist/tex/generic/babel/bplain.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `bplain') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/errbabel.def b/Master/texmf-dist/tex/generic/babel/errbabel.def index 9674a0fbf26..3d0106e31b1 100644 --- a/Master/texmf-dist/tex/generic/babel/errbabel.def +++ b/Master/texmf-dist/tex/generic/babel/errbabel.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `errors') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/hyphen.cfg b/Master/texmf-dist/tex/generic/babel/hyphen.cfg index edf6cd1f5c6..4eff4d560b7 100644 --- a/Master/texmf-dist/tex/generic/babel/hyphen.cfg +++ b/Master/texmf-dist/tex/generic/babel/hyphen.cfg @@ -7,7 +7,7 @@ %% babel.dtx (with options: `patterns') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -37,10 +37,10 @@ \wlog{File: #1 #4 #3 <#2>}% \let\ProvidesFile\@undefined} \fi -\ProvidesFile{hyphen.cfg}[2024/11/30 v24.14 Babel hyphens] +\ProvidesFile{hyphen.cfg}[2025/01/01 v25.1 Babel hyphens] \xdef\bbl@format{\jobname} -\def\bbl@version{24.14} -\def\bbl@date{2024/11/30} +\def\bbl@version{25.1} +\def\bbl@date{2025/01/01} \ifx\AtBeginDocument\@undefined \def\@empty{} \fi @@ -132,7 +132,7 @@ \righthyphenmin##2\relax}% \def\selectlanguage{% \errhelp{Selecting a language requires a package supporting it}% - \errmessage{Not loaded}}% + \errmessage{No multilingual package has been loaded}}% \let\foreignlanguage\selectlanguage \let\otherlanguage\selectlanguage \expandafter\let\csname otherlanguage*\endcsname\selectlanguage diff --git a/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb.ini b/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb.ini index 627d3defb26..3fa852ac2b7 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb.ini @@ -12,11 +12,11 @@ [identification] charset = utf8 -version = 1.7 -date = 2022-12-08 +version = 1.8 +date = 2024-12-08 name.local = کوردیی ناوەندی name.english = Central Kurdish -name.babel = sorani centralkurdish +name.babel = centralkurdish sorani name.polyglossia = kurdish tag.bcp47 = ckb language.tag.bcp47 = ckb @@ -135,6 +135,36 @@ months.narrow.10 = خ months.narrow.11 = ڕ months.narrow.12 = ڕ +[date.persian] +date.long = +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 = + +[date.islamic] +date.long = +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 = + [time.gregorian] time.medium = [h]:[mm]:[ss] [a] time.short = [h]:[mm] [a] diff --git a/Master/texmf-dist/tex/generic/babel/locale/isv/babel-interslavic.tex b/Master/texmf-dist/tex/generic/babel/locale/isv/babel-interslavic.tex new file mode 100644 index 00000000000..95f382ed293 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/isv/babel-interslavic.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{isv}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/isv/babel-isv.ini b/Master/texmf-dist/tex/generic/babel/locale/isv/babel-isv.ini new file mode 100644 index 00000000000..695ad5ed9b7 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/isv/babel-isv.ini @@ -0,0 +1,139 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * babel language styles (license LPPL): +; https://www.ctan.org/pkg/babel-contrib +; Data contributed by Adiee5 + + +[identification] +charset = utf8 +version = 1.0 +date = 2024-12-18 +name.local = Medžuslovjansky +name.english = Interslavic +name.babel = interslavic +tag.bcp47 = isv +language.tag.bcp47 = isv +tag.bcp47.likely = +tag.opentype = ISV +script.name = Latin +script.tag.bcp47 = Latn +script.tag.opentype = latn +level = 1 +encodings = T1 OT1 + +[captions] +preface = Prědslovje +ref = Literatura +abstract = Rezjume +bib = Bibliografija +chapter = Glava +appendix = Dodatok +contents = Sodržanje +listfigure = Spisok ilustracij +listtable = Spisok tabel +index = Indeks +figure = Ilustracija +table = Tabela +part = Čest +encl = Priloga +cc = Kopije +headto = Do +page = Stranica +see = uvidi +also = uvidi takože +proof = Dokaz +glossary = Slovnik + +[captions.licr] +preface = Pr\v edslovje +ref = Literatura +abstract = Rezjume +bib = Bibliografija +chapter = Glava +appendix = Dodatok +contents = Sodr\v zanje +listfigure = Spisok ilustracij +listtable = Spisok tabel +index = Indeks +figure = Ilustracija +table = Tabela +part = \v Cest +encl = Priloga +cc = Kopije +headto = Do +page = Stranica +see = uvidi +also = uvidi tako\v ze +proof = Dokaz +glossary = Slovnik + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +months.wide.1 = januara +months.wide.2 = fevruara +months.wide.3 = marca +months.wide.4 = aprilja +months.wide.5 = maja +months.wide.6 = junija +months.wide.7 = julija +months.wide.8 = avgusta +months.wide.9 = septembra +months.wide.10 = oktobra +months.wide.11 = novembra +months.wide.12 = dekembra + +[date.gregorian.licr] +months.wide.1 = januara +months.wide.2 = fevruara +months.wide.3 = marca +months.wide.4 = aprilja +months.wide.5 = maja +months.wide.6 = junija +months.wide.7 = julija +months.wide.8 = avgusta +months.wide.9 = septembra +months.wide.10 = oktobra +months.wide.11 = novembra +months.wide.12 = dekembra + +[time.gregorian] +time.medium = +time.short = + +[typography] +frenchspacing = yes +; Tentative setting: +hyphenrules = czech +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = +auxiliary = +exemplarCharacters = +index = +punctuation = + +[numbers] +defaultNumberingSystem = +minimumGroupingDigits = +decimal = +exponential = +group = +infinity = +list = +minusSign = +nan = +perMille = +percentSign = +plusSign = +superscriptingExponent = diff --git a/Master/texmf-dist/tex/generic/babel/locale/ku/babel-ku.ini b/Master/texmf-dist/tex/generic/babel/locale/ku/babel-ku.ini new file mode 100644 index 00000000000..9bd0225fe7b --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/ku/babel-ku.ini @@ -0,0 +1,212 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * babel language styles (license LPPL): +; https://www.ctan.org/pkg/babel-contrib +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 1.0 +date = 2024-12-06 +name.local = kurdî (kurmancî) +name.english = Kurdish +name.babel = kurdish kurmanji +name.polyglossia = kurdish +tag.bcp47 = ku +language.tag.bcp47 = ku +tag.opentype = KUR +script.name = Latin +script.tag.bcp47 = Latn +script.tag.opentype = latn +polyglossia.variant = kurmanji +level = 1 +encodings = +derivate = no + +[captions] +preface = Peşgotin +ref = Pirtuken bijartî +abstract = Kurtebîr +bib = Çavkanîya Pirtukan +chapter = Serê +appendix = Tebînîya +contents = Navêrok +listfigure = Hejmara Dimena +listtable = Hejmara Kevalen +index = Endeks +figure = Dimenê +table = Kevala +part = Bêşa +encl = Dumahik +cc = Belavker +headto = Ji bo +page = Rûpelê +see = binêra +also = le vêya ji binêra +proof = Delîl +glossary = Çavkanîya lêkolînê + +[captions.licr] +preface = Pe\c sgotin +ref = Pirtuken\space bijart\^\i +abstract = Kurteb\^\i r +bib = \c Cavkan\^\i ya\space Pirtukan +chapter = Ser\^e +appendix = Teb\^\i n\^\i ya +contents = Nav\^erok +listfigure = Hejmara\space Dimena +listtable = Hejmara\space Kevalen +index = Endeks +figure = Dimen\^e +table = Kevala +part = B\^e\c sa +encl = Dumahik +cc = Belavker +headto = Ji\space bo +page = R\^upel\^e +see = bin\^era +also = le\space v\^eya\space ji\space bin\^era +proof = Del\^\i l +glossary = \c Cavkan\^\i ya\space l\^ekol\^\i n\^e + +[date.gregorian] +date.long = [d]ê [MMMM]a [y]an +date.short = [dd].[MM].[y] +months.wide.1 = rêbendan +months.wide.2 = sibat +months.wide.3 = adar +months.wide.4 = nîsan +months.wide.5 = gulan +months.wide.6 = hezîran +months.wide.7 = tîrmeh +months.wide.8 = tebax +months.wide.9 = îlon +months.wide.10 = cotmeh +months.wide.11 = mijdar +months.wide.12 = berfanbar +months.narrow.1 = +months.narrow.2 = +months.narrow.3 = +months.narrow.4 = +months.narrow.5 = +months.narrow.6 = +months.narrow.7 = +months.narrow.8 = +months.narrow.9 = +months.narrow.10 = +months.narrow.11 = +months.narrow.12 = +days.wide.mon = duşem +days.wide.tue = sêşem +days.wide.wed = çarşem +days.wide.thu = pêncşem +days.wide.fri = înî +days.wide.sat = şemî +days.wide.sun = yekşem +days.abbreviated.mon = dşm +days.abbreviated.tue = sşm +days.abbreviated.wed = çşm +days.abbreviated.thu = pşm +days.abbreviated.fri = +days.abbreviated.sat = şem +days.abbreviated.sun = yşm +days.narrow.mon = +days.narrow.tue = +days.narrow.wed = +days.narrow.thu = +days.narrow.fri = +days.narrow.sat = +days.narrow.sun = +dayPeriods.abbreviated.am = BN +dayPeriods.abbreviated.pm = PN +dayPeriods.narrow.am = bn +dayPeriods.narrow.pm = pn +dayPeriods.wide.am = +dayPeriods.wide.pm = + +[date.gregorian.licr] +date.long = [d]\^e [MMMM]a [y]an +months.wide.1 = r\^ebendan +months.wide.2 = sibat +months.wide.3 = adar +months.wide.4 = n\^\i san +months.wide.5 = gulan +months.wide.6 = hez\^\i ran +months.wide.7 = t\^\i rmeh +months.wide.8 = tebax +months.wide.9 = \^\i lon +months.wide.10 = cotmeh +months.wide.11 = mijdar +months.wide.12 = berfanbar + +[date.persian] +date.long = +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 = + +[date.islamic] +date.long = +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 = + +[time.gregorian] +time.medium = [h]:[mm]:[ss] [a] +time.short = [h]:[mm] [a] + +[typography] +frenchspacing = yes +hyphenrules = kurmanji +lefthyphenmin = 2 +righthyphenmin = 2 +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = +auxiliary = [áàăâåäãā æ èĕëē é ìĭïī í ñ óòŏôøō œ ß ŭū úù ÿ] +exemplarCharacters = [a b c ç d e ê f g h i î j k l m n o p q r s ş t u û v w x y z] +index = [A B C Ç D E Ê F G H I Î J K L M N O P Q R S Ş T U Û V W X Y Z] +punctuation = [\\- ‐‑ – — , ; \\: ! ? . … '‘’ \"“” ( ) \\[ \\] § @ * / \\& # † ‡ ′ ″] + +[numbers] +defaultNumberingSystem = latn +minimumGroupingDigits = 1 +decimal = , +exponential = E +group = . +infinity = ∞ +list = ; +minusSign = - +nan = NaN +perMille = ‰ +percentSign = % +plusSign = + +superscriptingExponent = × diff --git a/Master/texmf-dist/tex/generic/babel/locale/ku/babel-kurdish.tex b/Master/texmf-dist/tex/generic/babel/locale/ku/babel-kurdish.tex new file mode 100644 index 00000000000..e9f834bdc99 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/ku/babel-kurdish.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{ku}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini index 33c381bbb67..03bb7fb075f 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.12 -date = 2023-10-24 +version = 1.13 +date = 2024-12-28 name.local = 简体中文 name.english = Simplified Chinese name.opentype = Chinese Simplified @@ -237,3 +237,31 @@ fullwidth.lower.alpha = a b c d e f g h i j k l m n fullwidth.upper.alpha = A B C D E F G H I J K L M N O P Q R S T U V W X Y Z date.day = 初一 初二 初三 初四 初五 初六 初七 初八 初九 初十 十一 十二 十三 十四 十五 十六 十七 十八 十九 二十 廿一 廿二 廿三 廿四 廿五 廿六 廿七 廿八 廿九 三十 +[transforms.prehyphenation] +spacing.basic.1.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[、。,.・:!?)]}〉》」』】〕〗〙〛”〞]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『【〔〖〘〚“〝] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini index 56067ebb86d..ecb56844074 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.12 -date = 2023-10-24 +version = 1.13 +date = 2024-12-28 name.local = 简体中文 name.english = Simplified Chinese name.opentype = Chinese Simplified @@ -237,3 +237,31 @@ fullwidth.lower.alpha = a b c d e f g h i j k l m n fullwidth.upper.alpha = A B C D E F G H I J K L M N O P Q R S T U V W X Y Z date.day = 初一 初二 初三 初四 初五 初六 初七 初八 初九 初十 十一 十二 十三 十四 十五 十六 十七 十八 十九 二十 廿一 廿二 廿三 廿四 廿五 廿六 廿七 廿八 廿九 三十 +[transforms.prehyphenation] +spacing.basic.1.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[、。,.・:!?)]}〉》」』】〕〗〙〛”〞]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『【〔〖〘〚“〝] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini index c2b08b3ee47..dc26e9f0118 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.12 -date = 2023-10-24 +version = 1.13 +date = 2024-12-28 name.local = 简体中文 name.english = Simplified Chinese name.opentype = Chinese Simplified @@ -237,4 +237,32 @@ fullwidth.lower.alpha = a b c d e f g h i j k l m n fullwidth.upper.alpha = A B C D E F G H I J K L M N O P Q R S T U V W X Y Z date.day = 初一 初二 初三 初四 初五 初六 初七 初八 初九 初十 十一 十二 十三 十四 十五 十六 十七 十八 十九 二十 廿一 廿二 廿三 廿四 廿五 廿六 廿七 廿八 廿九 三十 +[transforms.prehyphenation] +spacing.basic.1.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[、。,.・:!?)]}〉》」』】〕〗〙〛”〞]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『【〔〖〘〚“〝] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini index 8c7437a953d..ee0252dd60f 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini @@ -11,8 +11,8 @@ [identification] charset = utf8 -version = 1.14 -date = 2023-10-24 +version = 1.15 +date = 2024-12-28 name.local = 简体中文 name.english = Simplified Chinese name.opentype = Chinese Simplified @@ -240,3 +240,31 @@ fullwidth.lower.alpha = a b c d e f g h i j k l m n fullwidth.upper.alpha = A B C D E F G H I J K L M N O P Q R S T U V W X Y Z date.day = 初一 初二 初三 初四 初五 初六 初七 初八 初九 初十 十一 十二 十三 十四 十五 十六 十七 十八 十九 二十 廿一 廿二 廿三 廿四 廿五 廿六 廿七 廿八 廿九 三十 +[transforms.prehyphenation] +spacing.basic.1.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[、。,.・:!?)]}〉》」』】〕〗〙〛”〞]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『【〔〖〘〚“〝] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini index 8fc0abab80a..4a531ac4e66 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.12 -date = 2023-10-24 +version = 1.13 +date = 2024-12-28 name.local = 繁體中文 name.english = Traditional Chinese name.opentype = Chinese Traditional @@ -237,4 +237,32 @@ fullwidth.lower.alpha = a b c d e f g h i j k l m n fullwidth.upper.alpha = A B C D E F G H I J K L M N O P Q R S T U V W X Y Z date.day = 初一 初二 初三 初四 初五 初六 初七 初八 初九 初十 十一 十二 十三 十四 十五 十六 十七 十八 十九 二十 廿一 廿二 廿三 廿四 廿五 廿六 廿七 廿八 廿九 三十 +[transforms.prehyphenation] +spacing.basic.1.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[、。,.・:!?)]}〉》」』】〕〗〙〛”〞]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『【〔〖〘〚“〝] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini index 382daf0da07..7a05703f5cf 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.12 -date = 2023-10-24 +version = 1.13 +date = 2024-12-28 name.local = 繁體中文 name.english = Traditional Chinese name.opentype = Chinese Traditional @@ -237,4 +237,32 @@ fullwidth.lower.alpha = a b c d e f g h i j k l m n fullwidth.upper.alpha = A B C D E F G H I J K L M N O P Q R S T U V W X Y Z date.day = 初一 初二 初三 初四 初五 初六 初七 初八 初九 初十 十一 十二 十三 十四 十五 十六 十七 十八 十九 二十 廿一 廿二 廿三 廿四 廿五 廿六 廿七 廿八 廿九 三十 +[transforms.prehyphenation] +spacing.basic.1.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[、。,.・:!?)]}〉》」』】〕〗〙〛”〞]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『【〔〖〘〚“〝] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini index 98eb7401c64..5b95fa08949 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini @@ -11,8 +11,8 @@ [identification] charset = utf8 -version = 1.13 -date = 2023-10-24 +version = 1.14 +date = 2024-12-28 name.local = 繁體中文 name.english = Traditional Chinese name.opentype = Chinese Traditional @@ -242,4 +242,32 @@ fullwidth.lower.alpha = a b c d e f g h i j k l m n fullwidth.upper.alpha = A B C D E F G H I J K L M N O P Q R S T U V W X Y Z date.day = 初一 初二 初三 初四 初五 初六 初七 初八 初九 初十 十一 十二 十三 十四 十五 十六 十七 十八 十九 二十 廿一 廿二 廿三 廿四 廿五 廿六 廿七 廿八 廿九 三十 +[transforms.prehyphenation] +spacing.basic.1.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[、。,.・:!?)]}〉》」』】〕〗〙〛”〞]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『【〔〖〘〚“〝] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [、。,.・:;!?)]}〉》」』】〕〗〙〛”〞] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『【〔〖〘〚“〝]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/luababel.def b/Master/texmf-dist/tex/generic/babel/luababel.def index fb71f621a9c..9e79ae4a6f9 100644 --- a/Master/texmf-dist/tex/generic/babel/luababel.def +++ b/Master/texmf-dist/tex/generic/babel/luababel.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `luatex') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -452,7 +452,7 @@ quad = font.getfont(last_char.font).size for lg, rg in pairs(sea_ranges) do if last_char.char > rg[1] and last_char.char < rg[2] then - lg = lg:sub(1, 4) &% Remove trailing number of, eg, Cyrl1 + lg = lg:sub(1, 4) &% Remove trailing number of, e.g., Cyrl1 local intraspace = Babel.intraspaces[lg] local intrapenalty = Babel.intrapenalties[lg] local n @@ -561,6 +561,9 @@ func(head) end end + if Babel.set_hboxed then + Babel.set_hboxed(head) + end if Babel.sea_enabled then Babel.sea_disc_to_space(head) end @@ -874,18 +877,12 @@ end \DisableBabelHook{babel-fontspec} \@onlypreamble\babelfont \newcommand\babelfont[2][]{% 1=langs/scripts 2=fam - \bbl@foreach{#1}{% - \expandafter\ifx\csname date##1\endcsname\relax - \IfFileExists{babel-##1.tex}% - {\babelprovide{##1}}% - {}% - \fi}% - \edef\bbl@tempa{#1}% - \def\bbl@tempb{#2}% Used by \bbl@bblfont \ifx\fontspec\@undefined \usepackage{fontspec}% \fi \EnableBabelHook{babel-fontspec}% + \edef\bbl@tempa{#1}% + \def\bbl@tempb{#2}% Used by \bbl@bblfont \bbl@bblfont} \newcommand\bbl@bblfont[2][]{% 1=features 2=fontname, @font=rm|sf|tt \bbl@ifunset{\bbl@tempb family}% @@ -899,7 +896,7 @@ end \let\<bbl@\bbl@tempb dflt@\languagename>\<bbl@\bbl@tempb dflt@>% \\\bbl@font@set\<bbl@\bbl@tempb dflt@\languagename>% \<\bbl@tempb default>\<\bbl@tempb family>}}% - {\bbl@foreach\bbl@tempa{% ie bbl@rmdflt@lang / *scrt + {\bbl@foreach\bbl@tempa{% i.e., bbl@rmdflt@lang / *scrt \bbl@csarg\def{\bbl@tempb dflt@##1}{<>{#1}{#2}}}}}% \def\bbl@providefam#1{% \bbl@exp{% @@ -928,7 +925,7 @@ end {}}% \gdef\bbl@switchfont{% \bbl@ifunset{bbl@lsys@\languagename}{\bbl@provide@lsys{\languagename}}{}% - \bbl@exp{% eg Arabic -> arabic + \bbl@exp{% e.g., Arabic -> arabic \lowercase{\edef\\\bbl@tempa{\bbl@cl{sname}}}}% \bbl@foreach\bbl@font@fams{% \bbl@ifunset{bbl@##1dflt@\languagename}% (1) language? @@ -984,13 +981,13 @@ end \endgroup} \fi \fi -\def\bbl@font@set#1#2#3{% eg \bbl@rmdflt@lang \rmdefault \rmfamily +\def\bbl@font@set#1#2#3{% e.g., \bbl@rmdflt@lang \rmdefault \rmfamily \bbl@xin@{<>}{#1}% \ifin@ \bbl@exp{\\\bbl@fontspec@set\\#1\expandafter\@gobbletwo#1\\#3}% \fi \bbl@exp{% 'Unprotected' macros return prev values - \def\\#2{#1}% eg, \rmdefault{\bbl@rmdflt@lang} + \def\\#2{#1}% e.g., \rmdefault{\bbl@rmdflt@lang} \\\bbl@ifsamestring{#2}{\f@family}% {\\#3% \\\bbl@ifsamestring{\f@series}{\bfdefault}{\\\bfseries}{}% @@ -1001,11 +998,11 @@ end \edef\bbl@tempb{\bbl@stripslash#4/}% Catcodes hack (better pass it). \bbl@exp{\\\bbl@replace\\\bbl@tempb{\bbl@stripslash\family/}{}}% \let\bbl@mapselect\relax - \let\bbl@temp@fam#4% eg, '\rmfamily', to be restored below + \let\bbl@temp@fam#4% e.g., '\rmfamily', to be restored below \let#4\@empty % Make sure \renewfontfamily is valid \bbl@set@renderer \bbl@exp{% - \let\\\bbl@temp@pfam\<\bbl@stripslash#4\space>% eg, '\rmfamily ' + \let\\\bbl@temp@pfam\<\bbl@stripslash#4\space>% e.g., '\rmfamily ' \<keys_if_exist:nnF>{fontspec-opentype}{Script/\bbl@cl{sname}}% {\\\newfontscript{\bbl@cl{sname}}{\bbl@cl{sotf}}}% \<keys_if_exist:nnF>{fontspec-opentype}{Language/\bbl@cl{lname}}% @@ -1013,11 +1010,11 @@ end \\\renewfontfamily\\#4% [\bbl@cl{lsys},% xetex removes unknown features :-( \ifcase\bbl@engine\or RawFeature={family=\bbl@tempb},\fi - #2]}{#3}% ie \bbl@exp{..}{#3} + #2]}{#3}% i.e., \bbl@exp{..}{#3} \bbl@unset@renderer \begingroup #4% - \xdef#1{\f@family}% eg, \bbl@rmdflt@lang{FreeSerif(0)} + \xdef#1{\f@family}% e.g., \bbl@rmdflt@lang{FreeSerif(0)} \endgroup % TODO. Find better tests: \bbl@xin@{\string>\string s\string s\string u\string b\string*}% {\expandafter\meaning\csname TU/#1/bx/sc\endcsname}% @@ -1255,8 +1252,6 @@ end load( 'return Babel.locale_props'.. '[\the\csname bbl@id@@#3\endcsname].' .. d)() ) end ) - texio.write( '+++++' ) - texio.write( _VERSION ) rep, n = rep:gsub( '{([%a%-%.]+)|([%-%d%.]+)}', '{\the\csname bbl@id@@#3\endcsname,"%1",%2}') end @@ -1386,12 +1381,18 @@ end {\bbl@csarg\unsetattribute{ATR@#1@\languagename @}}} \def\bbl@activateposthyphen{% \let\bbl@activateposthyphen\relax + \ifx\bbl@attr@hboxed\@undefined + \newattribute\bbl@attr@hboxed + \fi \directlua{ require('babel-transforms.lua') Babel.linebreaking.add_after(Babel.post_hyphenate_replace) }} \def\bbl@activateprehyphen{% \let\bbl@activateprehyphen\relax + \ifx\bbl@attr@hboxed\@undefined + \newattribute\bbl@attr@hboxed + \fi \directlua{ require('babel-transforms.lua') Babel.linebreaking.add_before(Babel.pre_hyphenate_replace) diff --git a/Master/texmf-dist/tex/generic/babel/nil.ldf b/Master/texmf-dist/tex/generic/babel/nil.ldf index 629684d14b3..b8f15b9b568 100644 --- a/Master/texmf-dist/tex/generic/babel/nil.ldf +++ b/Master/texmf-dist/tex/generic/babel/nil.ldf @@ -7,7 +7,7 @@ %% babel.dtx (with options: `nil') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,7 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% -\ProvidesLanguage{nil}[2024/11/30 v24.14 Nil language] +\ProvidesLanguage{nil}[2025/01/01 v25.1 Nil language] \LdfInit{nil}{datenil} \ifx\l@nil\@undefined \newlanguage\l@nil diff --git a/Master/texmf-dist/tex/generic/babel/plain.def b/Master/texmf-dist/tex/generic/babel/plain.def index 6624d517539..f278a21aaba 100644 --- a/Master/texmf-dist/tex/generic/babel/plain.def +++ b/Master/texmf-dist/tex/generic/babel/plain.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `plain') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/switch.def b/Master/texmf-dist/tex/generic/babel/switch.def index e991164458d..ec58318b70b 100644 --- a/Master/texmf-dist/tex/generic/babel/switch.def +++ b/Master/texmf-dist/tex/generic/babel/switch.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `kernel') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/txtbabel.def b/Master/texmf-dist/tex/generic/babel/txtbabel.def index 380fb2380c7..28f5fe332b0 100644 --- a/Master/texmf-dist/tex/generic/babel/txtbabel.def +++ b/Master/texmf-dist/tex/generic/babel/txtbabel.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `texxet') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. diff --git a/Master/texmf-dist/tex/generic/babel/xebabel.def b/Master/texmf-dist/tex/generic/babel/xebabel.def index 293a3744fe2..24559221338 100644 --- a/Master/texmf-dist/tex/generic/babel/xebabel.def +++ b/Master/texmf-dist/tex/generic/babel/xebabel.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `xetex') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -101,18 +101,12 @@ \DisableBabelHook{babel-fontspec} \@onlypreamble\babelfont \newcommand\babelfont[2][]{% 1=langs/scripts 2=fam - \bbl@foreach{#1}{% - \expandafter\ifx\csname date##1\endcsname\relax - \IfFileExists{babel-##1.tex}% - {\babelprovide{##1}}% - {}% - \fi}% - \edef\bbl@tempa{#1}% - \def\bbl@tempb{#2}% Used by \bbl@bblfont \ifx\fontspec\@undefined \usepackage{fontspec}% \fi \EnableBabelHook{babel-fontspec}% + \edef\bbl@tempa{#1}% + \def\bbl@tempb{#2}% Used by \bbl@bblfont \bbl@bblfont} \newcommand\bbl@bblfont[2][]{% 1=features 2=fontname, @font=rm|sf|tt \bbl@ifunset{\bbl@tempb family}% @@ -126,7 +120,7 @@ \let\<bbl@\bbl@tempb dflt@\languagename>\<bbl@\bbl@tempb dflt@>% \\\bbl@font@set\<bbl@\bbl@tempb dflt@\languagename>% \<\bbl@tempb default>\<\bbl@tempb family>}}% - {\bbl@foreach\bbl@tempa{% ie bbl@rmdflt@lang / *scrt + {\bbl@foreach\bbl@tempa{% i.e., bbl@rmdflt@lang / *scrt \bbl@csarg\def{\bbl@tempb dflt@##1}{<>{#1}{#2}}}}}% \def\bbl@providefam#1{% \bbl@exp{% @@ -155,7 +149,7 @@ {}}% \gdef\bbl@switchfont{% \bbl@ifunset{bbl@lsys@\languagename}{\bbl@provide@lsys{\languagename}}{}% - \bbl@exp{% eg Arabic -> arabic + \bbl@exp{% e.g., Arabic -> arabic \lowercase{\edef\\\bbl@tempa{\bbl@cl{sname}}}}% \bbl@foreach\bbl@font@fams{% \bbl@ifunset{bbl@##1dflt@\languagename}% (1) language? @@ -211,13 +205,13 @@ \endgroup} \fi \fi -\def\bbl@font@set#1#2#3{% eg \bbl@rmdflt@lang \rmdefault \rmfamily +\def\bbl@font@set#1#2#3{% e.g., \bbl@rmdflt@lang \rmdefault \rmfamily \bbl@xin@{<>}{#1}% \ifin@ \bbl@exp{\\\bbl@fontspec@set\\#1\expandafter\@gobbletwo#1\\#3}% \fi \bbl@exp{% 'Unprotected' macros return prev values - \def\\#2{#1}% eg, \rmdefault{\bbl@rmdflt@lang} + \def\\#2{#1}% e.g., \rmdefault{\bbl@rmdflt@lang} \\\bbl@ifsamestring{#2}{\f@family}% {\\#3% \\\bbl@ifsamestring{\f@series}{\bfdefault}{\\\bfseries}{}% @@ -228,11 +222,11 @@ \edef\bbl@tempb{\bbl@stripslash#4/}% Catcodes hack (better pass it). \bbl@exp{\\\bbl@replace\\\bbl@tempb{\bbl@stripslash\family/}{}}% \let\bbl@mapselect\relax - \let\bbl@temp@fam#4% eg, '\rmfamily', to be restored below + \let\bbl@temp@fam#4% e.g., '\rmfamily', to be restored below \let#4\@empty % Make sure \renewfontfamily is valid \bbl@set@renderer \bbl@exp{% - \let\\\bbl@temp@pfam\<\bbl@stripslash#4\space>% eg, '\rmfamily ' + \let\\\bbl@temp@pfam\<\bbl@stripslash#4\space>% e.g., '\rmfamily ' \<keys_if_exist:nnF>{fontspec-opentype}{Script/\bbl@cl{sname}}% {\\\newfontscript{\bbl@cl{sname}}{\bbl@cl{sotf}}}% \<keys_if_exist:nnF>{fontspec-opentype}{Language/\bbl@cl{lname}}% @@ -240,11 +234,11 @@ \\\renewfontfamily\\#4% [\bbl@cl{lsys},% xetex removes unknown features :-( \ifcase\bbl@engine\or RawFeature={family=\bbl@tempb},\fi - #2]}{#3}% ie \bbl@exp{..}{#3} + #2]}{#3}% i.e., \bbl@exp{..}{#3} \bbl@unset@renderer \begingroup #4% - \xdef#1{\f@family}% eg, \bbl@rmdflt@lang{FreeSerif(0)} + \xdef#1{\f@family}% e.g., \bbl@rmdflt@lang{FreeSerif(0)} \endgroup % TODO. Find better tests: \bbl@xin@{\string>\string s\string s\string u\string b\string*}% {\expandafter\meaning\csname TU/#1/bx/sc\endcsname}% |