[latex3-commits] [git/LaTeX3-latex3-babel] master: Bump to 3.36. (1b78239)
Javier
jbezos at dante.de
Thu Nov 14 09:38:54 CET 2019
Repository : https://github.com/latex3/babel
On branch : master
Link : https://github.com/latex3/babel/commit/1b782395a198baab2b70d3daa6a5f32ae696a5b9
>---------------------------------------------------------------
commit 1b782395a198baab2b70d3daa6a5f32ae696a5b9
Author: Javier <jbezos at localhost>
Date: Thu Nov 14 09:38:54 2019 +0100
Bump to 3.36.
>---------------------------------------------------------------
1b782395a198baab2b70d3daa6a5f32ae696a5b9
README.md | 11 +--
babel.dtx | 192 ++++++++++++++++++++++-----------------
babel.ins | 2 +-
babel.pdf | Bin 708024 -> 723535 bytes
bbcompat.dtx | 2 +-
locale/zh/babel-zh-Hans-HK.ini | 2 +-
locale/zh/babel-zh-Hant-HK.ini | 4 +-
locale/zh/babel-zh-Hant-MO.ini | 2 +-
locale/zh/babel-zh-Hant.ini | 2 +-
samples/harf-farsi-malayalam.pdf | Bin 39076 -> 42616 bytes
samples/harf-farsi-malayalam.tex | 12 ++-
11 files changed, 128 insertions(+), 101 deletions(-)
diff --git a/README.md b/README.md
index cecd26a..1052b9b 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-## Babel 3.35.1815
+## Babel 3.36
This package manages culturally-determined typographical (and other)
rules, and hyphenation patterns for a wide range of languages. Many
@@ -51,12 +51,11 @@ respective authors.
### Latest changes
```
-3.36 2019-??-??
- - New \babeladjust, with options: bidi.text, bidi.mirroring,
+3.36 2019-11-14
+ - New - \babeladjust, with options: bidi.text, bidi.mirroring,
bidi.mapdigits, layout.tabular, layout.lists, linebreak.sea,
- linebreak.cjk. There are still
- some limitations.
- - New ini for Ancient Greek, thanks to Claudio Beccari.
+ linebreak.cjk. There are still some limitations.
+ - New - ini for Polytonic Greek, thanks to Claudio Beccari.
- Fix - Language and script set for Chinese Tradicional and
Chinese Simplified.
diff --git a/babel.dtx b/babel.dtx
index eb040d7..7c64648 100644
--- a/babel.dtx
+++ b/babel.dtx
@@ -31,7 +31,7 @@
%
% \iffalse
%<*filedriver>
-\ProvidesFile{babel.dtx}[2019/11/04 v3.35.1815 The Babel package]
+\ProvidesFile{babel.dtx}[2019/11/14 v3.36 The Babel package]
\documentclass{ltxdoc}
\GetFileInfo{babel.dtx}
\usepackage{fontspec}
@@ -2078,13 +2078,17 @@ existing language, too, as explained in the previous subsection).
\Describe{\babelprovide}{\oarg{options}\marg{language-name}}
-If the language |\marg{language-name}| has not been defined and there
-are no options, it creates lan “empty” one in the following way: define
-the internal structure of the language with some defaults: if there is
-an |ini| file, read some basic parameters (language, script,
-hyphenrules...), which you can modify; if not, the hyphen rules, if not
+If the language \m{language-name} has not been loaded as class or
+package option and there are no \m{options}, it creates an “empty” one
+with some defaults in its internal structure: the hyphen rules, if not
available, are set to the current ones, left and right hyphen mins are
-set to 2 and 3. In either case, captions and date are not defined.
+set to 2 and 3. In either case, caption, date and language system are
+not defined.
+
+If no |ini| file is imported with |import|, \m{language-name} is
+relevant because in such a case the hyphenation rules are based on it
+as provided in the |ini| file corresponding to that name; the same
+applies to OpenType language and script.
Conveniently, some options allow to fill the language, and \babel{}
warns you about what to do if there is a missing string. Very likely
@@ -2214,8 +2218,8 @@ be added.} So, there should be at most 3 directives of this kind.
Sets the interword space for the writing system of the language, in em
units (so, |0 .1 0| is |0em plus .1em|). Like |\spaceskip|, the em unit
applied is that of the current text (more precisely, the previous
-glyph). Currently used only in Southeast Asian scrips, like Thai.
-Requires |import|.
+glyph). Currently used only in Southeast Asian scrips, like Thai, and
+CJK. Requires |import|.
\Describe{intrapenalty=}{\meta{penalty}}
Sets the interword penalty for the writing system of this language.
@@ -3011,15 +3015,16 @@ paragraphs).
\Describe{\babeladjust}{\marg{key-value-list}}
-\New{3.36} Sometimes you might need to disable some \textsc{babel}
-features. Currently this macro understands the following keys (and only
-for \textsf{luatex}), with values |on| or |off|: |bidi.text|,
+\New{3.36} Sometimes you might need to disable some \babel{} features.
+Currently this macro understands the following keys (and only for
+\textsf{luatex}), with values |on| or |off|: |bidi.text|,
|bidi.mirroring|, |bidi.mapdigits|, |layout.lists|, |layout.tabular|,
|linebreak.sea|, |linebreak.cjk|. For example, you can set
|\babeladjust{bidi.text=off}| if you are using an alternative algorithm
-or with large sections not requiring it. Use with care, because these
-options do not deactive other related options (like paragraph direction
-with |bidi.text|).
+or with large sections not requiring it. With \textsf{luahbtex} you may
+need |bidi.mirroring=off|. Use with care, because these options do not
+deactivate other related options (like paragraph direction with
+|bidi.text|).
\subsection{Tips, workarounds, known issues and notes}
@@ -3166,6 +3171,16 @@ So, for example:
\babelFSfeatures{turkish}{Language=Turkish}
\end{verbatim}
+\medskip
+\textbf{Modifying values of |ini| files}
+
+\New{3.36} There is a way to modify the values of |ini| files when they
+get loaded with |\babelprovide|. To set, say, |digits.native| in the
+|numbers| section, use something like
+|numbers..digits.native=abcdefghij| (note the double dot between the
+section and the key name). The syntax may change, and currently it only
+redefines existing keys.
+
\section{Loading languages with \file{language.dat}}
\TeX{} and most engines based on it (pdf\TeX, \xetex, $\epsilon$-\TeX,
@@ -4088,8 +4103,8 @@ help from Bernd Raichle, for which I am grateful.
% \section{Tools}
%
% \begin{macrocode}
-%<<version=3.35.1815>>
-%<<date=2019/11/04>>
+%<<version=3.36>>
+%<<date=2019/11/14>>
% \end{macrocode}
%
% \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -5680,11 +5695,9 @@ help from Bernd Raichle, for which I am grateful.
\bbl at usehooks{beforestart}{}%
\global\let\bbl at beforestart\relax}
\AtBeginDocument{%
- \bbl at beforestart
+ \@nameuse{bbl at beforestart}%
\if at filesw
- \immediate\write\@mainaux{%
- % \let\string\bbl at nostdfont\string\@gobble
- \string\bbl at beforestart}%
+ \immediate\write\@mainaux{\string\@nameuse{bbl at beforestart}}%
\fi
\expandafter\selectlanguage\expandafter{\bbl at main@language}%
\ifbbl at single % must go after the line above
@@ -8090,20 +8103,20 @@ help from Bernd Raichle, for which I am grateful.
\let\bbl at KVP@main\@nil
\let\bbl at KVP@script\@nil
\let\bbl at KVP@language\@nil
- \let\bbl at KVP@dir\@nil
- \let\bbl at KVP@hyphenrules\@nil
+ \let\bbl at KVP@hyphenrules\@nil % only for provide at new
\let\bbl at KVP@mapfont\@nil
\let\bbl at KVP@maparabic\@nil
\let\bbl at KVP@mapdigits\@nil
\let\bbl at KVP@intraspace\@nil
\let\bbl at KVP@intrapenalty\@nil
\bbl at forkv{#1}{% TODO - error handling
- \in@{/}{##1}%
+ \in@{..}{##1}%
\ifin@
\bbl at renewinikey##1\@@{##2}%
\else
\bbl at csarg\def{KVP@##1}{##2}%
\fi}%
+ % == import, captions ==
\ifx\bbl at KVP@import\@nil\else
\bbl at exp{\\\bbl at ifblank{\bbl at KVP@import}}%
{\begingroup
@@ -8137,28 +8150,31 @@ help from Bernd Raichle, for which I am grateful.
% execute some code depending on them. But what about if nothing was
% imported? We just load the very basic parameters: ids and a few
% more.
- % THIS ADDITION IN 3.30 IS WRONG!!
-% \bbl at ifunset{bbl at lname@#2}%
-% {\def\BabelBeforeIni##1##2{%
-% \begingroup
-% \catcode`\[=12 \catcode`\]=12 \catcode`\==12 %
-% \let\bbl at ini@captions at aux\@gobbletwo
-% \def\bbl at inidate ####1.####2.####3.####4\relax ####5####6{}%
-% \bbl at read@ini{##1}%
-% \bbl at exportkey{chrng}{characters.ranges}{}%
-% \bbl at exportkey{dgnat}{numbers.digits.native}{}%
-% \endgroup}% boxed, to avoid extra spaces:
-% {\setbox\z@\hbox{\InputIfFileExists{babel-#2.tex}{}{}}}}%
-% {}%
+ \bbl at ifunset{bbl at lname@#2}%
+ {\def\BabelBeforeIni##1##2{%
+ \begingroup
+ \catcode`\[=12 \catcode`\]=12 \catcode`\==12 %
+ \let\bbl at ini@captions at aux\@gobbletwo
+ \def\bbl at inidate ####1.####2.####3.####4\relax ####5####6{}%
+ \bbl at read@ini{##1}{basic data}%
+ \bbl at exportkey{chrng}{characters.ranges}{}%
+ \bbl at exportkey{dgnat}{numbers.digits.native}{}%
+ % \bbl at exportkey{hyphr}{typography.hyphenrules}{}%
+ % \bbl at exportkey{intsp}{typography.intraspace}{}%
+ \endgroup}% boxed, to avoid extra spaces:
+ {\setbox\z@\hbox{\InputIfFileExists{babel-#2.tex}{}{}}}}%
+ {}%
% -
- % Override script and language names with script= and language=
+ % == script, language ==
+ % Override the values from ini or defines them
\ifx\bbl at KVP@script\@nil\else
\bbl at csarg\edef{sname@#2}{\bbl at KVP@script}%
\fi
\ifx\bbl at KVP@language\@nil\else
\bbl at csarg\edef{lname@#2}{\bbl at KVP@language}%
\fi
- % For bidi texts, to switch the language based on direction
+ % == mapfont ==
+ % For bidi texts, to switch the font based on direction
\ifx\bbl at KVP@mapfont\@nil\else
\bbl at ifsamestring{\bbl at KVP@mapfont}{direction}{}%
{\bbl at error{Option `\bbl at KVP@mapfont' unknown for\\%
@@ -8183,15 +8199,16 @@ help from Bernd Raichle, for which I am grateful.
\fi
\bbl at exp{\\\bbl at add\\\bbl at mapselect{\\\bbl at mapdir{\languagename}}}%
\fi
- % For East Asian, Southeast Asian, if interspace in ini - TODO: as hook?
- \ifx\bbl at KVP@intraspace\@nil\else % We may override the ini
+ % == intraspace, intrapenalty ==
+ % For CJK, East Asian, Southeast Asian, if interspace in ini
+ \ifx\bbl at KVP@intraspace\@nil\else % We can override the ini or set
\bbl at csarg\edef{intsp@#2}{\bbl at KVP@intraspace}%
\fi
- \ifcase\bbl at engine\or
+ \ifcase\bbl at engine\or % lua
\bbl at ifunset{bbl at intsp@\languagename}{}%
{\expandafter\ifx\csname bbl at intsp@\languagename\endcsname\@empty\else
\bbl at xin@{\bbl at cs{sbcp@\languagename}}{Hant,Hans,Jpan,Kore,Kana}%
- \ifin@
+ \ifin@ % cjk
\bbl at cjkintraspace
\directlua{
Babel = Babel or {}
@@ -8202,7 +8219,7 @@ help from Bernd Raichle, for which I am grateful.
\ifx\bbl at KVP@intrapenalty\@nil
\bbl at intrapenalty0\@@
\fi
- \else
+ \else % sea
\bbl at seaintraspace
\bbl at exp{\\\bbl at intraspace\bbl at cs{intsp@\languagename}\\\@@}%
\directlua{
@@ -8219,9 +8236,9 @@ help from Bernd Raichle, for which I am grateful.
\ifx\bbl at KVP@intrapenalty\@nil\else
\expandafter\bbl at intrapenalty\bbl at KVP@intrapenalty\@@
\fi}%
- \or
+ \or % xe
\bbl at xin@{\bbl at cs{sbcp@\languagename}}{Thai,Laoo,Khmr}%
- \ifin@
+ \ifin@ % sea (currently ckj not handled)
\bbl at ifunset{bbl at intsp@\languagename}{}%
{\expandafter\ifx\csname bbl at intsp@\languagename\endcsname\@empty\else
\ifx\bbl at KVP@intraspace\@nil
@@ -8246,6 +8263,7 @@ help from Bernd Raichle, for which I am grateful.
\fi}%
\fi
\fi
+ % == maparabic ==
% Native digits, if provided in ini (TeX level, xe and lua)
\ifcase\bbl at engine\else
\bbl at ifunset{bbl at dgnat@\languagename}{}%
@@ -8263,6 +8281,7 @@ help from Bernd Raichle, for which I am grateful.
\fi
\fi}%
\fi
+ % == mapdigits ==
% Native digits (lua level).
\ifodd\bbl at engine
\ifx\bbl at KVP@mapdigits\@nil\else
@@ -8299,6 +8318,7 @@ help from Bernd Raichle, for which I am grateful.
}}
\fi
\fi
+ % == require.babel in ini ==
% To load or reaload the babel-*.tex, if require.babel in ini
\bbl at ifunset{bbl at rqtex@\languagename}{}%
{\expandafter\ifx\csname bbl at rqtex@\languagename\endcsname\@empty\else
@@ -8309,6 +8329,7 @@ help from Bernd Raichle, for which I am grateful.
\catcode`\@=\atcatcode
\let\atcatcode\relax
\fi}%
+ % == main ==
\ifx\bbl at KVP@main\@nil % Restore only if not 'main'
\let\languagename\bbl at savelangname
\chardef\localeid\bbl at savelocaleid\relax
@@ -8372,7 +8393,7 @@ help from Bernd Raichle, for which I am grateful.
\fi}%
\expandafter\bbl at tempb\bbl at captionslist\@empty
\else
- \bbl at read@ini{\bbl at KVP@captions}% Here all letters cat = 11
+ \bbl at read@ini{\bbl at KVP@captions}{data}% Here all letters cat = 11
\bbl at after@ini
\bbl at savestrings
\fi
@@ -8396,7 +8417,7 @@ help from Bernd Raichle, for which I am grateful.
\def\bbl at provide@renew#1{%
\ifx\bbl at KVP@captions\@nil\else
\StartBabelCommands*{#1}{captions}%
- \bbl at read@ini{\bbl at KVP@captions}% Here all letters cat = 11
+ \bbl at read@ini{\bbl at KVP@captions}{data}% Here all letters cat = 11
\bbl at after@ini
\bbl at savestrings
\EndBabelCommands
@@ -8407,6 +8428,7 @@ help from Bernd Raichle, for which I am grateful.
\bbl at savedate
\EndBabelCommands
\fi
+ % == hyphenrules ==
\bbl at provide@hyphens{#1}}
% \end{macrocode}
%
@@ -8458,7 +8480,7 @@ help from Bernd Raichle, for which I am grateful.
% key/value pair. \textit{TODO - Work in progress.}
%
% \begin{macrocode}
-\def\bbl at read@ini#1{%
+\def\bbl at read@ini#1#2{%
\openin1=babel-#1.ini % FIXME - number must not be hardcoded
\ifeof1
\bbl at error
@@ -8474,11 +8496,12 @@ help from Bernd Raichle, for which I am grateful.
\def\bbl at inipreread##1=##2\@@{%
\bbl at trim@def\bbl at tempa{##1}% Redundant below !!
% Move trims here ??
- \bbl at ifunset{bbl at KVP@\bbl at section/\bbl at tempa}%
+ \bbl at ifunset{bbl at KVP@\bbl at section..\bbl at tempa}%
{\expandafter\bbl at inireader\bbl at tempa=##2\@@}%
{}}%
\let\bbl at inireader\bbl at iniskip
- \bbl at info{Importing data from babel-#1.ini for \languagename}%
+ \bbl at info{Importing #2 for \languagename\\%
+ from babel-#1.ini. Reported}%
\loop
\if T\ifeof1F\fi T\relax % Trick, because inside \loop
\endlinechar\m at ne
@@ -8507,12 +8530,14 @@ help from Bernd Raichle, for which I am grateful.
\@nameuse{bbl at secpost@\bbl at section}% ends previous section
\def\bbl at section{#1}%
\def\bbl at elt##1##2{%
- \@namedef{bbl at KVP@#1/##1}{}}%
+ \@namedef{bbl at KVP@#1..##1}{}}%
\@nameuse{bbl at renew@#1}%
\@nameuse{bbl at secpre@#1}% starts current section
\bbl at ifunset{bbl at inikv@#1}%
{\let\bbl at inireader\bbl at iniskip}%
{\bbl at exp{\let\\\bbl at inireader\<bbl at inikv@#1>}}}
+\def\bbl at renewinikey#1..#2\@@#3{%
+ \bbl at csarg\bbl at add{renew@#1}{\bbl at elt{#2}{#3}}}
% \end{macrocode}
%
% Reads a key=val line and stores the trimmed val in
@@ -8543,6 +8568,9 @@ help from Bernd Raichle, for which I am grateful.
% the |ini| file. The following macros are the readers for
% |identification| and |typography|.
%
+% \changes{babel~3.36}{2019/10/30}{New fields for CJK, because OpenType
+% and the CLDR follow different models.}
+%
% \begin{macrocode}
\let\bbl at inikv@identification\bbl at inikv
\def\bbl at secpost@identification{%
@@ -8719,7 +8747,7 @@ help from Bernd Raichle, for which I am grateful.
% \begin{macrocode}
\def\bbl at provide@lsys#1{%
\bbl at ifunset{bbl at lname@#1}%
- {\bbl at ini@ids{#1}}%
+ {\bbl at ini@basic{#1}}%
{}%
\bbl at csarg\let{lsys@#1}\@empty
\bbl at ifunset{bbl at sname@#1}{\bbl at csarg\gdef{sname@#1}{Default}}{}%
@@ -8743,19 +8771,19 @@ help from Bernd Raichle, for which I am grateful.
% \changes{babel~3.34}{2019/08/05}{Added \cs{endinput}.}
%
% \begin{macrocode}
-\def\bbl at ini@ids#1{%
+\def\bbl at ini@basic#1{%
\def\BabelBeforeIni##1##2{%
\begingroup
\bbl at add\bbl at secpost@identification{\closein1 }%
\catcode`\[=12 \catcode`\]=12 \catcode`\==12 %
- \bbl at read@ini{##1}%
- \endinput
- \endgroup}% boxed, to avoid extra spaces:
+ \bbl at read@ini{##1}{font and identification data}%
+ \endinput % babel- .tex may contain onlypreamble's
+ \endgroup}% boxed, to avoid extra spaces:
{\setbox\z@\hbox{\InputIfFileExists{babel-#1.tex}{}{}}}}
-% \end{macrocode}
-%
% \section{Adjusting the Babel bahavior}
%
+% \changes{babel~3.36}{2019/10/30}{New macro \cs{babeladjust}}
+%
% A generic high level inteface is provided to adjust some global
% and general settings.
%
@@ -9905,13 +9933,25 @@ help from Bernd Raichle, for which I am grateful.
% or variant language, for which an already defined hyphenation
% table can be used.
%
+% \changes{babel~3.36}{2019/11/07}{Improved message, now showing the
+% language name}
+%
% \begin{macrocode}
\def\bbl at version{<@version@>}
\def\bbl at date{<@date@>}
\def\adddialect#1#2{%
\global\chardef#1#2\relax
\bbl at usehooks{adddialect}{{#1}{#2}}%
- \wlog{\string#1 = a dialect from \string\language#2}}
+ \begingroup
+ \count@#1\relax
+ \def\bbl at elt##1##2##3##4{%
+ \ifnum\count@=##2\relax
+ \bbl at info{\string#1 = using hyphenrules for ##1\\%
+ (\string\language\the\count@)}%
+ \def\bbl at elt####1####2####3####4{}%
+ \fi}%
+ \bbl at languages
+ \endgroup}
% \end{macrocode}
%
% \end{macro}
@@ -11436,7 +11476,7 @@ help from Bernd Raichle, for which I am grateful.
\bbl at ifunset{bbl@##1dflt@}%
{\@nameuse{##1family}%
\bbl at csarg\gdef{WFF@\f at family}{}% Flag
- \bbl at exp{\\\bbl at add\\\bbl at tempa{* \<##1family> / \f at family\\\\%
+ \bbl at exp{\\\bbl at add\\\bbl at tempa{* \<##1family>= \f at family\\\\%
\space\space\fontname\font\\\\}}%
\bbl at csarg\xdef{##1dflt@}{\f at family}%
\expandafter\xdef\csname ##1default\endcsname{\f at family}}%
@@ -12623,7 +12663,7 @@ help from Bernd Raichle, for which I am grateful.
% are `on'.}
%
% The file \textsf{babel-data-bidi.lua} currently only contains data. It is
-% a large and boring file and it's not shown here (see the generated file),
+% a large and boring file and it is not shown here (see the generated file),
% but here is a sample:
%\begin{verbatim}
% [0x25]={d='et'},
@@ -12662,7 +12702,7 @@ Babel.ranges={
{0x100000, 0x10FFFD, 'on'} -- PUA
}
-Babel.bidi_props={
+Babel.characters={
[0x0]={d='bn'},
[0x1]={d='bn'},
[0x2]={d='bn'},
@@ -18721,26 +18761,6 @@ Babel.bidi_props={
[0xE007E]={d='bn'},
[0xE007F]={d='bn'}
}
-
-Babel.characters = setmetatable ( Babel.bidi_props, {
- __index = function(_, k)
- if (k >= 0x0590 and k <= 0x05FF) then return {d='r'} end
- if (k >= 0x0600 and k <= 0x07BF) then return {d='al'} end
- if (k >= 0x07C0 and k <= 0x085F) then return {d='r'} end
- if (k >= 0x0860 and k <= 0x086F) then return {d='al'} end
- if (k >= 0x08A0 and k <= 0x08FF) then return {d='al'} end
- if (k >= 0xE000 and k <= 0xF8FF) then return {d='on'} end -- PUA
- if (k >= 0xFB1D and k <= 0xFB4F) then return {d='r'} end
- if (k >= 0xFB50 and k <= 0xFDFF) then return {d='al'} end
- if (k >= 0xFE70 and k <= 0xFEFF) then return {d='al'} end
- if (k >= 0x10800 and k <= 0x10C4F) then return {d='r'} end
- if (k >= 0x1E800 and k <= 0x1E8DF) then return {d='r'} end
- if (k >= 0x1E900 and k <= 0x1E95F) then return {d='r'} end
- if (k >= 0x1F300 and k <= 0x1F9FF) then return {d='on'} end
- if (k >= 0xF0000 and k <= 0xFFFFD) then return {d='on'} end -- PUA
- if (k >= 0x100000 and k <= 0x10FFFD) then return {d='on'} end -- PUA
- end })
-
%</bididata>
% \end{macrocode}
%\fi
@@ -19448,7 +19468,7 @@ end
%
% \section{Data for CJK}
%
-% It is a boring file and it's not shown here (see the generated file),
+% It is a boring file and it is not shown here (see the generated file),
% but here is a sample:
%\begin{verbatim}
% [0x0021]={c='ex'},
@@ -19745,11 +19765,15 @@ Babel.cjk_breaks = {
%
% \changes{babel-3.32}{2019/05/21}{Don't set it to
% \cs{l at nohyphenation}, best reserved fo special uses.}
+% \changes{babel~3.36}{2019/10/30}{Add nil to the language list.}
%
% \begin{macrocode}
\ifx\l at nil\@undefined
\newlanguage\l at nil
\@namedef{bbl at hyphendata@\the\l at nil}{{}{}}% Remove warning
+ \let\bbl at elt\relax
+ \edef\bbl at languages{% Add it to the list of languages
+ \bbl at languages\bbl at elt{nil}{\the\l at nil}{}{}}
\fi
% \end{macrocode}
%
diff --git a/babel.ins b/babel.ins
index 787498c..e12e3c0 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{2019/11/04}
+\def\filedate{2019/11/14}
\def\batchfile{babel.ins}
\input docstrip.tex
diff --git a/babel.pdf b/babel.pdf
index 7a85f32..f1eafff 100644
Binary files a/babel.pdf and b/babel.pdf differ
diff --git a/bbcompat.dtx b/bbcompat.dtx
index 82a1c9f..ea75355 100644
--- a/bbcompat.dtx
+++ b/bbcompat.dtx
@@ -30,7 +30,7 @@
%
% \iffalse
%<*dtx>
-\ProvidesFile{bbcompat.dtx}[2019/11/04 v3.35.1815]
+\ProvidesFile{bbcompat.dtx}[2019/11/14 v3.36]
%</dtx>
%
%% File 'bbcompat.dtx'
diff --git a/locale/zh/babel-zh-Hans-HK.ini b/locale/zh/babel-zh-Hans-HK.ini
index 96373a6..2b20813 100644
--- a/locale/zh/babel-zh-Hans-HK.ini
+++ b/locale/zh/babel-zh-Hans-HK.ini
@@ -15,7 +15,7 @@ version = 1.3
date = 2019-10-30
name.local = 中文
name.english = Chinese
-name.opentype = Chinese Hong Kong
+name.opentype = Chinese Simplified
name.babel = chinese-simplified-hongkongsarchina
name.babel.A = chinese-hans-hk
tag.bcp47 = zh
diff --git a/locale/zh/babel-zh-Hant-HK.ini b/locale/zh/babel-zh-Hant-HK.ini
index b8f435f..0f00977 100644
--- a/locale/zh/babel-zh-Hant-HK.ini
+++ b/locale/zh/babel-zh-Hant-HK.ini
@@ -15,11 +15,11 @@ version = 1.3
date = 2019-10-30
name.local = 中文
name.english = Chinese
-name.opentype = Chinese Hong Kong
+name.opentype = Chinese Traditional
name.babel = chinese-traditional-hongkongsarchina
name.babel.A = chinese-hant-hk
tag.bcp47 = zh
-tag.opentype = ZHS
+tag.opentype = ZHT
region.local = 中國香港特別行政區
region.english = Hong Kong SAR China
region.tag.bcp47 = HK
diff --git a/locale/zh/babel-zh-Hant-MO.ini b/locale/zh/babel-zh-Hant-MO.ini
index d3e5ad4..ffdc687 100644
--- a/locale/zh/babel-zh-Hant-MO.ini
+++ b/locale/zh/babel-zh-Hant-MO.ini
@@ -19,7 +19,7 @@ name.opentype = Chinese Traditional
name.babel = chinese-traditional-macausarchina
name.babel.A = chinese-hant-mo
tag.bcp47 = zh
-tag.opentype = ZHS
+tag.opentype = ZHT
region.local = 中國澳門特別行政區
region.english = Macau SAR China
region.tag.bcp47 = MO
diff --git a/locale/zh/babel-zh-Hant.ini b/locale/zh/babel-zh-Hant.ini
index 2347e72..ed0139a 100644
--- a/locale/zh/babel-zh-Hant.ini
+++ b/locale/zh/babel-zh-Hant.ini
@@ -19,7 +19,7 @@ name.opentype = Chinese Traditional
name.babel = chinese-traditional
name.babel.A = chinese-hant
tag.bcp47 = zh
-tag.opentype = ZHS
+tag.opentype = ZHT
script.name = Traditional
script.name.opentype = CJK
script.tag.bcp47 = Hant
diff --git a/samples/harf-farsi-malayalam.pdf b/samples/harf-farsi-malayalam.pdf
index d7a699d..4e3d113 100644
Binary files a/samples/harf-farsi-malayalam.pdf and b/samples/harf-farsi-malayalam.pdf differ
diff --git a/samples/harf-farsi-malayalam.tex b/samples/harf-farsi-malayalam.tex
index 22c6e68..3c04713 100644
--- a/samples/harf-farsi-malayalam.tex
+++ b/samples/harf-farsi-malayalam.tex
@@ -1,14 +1,14 @@
\documentclass{article}
-\usepackage{harfload}
-
\usepackage[bidi=basic]{babel}
\babelprovide[main, import]{persian}
\babelprovide[import]{malayalam}
-\babelfont{rm}[RawFeature={mode=harf}]{Amiri}
-\babelfont[malayalam]{rm}[RawFeature={mode=harf}]{FreeSerif} %{Kartika}
+\babelfont{rm}[Renderer=Harfbuzz]{Amiri}
+\babelfont[malayalam]{rm}[Renderer=Harfbuzz]{FreeSerif}
+
+\babeladjust{ bidi.mirroring = off } % Harf does mirroring
\begin{document}
@@ -35,4 +35,8 @@
ഉപയോഗിക്കുന്നു എന്നാൽ പഴയ് ഹാർഫ്ബസ് ഓപ്പൺടൈപ്പ് ഫോണ്ടുകൾ മാത്രമേ
പിൻതുണക്കുകയുള്ളൂ.
+\medskip
+
+Typeset with luahblatex. Requires luaotfload 3.11.
+
\end{document}
\ No newline at end of file
More information about the latex3-commits
mailing list