[latex3-commits] [git/LaTeX3-latex3-babel] main: Temporary hack for #189. Latin, Korean. Case with calendars. (8964a90)

Javier email at dante.de
Tue Sep 6 20:31:16 CEST 2022


Repository : https://github.com/latex3/babel
On branch  : main
Link       : https://github.com/latex3/babel/commit/8964a908f5c8646aa7ecfc34771dc2b1ae1ffda9

>---------------------------------------------------------------

commit 8964a908f5c8646aa7ecfc34771dc2b1ae1ffda9
Author: Javier <email at localhost>
Date:   Tue Sep 6 20:31:16 2022 +0200

    Temporary hack for #189. Latin, Korean. Case with calendars.


>---------------------------------------------------------------

8964a908f5c8646aa7ecfc34771dc2b1ae1ffda9
 README.md                             |   8 ++++-
 babel.dtx                             |  46 ++++++++++++++++++++--------
 babel.ins                             |   2 +-
 babel.pdf                             | Bin 884327 -> 885776 bytes
 bbcompat.dtx                          |   2 +-
 locale/ko/babel-ko-Hani.ini           |   2 +-
 locale/ko/babel-ko.ini                |  56 +++++++++++++++++-----------------
 locale/la/babel-classiclatin.tex      |  12 +++-----
 locale/la/babel-ecclesiasticlatin.tex |  12 +++-----
 locale/la/babel-latin.tex             |  12 +++-----
 testfiles/tlb39aa.lvt                 |   9 ++++--
 testfiles/tlb39ab.lvt                 |  11 ++++---
 12 files changed, 99 insertions(+), 73 deletions(-)

diff --git a/README.md b/README.md
index a51ba85..0428816 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-## Babel 3.79.2845
+## Babel 3.79.2852
 
 This package manages culturally-determined typographical (and other)
 rules, and hyphenation patterns for a wide range of languages. Many
@@ -49,6 +49,12 @@ respective authors.
 3.80  (dev)
       * Ethiopic calendar.
       * Hungarian date in the superessive case.
+      * Fixed numbers in Latin dates with pdftex.
+      * More updates to the CLDR 41: Galician, Swiss German, Gujarati,
+        Hausa, Hebrew, Hindi, Croatian, Upper Sorbian, Hungarian,
+        Armenian, Interlingua, Indonesian, Igbo, Sichuan Yi, Icelandic,
+        Italian, Japanese, Ngomba, Georgian, Kabyle, Kabuverdianu,
+        Kazakh, Kako, Kalaallisut, Khmer, Kannada, Korean.
 
 3.79  2022-08-29
       * Fixes:
diff --git a/babel.dtx b/babel.dtx
index 83895e2..f417703 100644
--- a/babel.dtx
+++ b/babel.dtx
@@ -32,7 +32,7 @@
 %
 % \iffalse
 %<*filedriver>
-\ProvidesFile{babel.dtx}[2022/08/30 v3.79.2845 The Babel package]
+\ProvidesFile{babel.dtx}[2022/09/06 v3.79.2852 The Babel package]
 \documentclass{ltxdoc}
 \GetFileInfo{babel.dtx}
 \usepackage{fontspec}
@@ -460,16 +460,16 @@ except if there is a real reason to do so:
 
 Examples of cases where |main| is useful are the following.
 
-\begin{note}
+\begin{example}
 Some classes load \babel{} with a hardcoded language option. Sometimes,
 the main language can be overridden with something like that before
 |\documentclass|:
 \begin{verbatim}
 \PassOptionsToPackage{main=english}{babel}
 \end{verbatim}
-\end{note}
+\end{example}
 
-\begin{warning}
+\begin{note}
   Languages may be set as global and as package option at the same
   time, but in such a case you should set explicitly the main language
   with the package option |main|:
@@ -477,7 +477,7 @@ the main language can be overridden with something like that before
 \documentclass[_italian_]{book}
 \usepackage[ngerman,_main=italian_]{babel}
 \end{verbatim}
-\end{warning}
+\end{note}
 
 \begin{warning}
   In the preamble the main language has \textit{not} been selected,
