texlive[53660] Master/texmf-dist: babel (3feb20)
commits+karl at tug.org
commits+karl at tug.org
Mon Feb 3 23:33:15 CET 2020
Revision: 53660
http://tug.org/svn/texlive?view=revision&revision=53660
Author: karl
Date: 2020-02-03 23:33:15 +0100 (Mon, 03 Feb 2020)
Log Message:
-----------
babel (3feb20)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/babel/README.md
trunk/Master/texmf-dist/doc/latex/babel/babel.pdf
trunk/Master/texmf-dist/source/latex/babel/babel.dtx
trunk/Master/texmf-dist/source/latex/babel/babel.ins
trunk/Master/texmf-dist/source/latex/babel/bbcompat.dtx
trunk/Master/texmf-dist/source/latex/babel/locale.zip
trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua
trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua
trunk/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua
trunk/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua
trunk/Master/texmf-dist/tex/generic/babel/babel.def
trunk/Master/texmf-dist/tex/generic/babel/babel.sty
trunk/Master/texmf-dist/tex/generic/babel/blplain.tex
trunk/Master/texmf-dist/tex/generic/babel/bplain.tex
trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/ii/babel-ii.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-km.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lo.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Beng.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Deva.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Gujr.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Knda.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Mlym.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Telu.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/th/babel-th.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/yue/babel-yue.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh.ini
trunk/Master/texmf-dist/tex/generic/babel/luababel.def
trunk/Master/texmf-dist/tex/generic/babel/nil.ldf
trunk/Master/texmf-dist/tex/generic/babel/plain.def
trunk/Master/texmf-dist/tex/generic/babel/switch.def
trunk/Master/texmf-dist/tex/generic/babel/txtbabel.def
trunk/Master/texmf-dist/tex/generic/babel/xebabel.def
Added Paths:
-----------
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-1901.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-1996.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT-1901.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT-1996.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH-1901.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH-1996.ini
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-austria-traditional.tex
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-switzerland-traditional.tex
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-traditional.tex
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-naustrian.tex
trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-ngerman.tex
Modified: trunk/Master/texmf-dist/doc/latex/babel/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/babel/README.md 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/doc/latex/babel/README.md 2020-02-03 22:33:15 UTC (rev 53660)
@@ -1,4 +1,4 @@
-## Babel 3.38
+## Babel 3.39
This package manages culturally-determined typographical (and other)
rules, and hyphenation patterns for a wide range of languages. Many
@@ -7,22 +7,15 @@
The latest stable version is available on <https://ctan.org/pkg/babel>.
-Languages are not part of the Babel core any more; in particular, it
-shall be no longer necessary to synchronize Babel core releases with
-releases of Babel language files. See CONTRIB for further details
-about contributing a language. You may also create an ini file or
-improve the existing ones -- it's a trivial task (no programming
-skills required at all), but don't hesitate to ask for help.
+Changes in version 3.39 are described in:
+https://github.com/latex3/babel/wiki/What's-new-in-babel-3.39
+
Included is a set of ini files for about 200 languages.
The best way to install and/or update it is with the help of package
managers.
-Changes are described in babel.pdf with the label "New <version>". The
-manual has been expanded to include some tips and tricks, but it will
-be improved in next releases.
-
### Reporting Bugs
If you wish to report a problem or bug in any of these packages please
@@ -51,14 +44,27 @@
### Latest changes
```
+3.39 2020-02-03
+ - Languages can now be loaded on the fly (via \babelprovide).
+ - With \babelposthyphenation captured chars can now be mapped in
+ the replacement (lua).
+ - \babelcharproperty can be used to assign specific chars to a
+ locale (lua).
+ - Fixes:
+ - Sichuan Yi: line breaking was not activated (lua).
+ - Hyphenation was not always applied with onchar (lua).
+ - bidi=basic-l/basic-r where not activated correctly (xe).
+ - Thai and turkish raised and error without import in
+ \babelprovide.
+ - Cleaned up some ini/tex locale files (de, zh, sa).
+
3.38 2020-01-15
- Automatic switching of ids (\language and \localeid), and fonts
- based on script blocks (lua).s
+ based on script blocks (lua).
- New macro - \localeinfo, to access the basic data in the ini
file loaded by languages.
See https://github.com/latex3/babel/wiki/What's-new-in-babel-3.38
-
-
+
3.37 2019-12-08
- Preliminary code for non-standard hyphenation, like ff ->
ff-f (lua).
Modified: trunk/Master/texmf-dist/doc/latex/babel/babel.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/source/latex/babel/babel.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/babel/babel.dtx 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/source/latex/babel/babel.dtx 2020-02-03 22:33:15 UTC (rev 53660)
@@ -1,7 +1,7 @@
% \iffalse
% This document requires lualatex
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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.
@@ -31,7 +31,7 @@
%
% \iffalse
%<*filedriver>
-\ProvidesFile{babel.dtx}[2020/01/15 v3.38 The Babel package]
+\ProvidesFile{babel.dtx}[2020/02/03 v3.39 The Babel package]
\documentclass{ltxdoc}
\GetFileInfo{babel.dtx}
\usepackage{fontspec}
@@ -235,21 +235,25 @@
\part{User guide}
\begin{itemize}
-\item This user guide focuses on \LaTeX. There are also some notes on
- its use with Plain \TeX.
+\item This user guide focuses on internationalization and localization
+ with \LaTeX. There are also some notes on its use with Plain \TeX.
\item Changes and new features with relation to version 3.8 are
- highlighted with \New{X.XX}\hspace{-.5em}. The most recent features
+ highlighted with \New{X.XX}\hspace{-.5em}, and there are some notes
+ for the latest versions in
+ \href{https://github.com/latex3/babel/wiki}{the \babel{} wiki}.
+ The most recent features
could be still unstable. Please, report any issues you find in
- \texttt{https://github.com/latex3/babel/issues}, which is better
+ \href{https://github.com/latex3/babel/issues}{GitHub}, which is better
than just complaining on an e-mail list or a web forum.
\item If you are interested in the \TeX{} multilingual support, please
- join the \textsf{kadingira} list on
- \texttt{http://tug.org/mailman/listinfo/kadingira}. You can follow
+ join the \href{http://tug.org/mailman/listinfo/kadingira}{kadingira
+ mail list}. You can follow
the development of \babel{} in
- \texttt{https://github.com/latex3/babel} (which provides some sample
- files, too).
+ \href{https://github.com/latex3/babel}{GitHub} (which provides many
+ \href{https://github.com/latex3/babel/tree/master/samples}{sample
+ files}, too).
\item See section \ref{contribute} for contributing a language.
@@ -492,6 +496,40 @@
\end{verbatim}
\end{example}
+\subsection{Mostly monolingual documents}
+
+\New{3.39} Very often, multilingual documents consist of a main
+language with small pieces of text in another languages (words, idioms,
+short sentences). Typically, all you need is to set the line breaking
+rules and, perhaps, the font. In such a case, \babel{} now does not
+require declaring these secondary languages explicitly, because the
+basic settings are loaded on the fly when the language is selected (and
+also when provided in the optional argument of |\babelfont|, if used.)
+
+This is particularly useful, too, when there are short texts of this
+kind coming from an external source whose contents are not known on
+beforehand (for example, titles in a bibliography). At this regard, it
+is worth remembering that |\babelfont| does not load any font until
+required, so that it can be used just in case.
+
+\begin{example}
+ A trivial document is:
+\setengine{luatex/xetex}
+\begin{verbatim}
+\documentclass{article}
+\usepackage[english]{babel}
+
+\babelfont[russian]{rm}{FreeSerif}
+
+\begin{document}
+
+English. \foreignlanguage{russian}{Русский}.
+\foreignlanguage{spanish}{Español}
+
+\end{document}
+\end{verbatim}
+\end{example}
+
\subsection{Modifiers}
\New{3.9c} The basic behavior of some languages can be modified when
@@ -541,6 +579,7 @@
cases, the error vanishes when the document is typeset again, but in
more severe ones you will need to remove the |aux| file.
\end{itemize}
+
\subsection{Plain}
In Plain, load languages styles with |\input| and then use
@@ -1188,10 +1227,18 @@
\subsection{\texttt{ini} files}
-An alternative approach to define a language is by means of an
-\texttt{ini} file. Currently \babel{} provides about 200 of these
-files containing the basic data required for a language.
+An alternative approach to define a language (or, more precisely, a
+\textit{locale}) is by means of an \texttt{ini} file. Currently
+\babel{} provides about 200 of these files containing the basic data
+required for a locale.
+|ini| files are not meant only for \babel, and they has been devised as
+a resource for other packages. To easy interoperability between \TeX{}
+and other systems, they are identified with the BCP 47 codes as
+preferred by the Unicode Common Language Data Repository, which was
+used as source for most of the data provided by these files, too (the
+main exception being the |\...name| strings).
+
Most of them set the date, and many also the captions (Unicode and
LICR). They will be evolving with the time to add more features
(something to keep in mind if backward compatibility is important). The
@@ -1280,6 +1327,19 @@
\end{description}
\end{note}
+\begin{note}
+ Wikipedia defines a \textit{locale} as follows: “In computing, a
+ locale is a set of parameters that defines the user’s language,
+ region and any special variant preferences that the user wants to see
+ in their user interface. Usually a locale identifier consists of at
+ least a language code and a country/region code.” \Babel{} is moving
+ gradually from the old and fuzzy concept of \textit{language} to the
+ more modern of \textit{locale}. Note each locale is by itself a
+ separate “language”, which explains why there are so many files. This
+ is on purpose, so that possible variants can be created and/or
+ redefined easily.
+\end{note}
+
Here is the list (u means Unicode captions, and l means LICR
captions):
@@ -1891,6 +1951,26 @@
\endgroup
\hrule
+\bigskip
+
+\textbf{Modifying and adding values to |ini| files}
+
+\New{3.39} There is a way to modify the values of |ini| files when they
+get loaded with |\babelprovide| and |import|. To set, say,
+|digits.native| in the |numbers| section, use something like
+|numbers/digits.native=abcdefghij|. Keys may be added, too. Without
+|import| you may modify the identification keys.
+
+This can be used to create private variants easily. All you need is to
+import the same |ini| file with a different locale name and different
+parameters.
+
+% \begin{example}
+% Let's assume you need only the basic features of `spanish`, so that
+% the |ini| file is enough, and also a variant with your own
+% hyphenation with
+% \end{example}
+
\subsection{Selecting fonts}
\New{3.15} Babel provides a high level interface on top of |fontspec|
@@ -1988,22 +2068,18 @@
\babelfont[hindi]{rm}{Shobhika}
\end{verbatim}
This makes sure the OpenType script for Devanagari is |deva| and not
- |dev2| (\luatex{} does not detect automatically the correct
- script\footnote{And even with the correct code some fonts could be
- rendered incorrectly by \textsf{fontspec}, so double-check the
- results. \xetex{} fares better, but some fonts are still
- problematic.}). You may also pass some options to \textsf{fontspec}:
- with |silent|, the warnings about unavailable scripts or languages
- are not shown (they are only really useful when the document format
- is being set up).
+ |dev2|, in case it is not detected correctly. You may also pass some
+ options to \textsf{fontspec}: with |silent|, the warnings about
+ unavailable scripts or languages are not shown (they are only really
+ useful when the document format is being set up).
\end{note}
\begin{note}
Directionality is a property affecting margins, indentation, column
- order, etc., not just text. Therefore, it is under the direct
- control of the language, which applies both the script and the
- direction to the text. As a consequence, there is no need to set
- \texttt{Script} when declaring a font (nor \texttt{Language}). In
+ order, etc., not just text. Therefore, it is under the direct control
+ of the language, which applies both the script and the direction to
+ the text. As a consequence, there is no need to set \texttt{Script}
+ when declaring a font with |\babelfont| (nor \texttt{Language}). In
fact, it is even discouraged.
\end{note}
@@ -2012,10 +2088,10 @@
(|rm|, |sf|, |tt|, and the like). If a language is switched when an
\textit{ad hoc} font is active, or you select the font with this
command, neither the script nor the language is passed. You must
- add them by hand. This is by design, for several reasons (for
+ add them by hand. This is by design, for several reasons —for
example, each font has its own set of features and a generic setting
for several of them could be problematic, and also a “lower-level”
- font selection is useful).
+ font selection is useful.
\end{note}
\begin{note}
@@ -2028,53 +2104,45 @@
\end{note}
\begin{warning}
- Do not use |\set|\textit{xxxx}|font| and |\babelfont| at the same
- time. |\babelfont| follows the standard \LaTeX{} conventions to set
- the basic families -- define |\|\textit{xx}|default|, and activate
- it with |\|\textit{xx}|family|. On the other hand,
- |\set|\textit{xxxx}|font| in \textsf{fontspec} takes a different
- approach, because |\|\textit{xx}|family| is redefined with the
- family name hardcoded (so that |\|\textit{xx}|default| becomes
- no-op). Of course, both methods are incompatible, and if you use
- |\set|\textit{xxxx}|font|, font switching with |\babelfont| just
- does \textit{not} work (nor the standard |\|\textit{xx}|default|,
- for that matter). As of \New{3.34} there is an attempt to make them
- compatible, but the language system will not be set by \babel and
- should be set with |fontspec| if necessary.
+ Using |\set|\textit{xxxx}|font| and |\babelfont| at the same time is
+ discouraged, but very often works as expected. However, be aware with
+ |\set|\textit{xxxx}|font| the language system will not be set by
+ \babel{} and should be set with |fontspec| if necessary.
\end{warning}
\begin{troubleshooting}
-\trouble{Package fontspec Warning: 'Language 'LANG' not available for
-font 'FONT' with script 'SCRIPT' 'Default' language used instead'}
-\textit{Package fontspec Warning: 'Language 'LANG' not available for
-font 'FONT' with script 'SCRIPT' 'Default' language used instead'}.
-\textbf{This is \textit{not} and error.}
-This warning is shown by \textsf{fontspec}, not by \babel. It could be
-irrelevant for English, but not for many other languages, including
-Urdu and Turkish. This is a useful and harmless warning, and if
-everything is fine with your document the best thing you can do is just
-to ignore it altogether.
+ \trouble{Package fontspec Warning: 'Language 'LANG' not available for
+ font 'FONT' with script 'SCRIPT' 'Default' language used instead'}
+ \textit{Package fontspec Warning: 'Language 'LANG' not available for
+ font 'FONT' with script 'SCRIPT' 'Default' language used instead'}.
+
+ \textbf{This is \textit{not} and error.} This warning is shown by
+ \textsf{fontspec}, not by \babel. It could be irrelevant for English,
+ but not for many other languages, including Urdu and Turkish. This is
+ a useful and harmless warning, and if everything is fine with your
+ document the best thing you can do is just to ignore it altogether.
\end{troubleshooting}
\begin{troubleshooting}
-\trouble{Package babel Info: The following fonts are not babel standard families}
-\textit{Package babel Info: The following fonts are not babel
-standard families}.
+ \trouble{Package babel Info: The following fonts are not babel
+ standard families} \textit{Package babel Info: The following fonts
+ are not babel standard families}.
-\textbf{This is \textit{not} and error.} \babel{} assumes that if you
-are using |\babelfont| for a family, very likely you want to define the
-rest of them. If you don't, you can find some inconsistencies between
-families. This checking is done at the beginning of the document, at a
-point where we cannot know which families will be used.
+ \textbf{This is \textit{not} and error.} \babel{} assumes that if you
+ are using |\babelfont| for a family, very likely you want to define
+ the rest of them. If you don't, you can find some inconsistencies
+ between families. This checking is done at the beginning of the
+ document, at a point where we cannot know which families will be
+ used.
-Actually, there is no real need to use |\babelfont| in a monolingual
-document, if you set the language system in |\setmainfont| (or not,
-depending on what you want).
+ Actually, there is no real need to use |\babelfont| in a monolingual
+ document, if you set the language system in |\setmainfont| (or not,
+ depending on what you want).
-As the message explains, \textit{there is nothing intrinsically wrong}
-with not defining all the families. In fact, there is nothing
-intrinsically wrong with not using |\babelfont| at all. But you must be
-aware that this may lead to some problems.
+ As the message explains, \textit{there is nothing intrinsically
+ wrong} with not defining all the families. In fact, there is nothing
+ intrinsically wrong with not using |\babelfont| at all. But you must
+ be aware that this may lead to some problems.
\end{troubleshooting}
\subsection{Modifying a language}
@@ -2090,7 +2158,7 @@
}
\end{verbatim}
As of 3.15, there is no need to hide spaces with \texttt{\%%
-} (\babel{} removes them), but it is advisable to do it.
+} (\babel{} removes them), but it is advisable to do so.
\item The new way, which is found in |bulgarian|, |azerbaijani|,
|spanish|, |french|, |turkish|, |icelandic|, |vietnamese| and a few
more, as well as in languages created with |\babelprovide| and its
@@ -2177,6 +2245,17 @@
\end{verbatim}
\end{example}
+\begin{example}
+ Locales with names based on BCP 47 codes can be created with
+ something like:
+\begin{verbatim}
+ \babelprovide[import=en-US]{enUS}
+\end{verbatim}
+ Note, however, mixing ways to identify locales can lead to problems.
+ For example, is \verb|yi| the name of the language spoken by the Yi
+ people or is it the code for Yiddish?
+\end{example}
+
The main language is not changed (\texttt{danish} in this example).
So, you must add |\selectlanguage{arhinish}| or other selectors where
necessary.
@@ -2206,8 +2285,7 @@
and the CLDR provided by Unicode. Not all languages in the latter are
complete, and therefore neither are the |ini| files. A few languages
will show a warning about the current lack of suitability of the date
-format (\textsf{hindi}, \textsf{french}, \textsf{breton}, and
-\textsf{occitan}).
+format (\textsf{french}, \textsf{breton}, and \textsf{occitan}).
Besides |\today|, this option defines an additional command for dates:
|\<language>date|, which takes three arguments, namely, year, month and
@@ -2267,24 +2345,26 @@
inconsistent, this makes setting a language up easier in most typical
cases.
+\Describe{onchar=}{\texttt{ids} $\string|$ \texttt{fonts}}
+\New{3.38} This option is much like an ‘event’ called with a character
+belonging to the script of this locale is found. There are currently
+two ‘actions’, which can be used at the same time (separated by a
+space): with |ids| the |\language| and the |\localeid| are set to the
+values of this locale; with |fonts|, the fonts are changed to those of
+the this locale (as set with |\babelfont|). This option is not
+compatible with |mapfont|. Characters can be added with
+|\babelcharproperty|.
+
\Describe{mapfont=}{\texttt{direction}}
Assigns the font for the writing direction of this language (only with
-|bidi=basic|). More precisely, what |mapfont=direction| means is, ‘when
-a character has the same direction as the script for the “provided”
-language, then change its font to that set for this language’. There
-are 3 directions, following the bidi Unicode algorithm, namely,
-Arabic-like, Hebrew-like and left to right. So, there should be at most
-3 directives of this kind.
+|bidi=basic|). Whenever possible, instead of this option use |onchar|,
+based on the script, which usually makes more sense. More precisely,
+what |mapfont=direction| means is, ‘when a character has the same
+direction as the script for the “provided” language, then change its
+font to that set for this language’. There are 3 directions, following
+the bidi Unicode algorithm, namely, Arabic-like, Hebrew-like and left
+to right. So, there should be at most 3 directives of this kind.
-\Describe{onchar=}{\texttt{ids} $\string|$ \texttt{fonts}}
-\New{3.38} This options is much like an ‘event’ called with a character
-belonging to the script of the current locale is found. There are two
-action, which can be used at the same time (separated by a space): with
-|ids| the |\language| and the |\localeid| are set to the values of this
-locale; with |fonts|, the fonts are changed to those of the current
-locale (as set with |\babelfont|). This option is not compatible with
-|mapfont|.
-
\Describe{intraspace=}{\meta{base} \meta{shrink} \meta{stretch}}
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
@@ -2393,6 +2473,12 @@
\subsection{Hyphenation and line breaking}
+\Babel{} deals with three kinds of line breaking rules: Western,
+typically the LGC group, South East Asian, like Thai, and CJK, but
+support depends on the engine: \textsf{pdftex} only deals with the
+former, \xetex{} also with the second one, while \luatex{} provides
+basic rules for the latter, too.
+
\Describe{\babelhyphen}{%
\colorbox{thegrey}{\ttfamily\hskip-.2em*\hskip-.2em}\marg{type}}
\DescribeOther\babelhyphen{%
@@ -2515,6 +2601,55 @@
of the previous char in \luatex, and the font size set by the last
|\selectfont| in \xetex).
+\Describe{\babelposthyphenation}{\marg{hyphenrules-name}%
+ \marg{lua-pattern}\marg{replacement}}
+
+\New{3.37-3.39} With \luatex{} it is now possible to define
+non-standard hyphenation rules, like |f-f| $\to$ |ff-f|, repeated
+hyphens, ranked ruled (or more precisely, ‘penalized’ hyphenation
+points), and so on. No rules are currently provided by default, but
+they can be defined as shown in the following example, where |{1}| is
+the first captured char (between |()| in the pattern):
+\begin{verbatim}
+\babelposthyphenation{german}{([fmtrp]) | {1}}
+{
+ { no = {1}, pre = {1}{1}- }, % Replace first char with disc
+ remove, % Remove automatic disc (2nd node)
+ {} % Keep last char, untouched
+}
+\end{verbatim}
+
+In the replacements, a captured char may be mapped to another, too. For
+example, if the first capture reads |([ΐΰ])|, the replacement could be
+\verb+{1|ΐΰ|ίύ}+, which maps \textit{ΐ} to \textit{ί}, and \textit{ΰ}
+to \textit{ύ}, so that the diaeresis is removed.
+
+This feature is activated with the first |\babelposthyphenation|.
+
+See the \href{https://github.com/latex3/babel/wiki}{\babel\ wiki} for a
+more detailed description and some examples. It also describes an
+additional replacement type with the key |string|.
+
+\begin{example}
+ Although the main purpose of this command is non-standard
+ hyphenation, it may actually be used for other transformations (after
+ hyphenation is applied, so you must take discretionaries into
+ account). For example, you can use the |string| replacement to
+ replace a character (or series of them) by another character (or
+ series of them). Thus, to enter \textit{ž} as |zh| and \textit{š} as
+ |sh| in a newly created locale for transliterated Russian:
+\begin{verbatim}
+\babelprovide[hyphenrules=+]{russian-latin} % Create locale
+\babelposthyphenation{russian-latin}{([sz])h} % Create rule
+{
+ { string = {1|sz|šž} },
+ remove
+}
+\end{verbatim}
+ In other words, it is a quite general tool. (A counterpart
+ |\babelprehyphenation| is on the way.)
+\end{example}
+
\subsection{Selecting scripts}
Currently \babel{} provides no standard interface to select
@@ -2589,6 +2724,14 @@
options described below).
\end{warning}
+\begin{warning}
+ If characters to be mirrored are shown without changes with \luatex,
+ try with the following line:
+\begin{verbatim}
+\babeladjust{bidi.mirroring=off}
+\end{verbatim}
+\end{warning}
+
There are some package options controlling bidi writing.
\Describe{bidi=}{\texttt{default} $\string|$ \texttt{basic}
@@ -2612,13 +2755,6 @@
tentative, but it mostly works. For RL documents use the former, and
for LR ones use the latter.
-\New{3.37} There is some experimental support for \textsf{luahbtex}
-(with |lualatex-dev|) and the latest releases of \textsf{luaotfload}
-(3.11), with |Renderer = Harfbuzz| in \textsf{fontspec}. Since it is
-based on \luatex, the option |basic| mostly works (You may need
-deactivate the |rtlm| or the |rtla| font features, or alternatively
-deactive mirroring in \babel{} with |\babeladjust|.)
-
There are samples on GitHub, under \texttt{/required/babel/samples}.
See particularly |lua-bidibasic.tex| and |lua-secenum.tex|.
@@ -2625,7 +2761,7 @@
\begin{example}
The following text comes from the Arabic Wikipedia (article about
Arabia). Copy-pasting some text from the Wikipedia is a good way to
- test this feature. Remember |basic-r| is available in \luatex{}
+ test this feature. Remember |basic| is available in \luatex{}
only.
\begingroup
% If you are looking at the code to see how it has been written, you
@@ -2638,7 +2774,7 @@
\begin{verbatim}
\documentclass{article}
-\usepackage[_bidi=basic-r_]{babel}
+\usepackage[_bidi=basic_]{babel}
_\babelprovide[import, main]{arabic}_
@@ -2676,7 +2812,7 @@
\usepackage[english, _bidi=basic_]{babel}
-\babelprovide[_mapfont=direction_]{arabic}
+\babelprovide[_onchar=ids fonts_]{arabic}
\babelfont{rm}{Crimson}
\babelfont[*arabic]{rm}{FreeSerif}
@@ -2691,7 +2827,7 @@
\end{document}
\end{verbatim}
\endgroup
- In this example, and thanks to |mapfont=direction|, any Arabic letter
+ In this example, and thanks to |onchar=ids fonts|, any Arabic letter
(because the language is |arabic|) changes its font to that set for
this language (here defined via |*arabic|, because Crimson does not
provide Arabic letters).
@@ -2892,6 +3028,7 @@
\subsection{Language attributes}
\DescribeMacro{\languageattribute}
+
This is a user-level command, to be used in the preamble of a
document (after |\usepackage[...]{babel}|), that declares which
attributes are to be used for a given language. It takes two
@@ -3088,12 +3225,14 @@
to set them for glyphs in the PUA).
\Describe{\babelcharproperty}{\marg{char-code}\oarg{to-char-code}%
- \marg{propertry}\marg{value}}
+ \marg{property}\marg{value}}
\New{3.32} Here, \marg{char-code} is a number (with \TeX{} syntax).
With the optional argument, you can set a range of values. There are
three properties (with a short name, taken from Unicode): |direction|
-(|bc|), |mirror| (|bmg|), |linebreak| (|lb|). The settings are global.
+(|bc|), |mirror| (|bmg|), |linebreak| (|lb|). The settings are global,
+and this command is allowed only in vertical mode (the preamble or
+between paragraphs).
For example:
\begin{verbatim}
@@ -3102,8 +3241,12 @@
\babelcharproperty{`)}{linebreak}{cl} % or id, op, cl, ns, ex, in, hy
\end{verbatim}
-This command is allowed only in vertical mode (the preamble or between
-paragraphs).
+\New{3.39} Another property is |locale|, which adds characters to the
+list used by |onchar| in |\babelprovide|, or, if the last argument is
+empty, removes them. The last argument is the locale name:
+\begin{verbatim}
+\babelcharproperty{`,}{locale}{english}
+\end{verbatim}
\subsection{Tweaking some features}
@@ -3243,41 +3386,6 @@
version of |\foreignlanguage|).
\medskip
-\textbf{Modifying, and adding, values of |ini| files}
-
-\New{3.37} 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). New keys may be added, too.
-
-\medskip
-\textbf{Non-standard hyphenation}
-
-\New{3.37} With \luatex{} it is now possible to define non-standard
-hyohenation rules, like |f-f| $\to$ |ff-f|. No rules are currently
-provided by default, but they can be defined as shown in the following
-example:
-\begin{verbatim}
-\babelposthyphenation{ngerman}{([fmtrp]) | {1}}
-{
- { no = {1}, pre = {1}{1}-}, % Replace first char with disc
- remove, % Remove automatic disc
- {} % Keep last char, untouched
-}
-\end{verbatim}
-
-This feature must be explicitly activated with:
-\begin{verbatim}
-\babeladjust{ hyphenation.extra = on }
-\end{verbatim}
-
-See the \babel{} wiki for a more detailed description and some examples:
-\begin{verbatim}
-https://github.com/latex3/babel/wiki
-\end{verbatim}
-
-\medskip
\textbf{Old and deprecated stuff}
A couple of tentative macros were provided by \babel{} ($\ge$3.9g) with
@@ -4222,8 +4330,8 @@
% \section{Tools}
%
% \begin{macrocode}
-%<<version=3.38>>
-%<<date=2020/01/15>>
+%<<version=3.39>>
+%<<date=2020/02/03>>
% \end{macrocode}
%
% \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -4715,7 +4823,6 @@
%
% \changes{babel~3.30}{2019/04/22}{Callbacks aren't specific to
% bidi any more, so they are moved.}
-% \changes{babel~3.32}{2019/05/30}{Consider Harf.}
%
% \begin{macrocode}
\ifx\bbl at languages\@undefined\else
@@ -4737,8 +4844,6 @@
\bbl at languages
\fi
\ifodd\bbl at engine
- % Harftex is evolving, so the callback is not harcoded, just in case
- \def\bbl at harfpreline{Harf pre_linebreak_filter callback}%
\def\bbl at activate@preotf{%
\let\bbl at activate@preotf\relax % only once
\directlua{
@@ -4768,23 +4873,14 @@
Babel.pre_otfload_v,
'Babel.pre_otfload_v',
luatexbase.priority_in_callback('pre_linebreak_filter',
- '\bbl at harfpreline')
- or luatexbase.priority_in_callback('pre_linebreak_filter',
- 'luaotfload.node_processor')
- or nil)
+ 'luaotfload.node_processor') or nil)
%
luatexbase.add_to_callback('hpack_filter',
Babel.pre_otfload_h,
'Babel.pre_otfload_h',
luatexbase.priority_in_callback('hpack_filter',
- '\bbl at harfpreline')
- or luatexbase.priority_in_callback('hpack_filter',
- 'luaotfload.node_processor')
- or nil)
- }%
- \@ifpackageloaded{harfload}%
- {\directlua{ Babel.mirroring_enabled = false }}%
- {}}
+ 'luaotfload.node_processor') or nil)
+ }}
\let\bbl at tempa\relax
\@ifpackagewith{babel}{bidi=basic}%
{\def\bbl at tempa{basic}}%
@@ -6771,20 +6867,8 @@
\ifx\bbl at known@attribs\@undefined
\in at false
\else
-% \end{macrocode}
-%
-% Now we need to see if the attribute occurs in the list of
-% already selected attributes.
-%
-% \begin{macrocode}
\bbl at xin@{,\bbl at tempc-##1,}{,\bbl at known@attribs,}%
\fi
-% \end{macrocode}
-%
-% When the attribute was in the list we issue a warning; this might
-% not be the users intention.
-%
-% \begin{macrocode}
\ifin@
\bbl at warning{%
You have more than once selected the attribute '##1'\\%
@@ -7349,6 +7433,7 @@
\edef\bbl at L{\zap at space#1 \@empty}%
\edef\bbl at G{\zap at space#2 \@empty}%
\bbl at startcmds@ii}
+\let\bbl at startcommands\StartBabelCommands
% \end{macrocode}
%
% Parse the encoding info to get the label, input, and font parts.
@@ -7474,6 +7559,7 @@
\endgroup
\endgroup
\bbl at scafter}
+\let\bbl at endcommands\EndBabelCommands
% \end{macrocode}
%
% Now we define commands to be used inside |\StartBabelCommands|.
@@ -7602,7 +7688,7 @@
\newcommand\SetHyphenMap[1]{%
\bbl at forlang\bbl at tempa{%
\expandafter\bbl at stringdef
- \csname\bbl at tempa @bbl at hyphenmap\endcsname{##1}}}
+ \csname\bbl at tempa @bbl at hyphenmap\endcsname{##1}}}%
%<</Macros local to BabelCommands>>
% \end{macrocode}
%
@@ -8213,7 +8299,7 @@
\let\bbl at savelangname\languagename
\edef\bbl at savelocaleid{\the\localeid}%
% Set name and locale id
- \def\languagename{#2}%
+ \edef\languagename{#2}%
% \global\@namedef{bbl at lcname@#2}{#2}%
\bbl at id@assign
\let\bbl at KVP@captions\@nil
@@ -8230,7 +8316,7 @@
\let\bbl at KVP@onchar\@nil
\let\bbl at KVP@chargroups\@nil
\bbl at forkv{#1}{% TODO - error handling
- \in@{..}{##1}%
+ \in@{/}{##1}%
\ifin@
\bbl at renewinikey##1\@@{##2}%
\else
@@ -8279,8 +8365,10 @@
\bbl at read@ini{##1}{basic data}%
\bbl at exportkey{chrng}{characters.ranges}{}%
\bbl at exportkey{dgnat}{numbers.digits.native}{}%
+ \bbl at exportkey{lnbrk}{typography.linebreaking}{h}%
\bbl at exportkey{hyphr}{typography.hyphenrules}{}%
\bbl at exportkey{intsp}{typography.intraspace}{}%
+ \endinput
\endgroup}% boxed, to avoid extra spaces:
{\setbox\z@\hbox{\InputIfFileExists{babel-#2.tex}{}{}}}}%
{}%
@@ -8301,10 +8389,15 @@
Babel.locale_mapped = true
Babel.linebreaking.add_before(Babel.locale_map)
Babel.loc_to_scr = {}
- Babel.chr_to_loc = {}
+ Babel.chr_to_loc = Babel.chr_to_loc or {}
end}%
\bbl at xin@{ ids }{ \bbl at KVP@onchar\space}%
\ifin@
+ \ifx\bbl at starthyphens\@undefined % Needed if no explicit selection
+ \AddBabelHook{babel-onchar}{beforestart}{{\bbl at starthyphens}}%
+ \fi
+ \bbl at exp{\\\bbl at add\\\bbl at starthyphens
+ {\\\bbl at patterns@lua{\languagename}}}%
% TODO - error/warning if no script
\directlua{
if Babel.script_blocks['\bbl at cs{sbcp@\languagename}'] then
@@ -8323,7 +8416,7 @@
if Babel.script_blocks['\bbl at cs{sbcp@\languagename}'] then
Babel.loc_to_scr[\the\localeid] =
Babel.script_blocks['\bbl at cs{sbcp@\languagename}']
- end}
+ end}%
\ifx\bbl at mapselect\@undefined
\AtBeginDocument{%
\expandafter\bbl at add\csname selectfont \endcsname{{\bbl at mapselect}}%
@@ -8343,9 +8436,6 @@
\fi
% TODO - catch non-valid values
\fi
-% \ifx\bbl at KVP@chargroups\@nil\else
-% \bbl at chargroups
-% \fi
% == mapfont ==
% For bidi texts, to switch the font based on direction
\ifx\bbl at KVP@mapfont\@nil\else
@@ -8430,7 +8520,7 @@
return head
end
end
- }}
+ }}%
\fi
\fi
% == require.babel in ini ==
@@ -8497,7 +8587,7 @@
\@namedef{date#1}{}% marks lang exists - required by \StartBabelCommands
\@namedef{extras#1}{}%
\@namedef{noextras#1}{}%
- \StartBabelCommands*{#1}{captions}%
+ \bbl at startcommands*{#1}{captions}%
\ifx\bbl at KVP@captions\@nil % and also if import, implicit
\def\bbl at tempb##1{% elt for \bbl at captionslist
\ifx##1\@empty\else
@@ -8520,7 +8610,7 @@
\bbl at savetoday
\bbl at savedate
\fi
- \EndBabelCommands
+ \bbl at endcommands
\bbl at exp{%
\def\<#1hyphenmins>{%
{\bbl at ifunset{bbl at lfthm@#1}{2}{\@nameuse{bbl at lfthm@#1}}}%
@@ -8620,7 +8710,7 @@
\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
@@ -8643,6 +8733,7 @@
\@nameuse{bbl at renew@\bbl at section}%
\global\bbl at csarg\let{renew@\bbl at section}\relax
\@nameuse{bbl at secpost@\bbl at section}%
+% \bbl at csarg\bbl at toglobal{inikeys@\languagename}%
\fi}
\def\bbl at iniline#1\bbl at iniline{%
\@ifnextchar[\bbl at inisec{\@ifnextchar;\bbl at iniskip\bbl at inipreread}#1\@@}% ]
@@ -8665,7 +8756,7 @@
\@nameuse{bbl at secpost@\bbl at section}% ends previous section
\def\bbl at section{#1}% starts current section
\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}% pre-section `hook'
\bbl at ifunset{bbl at inikv@#1}%
@@ -8672,7 +8763,7 @@
{\let\bbl at inireader\bbl at iniskip}%
{\bbl at exp{\let\\\bbl at inireader\<bbl at inikv@#1>}}}
\let\bbl at renewlist\@empty
-\def\bbl at renewinikey#1..#2\@@#3{%
+\def\bbl at renewinikey#1/#2\@@#3{%
\bbl at ifunset{bbl at renew@#1}%
{\bbl at add@list\bbl at renewlist{#1}}%
{}%
@@ -8732,6 +8823,7 @@
\bbl at exportkey{lfthm}{typography.lefthyphenmin}{2}%
\bbl at exportkey{rgthm}{typography.righthyphenmin}{3}%
\bbl at exportkey{prehc}{typography.prehyphenchar}{}%
+ \bbl at exportkey{lnbrk}{typography.linebreaking}{h}%
\bbl at exportkey{hyphr}{typography.hyphenrules}{}%
\bbl at exportkey{intsp}{typography.intraspace}{}%
\bbl at exportkey{jstfy}{typography.justify}{w}%
@@ -9016,9 +9108,7 @@
\@namedef{bbl at ADJ@layout.lists at on}{%
\bbl at adjust@layout{\let\list\bbl at OL@list}}
\@namedef{bbl at ADJ@hyphenation.extra at on}{%
- \directlua{
- Babel.linebreaking.add_after(Babel.post_hyphenate_replace)
- }}
+ \bbl at activateposthyphen}
% \end{macrocode}
%
% \section{The kernel of Babel (\texttt{babel.def} for \LaTeX only)}
@@ -9851,11 +9941,7 @@
% and so on, but bidi text does not work out of the box and some
% development is necessary. It also provides tools to properly
% set left-to-right and right-to-left page layouts. As Lua\TeX-ja
-% shows, vertical typesetting is possible, too. Its main drawback
-% is font handling is often considered to be less mature than
-% \xetex{}, mainly in Indic scripts (but there are steps to make
-% HarfBuzz, the \xetex{} font engine, available in \luatex{}; see
-% <https://github.com/tatzetwerk/luatex-harfbuzz>).
+% shows, vertical typesetting is possible, too.
% \end{itemize}
%
% \changes{babel~3.15}{2017/10/30}{Use an attribute instead of tex language
@@ -10014,18 +10100,20 @@
\newtoks\everypar
\everypar=\bbl at severypar
\bbl at severypar{\bbl at xeeverypar\the\everypar}}
- \@ifpackagewith{babel}{bidi=bidi}%
- {\let\bbl at textdir@i\@gobbletwo
- \let\bbl at xebidipar\@empty
- \AddBabelHook{bidi}{foreign}{%
- \def\bbl at tempa{\def\BabelText####1}%
- \ifcase\bbl at thetextdir
- \expandafter\bbl at tempa\expandafter{\BabelText{\LR{##1}}}%
- \else
- \expandafter\bbl at tempa\expandafter{\BabelText{\RL{##1}}}%
- \fi}
- \def\bbl at pardir#1{\ifcase#1\relax\setLR\else\setRL\fi}}
- {}%
+ \def\bbl at tempb{%
+ \let\bbl at textdir@i\@gobbletwo
+ \let\bbl at xebidipar\@empty
+ \AddBabelHook{bidi}{foreign}{%
+ \def\bbl at tempa{\def\BabelText########1}%
+ \ifcase\bbl at thetextdir
+ \expandafter\bbl at tempa\expandafter{\BabelText{\LR{####1}}}%
+ \else
+ \expandafter\bbl at tempa\expandafter{\BabelText{\RL{####1}}}%
+ \fi}
+ \def\bbl at pardir##1{\ifcase##1\relax\setLR\else\setRL\fi}}
+ \@ifpackagewith{babel}{bidi=bidi}{\bbl at tempb}{}%
+ \@ifpackagewith{babel}{bidi=bidi-l}{\bbl at tempb}{}%
+ \@ifpackagewith{babel}{bidi=bidi-r}{\bbl at tempb}{}%
\fi
% \end{macrocode}
%
@@ -10406,7 +10494,6 @@
\edef\languagename{%
\ifnum\escapechar=\expandafter`\string#1\@empty
\else\string#1\@empty\fi}%
- % \@namedef{bbl at lcname@#1}{#1}%
\select at language{\languagename}%
% write to auxs
\expandafter\ifx\csname date\languagename\endcsname\relax\else
@@ -10423,8 +10510,13 @@
% set name
\edef\languagename{#1}%
\bbl at fixname\languagename
+ \expandafter\ifx\csname date\languagename\endcsname\relax
+ \IfFileExists{babel-\languagename.tex}%
+ {\babelprovide{\languagename}}%
+ {}%
+ \fi
\bbl at iflanguage\languagename{%
- \expandafter\ifx\csname date\languagename\endcsname\relax
+ \expandafter\ifx\csname date\languagename\endcsname\relax
\bbl at error
{Unknown language `#1'. Either you have\\%
misspelled its name, it has not been installed,\\%
@@ -10725,8 +10817,12 @@
\def\foreign at language#1{%
% set name
\edef\languagename{#1}%
- % \@namedef{bbl at lcname@#1}{#1}%
\bbl at fixname\languagename
+ \expandafter\ifx\csname date\languagename\endcsname\relax
+ \IfFileExists{babel-\languagename.tex}%
+ {\babelprovide{\languagename}}%
+ {}%
+ \fi
\bbl at iflanguage\languagename{%
\expandafter\ifx\csname date\languagename\endcsname\relax
\bbl at warning % TODO - why a warning, not an error?
@@ -10945,6 +11041,7 @@
\let\uselocale\setlocale
\let\locale\setlocale
\let\selectlocale\setlocale
+\let\localename\setlocale
\let\textlocale\setlocale
\let\textlanguage\setlocale
\let\languagetext\setlocale
@@ -11570,6 +11667,12 @@
\bbl at trace{Font handling with fontspec}
\@onlypreamble\babelfont
\newcommand\babelfont[2][]{% 1=langs/scripts 2=fam
+ \bbl at foreach{#1}{%
+ \expandafter\ifx\csname date##1\endcsname\relax
+ \IfFileExists{babel-##1.tex}%
+ {\babelprovide{##1}}%
+ {}%
+ \fi}%
\edef\bbl at tempa{#1}%
\def\bbl at tempb{#2}% Used by \bbl at bblfont
\ifx\fontspec\@undefined
@@ -12457,6 +12560,9 @@
% \changes{babel~3.37}{2019/12/07}{Added code for non-standard
% hyphenation.}
%
+% First, some general code for line breaking, used by
+% |\babelposthyphenation|.
+%
% \textit{In progress.} Replace regular (ie, implicit) discretionaries
% by spaceskips, based on the previous glyph (which I think makes
% sense, because the hyphen and the previous char go always together).
@@ -12641,7 +12747,7 @@
\def\bbl at provide@intraspace{%
\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}%
+ \bbl at xin@{\bbl at cs{lnbrk@\languagename}}{c}%
\ifin@ % cjk
\bbl at cjkintraspace
\directlua{
@@ -12738,7 +12844,7 @@
{0x2B740, 0x2B81F}, {0x2B820, 0x2CEAF},
{0x2CEB0, 0x2EBEF}, {0x2F800, 0x2FA1F}},
['Hebr'] = {{0x0590, 0x05FF}},
- ['Japa'] = {{0x3000, 0x303F}, {0x3040, 0x309F}, {0x30A0, 0x30FF},
+ ['Jpan'] = {{0x3000, 0x303F}, {0x3040, 0x309F}, {0x30A0, 0x30FF},
{0x4E00, 0x9FAF}, {0xFF00, 0xFFEF}},
['Khmr'] = {{0x1780, 0x17FF}, {0x19E0, 0x19FF}},
['Knda'] = {{0x0C80, 0x0CFF}},
@@ -12760,10 +12866,11 @@
['Thai'] = {{0x0E00, 0x0E7F}},
['Tibt'] = {{0x0F00, 0x0FFF}},
['Vaii'] = {{0xA500, 0xA63F}},
- ['Yiii']= {{0xA490, 0xA4CF}, {0xA000, 0xA48F}}
+ ['Yiii'] = {{0xA000, 0xA48F}, {0xA490, 0xA4CF}}
}
Babel.script_blocks.Hant = Babel.script_blocks.Hans
+Babel.script_blocks.Kana = Babel.script_blocks.Jpan
function Babel.locale_map(head)
if not Babel.locale_mapped then return head end
@@ -12789,7 +12896,7 @@
end
end
% Now, take action
- if toloc then
+ if toloc and toloc > -1 then
if Babel.locale_props[toloc].lg then
item.lang = Babel.locale_props[toloc].lg
node.set_attribute(item, LOCALE, toloc)
@@ -12856,6 +12963,12 @@
Babel.Babel.cjk_characters[\the\count@]['c'] = '#1'
}}
\let\bbl at chprop@lb\bbl at chprop@linebreak
+\def\bbl at chprop@locale#1{%
+ \directlua{
+ Babel.chr_to_loc = Babel.chr_to_loc or {}
+ Babel.chr_to_loc[\the\count@] =
+ \bbl at ifblank{#1}{-1000}{\the\@nameuse{bbl at id@@#1}}\space
+ }}
% \end{macrocode}
%
% Post-handling hyphenation patterns for non-standard rules, like |ff|
@@ -13050,13 +13163,40 @@
return head
end
- &% Used below
+ &% The following functions belong to the next macro
+
+ &% This table stores capture maps, numbered consecutively
+ Babel.capture_maps = {}
+
function Babel.capture_func(key, cap)
local ret = "[[" .. cap:gsub('{([0-9])}', "]]..m[%1]..[[") .. "]]"
+ ret = ret:gsub('{([0-9])|([^|]+)|(.-)}', Babel.capture_func_map)
ret = ret:gsub("%[%[%]%]%.%.", '')
ret = ret:gsub("%.%.%[%[%]%]", '')
return key .. [[=function(m) return ]] .. ret .. [[ end]]
end
+
+ function Babel.capt_map(from, mapno)
+ return Babel.capture_maps[mapno][from] or from
+ end
+
+ &% Handle the {n|abc|ABC} syntax in captures
+ function Babel.capture_func_map(capno, from, to)
+ local froms = {}
+ for s in string.utfcharacters(from) do
+ table.insert(froms, s)
+ end
+ local cnt = 1
+ table.insert(Babel.capture_maps, {})
+ local mlen = table.getn(Babel.capture_maps)
+ for s in string.utfcharacters(to) do
+ Babel.capture_maps[mlen][froms[cnt]] = s
+ cnt = cnt + 1
+ end
+ return "]]..Babel.capt_map(m[" .. capno .. "]," ..
+ (mlen) .. ").." .. "[["
+ end
+
}
% \end{macrocode}
%
@@ -13064,7 +13204,10 @@
% defined above for converting strings to functions returning a string.
% These functions handle the |{|\textit{n}|}| syntax. For example,
% |pre={1}{1}-| becomes |function(m) return m[1]..m[1]..'-' end|, where
-% |m| are the matches returned after applying the pattern. The way it
+% |m| are the matches returned after applying the pattern. With a
+% mapped capture the functions are similar to
+% |function(m) return Babel.capt_map(m[1],1) end|, where the last
+% argument identifies the mapping to be applied to |m[1]|. The way it
% is carried out is somewhat tricky, but the effect in not dissimilar
% to lua |load| – save the code as string in a TeX macro, and expand
% this macro at the appropriate place. As |\directlua| does not take
@@ -13074,6 +13217,7 @@
% \begin{macrocode}
\catcode`\#=6
\gdef\babelposthyphenation#1#2#3{&%
+ \bbl at activateposthyphen
\begingroup
\def\babeltempa{\bbl at add@list\babeltempb}&%
\let\babeltempb\@empty
@@ -13106,6 +13250,11 @@
}&%
\endgroup}
\endgroup
+\def\bbl at activateposthyphen{%
+ \let\bbl at activateposthyphen\relax
+ \directlua{
+ Babel.linebreaking.add_after(Babel.post_hyphenate_replace)
+ }}
% \end{macrocode}
%
% \subsection{Layout}
@@ -19714,12 +19863,6 @@
Babel.bidi_enabled = true
Babel.mirroring_enabled = true
--- Temporary:
-
-if harf then
- Babel.mirroring_enabled = false
-end
-
require('babel-data-bidi.lua')
local characters = Babel.characters
@@ -20010,7 +20153,10 @@
item = nodes[r][1] -- MIRRORING
if Babel.mirroring_enabled and item.id == GLYPH
and temp == 'r' and characters[item.char] then
- item.char = characters[item.char].m or item.char
+ local font_mode = font.fonts[item.font].properties.mode
+ if font_mode ~= 'harf' and font_mode ~= 'plug' then
+ item.char = characters[item.char].m or item.char
+ end
end
end
first_on = nil
@@ -20321,6 +20467,8 @@
__index = function(_, k)
if (k >= 0xAC00 and k <= 0xD7A3) -- H2/H3
or (k >= 0x2E80 and k <= 0x9FFF)
+ or (k >= 0xA000 and k <= 0xA48F) -- Yi
+ or (k >= 0xA490 and k <= 0xA4CF) -- Yi
or (k >= 0xF900 and k <= 0xFAFF)
or (k >= 0xFE10 and k <= 0xFE1F)
or (k >= 0xFE30 and k <= 0xFE6F)
Modified: trunk/Master/texmf-dist/source/latex/babel/babel.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/babel/babel.ins 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/source/latex/babel/babel.ins 2020-02-03 22:33:15 UTC (rev 53660)
@@ -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{2020/01/15}
+\def\filedate{2020/02/03}
\def\batchfile{babel.ins}
\input docstrip.tex
Modified: trunk/Master/texmf-dist/source/latex/babel/bbcompat.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/babel/bbcompat.dtx 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/source/latex/babel/bbcompat.dtx 2020-02-03 22:33:15 UTC (rev 53660)
@@ -30,7 +30,7 @@
%
% \iffalse
%<*dtx>
-\ProvidesFile{bbcompat.dtx}[2020/01/15 v3.38]
+\ProvidesFile{bbcompat.dtx}[2020/02/03 v3.39]
%</dtx>
%
%% File 'bbcompat.dtx'
Modified: trunk/Master/texmf-dist/source/latex/babel/locale.zip
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
-- babel.dtx (with options: `basic-r')
--
--
--- Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+-- Copyright (C) 2012-2020 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.
Modified: trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
-- babel.dtx (with options: `basic')
--
--
--- Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+-- Copyright (C) 2012-2020 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,12 +44,6 @@
Babel.bidi_enabled = true
Babel.mirroring_enabled = true
--- Temporary:
-
-if harf then
- Babel.mirroring_enabled = false
-end
-
require('babel-data-bidi.lua')
local characters = Babel.characters
@@ -340,7 +334,10 @@
item = nodes[r][1] -- MIRRORING
if Babel.mirroring_enabled and item.id == GLYPH
and temp == 'r' and characters[item.char] then
- item.char = characters[item.char].m or item.char
+ local font_mode = font.fonts[item.font].properties.mode
+ if font_mode ~= 'harf' and font_mode ~= 'plug' then
+ item.char = characters[item.char].m or item.char
+ end
end
end
first_on = nil
Modified: trunk/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
-- babel.dtx (with options: `bididata')
--
--
--- Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+-- Copyright (C) 2012-2020 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.
Modified: trunk/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
-- babel.dtx (with options: `cjkdata')
--
--
--- Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+-- Copyright (C) 2012-2020 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.
@@ -251,6 +251,8 @@
__index = function(_, k)
if (k >= 0xAC00 and k <= 0xD7A3) -- H2/H3
or (k >= 0x2E80 and k <= 0x9FFF)
+ or (k >= 0xA000 and k <= 0xA48F) -- Yi
+ or (k >= 0xA490 and k <= 0xA4CF) -- Yi
or (k >= 0xF900 and k <= 0xFAFF)
or (k >= 0xFE10 and k <= 0xFE1F)
or (k >= 0xFE30 and k <= 0xFE6F)
Modified: trunk/Master/texmf-dist/tex/generic/babel/babel.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel.def 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel.def 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `core')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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.
@@ -41,7 +41,7 @@
\wlog{File: #1 #4 #3 <#2>}%
\let\ProvidesFile\@undefined}
\fi
-\ProvidesFile{babel.def}[2020/01/15 3.38 Babel common definitions]
+\ProvidesFile{babel.def}[2020/02/03 3.39 Babel common definitions]
\ifx\AtBeginDocument\@undefined
\input plain.def\relax
\fi
@@ -992,7 +992,7 @@
\newcommand\SetHyphenMap[1]{%
\bbl at forlang\bbl at tempa{%
\expandafter\bbl at stringdef
- \csname\bbl at tempa @bbl at hyphenmap\endcsname{##1}}}
+ \csname\bbl at tempa @bbl at hyphenmap\endcsname{##1}}}%
\def\bbl at provstring##1##2{%
\providecommand##1{##2}%
\bbl at toglobal##1}%
@@ -1020,6 +1020,7 @@
\edef\bbl at L{\zap at space#1 \@empty}%
\edef\bbl at G{\zap at space#2 \@empty}%
\bbl at startcmds@ii}
+\let\bbl at startcommands\StartBabelCommands
\newcommand\bbl at startcmds@ii[1][\@empty]{%
\let\SetString\@gobbletwo
\let\bbl at stringdef\@gobbletwo
@@ -1104,6 +1105,7 @@
\endgroup
\endgroup
\bbl at scafter}
+\let\bbl at endcommands\EndBabelCommands
\def\bbl at setstring#1#2{%
\bbl at forlang\bbl at tempa{%
\edef\bbl at LC{\bbl at tempa\bbl at stripslash#1}%
@@ -1373,7 +1375,7 @@
\let\bbl at savelangname\languagename
\edef\bbl at savelocaleid{\the\localeid}%
% Set name and locale id
- \def\languagename{#2}%
+ \edef\languagename{#2}%
% \global\@namedef{bbl at lcname@#2}{#2}%
\bbl at id@assign
\let\bbl at KVP@captions\@nil
@@ -1390,7 +1392,7 @@
\let\bbl at KVP@onchar\@nil
\let\bbl at KVP@chargroups\@nil
\bbl at forkv{#1}{% TODO - error handling
- \in@{..}{##1}%
+ \in@{/}{##1}%
\ifin@
\bbl at renewinikey##1\@@{##2}%
\else
@@ -1439,8 +1441,10 @@
\bbl at read@ini{##1}{basic data}%
\bbl at exportkey{chrng}{characters.ranges}{}%
\bbl at exportkey{dgnat}{numbers.digits.native}{}%
+ \bbl at exportkey{lnbrk}{typography.linebreaking}{h}%
\bbl at exportkey{hyphr}{typography.hyphenrules}{}%
\bbl at exportkey{intsp}{typography.intraspace}{}%
+ \endinput
\endgroup}% boxed, to avoid extra spaces:
{\setbox\z@\hbox{\InputIfFileExists{babel-#2.tex}{}{}}}}%
{}%
@@ -1461,10 +1465,15 @@
Babel.locale_mapped = true
Babel.linebreaking.add_before(Babel.locale_map)
Babel.loc_to_scr = {}
- Babel.chr_to_loc = {}
+ Babel.chr_to_loc = Babel.chr_to_loc or {}
end}%
\bbl at xin@{ ids }{ \bbl at KVP@onchar\space}%
\ifin@
+ \ifx\bbl at starthyphens\@undefined % Needed if no explicit selection
+ \AddBabelHook{babel-onchar}{beforestart}{{\bbl at starthyphens}}%
+ \fi
+ \bbl at exp{\\\bbl at add\\\bbl at starthyphens
+ {\\\bbl at patterns@lua{\languagename}}}%
% TODO - error/warning if no script
\directlua{
if Babel.script_blocks['\bbl at cs{sbcp@\languagename}'] then
@@ -1483,7 +1492,7 @@
if Babel.script_blocks['\bbl at cs{sbcp@\languagename}'] then
Babel.loc_to_scr[\the\localeid] =
Babel.script_blocks['\bbl at cs{sbcp@\languagename}']
- end}
+ end}%
\ifx\bbl at mapselect\@undefined
\AtBeginDocument{%
\expandafter\bbl at add\csname selectfont \endcsname{{\bbl at mapselect}}%
@@ -1587,7 +1596,7 @@
return head
end
end
- }}
+ }}%
\fi
\fi
% == require.babel in ini ==
@@ -1640,7 +1649,7 @@
\@namedef{date#1}{}% marks lang exists - required by \StartBabelCommands
\@namedef{extras#1}{}%
\@namedef{noextras#1}{}%
- \StartBabelCommands*{#1}{captions}%
+ \bbl at startcommands*{#1}{captions}%
\ifx\bbl at KVP@captions\@nil % and also if import, implicit
\def\bbl at tempb##1{% elt for \bbl at captionslist
\ifx##1\@empty\else
@@ -1663,7 +1672,7 @@
\bbl at savetoday
\bbl at savedate
\fi
- \EndBabelCommands
+ \bbl at endcommands
\bbl at exp{%
\def\<#1hyphenmins>{%
{\bbl at ifunset{bbl at lfthm@#1}{2}{\@nameuse{bbl at lfthm@#1}}}%
@@ -1743,7 +1752,7 @@
\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
@@ -1777,7 +1786,7 @@
\@nameuse{bbl at secpost@\bbl at section}% ends previous section
\def\bbl at section{#1}% starts current section
\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}% pre-section `hook'
\bbl at ifunset{bbl at inikv@#1}%
@@ -1784,7 +1793,7 @@
{\let\bbl at inireader\bbl at iniskip}%
{\bbl at exp{\let\\\bbl at inireader\<bbl at inikv@#1>}}}
\let\bbl at renewlist\@empty
-\def\bbl at renewinikey#1..#2\@@#3{%
+\def\bbl at renewinikey#1/#2\@@#3{%
\bbl at ifunset{bbl at renew@#1}%
{\bbl at add@list\bbl at renewlist{#1}}%
{}%
@@ -1820,6 +1829,7 @@
\bbl at exportkey{lfthm}{typography.lefthyphenmin}{2}%
\bbl at exportkey{rgthm}{typography.righthyphenmin}{3}%
\bbl at exportkey{prehc}{typography.prehyphenchar}{}%
+ \bbl at exportkey{lnbrk}{typography.linebreaking}{h}%
\bbl at exportkey{hyphr}{typography.hyphenrules}{}%
\bbl at exportkey{intsp}{typography.intraspace}{}%
\bbl at exportkey{jstfy}{typography.justify}{w}%
@@ -2025,9 +2035,7 @@
\@namedef{bbl at ADJ@layout.lists at on}{%
\bbl at adjust@layout{\let\list\bbl at OL@list}}
\@namedef{bbl at ADJ@hyphenation.extra at on}{%
- \directlua{
- Babel.linebreaking.add_after(Babel.post_hyphenate_replace)
- }}
+ \bbl at activateposthyphen}
{\def\format{lplain}
\ifx\fmtname\format
\else
@@ -2422,18 +2430,20 @@
\newtoks\everypar
\everypar=\bbl at severypar
\bbl at severypar{\bbl at xeeverypar\the\everypar}}
- \@ifpackagewith{babel}{bidi=bidi}%
- {\let\bbl at textdir@i\@gobbletwo
- \let\bbl at xebidipar\@empty
- \AddBabelHook{bidi}{foreign}{%
- \def\bbl at tempa{\def\BabelText####1}%
- \ifcase\bbl at thetextdir
- \expandafter\bbl at tempa\expandafter{\BabelText{\LR{##1}}}%
- \else
- \expandafter\bbl at tempa\expandafter{\BabelText{\RL{##1}}}%
- \fi}
- \def\bbl at pardir#1{\ifcase#1\relax\setLR\else\setRL\fi}}
- {}%
+ \def\bbl at tempb{%
+ \let\bbl at textdir@i\@gobbletwo
+ \let\bbl at xebidipar\@empty
+ \AddBabelHook{bidi}{foreign}{%
+ \def\bbl at tempa{\def\BabelText########1}%
+ \ifcase\bbl at thetextdir
+ \expandafter\bbl at tempa\expandafter{\BabelText{\LR{####1}}}%
+ \else
+ \expandafter\bbl at tempa\expandafter{\BabelText{\RL{####1}}}%
+ \fi}
+ \def\bbl at pardir##1{\ifcase##1\relax\setLR\else\setRL\fi}}
+ \@ifpackagewith{babel}{bidi=bidi}{\bbl at tempb}{}%
+ \@ifpackagewith{babel}{bidi=bidi-l}{\bbl at tempb}{}%
+ \@ifpackagewith{babel}{bidi=bidi-r}{\bbl at tempb}{}%
\fi
\DeclareRobustCommand\babelsublr[1]{\leavevmode{\bbl at textdir\z@#1}}
\AtBeginDocument{%
Modified: trunk/Master/texmf-dist/tex/generic/babel/babel.sty
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/babel.sty 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/babel.sty 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `package')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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.
@@ -33,7 +33,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
-\ProvidesPackage{babel}[2020/01/15 3.38 The Babel package]
+\ProvidesPackage{babel}[2020/02/03 3.39 The Babel package]
\@ifpackagewith{babel}{debug}
{\providecommand\bbl at trace[1]{\message{^^J[ #1 ]}}%
\let\bbl at debug\@firstofone}
@@ -214,8 +214,6 @@
\bbl at languages
\fi
\ifodd\bbl at engine
- % Harftex is evolving, so the callback is not harcoded, just in case
- \def\bbl at harfpreline{Harf pre_linebreak_filter callback}%
\def\bbl at activate@preotf{%
\let\bbl at activate@preotf\relax % only once
\directlua{
@@ -245,23 +243,14 @@
Babel.pre_otfload_v,
'Babel.pre_otfload_v',
luatexbase.priority_in_callback('pre_linebreak_filter',
- '\bbl at harfpreline')
- or luatexbase.priority_in_callback('pre_linebreak_filter',
- 'luaotfload.node_processor')
- or nil)
+ 'luaotfload.node_processor') or nil)
%
luatexbase.add_to_callback('hpack_filter',
Babel.pre_otfload_h,
'Babel.pre_otfload_h',
luatexbase.priority_in_callback('hpack_filter',
- '\bbl at harfpreline')
- or luatexbase.priority_in_callback('hpack_filter',
- 'luaotfload.node_processor')
- or nil)
- }%
- \@ifpackageloaded{harfload}%
- {\directlua{ Babel.mirroring_enabled = false }}%
- {}}
+ 'luaotfload.node_processor') or nil)
+ }}
\let\bbl at tempa\relax
\@ifpackagewith{babel}{bidi=basic}%
{\def\bbl at tempa{basic}}%
Modified: trunk/Master/texmf-dist/tex/generic/babel/blplain.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/blplain.tex 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/blplain.tex 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `blplain')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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.
Modified: trunk/Master/texmf-dist/tex/generic/babel/bplain.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/bplain.tex 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/bplain.tex 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `bplain')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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.
Modified: trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/hyphen.cfg 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `patterns')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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,7 +37,7 @@
\wlog{File: #1 #4 #3 <#2>}%
\let\ProvidesFile\@undefined}
\fi
-\ProvidesFile{hyphen.cfg}[2020/01/15 3.38 Babel hyphens]
+\ProvidesFile{hyphen.cfg}[2020/02/03 3.39 Babel hyphens]
\xdef\bbl at format{\jobname}
\ifx\AtBeginDocument\@undefined
\def\@empty{}
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-1901.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-1901.ini (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-1901.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -0,0 +1,186 @@
+; 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
+; * polyglossia language styles (license LPPL)
+; https://www.ctan.org/pkg/polyglossia
+; * Common Locale Data Repository (license Unicode):
+; http://cldr.unicode.org/
+; http://unicode.org/copyright.html
+
+[identification]
+charset = utf8
+version = 1.1
+date = 2020-01-27
+name.local = Deutsch
+name.english = German
+name.babel = german
+tag.bcp47 = de
+tag.opentype = DEU
+script.name = Latin
+script.tag.bcp47 = Latn
+script.tag.opentype = latn
+level = 1
+encodings = T1 OT1 LY1
+derivate = no
+
+[captions]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Anlage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe auch
+proof = Beweis
+glossary = Glossar
+
+[captions.licr]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Anlage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe\space auch
+proof = Beweis
+glossary = Glossar
+
+[date.gregorian]
+date.long = [d].[ ][MMMM] [y]
+date.short = [dd].[MM].[yy]
+months.wide.1 = Januar
+months.wide.2 = Februar
+months.wide.3 = März
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+months.narrow.1 = J
+months.narrow.2 = F
+months.narrow.3 = M
+months.narrow.4 = A
+months.narrow.5 = M
+months.narrow.6 = J
+months.narrow.7 = J
+months.narrow.8 = A
+months.narrow.9 = S
+months.narrow.10 = O
+months.narrow.11 = N
+months.narrow.12 = D
+days.wide.mon = Montag
+days.wide.tue = Dienstag
+days.wide.wed = Mittwoch
+days.wide.thu = Donnerstag
+days.wide.fri = Freitag
+days.wide.sat = Samstag
+days.wide.sun = Sonntag
+days.abbreviated.mon = Mo.
+days.abbreviated.tue = Di.
+days.abbreviated.wed = Mi.
+days.abbreviated.thu = Do.
+days.abbreviated.fri = Fr.
+days.abbreviated.sat = Sa.
+days.abbreviated.sun = So.
+days.narrow.mon = M
+days.narrow.tue = D
+days.narrow.wed = M
+days.narrow.thu = D
+days.narrow.fri = F
+days.narrow.sat = S
+days.narrow.sun = S
+dayPeriods.abbreviated.am = vorm.
+dayPeriods.abbreviated.pm = nachm.
+dayPeriods.narrow.am = vm.
+dayPeriods.narrow.pm = nm.
+dayPeriods.wide.am = vorm.
+dayPeriods.wide.pm = nachm.
+
+[date.gregorian.licr]
+months.wide.1 = Januar
+months.wide.2 = Februar
+months.wide.3 = M\"arz
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+
+[time.gregorian]
+time.medium = [HH]:[mm]:[ss]
+time.short = [HH]:[mm]
+
+[typography]
+frenchspacing = yes
+hyphenrules = german
+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 = ·
+
+[counters]
+alph =
+Alph =
+ordinals =
+
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-1901.ini
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-1996.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-1996.ini (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-1996.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -0,0 +1,186 @@
+; 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
+; * polyglossia language styles (license LPPL)
+; https://www.ctan.org/pkg/polyglossia
+; * Common Locale Data Repository (license Unicode):
+; http://cldr.unicode.org/
+; http://unicode.org/copyright.html
+
+[identification]
+charset = utf8
+version = 1.1
+date = 2020-01-27
+name.local = Deutsch
+name.english = German
+name.babel = german
+tag.bcp47 = de
+tag.opentype = DEU
+script.name = Latin
+script.tag.bcp47 = Latn
+script.tag.opentype = latn
+level = 1
+encodings = T1 OT1 LY1
+derivate = no
+
+[captions]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Anlage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe auch
+proof = Beweis
+glossary = Glossar
+
+[captions.licr]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Anlage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe\space auch
+proof = Beweis
+glossary = Glossar
+
+[date.gregorian]
+date.long = [d].[ ][MMMM] [y]
+date.short = [dd].[MM].[yy]
+months.wide.1 = Januar
+months.wide.2 = Februar
+months.wide.3 = März
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+months.narrow.1 = J
+months.narrow.2 = F
+months.narrow.3 = M
+months.narrow.4 = A
+months.narrow.5 = M
+months.narrow.6 = J
+months.narrow.7 = J
+months.narrow.8 = A
+months.narrow.9 = S
+months.narrow.10 = O
+months.narrow.11 = N
+months.narrow.12 = D
+days.wide.mon = Montag
+days.wide.tue = Dienstag
+days.wide.wed = Mittwoch
+days.wide.thu = Donnerstag
+days.wide.fri = Freitag
+days.wide.sat = Samstag
+days.wide.sun = Sonntag
+days.abbreviated.mon = Mo.
+days.abbreviated.tue = Di.
+days.abbreviated.wed = Mi.
+days.abbreviated.thu = Do.
+days.abbreviated.fri = Fr.
+days.abbreviated.sat = Sa.
+days.abbreviated.sun = So.
+days.narrow.mon = M
+days.narrow.tue = D
+days.narrow.wed = M
+days.narrow.thu = D
+days.narrow.fri = F
+days.narrow.sat = S
+days.narrow.sun = S
+dayPeriods.abbreviated.am = vorm.
+dayPeriods.abbreviated.pm = nachm.
+dayPeriods.narrow.am = vm.
+dayPeriods.narrow.pm = nm.
+dayPeriods.wide.am = vorm.
+dayPeriods.wide.pm = nachm.
+
+[date.gregorian.licr]
+months.wide.1 = Januar
+months.wide.2 = Februar
+months.wide.3 = M\"arz
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+
+[time.gregorian]
+time.medium = [HH]:[mm]:[ss]
+time.short = [HH]:[mm]
+
+[typography]
+frenchspacing = yes
+hyphenrules = ngerman
+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 = ·
+
+[counters]
+alph =
+Alph =
+ordinals =
+
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-1996.ini
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT-1901.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT-1901.ini (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT-1901.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -0,0 +1,191 @@
+; 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
+; * polyglossia language styles (license LPPL)
+; https://www.ctan.org/pkg/polyglossia
+; * Common Locale Data Repository (license Unicode):
+; http://cldr.unicode.org/
+; http://unicode.org/copyright.html
+
+[identification]
+charset = utf8
+version = 1.1
+date = 2020-01-27
+name.local = Deutsch
+name.english = German
+name.babel = german-austria
+name.babel.A = german-at
+name.babel.B = austrian
+tag.bcp47 = de
+tag.opentype = DEU
+region.local = Österreich
+region.english = Austria
+region.tag.bcp47 = AT
+script.name = Latin
+script.tag.bcp47 = Latn
+script.tag.opentype = latn
+level = 1
+encodings = T1 OT1 LY1
+derivate = no
+
+[captions]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Beilage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe auch
+proof = Beweis
+glossary = Glossar
+
+[captions.licr]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Beilage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe\space auch
+proof = Beweis
+glossary = Glossar
+
+[date.gregorian]
+date.long = [d].[ ][MMMM] [y]
+date.short = [dd].[MM].[yy]
+months.wide.1 = Jänner
+months.wide.2 = Februar
+months.wide.3 = März
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+months.narrow.1 = J
+months.narrow.2 = F
+months.narrow.3 = M
+months.narrow.4 = A
+months.narrow.5 = M
+months.narrow.6 = J
+months.narrow.7 = J
+months.narrow.8 = A
+months.narrow.9 = S
+months.narrow.10 = O
+months.narrow.11 = N
+months.narrow.12 = D
+days.wide.mon = Montag
+days.wide.tue = Dienstag
+days.wide.wed = Mittwoch
+days.wide.thu = Donnerstag
+days.wide.fri = Freitag
+days.wide.sat = Samstag
+days.wide.sun = Sonntag
+days.abbreviated.mon = Mo.
+days.abbreviated.tue = Di.
+days.abbreviated.wed = Mi.
+days.abbreviated.thu = Do.
+days.abbreviated.fri = Fr.
+days.abbreviated.sat = Sa.
+days.abbreviated.sun = So.
+days.narrow.mon = M
+days.narrow.tue = D
+days.narrow.wed = M
+days.narrow.thu = D
+days.narrow.fri = F
+days.narrow.sat = S
+days.narrow.sun = S
+dayPeriods.abbreviated.am = vorm.
+dayPeriods.abbreviated.pm = nachm.
+dayPeriods.narrow.am = vm.
+dayPeriods.narrow.pm = nm.
+dayPeriods.wide.am = vorm.
+dayPeriods.wide.pm = nachm.
+
+[date.gregorian.licr]
+months.wide.1 = J\"anner
+months.wide.2 = Februar
+months.wide.3 = M\"arz
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+
+[time.gregorian]
+time.medium = [HH]:[mm]:[ss]
+time.short = [HH]:[mm]
+
+[typography]
+frenchspacing = yes
+hyphenrules = german
+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 = ·
+
+[counters]
+alph =
+Alph =
+ordinals =
+
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT-1901.ini
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT-1996.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT-1996.ini (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT-1996.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -0,0 +1,191 @@
+; 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
+; * polyglossia language styles (license LPPL)
+; https://www.ctan.org/pkg/polyglossia
+; * Common Locale Data Repository (license Unicode):
+; http://cldr.unicode.org/
+; http://unicode.org/copyright.html
+
+[identification]
+charset = utf8
+version = 1.1
+date = 2020-01-27
+name.local = Deutsch
+name.english = German
+name.babel = german-austria
+name.babel.A = german-at
+name.babel.B = austrian
+tag.bcp47 = de
+tag.opentype = DEU
+region.local = Österreich
+region.english = Austria
+region.tag.bcp47 = AT
+script.name = Latin
+script.tag.bcp47 = Latn
+script.tag.opentype = latn
+level = 1
+encodings = T1 OT1 LY1
+derivate = no
+
+[captions]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Beilage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe auch
+proof = Beweis
+glossary = Glossar
+
+[captions.licr]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Beilage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe\space auch
+proof = Beweis
+glossary = Glossar
+
+[date.gregorian]
+date.long = [d].[ ][MMMM] [y]
+date.short = [dd].[MM].[yy]
+months.wide.1 = Jänner
+months.wide.2 = Februar
+months.wide.3 = März
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+months.narrow.1 = J
+months.narrow.2 = F
+months.narrow.3 = M
+months.narrow.4 = A
+months.narrow.5 = M
+months.narrow.6 = J
+months.narrow.7 = J
+months.narrow.8 = A
+months.narrow.9 = S
+months.narrow.10 = O
+months.narrow.11 = N
+months.narrow.12 = D
+days.wide.mon = Montag
+days.wide.tue = Dienstag
+days.wide.wed = Mittwoch
+days.wide.thu = Donnerstag
+days.wide.fri = Freitag
+days.wide.sat = Samstag
+days.wide.sun = Sonntag
+days.abbreviated.mon = Mo.
+days.abbreviated.tue = Di.
+days.abbreviated.wed = Mi.
+days.abbreviated.thu = Do.
+days.abbreviated.fri = Fr.
+days.abbreviated.sat = Sa.
+days.abbreviated.sun = So.
+days.narrow.mon = M
+days.narrow.tue = D
+days.narrow.wed = M
+days.narrow.thu = D
+days.narrow.fri = F
+days.narrow.sat = S
+days.narrow.sun = S
+dayPeriods.abbreviated.am = vorm.
+dayPeriods.abbreviated.pm = nachm.
+dayPeriods.narrow.am = vm.
+dayPeriods.narrow.pm = nm.
+dayPeriods.wide.am = vorm.
+dayPeriods.wide.pm = nachm.
+
+[date.gregorian.licr]
+months.wide.1 = J\"anner
+months.wide.2 = Februar
+months.wide.3 = M\"arz
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+
+[time.gregorian]
+time.medium = [HH]:[mm]:[ss]
+time.short = [HH]:[mm]
+
+[typography]
+frenchspacing = yes
+hyphenrules = ngerman
+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 = ·
+
+[counters]
+alph =
+Alph =
+ordinals =
+
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT-1996.ini
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-AT.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.0
-date = 2017-09-01
+version = 1.1
+date = 2020-01-27
name.local = Deutsch
name.english = German
name.babel = german-austria
@@ -151,7 +151,7 @@
[typography]
frenchspacing = yes
-hyphenrules = german
+hyphenrules = ngerman
lefthyphenmin = 2
righthyphenmin = 2
hyphenchar =
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH-1901.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH-1901.ini (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH-1901.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -0,0 +1,193 @@
+; 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
+; * polyglossia language styles (license LPPL)
+; https://www.ctan.org/pkg/polyglossia
+; * Common Locale Data Repository (license Unicode):
+; http://cldr.unicode.org/
+; http://unicode.org/copyright.html
+
+[identification]
+charset = utf8
+version = 1.1
+date = 2020-01-27
+name.local = Deutsch
+name.english = German
+name.babel = german-switzerland
+name.babel.A = german-ch
+name.babel.B = nswissgerman
+; The following conflicts with gsw:
+name.babel.C = swissgerman
+tag.bcp47 = de
+tag.opentype = DEU
+region.local = Schweiz
+region.english = Switzerland
+region.tag.bcp47 = CH
+script.name = Latin
+script.tag.bcp47 = Latn
+script.tag.opentype = latn
+level = 1
+encodings = T1 OT1 LY1
+derivate = no
+
+[captions]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Beilage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe auch
+proof = Beweis
+glossary = Glossar
+
+[captions.licr]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Beilage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe\space auch
+proof = Beweis
+glossary = Glossar
+
+[date.gregorian]
+date.long = [d].[ ][MMMM] [y]
+date.short = [dd].[MM].[yy]
+months.wide.1 = Januar
+months.wide.2 = Februar
+months.wide.3 = März
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+months.narrow.1 = J
+months.narrow.2 = F
+months.narrow.3 = M
+months.narrow.4 = A
+months.narrow.5 = M
+months.narrow.6 = J
+months.narrow.7 = J
+months.narrow.8 = A
+months.narrow.9 = S
+months.narrow.10 = O
+months.narrow.11 = N
+months.narrow.12 = D
+days.wide.mon = Montag
+days.wide.tue = Dienstag
+days.wide.wed = Mittwoch
+days.wide.thu = Donnerstag
+days.wide.fri = Freitag
+days.wide.sat = Samstag
+days.wide.sun = Sonntag
+days.abbreviated.mon = Mo.
+days.abbreviated.tue = Di.
+days.abbreviated.wed = Mi.
+days.abbreviated.thu = Do.
+days.abbreviated.fri = Fr.
+days.abbreviated.sat = Sa.
+days.abbreviated.sun = So.
+days.narrow.mon = M
+days.narrow.tue = D
+days.narrow.wed = M
+days.narrow.thu = D
+days.narrow.fri = F
+days.narrow.sat = S
+days.narrow.sun = S
+dayPeriods.abbreviated.am = vorm.
+dayPeriods.abbreviated.pm = nachm.
+dayPeriods.narrow.am = vm.
+dayPeriods.narrow.pm = nm.
+dayPeriods.wide.am = vorm.
+dayPeriods.wide.pm = nachm.
+
+[date.gregorian.licr]
+months.wide.1 = Januar
+months.wide.2 = Februar
+months.wide.3 = M\"arz
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+
+[time.gregorian]
+time.medium = [HH]:[mm]:[ss]
+time.short = [HH]:[mm]
+
+[typography]
+frenchspacing = yes
+hyphenrules = swissgerman
+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 = ·
+
+[counters]
+alph =
+Alph =
+ordinals =
+
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH-1901.ini
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH-1996.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH-1996.ini (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH-1996.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -0,0 +1,193 @@
+; 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
+; * polyglossia language styles (license LPPL)
+; https://www.ctan.org/pkg/polyglossia
+; * Common Locale Data Repository (license Unicode):
+; http://cldr.unicode.org/
+; http://unicode.org/copyright.html
+
+[identification]
+charset = utf8
+version = 1.1
+date = 2020-01-27
+name.local = Deutsch
+name.english = German
+name.babel = german-switzerland
+name.babel.A = german-ch
+name.babel.B = nswissgerman
+; The following conflicts with gsw:
+name.babel.C = swissgerman
+tag.bcp47 = de
+tag.opentype = DEU
+region.local = Schweiz
+region.english = Switzerland
+region.tag.bcp47 = CH
+script.name = Latin
+script.tag.bcp47 = Latn
+script.tag.opentype = latn
+level = 1
+encodings = T1 OT1 LY1
+derivate = no
+
+[captions]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Beilage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe auch
+proof = Beweis
+glossary = Glossar
+
+[captions.licr]
+preface = Vorwort
+ref = Literatur
+abstract = Zusammenfassung
+bib = Literaturverzeichnis
+chapter = Kapitel
+appendix = Anhang
+contents = Inhaltsverzeichnis
+listfigure = Abbildungsverzeichnis
+listtable = Tabellenverzeichnis
+index = Index
+figure = Abbildung
+table = Tabelle
+part = Teil
+encl = Beilage(n)
+cc = Verteiler
+headto = An
+page = Seite
+see = siehe
+also = siehe\space auch
+proof = Beweis
+glossary = Glossar
+
+[date.gregorian]
+date.long = [d].[ ][MMMM] [y]
+date.short = [dd].[MM].[yy]
+months.wide.1 = Januar
+months.wide.2 = Februar
+months.wide.3 = März
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+months.narrow.1 = J
+months.narrow.2 = F
+months.narrow.3 = M
+months.narrow.4 = A
+months.narrow.5 = M
+months.narrow.6 = J
+months.narrow.7 = J
+months.narrow.8 = A
+months.narrow.9 = S
+months.narrow.10 = O
+months.narrow.11 = N
+months.narrow.12 = D
+days.wide.mon = Montag
+days.wide.tue = Dienstag
+days.wide.wed = Mittwoch
+days.wide.thu = Donnerstag
+days.wide.fri = Freitag
+days.wide.sat = Samstag
+days.wide.sun = Sonntag
+days.abbreviated.mon = Mo.
+days.abbreviated.tue = Di.
+days.abbreviated.wed = Mi.
+days.abbreviated.thu = Do.
+days.abbreviated.fri = Fr.
+days.abbreviated.sat = Sa.
+days.abbreviated.sun = So.
+days.narrow.mon = M
+days.narrow.tue = D
+days.narrow.wed = M
+days.narrow.thu = D
+days.narrow.fri = F
+days.narrow.sat = S
+days.narrow.sun = S
+dayPeriods.abbreviated.am = vorm.
+dayPeriods.abbreviated.pm = nachm.
+dayPeriods.narrow.am = vm.
+dayPeriods.narrow.pm = nm.
+dayPeriods.wide.am = vorm.
+dayPeriods.wide.pm = nachm.
+
+[date.gregorian.licr]
+months.wide.1 = Januar
+months.wide.2 = Februar
+months.wide.3 = M\"arz
+months.wide.4 = April
+months.wide.5 = Mai
+months.wide.6 = Juni
+months.wide.7 = Juli
+months.wide.8 = August
+months.wide.9 = September
+months.wide.10 = Oktober
+months.wide.11 = November
+months.wide.12 = Dezember
+
+[time.gregorian]
+time.medium = [HH]:[mm]:[ss]
+time.short = [HH]:[mm]
+
+[typography]
+frenchspacing = yes
+hyphenrules = ngerman
+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 = ·
+
+[counters]
+alph =
+Alph =
+ordinals =
+
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH-1996.ini
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de-CH.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.0
-date = 2017-09-01
+version = 1.1
+date = 2020-01-27
name.local = Deutsch
name.english = German
name.babel = german-switzerland
@@ -153,7 +153,7 @@
[typography]
frenchspacing = yes
-hyphenrules = swissgerman
+hyphenrules = ngerman
lefthyphenmin = 2
righthyphenmin = 2
hyphenchar =
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-de.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.0
-date = 2017-09-01
+version = 1.1
+date = 2020-01-27
name.local = Deutsch
name.english = German
name.babel = german
@@ -146,7 +146,7 @@
[typography]
frenchspacing = yes
-hyphenrules = german
+hyphenrules = ngerman
lefthyphenmin = 2
righthyphenmin = 2
hyphenchar =
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-austria-traditional.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-austria-traditional.tex (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-austria-traditional.tex 2020-02-03 22:33:15 UTC (rev 53660)
@@ -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{de-AT-1901}{%
+}
+\endinput
\ No newline at end of file
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-austria-traditional.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-switzerland-traditional.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-switzerland-traditional.tex (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-switzerland-traditional.tex 2020-02-03 22:33:15 UTC (rev 53660)
@@ -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{de-CH-1901}{%
+}
+\endinput
\ No newline at end of file
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-switzerland-traditional.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-traditional.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-traditional.tex (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-traditional.tex 2020-02-03 22:33:15 UTC (rev 53660)
@@ -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{de-1901}{%
+}
+\endinput
\ No newline at end of file
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-german-traditional.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-naustrian.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-naustrian.tex (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-naustrian.tex 2020-02-03 22:33:15 UTC (rev 53660)
@@ -0,0 +1,4 @@
+% This file is part of babel. For further details see:
+% https://www.ctan.org/pkg/babel
+\input{babel-german-austria}
+\endinput
\ No newline at end of file
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-naustrian.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-ngerman.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-ngerman.tex (rev 0)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-ngerman.tex 2020-02-03 22:33:15 UTC (rev 53660)
@@ -0,0 +1,4 @@
+% This file is part of babel. For further details see:
+% https://www.ctan.org/pkg/babel
+\input{babel-german}
+\endinput
\ No newline at end of file
Property changes on: trunk/Master/texmf-dist/tex/generic/babel/locale/de/babel-ngerman.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/ii/babel-ii.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/ii/babel-ii.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/ii/babel-ii.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.0
-date = 2017-09-01
+version = 1.1
+date = 2020-01-20
name.local = ꆈꌠꉙ
name.english = Sichuan Yi
name.babel = sichuanyi
@@ -142,6 +142,8 @@
preexhyphenchar =
postexhyphenchar =
hyphenationmin =
+intraspace = 0 .1 0
+linebreaking = c
[characters]
delimiters.quotes = “”‘’
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.1
-date = 2019-05-05
+version = 1.2
+date = 2020-01-20
name.local = 日本語
name.english = Japanese
name.babel = japanese
@@ -143,6 +143,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
[characters]
delimiters.quotes = 「」『』
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-km.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-km.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/km/babel-km.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.3
-date = 2018-10-02
+version = 1.4
+date = 2020-01-20
name.local = ខ្មែរ
name.english = Khmer
name.babel = khmer
@@ -145,6 +145,7 @@
hyphenationmin =
justify = s
intraspace = 0 .1 0
+linebreaking = s
[characters]
ranges = 1780..17FF
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.2
-date = 2019-10-30
+version = 1.3
+date = 2020-01-20
name.local = 한국어
name.english = Korean
name.babel = korean
@@ -144,6 +144,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
[characters]
delimiters.quotes = “”‘’
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lo.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lo.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/lo/babel-lo.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.3
-date = 2018-10-02
+version = 1.4
+date = 2020-01-20
name.local = ລາວ
name.english = Lao
name.babel = lao
@@ -122,6 +122,7 @@
hyphenationmin =
justify = s
intraspace = 0 .1 0
+linebreaking = s
[characters]
ranges = 0E80..0EFF
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Beng.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Beng.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Beng.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,10 +11,10 @@
[identification]
charset = utf8
-version = 0.5
-date = 2018-05-21
+version = 0.6
+date = 2020-01-29
name.english = Sanskrit
-name.babel.0 = sanskrit
+name.babel = sanskrit
tag.bcp47 = sa
tag.opentype = SAN
script.name = Bengali
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Deva.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Deva.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Deva.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,10 +11,10 @@
[identification]
charset = utf8
-version = 0.5
-date = 2018-05-21
+version = 0.6
+date = 2020-01-29
name.english = Sanskrit
-name.babel.0 = sanskrit
+name.babel = sanskrit
tag.bcp47 = sa
tag.opentype = SAN
script.name = Devanagari
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Gujr.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Gujr.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Gujr.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,10 +11,10 @@
[identification]
charset = utf8
-version = 0.5
-date = 2018-05-21
+version = 0.6
+date = 2020-01-29
name.english = Sanskrit
-name.babel.0 = sanskrit
+name.babel = sanskrit
tag.bcp47 = sa
tag.opentype = SAN
script.name = Gujarati
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Knda.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Knda.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Knda.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,10 +11,10 @@
[identification]
charset = utf8
-version = 0.5
-date = 2018-05-21
+version = 0.6
+date = 2020-01-29
name.english = Sanskrit
-name.babel.0 = sanskrit
+name.babel = sanskrit
tag.bcp47 = sa
tag.opentype = SAN
script.name = Kannada
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Mlym.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Mlym.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Mlym.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,10 +11,10 @@
[identification]
charset = utf8
-version = 0.5
-date = 2018-05-21
+version = 0.6
+date = 2020-01-29
name.english = Sanskrit
-name.babel.0 = sanskrit
+name.babel = sanskrit
tag.bcp47 = sa
tag.opentype = SAN
script.name = Malayalam
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Telu.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Telu.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa-Telu.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,10 +11,10 @@
[identification]
charset = utf8
-version = 0.5
-date = 2018-05-21
+version = 0.6
+date = 2020-01-29
name.english = Sanskrit
-name.babel.0 = sanskrit
+name.babel = sanskrit
tag.bcp47 = sa
tag.opentype = SAN
script.name = Telugu
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/sa/babel-sa.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,10 +11,10 @@
[identification]
charset = utf8
-version = 0.5
-date = 2018-05-21
+version = 0.6
+date = 2020-01-29
name.english = Sanskrit
-name.babel.0 = sanskrit
+name.babel = sanskrit
tag.bcp47 = sa
tag.opentype = SAN
script.name = Devanagari
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/th/babel-th.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/th/babel-th.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/th/babel-th.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.2
-date = 2018-09-07
+version = 1.3
+date = 2020-01-20
name.local = ไทย
name.english = Thai
name.babel = thai
@@ -160,6 +160,7 @@
hyphenationmin =
justify = s
intraspace = 0 .1 0
+linebreaking = s
[characters]
ranges = 0E00..0E7F
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/yue/babel-yue.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/yue/babel-yue.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/yue/babel-yue.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.2
-date = 2019-05-05
+version = 1.3
+date = 2020-01-20
name.local = 粵語
name.english = Cantonese
name.babel = cantonese
@@ -144,6 +144,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
[characters]
delimiters.quotes = 「」『』
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.3
-date = 2019-10-30
+version = 1.4
+date = 2020-01-20
name.local = 中文
name.english = Chinese
name.opentype = Chinese Simplified
@@ -149,6 +149,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
opentype.features = +smpl
[characters]
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.3
-date = 2019-10-30
+version = 1.4
+date = 2020-01-20
name.local = 中文
name.english = Chinese
name.opentype = Chinese Simplified
@@ -149,6 +149,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
opentype.features = +smpl
[characters]
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.3
-date = 2019-10-30
+version = 1.4
+date = 2020-01-20
name.local = 中文
name.english = Chinese
name.opentype = Chinese Simplified
@@ -149,6 +149,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
opentype.features = +smpl
[characters]
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.3
-date = 2019-10-30
+version = 1.4
+date = 2020-01-20
name.local = 中文
name.english = Chinese
name.opentype = Chinese Simplified
@@ -146,6 +146,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
opentype.features = +smpl
[characters]
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.3
-date = 2019-10-30
+version = 1.4
+date = 2020-01-20
name.local = 中文
name.english = Chinese
name.opentype = Chinese Traditional
@@ -149,6 +149,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
opentype.features = +trad
[characters]
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.3
-date = 2019-10-30
+version = 1.4
+date = 2020-01-20
name.local = 中文
name.english = Chinese
name.opentype = Chinese Traditional
@@ -149,6 +149,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
opentype.features = +trad
[characters]
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.3
-date = 2019-10-30
+version = 1.4
+date = 2020-01-20
name.local = 中文
name.english = Chinese
name.opentype = Chinese Traditional
@@ -146,6 +146,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
opentype.features = +trad
[characters]
Modified: trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh.ini
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh.ini 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh.ini 2020-02-03 22:33:15 UTC (rev 53660)
@@ -11,8 +11,8 @@
[identification]
charset = utf8
-version = 1.3
-date = 2019-10-30
+version = 1.4
+date = 2020-01-20
name.local = 中文
name.english = Chinese
name.opentype = Chinese Simplified
@@ -145,6 +145,7 @@
postexhyphenchar =
hyphenationmin =
intraspace = 0 .1 0
+linebreaking = c
[characters]
delimiters.quotes = “”‘’
Modified: trunk/Master/texmf-dist/tex/generic/babel/luababel.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/luababel.def 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/luababel.def 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `luatex')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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.
@@ -489,7 +489,7 @@
\def\bbl at provide@intraspace{%
\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}%
+ \bbl at xin@{\bbl at cs{lnbrk@\languagename}}{c}%
\ifin@ % cjk
\bbl at cjkintraspace
\directlua{
@@ -554,6 +554,12 @@
\bbl at trace{Font handling with fontspec}
\@onlypreamble\babelfont
\newcommand\babelfont[2][]{% 1=langs/scripts 2=fam
+ \bbl at foreach{#1}{%
+ \expandafter\ifx\csname date##1\endcsname\relax
+ \IfFileExists{babel-##1.tex}%
+ {\babelprovide{##1}}%
+ {}%
+ \fi}%
\edef\bbl at tempa{#1}%
\def\bbl at tempb{#2}% Used by \bbl at bblfont
\ifx\fontspec\@undefined
@@ -750,7 +756,7 @@
{0x2B740, 0x2B81F}, {0x2B820, 0x2CEAF},
{0x2CEB0, 0x2EBEF}, {0x2F800, 0x2FA1F}},
['Hebr'] = {{0x0590, 0x05FF}},
- ['Japa'] = {{0x3000, 0x303F}, {0x3040, 0x309F}, {0x30A0, 0x30FF},
+ ['Jpan'] = {{0x3000, 0x303F}, {0x3040, 0x309F}, {0x30A0, 0x30FF},
{0x4E00, 0x9FAF}, {0xFF00, 0xFFEF}},
['Khmr'] = {{0x1780, 0x17FF}, {0x19E0, 0x19FF}},
['Knda'] = {{0x0C80, 0x0CFF}},
@@ -772,10 +778,11 @@
['Thai'] = {{0x0E00, 0x0E7F}},
['Tibt'] = {{0x0F00, 0x0FFF}},
['Vaii'] = {{0xA500, 0xA63F}},
- ['Yiii']= {{0xA490, 0xA4CF}, {0xA000, 0xA48F}}
+ ['Yiii'] = {{0xA000, 0xA48F}, {0xA490, 0xA4CF}}
}
Babel.script_blocks.Hant = Babel.script_blocks.Hans
+Babel.script_blocks.Kana = Babel.script_blocks.Jpan
function Babel.locale_map(head)
if not Babel.locale_mapped then return head end
@@ -801,7 +808,7 @@
end
end
% Now, take action
- if toloc then
+ if toloc and toloc > -1 then
if Babel.locale_props[toloc].lg then
item.lang = Babel.locale_props[toloc].lg
node.set_attribute(item, LOCALE, toloc)
@@ -860,6 +867,12 @@
Babel.Babel.cjk_characters[\the\count@]['c'] = '#1'
}}
\let\bbl at chprop@lb\bbl at chprop@linebreak
+\def\bbl at chprop@locale#1{%
+ \directlua{
+ Babel.chr_to_loc = Babel.chr_to_loc or {}
+ Babel.chr_to_loc[\the\count@] =
+ \bbl at ifblank{#1}{-1000}{\the\@nameuse{bbl at id@@#1}}\space
+ }}
\begingroup
\catcode`\#=12
\catcode`\%=12
@@ -1029,16 +1042,44 @@
return head
end
- &% Used below
+ &% The following functions belong to the next macro
+
+ &% This table stores capture maps, numbered consecutively
+ Babel.capture_maps = {}
+
function Babel.capture_func(key, cap)
local ret = "[[" .. cap:gsub('{([0-9])}', "]]..m[%1]..[[") .. "]]"
+ ret = ret:gsub('{([0-9])|([^|]+)|(.-)}', Babel.capture_func_map)
ret = ret:gsub("%[%[%]%]%.%.", '')
ret = ret:gsub("%.%.%[%[%]%]", '')
return key .. [[=function(m) return ]] .. ret .. [[ end]]
end
+
+ function Babel.capt_map(from, mapno)
+ return Babel.capture_maps[mapno][from] or from
+ end
+
+ &% Handle the {n|abc|ABC} syntax in captures
+ function Babel.capture_func_map(capno, from, to)
+ local froms = {}
+ for s in string.utfcharacters(from) do
+ table.insert(froms, s)
+ end
+ local cnt = 1
+ table.insert(Babel.capture_maps, {})
+ local mlen = table.getn(Babel.capture_maps)
+ for s in string.utfcharacters(to) do
+ Babel.capture_maps[mlen][froms[cnt]] = s
+ cnt = cnt + 1
+ end
+ return "]]..Babel.capt_map(m[" .. capno .. "]," ..
+ (mlen) .. ").." .. "[["
+ end
+
}
\catcode`\#=6
\gdef\babelposthyphenation#1#2#3{&%
+ \bbl at activateposthyphen
\begingroup
\def\babeltempa{\bbl at add@list\babeltempb}&%
\let\babeltempb\@empty
@@ -1071,6 +1112,11 @@
}&%
\endgroup}
\endgroup
+\def\bbl at activateposthyphen{%
+ \let\bbl at activateposthyphen\relax
+ \directlua{
+ Babel.linebreaking.add_after(Babel.post_hyphenate_replace)
+ }}
\bbl at trace{Redefinitions for bidi layout}
\ifx\@eqnnum\@undefined\else
\ifx\bbl at attr@dir\@undefined\else
Modified: trunk/Master/texmf-dist/tex/generic/babel/nil.ldf
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/nil.ldf 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/nil.ldf 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `nil')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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 @@
%% extension |.ins|) which are part of the distribution.
%%
-\ProvidesLanguage{nil}[2020/01/15 3.38 Nil language]
+\ProvidesLanguage{nil}[2020/02/03 3.39 Nil language]
\LdfInit{nil}{datenil}
\ifx\l at nil\@undefined
\newlanguage\l at nil
Modified: trunk/Master/texmf-dist/tex/generic/babel/plain.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/plain.def 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/plain.def 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `plain')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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.
Modified: trunk/Master/texmf-dist/tex/generic/babel/switch.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/switch.def 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/switch.def 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `kernel')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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,7 +37,7 @@
\wlog{File: #1 #4 #3 <#2>}%
\let\ProvidesFile\@undefined}
\fi
-\ProvidesFile{switch.def}[2020/01/15 3.38 Babel switching mechanism]
+\ProvidesFile{switch.def}[2020/02/03 3.39 Babel switching mechanism]
\ifx\AtBeginDocument\@undefined
\input plain.def\relax
\fi
@@ -58,8 +58,8 @@
\countdef\last at language=19
\def\addlanguage{\alloc at 9\language\chardef\@cclvi}
\fi
-\def\bbl at version{3.38}
-\def\bbl at date{2020/01/15}
+\def\bbl at version{3.39}
+\def\bbl at date{2020/02/03}
\def\adddialect#1#2{%
\global\chardef#1#2\relax
\bbl at usehooks{adddialect}{{#1}{#2}}%
@@ -146,7 +146,6 @@
\edef\languagename{%
\ifnum\escapechar=\expandafter`\string#1\@empty
\else\string#1\@empty\fi}%
- % \@namedef{bbl at lcname@#1}{#1}%
\select at language{\languagename}%
% write to auxs
\expandafter\ifx\csname date\languagename\endcsname\relax\else
@@ -163,8 +162,13 @@
% set name
\edef\languagename{#1}%
\bbl at fixname\languagename
+ \expandafter\ifx\csname date\languagename\endcsname\relax
+ \IfFileExists{babel-\languagename.tex}%
+ {\babelprovide{\languagename}}%
+ {}%
+ \fi
\bbl at iflanguage\languagename{%
- \expandafter\ifx\csname date\languagename\endcsname\relax
+ \expandafter\ifx\csname date\languagename\endcsname\relax
\bbl at error
{Unknown language `#1'. Either you have\\%
misspelled its name, it has not been installed,\\%
@@ -301,8 +305,12 @@
\def\foreign at language#1{%
% set name
\edef\languagename{#1}%
- % \@namedef{bbl at lcname@#1}{#1}%
\bbl at fixname\languagename
+ \expandafter\ifx\csname date\languagename\endcsname\relax
+ \IfFileExists{babel-\languagename.tex}%
+ {\babelprovide{\languagename}}%
+ {}%
+ \fi
\bbl at iflanguage\languagename{%
\expandafter\ifx\csname date\languagename\endcsname\relax
\bbl at warning % TODO - why a warning, not an error?
@@ -396,6 +404,7 @@
\let\uselocale\setlocale
\let\locale\setlocale
\let\selectlocale\setlocale
+\let\localename\setlocale
\let\textlocale\setlocale
\let\textlanguage\setlocale
\let\languagetext\setlocale
Modified: trunk/Master/texmf-dist/tex/generic/babel/txtbabel.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/txtbabel.def 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/txtbabel.def 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `texxet')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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.
Modified: trunk/Master/texmf-dist/tex/generic/babel/xebabel.def
===================================================================
--- trunk/Master/texmf-dist/tex/generic/babel/xebabel.def 2020-02-03 22:32:24 UTC (rev 53659)
+++ trunk/Master/texmf-dist/tex/generic/babel/xebabel.def 2020-02-03 22:33:15 UTC (rev 53660)
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `xetex')
%%
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 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.
@@ -113,6 +113,12 @@
\bbl at trace{Font handling with fontspec}
\@onlypreamble\babelfont
\newcommand\babelfont[2][]{% 1=langs/scripts 2=fam
+ \bbl at foreach{#1}{%
+ \expandafter\ifx\csname date##1\endcsname\relax
+ \IfFileExists{babel-##1.tex}%
+ {\babelprovide{##1}}%
+ {}%
+ \fi}%
\edef\bbl at tempa{#1}%
\def\bbl at tempb{#2}% Used by \bbl at bblfont
\ifx\fontspec\@undefined
More information about the tex-live-commits
mailing list.