[latex3-commits] [git/LaTeX3-latex3-babel] master: \babeladjust (for #14). el-polyton. Lang/Script for zh, ko. (6774487)
Javier
jbezos at dante.de
Mon Nov 4 18:39:57 CET 2019
Repository : https://github.com/latex3/babel
On branch : master
Link : https://github.com/latex3/babel/commit/6774487bc8e7bed9d881e8f4c636c703d0770f7e
>---------------------------------------------------------------
commit 6774487bc8e7bed9d881e8f4c636c703d0770f7e
Author: Javier <jbezos at localhost>
Date: Mon Nov 4 18:39:57 2019 +0100
\babeladjust (for #14). el-polyton. Lang/Script for zh, ko.
* el-polyton.ini contributed by C. Beccari
>---------------------------------------------------------------
6774487bc8e7bed9d881e8f4c636c703d0770f7e
README.md | 11 +-
babel.dtx | 208 ++++++++++++++++-----
babel.ins | 2 +-
babel.pdf | Bin 702531 -> 708024 bytes
bbcompat.dtx | 2 +-
locale/el/babel-el-polyton.ini | 180 ++++++++++++++++++
.../babel-polytonicgreek.tex} | 2 +-
locale/ko/babel-ko.ini | 5 +-
locale/zh/babel-zh-Hans-HK.ini | 6 +-
locale/zh/babel-zh-Hans-MO.ini | 6 +-
locale/zh/babel-zh-Hans-SG.ini | 7 +-
locale/zh/babel-zh-Hans.ini | 6 +-
locale/zh/babel-zh-Hant-HK.ini | 6 +-
locale/zh/babel-zh-Hant-MO.ini | 6 +-
locale/zh/babel-zh-Hant.ini | 6 +-
locale/zh/babel-zh.ini | 7 +-
samples/harf-fa-ml.pdf | Bin 42196 -> 0 bytes
samples/harf-farsi-malayalam.pdf | Bin 0 -> 39076 bytes
.../{harf-fa-ml.tex => harf-farsi-malayalam.tex} | 0
samples/lua-polygreek.pdf | Bin 0 -> 20464 bytes
samples/lua-polygreek.tex | 65 +++++++
21 files changed, 459 insertions(+), 66 deletions(-)
diff --git a/README.md b/README.md
index d0aa434..cecd26a 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-## Babel 3.35
+## Babel 3.35.1815
This package manages culturally-determined typographical (and other)
rules, and hyphenation patterns for a wide range of languages. Many
@@ -51,6 +51,15 @@ respective authors.
### Latest changes
```
+3.36 2019-??-??
+ - 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.
+ - Fix - Language and script set for Chinese Tradicional and
+ Chinese Simplified.
+
3.35 2019-10-15
- \markboth and \markright made robust with a recent LaTeX.
- Shorthands work in bibs and refs even with safe=none.
diff --git a/babel.dtx b/babel.dtx
index 398c5e4..eb040d7 100644
--- a/babel.dtx
+++ b/babel.dtx
@@ -31,7 +31,7 @@
%
% \iffalse
%<*filedriver>
-\ProvidesFile{babel.dtx}[2019/10/15 v3.35 The Babel package]
+\ProvidesFile{babel.dtx}[2019/11/04 v3.35.1815 The Babel package]
\documentclass{ltxdoc}
\GetFileInfo{babel.dtx}
\usepackage{fontspec}
@@ -1235,16 +1235,14 @@ for auxiliary tasks).
\end{verbatim}
\endgroup
Khemer clusters are rendered wrongly.
-\item[East Asia scripts] Internal inconsistencies in script and
- language names must be sorted out, so you may need to set them
- explicitly in |\babelfont|, as well as |CJKShape|. \luatex{} does
- basic line breaking, but currently \xetex{} does not (you may load
- \textsf{zhspacing}). Although for a few words and shorts texts the
- |ini| files should be fine, CJK texts are are best set with a
- dedicated framework (\textsf{CJK}, \textsf{luatexja}, \textsf{kotex},
- \textsf{CTeX}...), . Actually, this is what the |ldf| does in
- |japanese| with \luatex, because the following piece of code loads
- \textsf{luatexja}:
+\item[East Asia scripts] Settings for either Simplified of Tradicional
+should work out of the box. \luatex{} does basic line breaking, but
+currently \xetex{} does not (you may load \textsf{zhspacing}). Although
+for a few words and shorts texts the |ini| files should be fine, CJK
+texts are best set with a dedicated framework (\textsf{CJK},
+\textsf{luatexja}, \textsf{kotex}, \textsf{CTeX}, etc.). Actually, this
+is what the |ldf| does in |japanese| with \luatex, because the
+following piece of code loads \textsf{luatexja}:
\begin{verbatim}
\documentclass{ltjbook}
\usepackage[japanese]{babel}
@@ -2081,10 +2079,13 @@ 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 an “empty” one in the following way: defines
-the internal structure of the language with some defaults: the hyphen
-rules, if not available, are set to the current ones, left and right
-hyphen mins are set to 2 and 3, but captions and date are not defined.
+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
+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.
+
Conveniently, some options allow to fill the language, and \babel{}
warns you about what to do if there is a missing string. Very likely
you will find alerts like that in the |log| file:
@@ -3006,6 +3007,20 @@ For example:
This command is allowed only in vertical mode (the preamble or between
paragraphs).
+\subsection{Tweaking some features}
+
+\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|,
+|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|).
+
\subsection{Tips, workarounds, known issues and notes}
\begin{itemize}
@@ -4073,8 +4088,8 @@ help from Bernd Raichle, for which I am grateful.
% \section{Tools}
%
% \begin{macrocode}
-%<<version=3.35>>
-%<<date=2019/10/15>>
+%<<version=3.35.1815>>
+%<<date=2019/11/04>>
% \end{macrocode}
%
% \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -8122,18 +8137,19 @@ 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.
- \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}{}{}}}}%
- {}%
+ % 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}{}{}}}}%
+% {}%
% -
% Override script and language names with script= and language=
\ifx\bbl at KVP@script\@nil\else
@@ -8530,10 +8546,14 @@ help from Bernd Raichle, for which I am grateful.
% \begin{macrocode}
\let\bbl at inikv@identification\bbl at inikv
\def\bbl at secpost@identification{%
- \bbl at exportkey{lname}{identification.name.english}{}%
+ \bbl at ifunset{bbl@@kv at identification.name.opentype}%
+ {\bbl at exportkey{lname}{identification.name.english}{}}%
+ {\bbl at exportkey{lname}{identification.name.opentype}{}}%
\bbl at exportkey{lbcp}{identification.tag.bcp47}{}%
\bbl at exportkey{lotf}{identification.tag.opentype}{dflt}%
- \bbl at exportkey{sname}{identification.script.name}{}%
+ \bbl at ifunset{bbl@@kv at identification.script.name.opentype}%
+ {\bbl at exportkey{sname}{identification.script.name}{}}%
+ {\bbl at exportkey{sname}{identification.script.name.opentype}{}}%
\bbl at exportkey{sbcp}{identification.script.tag.bcp47}{}%
\bbl at exportkey{sotf}{identification.script.tag.opentype}{DFLT}}
\let\bbl at inikv@typography\bbl at inikv
@@ -8734,7 +8754,68 @@ help from Bernd Raichle, for which I am grateful.
{\setbox\z@\hbox{\InputIfFileExists{babel-#1.tex}{}{}}}}
% \end{macrocode}
%
-% \section{The kernel of Babel (\texttt{babel.def}, only \LaTeX)}
+% \section{Adjusting the Babel bahavior}
+%
+% A generic high level inteface is provided to adjust some global
+% and general settings.
+%
+% \begin{macrocode}
+\newcommand\babeladjust[1]{% TODO. Error handling.
+ \bbl at forkv{#1}{\@nameuse{bbl at ADJ@##1@##2}}}
+%
+\def\bbl at adjust@lua#1#2{%
+ \ifvmode
+ \ifnum\currentgrouplevel=\z@
+ \directlua{ Babel.#2 }%
+ \expandafter\expandafter\expandafter\@gobble
+ \fi
+ \fi
+ {\bbl at error % The error is gobbled if everything went ok.
+ {Currently, #1 related features can be adjusted only\\%
+ in the main vertical list.}%
+ {Maybe things change in the future, but this is what it is.}}}
+\@namedef{bbl at ADJ@bidi.mirroring at on}{%
+ \bbl at adjust@lua{bidi}{mirroring_enabled=true}}
+\@namedef{bbl at ADJ@bidi.mirroring at off}{%
+ \bbl at adjust@lua{bidi}{mirroring_enabled=false}}
+\@namedef{bbl at ADJ@bidi.text at on}{%
+ \bbl at adjust@lua{bidi}{bidi_enabled=true}}
+\@namedef{bbl at ADJ@bidi.text at off}{%
+ \bbl at adjust@lua{bidi}{bidi_enabled=false}}
+\@namedef{bbl at ADJ@bidi.mapdigits at on}{%
+ \bbl at adjust@lua{bidi}{digits_mapped=true}}
+\@namedef{bbl at ADJ@bidi.mapdigits at off}{%
+ \bbl at adjust@lua{bidi}{digits_mapped=false}}
+%
+\@namedef{bbl at ADJ@linebreak.sea at on}{%
+ \bbl at adjust@lua{linebreak}{sea_enabled=true}}
+\@namedef{bbl at ADJ@linebreak.sea at off}{%
+ \bbl at adjust@lua{linebreak}{sea_enabled=false}}
+\@namedef{bbl at ADJ@linebreak.cjk at on}{%
+ \bbl at adjust@lua{linebreak}{cjk_enabled=true}}
+\@namedef{bbl at ADJ@linebreak.cjk at off}{%
+ \bbl at adjust@lua{linebreak}{cjk_enabled=false}}
+%
+\def\bbl at adjust@layout#1{%
+ \ifvmode
+ #1%
+ \expandafter\@gobble
+ \fi
+ {\bbl at error % The error is gobbled if everything went ok.
+ {Currently, layout related features can be adjusted only\\%
+ in vertical mode.}%
+ {Maybe things change in the future, but this is what it is.}}}
+\@namedef{bbl at ADJ@layout.tabular at on}{%
+ \bbl at adjust@layout{\let\@tabular\bbl at NL@@tabular}}
+\@namedef{bbl at ADJ@layout.tabular at off}{%
+ \bbl at adjust@layout{\let\@tabular\bbl at OL@@tabular}}
+\@namedef{bbl at ADJ@layout.lists at on}{%
+ \bbl at adjust@layout{\let\list\bbl at NL@list}}
+\@namedef{bbl at ADJ@layout.lists at on}{%
+ \bbl at adjust@layout{\let\list\bbl at OL@list}}
+% \end{macrocode}
+%
+% \section{The kernel of Babel (\texttt{babel.def} for \LaTeX only)}
%
% \subsection{The redefinition of the style commands}
%
@@ -11677,7 +11758,7 @@ help from Bernd Raichle, for which I am grateful.
\fi
\IfBabelLayout{lists}
{\bbl at sreplace\list
- {\@totalleftmargin\leftmargin}{\@totalleftmargin\bbl at listleftmargin}%
+ {\@totalleftmargin\leftmargin}{\@totalleftmargin\bbl at listleftmargin}%
\def\bbl at listleftmargin{%
\ifcase\bbl at thepardir\leftmargin\else\rightmargin\fi}%
\ifcase\bbl at engine
@@ -12441,15 +12522,17 @@ help from Bernd Raichle, for which I am grateful.
\IfBabelLayout{tabular}
{\let\bbl at OL@@tabular\@tabular
\bbl at replace\@tabular{$}{\bbl at nextfake$}%
- \let\bbl at tabular\@tabular
+ \let\bbl at NL@@tabular\@tabular
\AtBeginDocument{%
- \ifx\bbl at tabular\@tabular\else
+ \ifx\bbl at NL@@tabular\@tabular\else
\bbl at replace\@tabular{$}{\bbl at nextfake$}%
+ \let\bbl at NL@@tabular\@tabular
\fi}}
{}
\IfBabelLayout{lists}
{\let\bbl at OL@list\list
\bbl at sreplace\list{\parshape}{\bbl at listparshape}%
+ \let\bbl at NL@list\list
\def\bbl at listparshape#1#2#3{%
\parshape #1 #2 #3 %
\ifnum\bbl at getluadir{page}=\bbl at getluadir{par}\else
@@ -12540,8 +12623,20 @@ 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's not shown here (see the generated file),
+% but here is a sample:
+%\begin{verbatim}
+% [0x25]={d='et'},
+% [0x26]={d='on'},
+% [0x27]={d='on'},
+% [0x28]={d='on', m=0x29},
+% [0x29]={d='on', m=0x28},
+% [0x2A]={d='on'},
+% [0x2B]={d='es'},
+% [0x2C]={d='cs'},
+%\end{verbatim}
+% For the meaning of these codes, see the Unicode standard.
+%
%\iffalse
% \begin{macrocode}
%<*bididata>
@@ -12549,8 +12644,6 @@ help from Bernd Raichle, for which I am grateful.
Babel = Babel or {}
--- TODO: merge ranges into characters, as meta index
-
Babel.ranges={
{0x0590, 0x05FF, 'r'},
{0x0600, 0x07BF, 'al'},
@@ -12569,7 +12662,7 @@ Babel.ranges={
{0x100000, 0x10FFFD, 'on'} -- PUA
}
-Babel.characters={
+Babel.bidi_props={
[0x0]={d='bn'},
[0x1]={d='bn'},
[0x2]={d='bn'},
@@ -18628,6 +18721,26 @@ Babel.characters={
[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
@@ -18650,7 +18763,7 @@ Babel.characters={
% \end{quote}
%
% Well, it took me some time to guess what the batch rules in UAX\#9
-% actually mean (in other word, \textit{what} they do and\textit{why},
+% actually mean (in other word, \textit{what} they do and \textit{why},
% and not only \textit{how}), but I think (or I hope) I've managed to
% understand them.
%
@@ -19335,7 +19448,18 @@ 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's not shown here (see the generated file),
+% but here is a sample:
+%\begin{verbatim}
+% [0x0021]={c='ex'},
+% [0x0024]={c='pr'},
+% [0x0025]={c='po'},
+% [0x0028]={c='op'},
+% [0x0029]={c='cp'},
+% [0x002B]={c='pr'},
+%\end{verbatim}
+% For the meaning of these codes, see the Unicode standard.
+%
%\iffalse
% \begin{macrocode}
%<*cjkdata>
diff --git a/babel.ins b/babel.ins
index f8a7dbb..787498c 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/10/15}
+\def\filedate{2019/11/04}
\def\batchfile{babel.ins}
\input docstrip.tex
diff --git a/babel.pdf b/babel.pdf
index fe5f5e8..7a85f32 100644
Binary files a/babel.pdf and b/babel.pdf differ
diff --git a/bbcompat.dtx b/bbcompat.dtx
index 2692f30..82a1c9f 100644
--- a/bbcompat.dtx
+++ b/bbcompat.dtx
@@ -30,7 +30,7 @@
%
% \iffalse
%<*dtx>
-\ProvidesFile{bbcompat.dtx}[2019/10/15 v3.35]
+\ProvidesFile{bbcompat.dtx}[2019/11/04 v3.35.1815]
%</dtx>
%
%% File 'bbcompat.dtx'
diff --git a/locale/el/babel-el-polyton.ini b/locale/el/babel-el-polyton.ini
new file mode 100644
index 0000000..79dea94
--- /dev/null
+++ b/locale/el/babel-el-polyton.ini
@@ -0,0 +1,180 @@
+; This file is part of babel. For further details see:
+; https://www.ctan.org/pkg/babel
+; This file has been contributed by Claudio Beccari
+
+[identification]
+charset = utf8
+version = 0.1
+date = 2010-10-01
+name.local = Ἐλληνικά
+; Name from https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry
+name.english = Polytonic Greek
+name.babel = greek
+tag.bcp47 = el-polyton
+tag.opentype = PGR
+script.name = Greek
+script.tag.bcp47 = Grek
+script.tag.opentype = grek
+level = 1
+encodings = LGR
+derivate = no
+
+[captions]
+preface = Πρόλογος
+ref = Ἀναφορές
+abstract = Περίληψη
+bib = Βιβλιογραφία
+chapter = Κεφάλαιο
+appendix = Παράρτημα
+contents = Περιεχόμενα
+listfigure = Κατάλογος Σχημάτων
+listtable = Κατάλογος Πινάκων
+index = Εὑρετήριο
+figure = Σχῆμα
+table = Πίνακας
+part = Μέρος
+encl = Συνημμένα
+cc = Κοινοποίηση
+headto = Πρὸς
+page = Σελίδα
+see = βλέπε
+also = βλέπε ἐπίσης
+proof = Ἀπόδειξη
+glossary = Γλωσσάρι
+
+[captions.licr]
+preface = \textPi\textrho\'\textomicron\textlambda\textomicron\textgamma\textomicron\textvarsigma
+ref = \accpsili\textAlpha\textnu\textalpha\textphi\textomicron\textrho\'\textepsilon\textvarsigma
+abstract = \textPi\textepsilon\textrho\'\textiota\textlambda\texteta\textpsi\texteta
+bib = \textBeta\textiota\textbeta\textlambda\textiota\textomicron\textgamma\textrho\textalpha\textphi\'\textiota\textalpha
+chapter = \textKappa\textepsilon\textphi\'\textalpha\textlambda\textalpha\textiota\textomicron
+appendix = \textPi\textalpha\textrho\'\textalpha\textrho\texttau\texteta\textmu\textalpha
+contents = \textPi\textepsilon\textrho\textiota\textepsilon\textchi\'\textomicron\textmu\textepsilon\textnu\textalpha
+listfigure = \textKappa\textalpha\texttau\'\textalpha\textlambda\textomicron\textgamma\textomicron\textvarsigma\space \textSigma\textchi\texteta\textmu\'\textalpha\texttau\textomega\textnu
+listtable = \textKappa\textalpha\texttau\'\textalpha\textlambda\textomicron\textgamma\textomicron\textvarsigma\space \textPi\textiota\textnu\'\textalpha\textkappa\textomega\textnu
+index = \textEpsilon\accdasia\textupsilon\textrho\textepsilon\texttau\'\texteta\textrho\textiota\textomicron
+figure = \textSigma\textchi\'\texteta\textmu\textalpha
+table = \textPi\'\textiota\textnu\textalpha\textkappa\textalpha\textvarsigma
+part = \textMu\'\textepsilon\textrho\textomicron\textvarsigma
+encl = \textSigma\textupsilon\textnu\texteta\textmu\textmu\'\textepsilon\textnu\textalpha
+cc = \textKappa\textomicron\textiota\textnu\textomicron\textpi\textomicron\'\textiota\texteta\textsigma\texteta
+headto = \textPi\textrho\textomicron\textvarsigma
+page = \textSigma\textepsilon\textlambda\'\textiota\textdelta\textalpha
+see = \textbeta\textlambda\'\textepsilon\textpi\textepsilon
+also = \textbeta\textlambda\'\textepsilon\textpi\textepsilon\space \>\textepsilon\textpi\'\textiota\textsigma\texteta\textvarsigma
+proof = \>\textAlpha\textpi\'\textomicron\textdelta\textepsilon\textiota\textxi\texteta
+glossary = \textGamma\textlambda\textomega\textsigma\textsigma\'\textalpha\textrho\textiota
+
+[date.gregorian]
+date.long = [d] [MMMM] [y]
+date.short = [d]/[M]/[yy]
+months.wide.1 = Ἰανουαρίου
+months.wide.2 = Φεβρουαρίου
+months.wide.3 = Μαρτίου
+months.wide.4 = Ἀπριλίου
+months.wide.5 = Μαΐου
+months.wide.6 = Ἰουνίου
+months.wide.7 = Ἰουλίου
+months.wide.8 = Αὐγούστου
+months.wide.9 = Σεπτεμβρίου
+months.wide.10 = Ὀκτωβρίου
+months.wide.11 = Νοεμβρίου
+months.wide.12 = Δεκεμβρίου
+months.narrow.1 = Ι
+months.narrow.2 = Φ
+months.narrow.3 = Μ
+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 = Δευτέρα
+days.wide.tue = Τρίτη
+days.wide.wed = Τετάρτη
+days.wide.thu = Πέμπτη
+days.wide.fri = Παρασκευή
+days.wide.sat = Σάββατο
+days.wide.sun = Κυριακή
+days.abbreviated.mon = Δευ
+days.abbreviated.tue = Τρί
+days.abbreviated.wed = Τετ
+days.abbreviated.thu = Πέμ
+days.abbreviated.fri = Παρ
+days.abbreviated.sat = Σάβ
+days.abbreviated.sun = Κυρ
+days.narrow.mon = Δ
+days.narrow.tue = Τ
+days.narrow.wed = Τ
+days.narrow.thu = Π
+days.narrow.fri = Π
+days.narrow.sat = Σ
+days.narrow.sun = Κ
+dayPeriods.abbreviated.am = π.μ.
+dayPeriods.abbreviated.pm = μ.μ.
+dayPeriods.narrow.am = πμ
+dayPeriods.narrow.pm = μμ
+dayPeriods.wide.am = π.μ.
+dayPeriods.wide.pm = μ.μ.
+
+[date.gregorian.licr]
+months.wide.1 = \accpsili\textIota\textalpha\textnu\textomicron\textupsilon\textalpha\textrho\'\textiota\textomicron\textupsilon
+months.wide.2 = \textPhi\textepsilon\textbeta\textrho\textomicron\textupsilon\textalpha\textrho\'\textiota\textomicron\textupsilon
+months.wide.3 = \textMu\textalpha\textrho\texttau\'\textiota\textomicron\textupsilon
+months.wide.4 = \accpsili\textAlpha\textpi\textrho\textiota\textlambda\'\textiota\textomicron\textupsilon
+months.wide.5 = \textMu\textalpha\textdialytikatonos\textiota\textomicron\textupsilon
+months.wide.6 = \accpsili\textIota\textomicron\textupsilon\textnu\'\textiota\textomicron\textupsilon
+months.wide.7 = \accpsili\textIota\textomicron\textupsilon\textlambda\'\textiota\textomicron\textupsilon
+months.wide.8 = \accpsili\textAlpha\textupsilon\textgamma\textomicron\'\textupsilon\textsigma\texttau\textomicron\textupsilon
+months.wide.9 = \textSigma\textepsilon\textpi\texttau\textepsilon\textmu\textbeta\textrho\'\textiota\textomicron\textupsilon
+months.wide.10 = \accpsili\textOmicron\textkappa\texttau\textomega\textbeta\textrho\'\textiota\textomicron\textupsilon
+months.wide.11 = \textNu\textomicron\textepsilon\textmu\textbeta\textrho\'\textiota\textomicron\textupsilon
+months.wide.12 = \textDelta\textepsilon\textkappa\textepsilon\textmu\textbeta\textrho\'\textiota\textomicron\textupsilon
+
+[time.gregorian]
+time.medium = [h]:[mm]:[ss] [a]
+time.short = [h]:[mm] [a]
+
+[typography]
+frenchspacing = no
+hyphenrules = polygreek
+lefthyphenmin = 1
+righthyphenmin = 1
+hyphenchar =
+prehyphenchar =
+posthyphenchar =
+exhyphenchar =
+preexhyphenchar =
+postexhyphenchar =
+hyphenationmin =
+
+[characters]
+delimiters.quotes = «»“”
+auxiliary = [ἀ ἄ ἂ ἆ ἁ ἅ ἃ ἇ ὰ ᾶ ἐ ἔ ἒ ἑ ἕ ἓ ὲ ἠ ἤ ἢ ἦ ἡ ἥ ἣ ἧ ὴ ῆ ἰ ἴ ἲ ἶ ἱ ἵ ἳ ἷ ὶ ῖ ῒ ῗ ὄ ὂ ὃ ὸ ὐ ὔ ὒ ὖ ὑ ὕ ὓ ὗ ὺ ῦ ῢ ῧ ὤ ὢ ὦ ὥ ὣ ὧ ὼ ῶ]
+exemplarCharacters = [α ά β γ δ ε έ ζ η ή θ ι ί ϊ ΐ κ λ μ ν ξ ο ό π ρ σ ς τ υ ύ ϋ ΰ φ χ ψ ω ώ]
+index = [Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ Σ Τ Υ Φ Χ Ψ Ω]
+punctuation = [\\- ‐ – — , ; \\: ! . … \" « » ( ) \\[ \\] § @ * / \\\\ \\&]
+
+[numbers]
+defaultNumberingSystem = latn
+minimumGroupingDigits = 1
+decimal = ,
+exponential = e
+group = .
+infinity = ∞
+list = ;
+minusSign = -
+nan = NaN
+perMille = ‰
+percentSign = %
+plusSign = +
+superscriptingExponent = ×
+
+[counters]
+alph =
+Alph =
+ordinals =
+
diff --git a/locale/af/babel-afrikaans.tex b/locale/el/babel-polytonicgreek.tex
similarity index 88%
copy from locale/af/babel-afrikaans.tex
copy to locale/el/babel-polytonicgreek.tex
index d85248e..6b5f75d 100644
--- a/locale/af/babel-afrikaans.tex
+++ b/locale/el/babel-polytonicgreek.tex
@@ -7,6 +7,6 @@
{Just use babel as documented.}%
\stop
\fi
-\BabelBeforeIni{af}{%
+\BabelBeforeIni{el-polyton}{%
}
\endinput
\ No newline at end of file
diff --git a/locale/ko/babel-ko.ini b/locale/ko/babel-ko.ini
index 09d7b37..d4af85d 100644
--- a/locale/ko/babel-ko.ini
+++ b/locale/ko/babel-ko.ini
@@ -11,14 +11,15 @@
[identification]
charset = utf8
-version = 1.1
-date = 2019-05-05
+version = 1.2
+date = 2019-10-30
name.local = 한국어
name.english = Korean
name.babel = korean
tag.bcp47 = ko
tag.opentype = KOR
script.name = Korean
+script.name.opentype = CJK
script.tag.bcp47 = Kore
script.tag.opentype = hang
level = 1
diff --git a/locale/zh/babel-zh-Hans-HK.ini b/locale/zh/babel-zh-Hans-HK.ini
index 0aa41f1..96373a6 100644
--- a/locale/zh/babel-zh-Hans-HK.ini
+++ b/locale/zh/babel-zh-Hans-HK.ini
@@ -11,10 +11,11 @@
[identification]
charset = utf8
-version = 1.2
-date = 2019-05-05
+version = 1.3
+date = 2019-10-30
name.local = 中文
name.english = Chinese
+name.opentype = Chinese Hong Kong
name.babel = chinese-simplified-hongkongsarchina
name.babel.A = chinese-hans-hk
tag.bcp47 = zh
@@ -23,6 +24,7 @@ region.local = 中国香港特别行政区
region.english = Hong Kong SAR China
region.tag.bcp47 = HK
script.name = Simplified
+script.name.opentype = CJK
script.tag.bcp47 = Hans
script.tag.opentype = hani
level = 1
diff --git a/locale/zh/babel-zh-Hans-MO.ini b/locale/zh/babel-zh-Hans-MO.ini
index 1b1931c..73f0f0a 100644
--- a/locale/zh/babel-zh-Hans-MO.ini
+++ b/locale/zh/babel-zh-Hans-MO.ini
@@ -11,10 +11,11 @@
[identification]
charset = utf8
-version = 1.2
-date = 2019-05-05
+version = 1.3
+date = 2019-10-30
name.local = 中文
name.english = Chinese
+name.opentype = Chinese Simplified
name.babel = chinese-simplified-macausarchina
name.babel.A = chinese-hans-mo
tag.bcp47 = zh
@@ -23,6 +24,7 @@ region.local = 中国澳门特别行政区
region.english = Macau SAR China
region.tag.bcp47 = MO
script.name = Simplified
+script.name.opentype = CJK
script.tag.bcp47 = Hans
script.tag.opentype = hani
level = 1
diff --git a/locale/zh/babel-zh-Hans-SG.ini b/locale/zh/babel-zh-Hans-SG.ini
index 155f647..0a9219d 100644
--- a/locale/zh/babel-zh-Hans-SG.ini
+++ b/locale/zh/babel-zh-Hans-SG.ini
@@ -11,10 +11,11 @@
[identification]
charset = utf8
-version = 1.2
-date = 2019-05-05
+version = 1.3
+date = 2019-10-30
name.local = 中文
name.english = Chinese
+name.opentype = Chinese Simplified
name.babel = chinese-simplified-singapore
name.babel.A = chinese-hans-sg
tag.bcp47 = zh
@@ -22,8 +23,8 @@ tag.opentype = ZHS
region.local = 新加坡
region.english = Singapore
region.tag.bcp47 = SG
-;;;;;
script.name = Simplified
+script.name.opentype = CJK
script.tag.bcp47 = Hans
script.tag.opentype = hani
level = 1
diff --git a/locale/zh/babel-zh-Hans.ini b/locale/zh/babel-zh-Hans.ini
index 0255e1e..cf872c7 100644
--- a/locale/zh/babel-zh-Hans.ini
+++ b/locale/zh/babel-zh-Hans.ini
@@ -11,15 +11,17 @@
[identification]
charset = utf8
-version = 1.2
-date = 2019-05-05
+version = 1.3
+date = 2019-10-30
name.local = 中文
name.english = Chinese
+name.opentype = Chinese Simplified
name.babel = chinese-simplified
name.babel.A = chinese-hans
tag.bcp47 = zh
tag.opentype = ZHS
script.name = Simplified
+script.name.opentype = CJK
script.tag.bcp47 = Hans
script.tag.opentype = hani
level = 1
diff --git a/locale/zh/babel-zh-Hant-HK.ini b/locale/zh/babel-zh-Hant-HK.ini
index a8406bc..b8f435f 100644
--- a/locale/zh/babel-zh-Hant-HK.ini
+++ b/locale/zh/babel-zh-Hant-HK.ini
@@ -11,10 +11,11 @@
[identification]
charset = utf8
-version = 1.2
-date = 2019-05-05
+version = 1.3
+date = 2019-10-30
name.local = 中文
name.english = Chinese
+name.opentype = Chinese Hong Kong
name.babel = chinese-traditional-hongkongsarchina
name.babel.A = chinese-hant-hk
tag.bcp47 = zh
@@ -23,6 +24,7 @@ region.local = 中國香港特別行政區
region.english = Hong Kong SAR China
region.tag.bcp47 = HK
script.name = Traditional
+script.name.opentype = CJK
script.tag.bcp47 = Hant
script.tag.opentype = hani
level = 1
diff --git a/locale/zh/babel-zh-Hant-MO.ini b/locale/zh/babel-zh-Hant-MO.ini
index bbec335..d3e5ad4 100644
--- a/locale/zh/babel-zh-Hant-MO.ini
+++ b/locale/zh/babel-zh-Hant-MO.ini
@@ -11,10 +11,11 @@
[identification]
charset = utf8
-version = 1.2
-date = 2019-05-05
+version = 1.3
+date = 2019-10-30
name.local = 中文
name.english = Chinese
+name.opentype = Chinese Traditional
name.babel = chinese-traditional-macausarchina
name.babel.A = chinese-hant-mo
tag.bcp47 = zh
@@ -23,6 +24,7 @@ region.local = 中國澳門特別行政區
region.english = Macau SAR China
region.tag.bcp47 = MO
script.name = Traditional
+script.name.opentype = CJK
script.tag.bcp47 = Hant
script.tag.opentype = hani
level = 1
diff --git a/locale/zh/babel-zh-Hant.ini b/locale/zh/babel-zh-Hant.ini
index 5a7fbdb..2347e72 100644
--- a/locale/zh/babel-zh-Hant.ini
+++ b/locale/zh/babel-zh-Hant.ini
@@ -11,15 +11,17 @@
[identification]
charset = utf8
-version = 1.2
-date = 2019-05-05
+version = 1.3
+date = 2019-10-30
name.local = 中文
name.english = Chinese
+name.opentype = Chinese Traditional
name.babel = chinese-traditional
name.babel.A = chinese-hant
tag.bcp47 = zh
tag.opentype = ZHS
script.name = Traditional
+script.name.opentype = CJK
script.tag.bcp47 = Hant
script.tag.opentype = hani
level = 1
diff --git a/locale/zh/babel-zh.ini b/locale/zh/babel-zh.ini
index 659642d..0b7e4b7 100644
--- a/locale/zh/babel-zh.ini
+++ b/locale/zh/babel-zh.ini
@@ -11,15 +11,16 @@
[identification]
charset = utf8
-version = 1.2
-date = 2019-05-05
+version = 1.3
+date = 2019-10-30
name.local = 中文
name.english = Chinese
+name.opentype = Chinese Simplified
name.babel = chinese
tag.bcp47 = zh
tag.opentype = ZHS
-;;;; Nombre correcto ???
script.name = Simplified
+script.name.opentype = CJK
script.tag.bcp47 = Hans
script.tag.opentype = hani
level = 1
diff --git a/samples/harf-fa-ml.pdf b/samples/harf-fa-ml.pdf
deleted file mode 100644
index b891ca5..0000000
Binary files a/samples/harf-fa-ml.pdf and /dev/null differ
diff --git a/samples/harf-farsi-malayalam.pdf b/samples/harf-farsi-malayalam.pdf
new file mode 100644
index 0000000..d7a699d
Binary files /dev/null and b/samples/harf-farsi-malayalam.pdf differ
diff --git a/samples/harf-fa-ml.tex b/samples/harf-farsi-malayalam.tex
similarity index 100%
rename from samples/harf-fa-ml.tex
rename to samples/harf-farsi-malayalam.tex
diff --git a/samples/lua-polygreek.pdf b/samples/lua-polygreek.pdf
new file mode 100644
index 0000000..66c5693
Binary files /dev/null and b/samples/lua-polygreek.pdf differ
diff --git a/samples/lua-polygreek.tex b/samples/lua-polygreek.tex
new file mode 100644
index 0000000..e2c4661
--- /dev/null
+++ b/samples/lua-polygreek.tex
@@ -0,0 +1,65 @@
+\documentclass{article}
+
+\usepackage{babel}
+
+\usepackage{multicol}
+
+\babelprovide[import,main]{polytonicgreek}
+\babelfont{rm}{Old Standard}
+
+\begin{document}
+
+\section*{Φορτωμένα κόκκαλα}
+
+\textit{Αλέξανδρος Παπαδιαμάντης}\\
+1907\\
+From https://el.wikisource.org/wiki/Φορτωμένα\_κόκκαλα
+
+\begin{multicols}{3}
+
+Ἀνεβαίνομεν τὸ βουνὸν, πεζοὶ, μὲ τὸ γαϊδουράκι φορτωμένον, ὁ παπ’
+Ἀνδρέας, ὁ καλός μας εὐχέτης, κι’ ὁ μακαρίτης ὁ Λαμιαῖος, κι’ ἐγὼ, κι’
+ὁ Ἀλέκος τὸ Φωτάκι, ὁ μικρὸς καὶ πρόθυμος φίλος μας. Εἰς ὅλα ἦτον
+πάντοτε ἕτοιμος νὰ τρέχῃ ἀκούραστος, ὅ,τι ἤθελες τὸν διατάξει. Νὰ πάῃ
+στὸ χωριὸ, διὰ θέλημα, δυὸ ὧρες δρόμον, καὶ πάλι, φορτωμένος, ὀπίσω νὰ
+ἔλθῃ· νὰ σκουπίσῃ ὅλον τὸ ἐξωκκλήσι, καὶ τὸν αὐλόγυρον, καὶ τὰ κελλιὰ,
+μὲ πρόχειρον σκούπαν ἀπὸ σπαρτίνες καὶ θάμνους· νὰ τρέξῃ κάτω στὸν
+αἰγιαλόν, διὰ νὰ μᾶς φέρῃ πεταλίδες, καὶ κοχύλια, καὶ πετροκάβουρα, διὰ
+τὸ ὀρεκτικὸν δεῖπνόν μας καὶ νὰ γυρίσῃ μετὰ μίαν ὥραν μὲ μίαν ποδιὰν
+γεμάτην· εἶτα ν’ ἀνάψῃ φωτιάν, νὰ ψήσῃ, νὰ μαγειρεύσῃ ὅλα τὰ ἐδέσματα·
+καὶ νὰ ἔχῃ τὴν ἐπιστασίαν τοῦ παγουριοῦ καὶ τῆς φλάσκας, διὰ νὰ
+εὑρίσκωνται δροσερὰ εἰς τὸ ρεῦμα, ἀκριβῶς ὑπὸ τὴν βρύσην· εἰς ὅλα ἦτον
+μονάκριβος.
+
+Ἕκτος μᾶς εἶχεν ἀκολουθήσει ὁ σκύλος τοῦ Σταμάτη τοῦ Ἀλεξανδράκη,
+σκύλος προωρισμένος ὀψέποτε νὰ μένῃ ἀδέσποτος. Ὁ ἄτυχος καὶ κακοκέφαλος
+φίλος μας, ὁ Σταμάτης, ἀφοῦ ἐμάλωσε μὲ ὅλους τοὺς συγγενεῖς καὶ τοὺς
+φίλους του, καὶ σχεδὸν μὲ ὅλον τὸν κόσμον, ἤρχισε νὰ πάσχῃ ἀπὸ
+περιοδικὰς ἀφανείας, ὁποῦ ἦσαν τὰ προανακρούσματα τῆς ὁριστικῆς
+ἐξαφανίσεώς του ἀπὸ τὸν μάταιον κόσμον. Πότε ἐκρύπτετο, ὡς ἔλεγαν, εἰς
+μίαν ἐρημικὴν σπηλιὰν, πότε ἐπήγαινε νὰ μείνῃ ὀλίγας ἡμέρας εἰς τὸ
+Μοναστήρι, πότε ἐταξίδευεν, ἄγνωστον ποῦ· καὶ ὅλας αὐτὰς τὰς φορὰς, τὸν
+ἄτυχον Σαψώνην, τὸν ἄφηνεν εἰς τὸ ἔλεος τοῦ Θεοῦ καὶ τῶν ἀνθρώπων τῆς
+ἀγορᾶς, ἂν θὰ εὐαρεστοῦντο ποτὲ νὰ τοῦ ρίψουν ἓν ξηροκόμματον. Συχνὰ ὁ
+Γιωργὸς ὁ Λαφκιώτης ὁ ἰδιοκτήτης τοῦ ἀρχαιοπρεποῦς καὶ ἀναλλοιώτου
+καφενείου εἰς τὴν παραθαλασσίαν, ἂν καὶ τοῦ εἶχε φάγῃ ὀλίγας
+ἑκατοντάδας δραχμῶν, καλῇ τῇ πίστει, ὁ ἀφέντης τοῦ Σαψώνη, ᾤκτειρε τὸ
+ἄκακον θρέμμα, καὶ τοῦ ἔρριπτεν ὀλίγα κόκκαλα. Ἐμὲ, ἀφοῦ μὲ
+κατεσκόπευεν ὁ Σαψώνης, ἀπὸ καφενεῖον εἰς ὕπαιθρον, καὶ ἀπὸ κιόσκι εἰς
+τένταν, ἐπὶ τῆς προκυμαίας, τέλος, μὲ ἠκολούθει ὁριστικῶς εἰς τὴν
+οἰκίαν ὅπου ἔπρεπε νὰ τοῦ ρίψω τι ἐκ τοῦ ὑστερήματος.
+
+Ἀλλὰ καὶ εἰς τὰ καλά του ὅταν ἦτο ὁ Σταμάτης, διὰ τὸν περιπαθῶς
+ἀφωσιωμένον σκύλον δὲν εἶχε λάβῃ ἄλλην πρόνοιαν, εἰμὴ νὰ τὸν ρίπτῃ
+αἰφνιδίως εἰς τὸ κῦμα, γαυγίζοντα καὶ μὴ θέλοντα, διὰ νὰ κολυμβᾷ. Τὸν
+εἶχεν ἀφήσει ἀκούρευτον καὶ βαθύτριχον ἀπὸ χρόνων πολλῶν. Ἦτο πολὺ
+μαλλιαρὸς σκύλος. Τὴν φορὰν αὐτὴν, ἀφοῦ μᾶς ἐμυρίσθη πῶς ἡτοιμαζόμεθα
+δι’ ἐκδρομὴν, εἶχε δείξει ἀνήσυχον περιέργειαν, ὅταν ἐφορτώνετο τὸ
+ὀνάριον, καὶ εἶχε πλησιάσει νὰ ὀσφρανθῇ τὶ περιεῖχεν ὁ σάκκος ἐκεῖνος,
+τὸν ὁποῖον ὁ Ἀλέκος εἶχε περιδέσει καὶ φορτώσει περὶ τὸ σάγμα, εἰς τὴν
+ἀριστερὰν πλευρὰν τοῦ ζώου. Δεξιὰ εἶχε φορτωθῇ ὁ μάρσιππος μὲ τὰ ἱερὰ
+τοῦ Παπᾶ, εἷς κάλαθος μὲ τρόφιμα, καὶ μία φλάσκα μὲ οἶνον. Εἶτα, μᾶς
+ἠκολούθησε μὲ βῆμα, αὐτόκλητος.
+\end{multicols}
+
+\end{document}
\ No newline at end of file
More information about the latex3-commits
mailing list