@@ -519,7 +519,7 @@ _\foreignlanguage{french}{français}_.
   With \xetex{} and \luatex, the following bilingual, single script
   document in UTF-8 encoding just prints a couple of ‘captions’ and
   |\today| in Danish and Vietnamese. No additional packages are
-  required.
+  required, because the default font supports both languages.
 \setengine{luatex/xetex}
 \begin{verbatim}
 \documentclass{article}
@@ -528,11 +528,11 @@ _\usepackage[vietnamese,danish]{babel}_
 
 \begin{document}
 
-\prefacename{} -- \alsoname{} -- \today
+\prefacename, \alsoname, \today.
 
 \selectlanguage{vietnamese}
 
-\prefacename{} -- \alsoname{} -- \today
+\prefacename, \alsoname, \today.
 
 \end{document}
 \end{verbatim}
@@ -583,7 +583,8 @@ _\foreignlanguage{spanish}{Español}_.
   Instead of its name, you may prefer to select the language with the
 corresponding BCP47 tag. This alternative, however, must be activated
 explicitly, because a two- or tree-letter word is a valid name for a
-language (eg, |yi|). See section \ref{bcp47} for further details.
+language (eg, |lu| can be the locale name with tag |khb| or the tag for
+|lubakatanga|). See section \ref{bcp47} for further details.
 \end{note}
 
 \subsection{Modifiers}
@@ -3009,7 +3010,7 @@ the current item, so that |\LocaleForEach{\message{ **#1** }}| just
 shows the loaded |ini|’s. 
 
 \Describe{ensureinfo=off}{}
-\New{3.75} Previously, |ini| files are loaded only with |\babelprovide|
+\New{3.75} Previously, |ini| files were loaded only with |\babelprovide|
 and also when languages are selected if there is a |\babelfont| or they
 have not been explicitly declared. Now the |ini| files are loaded (and
 therefore the corresponding data) even if these two conditions are not
@@ -5175,8 +5176,8 @@ help from Bernd Raichle, for which I am grateful.
 % \section{Tools}
 %
 %    \begin{macrocode}
-%<<version=3.79.2845>>
-%<<date=2022/08/30>>
+%<<version=3.79.2852>>
+%<<date=2022/09/06>>
 %    \end{macrocode}
 %
 % \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -8741,6 +8742,25 @@ help from Bernd Raichle, for which I am grateful.
       {\bbl at tolower\@empty}{\bbl at toupper\@empty}}%
     \gdef\bbl at tolower{\csname\languagename @bbl at lc\endcsname}%
     \gdef\bbl at toupper{\csname\languagename @bbl at uc\endcsname}}}
+% A temporary hack:
+\ifx\BabelCaseHack\@undefined
+\AtBeginDocument{%
+  \bbl at exp{%
+    \\\in@{\string\@uclclist}%
+          {\expandafter\meaning\csname MakeUppercase \endcsname}}%
+  \ifin@\else
+    \expandafter\let\expandafter\bbl at newuc\csname MakeUppercase \endcsname
+    \protected\@namedef{MakeUppercase }#1{{%
+      \def\reserved at a##1##2{\let##1##2\reserved at a}%
+      \expandafter\reserved at a\@uclclist\reserved at b{\reserved at b\@gobble}%
+      \protected at edef\reserved at a{\bbl at newuc{#1}}\reserved at a}}%
+    \expandafter\let\expandafter\bbl at newlc\csname MakeLowercase \endcsname
+    \protected\@namedef{MakeLowercase }#1{{%
+      \def\reserved at a##1##2{\let##2##1\reserved at a}%
+      \expandafter\reserved at a\@uclclist\reserved at b{\reserved at b\@gobble}%
+      \protected at edef\reserved at a{\bbl at newlc{#1}}\reserved at a}}%
+  \fi}   
+\fi  
 %    \end{macrocode}
 %
 %    \begin{macrocode}
@@ -10763,7 +10783,6 @@ help from Bernd Raichle, for which I am grateful.
 % and therefore always converted with other calendars. TODO. Document
 %
 %    \begin{macrocode}
-% Arguments are _not_ protected.
 \let\bbl at calendar\@empty
 \DeclareRobustCommand\localedate[1][]{\bbl at localedate{#1}}
 \def\bbl at localedate#1#2#3#4{%
@@ -10775,6 +10794,7 @@ help from Bernd Raichle, for which I am grateful.
       \bbl at ifunset{bbl at calpr@\languagename}{}{\bbl at cl{calpr}},%
       #1}%
     \bbl at replace\bbl at tempe{ }{}%
+    \bbl at replace\bbl at tempe{CONVERT}{convert=}% Hackish
     \bbl at replace\bbl at tempe{convert}{convert=}%
     \let\bbl at ld@calendar\@empty
     \let\bbl at ld@variant\@empty
diff --git a/babel.ins b/babel.ins
index 83bc133..4e9c2a3 100644
--- a/babel.ins
+++ b/babel.ins
@@ -26,7 +26,7 @@
 %% and covered by LPPL is defined by the unpacking scripts (with
 %% extension .ins) which are part of the distribution.
 %%
-\def\filedate{2022/08/30}
+\def\filedate{2022/09/06}
 \def\batchfile{babel.ins}
 \input docstrip.tex
 
diff --git a/babel.pdf b/babel.pdf
index 8c747d0..cd47edc 100644
Binary files a/babel.pdf and b/babel.pdf differ
diff --git a/bbcompat.dtx b/bbcompat.dtx
index 162a9f1..f84899d 100644
--- a/bbcompat.dtx
+++ b/bbcompat.dtx
@@ -30,7 +30,7 @@
 %
 % \iffalse
 %<*dtx>
-\ProvidesFile{bbcompat.dtx}[2022/08/30 v3.79.2845]
+\ProvidesFile{bbcompat.dtx}[2022/09/06 v3.79.2852]
 %</dtx>
 %
 %% File 'bbcompat.dtx'
diff --git a/locale/ko/babel-ko-Hani.ini b/locale/ko/babel-ko-Hani.ini
index 2cfa42d..fd173eb 100644
--- a/locale/ko/babel-ko-Hani.ini
+++ b/locale/ko/babel-ko-Hani.ini
@@ -31,7 +31,7 @@ derivate = no
 preface = 序文
 ref = 參考 文獻
 abstract = 要 約
-bib = 著書~目錄ç
+bib = 著書~目錄
 chapter.template = [[prechapter]] [chapter] [[postchapter]]
 prechapter = 第
 postchapter = 章
diff --git a/locale/ko/babel-ko.ini b/locale/ko/babel-ko.ini
index 43749ad..3e913ee 100644
--- a/locale/ko/babel-ko.ini
+++ b/locale/ko/babel-ko.ini
@@ -9,8 +9,8 @@
 
 [identification]
 charset = utf8
-version = 1.10
-date = 2021-09-29
+version = 1.11
+date = 2022-09-01
 name.local = 한국어
 name.english = Korean
 name.babel = korean
@@ -84,32 +84,32 @@ proof =
 glossary = 
 
 [date.gregorian]
-date.long = [y|digits]年 [m|hanja.informal]月 [d|hanja.informal]日
+date.long = [y]년 [M]월 [d]일
 date.short = [yy]. [M]. [d].
-months.wide.1 = 1月
-months.wide.2 = 2月
-months.wide.3 = 3月
-months.wide.4 = 4月
-months.wide.5 = 5月
-months.wide.6 = 6月
-months.wide.7 = 7月
-months.wide.8 = 8月
-months.wide.9 = 9月
-months.wide.10 = 10月
-months.wide.11 = 11月
-months.wide.12 = 12月
-months.narrow.1 = 1月
-months.narrow.2 = 2月
-months.narrow.3 = 3月
-months.narrow.4 = 4月
-months.narrow.5 = 5月
-months.narrow.6 = 6月
-months.narrow.7 = 7月
-months.narrow.8 = 8月
-months.narrow.9 = 9月
-months.narrow.10 = 10月
-months.narrow.11 = 11月
-months.narrow.12 = 12月
+months.wide.1 = 1월
+months.wide.2 = 2월
+months.wide.3 = 3월
+months.wide.4 = 4월
+months.wide.5 = 5월
+months.wide.6 = 6월
+months.wide.7 = 7월
+months.wide.8 = 8월
+months.wide.9 = 9월
+months.wide.10 = 10월
+months.wide.11 = 11월
+months.wide.12 = 12월
+months.narrow.1 = 1월
+months.narrow.2 = 2월
+months.narrow.3 = 3월
+months.narrow.4 = 4월
+months.narrow.5 = 5월
+months.narrow.6 = 6월
+months.narrow.7 = 7월
+months.narrow.8 = 8월
+months.narrow.9 = 9월
+months.narrow.10 = 10월
+months.narrow.11 = 11월
+months.narrow.12 = 12월
 days.wide.mon = 월요일
 days.wide.tue = 화요일
 days.wide.wed = 수요일
@@ -162,7 +162,7 @@ delimiters.quotes = “”‘’
 auxiliary = [ᄀ-ᄒ ᅡ-ᅵ ᆨ-ᇂ 丘 串 乃 久 乖 九 乞 乫 乾 亂 亘 交 京 仇 今 介 件 价 企 伋 伎 伽 佳 佶 侃 來 侊 供 係 俓 俱 個 倞 倦 倨 假 偈 健 傀 傑 傾 僅 僑 價 儆 儉 儺 光 克 兢 內 公 共 其 具 兼 冀 冠 凱 刊 刮 券 刻 剋 剛 劇 劍 劒 功 加 劤 劫 勁 勍 勘 勤 勸 勻 勾 匡 匣 區 南 卦 却 卵 卷 卿 厥 去 及 口 句 叩 叫 可 各 吉 君 告 呱 呵 咎 咬 哥 哭 啓 喀 喇 喝 喫 喬 嗜 嘉 嘔 器 囊 困 固 圈 國 圭 圻 均 坎 坑 坤 坰 坵 垢 基 埼 堀 堅 堈 堪 堺 塊 塏 境 墾 壙 壞 夔 奇 奈 奎 契 奸 妓 妗 姑 姜 姦 娘 娜 嫁 嬌 孔 季 孤 宏 官 客 宮 家 寄 寇 寡 寬 尻 局 居 屆 屈 岐 岡 岬 崎 崑 崗 嵌 嵐 嶇 嶠 工 巧 巨 己 巾 干 幹 幾 庚 庫 康 廊 廐 廓 廣 建 弓 强 彊 徑 忌 急 怪 怯 恐 恝 恪 恭 悸 愆 感 愧 愷 愾 慊 慣 慤 慨 慶 慷 憩 憬 憾 懃 懇 懦 懶 懼 戈 戒 戟 戡 扱 技 抉 拉 拏 拐 拒 拘 括 拮 拱 拳 拷 拿 捏 据 捲 捺 掘 掛 控 揀 揆 揭 擊 擎 擒 據 擧 攪 攷 改 攻 故 敎 救 敢 敬 敲 斛 斤 旗 旣 昆 昑 景 晷 暇 暖 暠 暻 曠 曲 更 曷 朗 朞 期 机 杆 杞 杰 枏 果 枯 架 枸 柑 柩 柬 柯 校 根 格 桀 桂 桔 桿 梏 梗 械 梱 棄 棋 棍 棘 棨 棺 楗 楠 極 槁 構 槐 槨 槪 槻 槿 樂 橄 橋 橘 機 檄 檎 檢 櫃 欄 權 欺 款 歌 歐 歸 殼 毆 毬 氣 求 江 汨 汲 決 汽 沂 沽 洛 洸 浪 涇 淃 淇 減 渠 渴 湳 溝 溪 滑 滾 漑 潔 潰 澗 激 濫 灌 灸 炅 炚 炬 烙 烱 煖 爛 牽 犬 狂 狗 狡 狼 獗 玖 玘 珂 珏 珖 珙 珞 珪 球 琦 琨 琪 琯 琴 瑾 璂 璟 璣 璥 瓊 瓘 瓜 甄 甘 甲 男 畇 界 畸 畺 畿 疆 疥 疳 痂 痙 痼 癎 癩 癸 皆 皎 皐 盖 監 看 眷 睾 瞰 瞼 瞿 矜 矩 矯 硅 硬 碁 碣 磎 磬 磯 磵 祁 祇 祈 祛 祺 禁 禽 科 稈 稼 稽 稿 穀 究 穹 空 窘 窟 窮 窺 竅 竟 竭 競 竿 筋 筐 筠 箇 箕 箝 管 簡 粳 糠 系 糾 紀 納 紘 級 紺 絅 結 絞 給 絳 絹 絿 經 綱 綺 緊 繫 繭 繼 缺 罐 罫 羅 羈 羌 羔 群 羹 翹 考 耆 耉 耕 耭 耿 肌 肝 股 肩 肯 肱 胛 胱 脚 脛 腔 腱 膈 膏 膠 臘 臼 舅 舊 舡 艮 艱 芎 芥 芩 芹 苛 苟 苦 苽 茄 莖 菅 菊 菌 菓 菫 菰 落 葛 葵 蓋 蕎 蕨 薑 藁 藍 藿 蘭 蘿 虔 蚣 蛟 蝎 螺 蠟 蠱 街 衢 衲 衾 衿 袈 袞 袴 裙 裸 褐 襁 襟 襤 見 規 覡 覲 覺 觀 角 計 記 訣 訶 詭 誇 誡 誥 課 諫 諾 謙 講 謳 謹 譏 警 譴 谷 谿 豈 貢 貫 貴 賈 購 赳 起 跏 距 跨 踞 蹇 蹶 躬 軀 車 軌 軍 軻 較 輕 轎 轟 辜 近 迦 迲 适 逑 逕 逵 過 遣 遽 邏 那 邯 邱 郊 郎 郡 郭 酪 醵 金 鈐 鈞 鉀 鉅 鉗 鉤 銶 鋸 鋼 錡 錤 錦 錮 鍋 鍵 鎌 鎧 鏡 鑑 鑒 鑛 開 間 閘 閣 閨 闕 關 降 階 隔 隙 雇 難 鞏 鞠 鞨 鞫 頃 頸 顆 顧 飢 餃 館 饉 饋 饑 駒 駕 駱 騎 騏 騫 驅 驕 驚 驥 骨 高 鬼 魁 鮫 鯤 鯨 鱇 鳩 鵑 鵠 鷄 鷗 鸞 麒 麴 黔 鼓 龕 龜]
 exemplarCharacters = [가-힣]
 index = [ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ ㅅ ㅇ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ]
-punctuation = [‾ _ _ \\- - ‐ — ― 〜 ・ , , 、 ; ; \\: : ! ! ¡ ? ? ¿ . . ‥ … 。 · ' ‘ ’ \" " “ ” ( ( ) ) \\[ [ \\] ] \\{ { \\} } 〈 〉 《 》 「 」 『 』 【 】 〔 〕 § ¶ @ @ * * / / \\\\ \ \\& & # # % % ‰ † ‡ ′ ″ 〃 ※]
+punctuation = [‾ _ _ \\- - ‐ ‑ — ― 〜 ・ , , 、 ; ; \\: : ! ! ¡ ? ? ¿ . . ‥ … 。 · ' ‘ ’ \" " “ ” ( ( ) ) \\[ [ \\] ] \\{ { \\} } 〈 〉 《 》 「 」 『 』 【 】 〔 〕 § ¶ @ @ * * / / \\\\ \ \\& & # # % % ‰ † ‡ ′ ″ 〃 ※]
 
 [numbers]
 defaultNumberingSystem = latn
diff --git a/locale/la/babel-classiclatin.tex b/locale/la/babel-classiclatin.tex
index 1d783d1..bdd9d98 100644
--- a/locale/la/babel-classiclatin.tex
+++ b/locale/la/babel-classiclatin.tex
@@ -8,13 +8,11 @@
 \BabelBeforeIni{la-x-classic}{%
 }
 
-\ifcase\bbl at engine\else
-  \expandafter\addto\csname date\languagename\endcsname{%
-    \babel at save\BabelDatey
-    \def\BabelDatey#1{\@Roman{#1}}%
-    \babel at save\BabelDated
-    \def\BabelDated#1{\@Roman{#1}}}
-\fi
+\expandafter\addto\csname date\languagename\endcsname{%
+  \babel at save\BabelDatey
+  \def\BabelDatey#1{\@Roman{#1}}%
+  \babel at save\BabelDated
+  \def\BabelDated#1{\@Roman{#1}}}
 
 \StartBabelCommands{\languagename}{}
   \SetCase
diff --git a/locale/la/babel-ecclesiasticlatin.tex b/locale/la/babel-ecclesiasticlatin.tex
index b864ed3..7a5eb1f 100644
--- a/locale/la/babel-ecclesiasticlatin.tex
+++ b/locale/la/babel-ecclesiasticlatin.tex
@@ -8,12 +8,10 @@
 \BabelBeforeIni{la-x-ecclesia}{%
 }
 
-\ifcase\bbl at engine\else
-  \expandafter\addto\csname date\languagename\endcsname{%
-    \babel at save\BabelDatey
-    \def\BabelDatey#1{\@Roman{#1}}%
-    \babel at save\BabelDated
-    \def\BabelDated#1{\@Roman{#1}}}
-\fi
+\expandafter\addto\csname date\languagename\endcsname{%
+  \babel at save\BabelDatey
+  \def\BabelDatey#1{\@Roman{#1}}%
+  \babel at save\BabelDated
+  \def\BabelDated#1{\@Roman{#1}}}
 
 \endinput
\ No newline at end of file
diff --git a/locale/la/babel-latin.tex b/locale/la/babel-latin.tex
index 10d2a36..35f8070 100644
--- a/locale/la/babel-latin.tex
+++ b/locale/la/babel-latin.tex
@@ -8,12 +8,10 @@
 \BabelBeforeIni{la}{%
 }
 
-\ifcase\bbl at engine\else
-  \expandafter\addto\csname date\languagename\endcsname{%
-    \babel at save\BabelDatey
-    \def\BabelDatey#1{\@Roman{#1}}%
-    \babel at save\BabelDated
-    \def\BabelDated#1{\@Roman{#1}}}
-\fi
+\expandafter\addto\csname date\languagename\endcsname{%
+  \babel at save\BabelDatey
+  \def\BabelDatey#1{\@Roman{#1}}%
+  \babel at save\BabelDated
+  \def\BabelDated#1{\@Roman{#1}}}
 
 \endinput
\ No newline at end of file
diff --git a/testfiles/tlb39aa.lvt b/testfiles/tlb39aa.lvt
index 84b4d9a..89be603 100644
--- a/testfiles/tlb39aa.lvt
+++ b/testfiles/tlb39aa.lvt
@@ -27,12 +27,15 @@
 \SetString\macroN{N}
 \EndBabelCommands
 
-\MakeUppercase{\gdef\noexpand\testuc{qa\aa}}
-\MakeLowercase{\gdef\noexpand\testlc{QA\OE}}
-
 \begin{document}
 \TIMO
 
+\protected\def\setuc{\gdef\testuc}
+\protected\def\setlc{\gdef\testlc}
+
+\MakeUppercase{\setuc{qa\aa}}
+\MakeLowercase{\setlc{QA\OE}}
+
 \Show\languagename
 \Show\moregerman
 \Show\macroA
diff --git a/testfiles/tlb39ab.lvt b/testfiles/tlb39ab.lvt
index 2066320..409b1aa 100644
--- a/testfiles/tlb39ab.lvt
+++ b/testfiles/tlb39ab.lvt
@@ -32,16 +32,19 @@
 
 \Show\languagename
 
-\MakeUppercase{\gdef\noexpand\testuc{qa\aa}}
-\MakeLowercase{\gdef\noexpand\testlc{QA\OE}}
+\protected\def\setuc{\gdef\testuc}
+\protected\def\setlc{\gdef\testlc}
+
+\MakeUppercase{\setuc{qa\aa}}
+\MakeLowercase{\setlc{QA\OE}}
 
 \Show\testuc
 \Show\testlc
 
 \selectlanguage{german}
 
-\MakeUppercase{\gdef\noexpand\testuc{qa\aa}}
-\MakeLowercase{\gdef\noexpand\testlc{QA\OE}}
+\MakeUppercase{\setuc{qa\aa}}
+\MakeLowercase{\setlc{QA\OE}}
 
 \Show\testuc
 \Show\testlc





More information about the latex3-commits mailing list.