[latex3-commits] [git/LaTeX3-latex3-babel] master: \shorthandsoff* fixed? Polish: oneletter.nobreak (5aaff0e)

Javier email at dante.de
Sat Apr 24 08:52:13 CEST 2021


Repository : https://github.com/latex3/babel
On branch  : master
Link       : https://github.com/latex3/babel/commit/5aaff0e6007314041784ca2c9bc775521174fe18

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

commit 5aaff0e6007314041784ca2c9bc775521174fe18
Author: Javier <email at localhost>
Date:   Sat Apr 24 08:52:13 2021 +0200

    \shorthandsoff* fixed? Polish: oneletter.nobreak


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

5aaff0e6007314041784ca2c9bc775521174fe18
 README.md                                    |   4 +-
 babel.dtx                                    |  58 +++++++++++++++++++++------
 babel.ins                                    |   2 +-
 babel.pdf                                    | Bin 828809 -> 831891 bytes
 bbcompat.dtx                                 |   2 +-
 locale/ml/babel-ml.ini                       |   1 -
 locale/pl/babel-pl.ini                       |   5 +++
 news-guides/guides/keys-in-ini-files.md      |   3 ++
 news-guides/guides/using-babel-with-plain.md |  24 +++++++----
 9 files changed, 74 insertions(+), 25 deletions(-)

diff --git a/README.md b/README.md
index bcd0cc7..63d8ace 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-## Babel 3.57.2345
+## Babel 3.57.2352
 
 This package manages culturally-determined typographical (and other)
 rules, and hyphenation patterns for a wide range of languages. Many
@@ -49,7 +49,7 @@ respective authors.
 3.58   2021-04-28??
        * More predefined transforms (lua):
          - doubleletter.hyphen: Norsk
-         - oneletter.nobreak: Czech, Slovak
+         - oneletter.nobreak: Czech, Polish, Slovak
          - hyphen.repeat:     Czech, Polish, Portuguese, Slovak, Spanish
        * 'prehyphenation' transforms are disabled in verbatim.
        * New linebreaking mode ‘unhyphenated’.
diff --git a/babel.dtx b/babel.dtx
index 02397f7..a9d7106 100644
--- a/babel.dtx
+++ b/babel.dtx
@@ -31,7 +31,7 @@
 %
 % \iffalse
 %<*filedriver>
-\ProvidesFile{babel.dtx}[2021/04/17 v3.57.2345 The Babel package]
+\ProvidesFile{babel.dtx}[2021/04/24 v3.57.2352 The Babel package]
 \documentclass{ltxdoc}
 \GetFileInfo{babel.dtx}
 \usepackage{fontspec}
@@ -80,6 +80,13 @@
 \usepackage{multicol}
 \usepackage{color,colortbl}
 \usepackage[linkcolor=blue,urlcolor=blue,colorlinks=true]{hyperref}
+\hypersetup{%
+  pdfsubject={LaTeX Multilingual documents and localization for pdfTeX, LuaTex and
+  XeTeX.},
+  pdfauthor={Johannes Braams, Javier Bezos},
+  pdftitle={Babel},
+  pdfkeywords={TeX, LaTeX, pdfTeX, LuaTeX, XeTeX, internationalization,
+  localization}}
 \newcommand\New[1]{%
   \colorbox[rgb]{.92, .86, .73}{New #1}\enspace\ignorespaces}
 \definecolor{thered}  {rgb}{0.65,0.04,0.07}
@@ -89,6 +96,7 @@
 \makeatletter
 \def\@begintheorem#1#2{%
   \list{}{}%
+  \small
   \global\advance\@listdepth\m at ne
   \item[{\sffamily\bfseries\color{messages}\hspace*{1.3em}%
         \MakeUppercase{#1}}]}%
@@ -238,9 +246,9 @@ Xe\largetex
 \begin{description}
 \item[\sffamily\color{messages}What is this document about?] This user
 guide focuses on internationalization and localization with \LaTeX{}
-and \pdftex, \xetex{} and \luatex{} with the \babel{} package. There are
-also some notes on its use with Plain \TeX. Part II describes the code,
-and usually it can be ignored.
+and \pdftex, \xetex{} and \luatex{} with the \babel{} package. There
+are also some notes on its use with e-Plain and pdf-Plain \TeX . Part II
+describes the code, and usually it can be ignored.
 
 \item[\sffamily\color{messages}What if I’m interested only in the
 latest changes?] Changes and new features with relation to version 3.8
@@ -631,7 +639,7 @@ modifiers are a more general mechanism.
 
 \subsection{Plain}
 
-In Plain, load languages styles with |\input| and then use
+In e-Plain and pdf-Plain, load languages styles with |\input| and then use
 |\begindocument| (the latter is defined by \babel):
 \begin{verbatim}
 \input estonian.sty
@@ -640,9 +648,10 @@ In Plain, load languages styles with |\input| and then use
 
 \begin{warning}
   Not all languages provide a |sty| file and some of them are not
-  compatible with Plain.\footnote{Even in the \babel{} kernel there
-  were some macros not compatible with plain. Hopefully these issues
-  have been fixed.}
+  compatible with those formats. Please, refer to
+  \href{https://github.com/latex3/babel/blob/%
+  master/news-guides/guides/using-babel-with-plain.md}{Using babel with
+  Plain} for further details.
 \end{warning}
 
 \subsection{Basic language selectors}
@@ -1298,7 +1307,7 @@ 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
+preferred by the Unicode Common Locale Data Repository, which was
 used as source for most of the data provided by these files, too (the
 main exception being the |\...name| strings).
 
@@ -3058,8 +3067,8 @@ OTF features), but it can get you out of a hurry.}
 Spanish}{hyphen.repeat}{Explicit hyphens behave like
 |\string\babelhyphen|\allowbreak|\{repeat\}|.}
 
-\trans{Czech, Slovak}{oneletter.nobreak}{Converts a space after a
-non-syllabic preposition into a non-breaking space.}
+\trans{Czech, Polish, Slovak}{oneletter.nobreak}{Converts a space after
+a non-syllabic preposition or conjunction into a non-breaking space.}
 
 \trans{Greek}{diaeresis.hyphen}{Removes the diaeresis above iota and
 upsilon if hyphenated just before. It works with the
@@ -3165,6 +3174,21 @@ This feature is activated with the first |\babelposthyphenation| or
 \end{verbatim}
 \end{example}
 
+\begin{note}
+  With \luatex{} there is another approach to make text
+  transformations, with the function |fonts.handlers.otf.addfeature|,
+  which adds new features to an OTF font. These features can be made
+  language-dependent, and \babel{} by default recognizes this setting
+  if the font has been declared with |\babelfont|. The
+  \textit{transforms} mechanism supplements rather than replaces OTF
+  features.
+  
+  With \xetex{}, where \textit{transforms} are not available, there is
+  still another approach, with font mappings, mainly meant to perform
+  encoding conversions and transliterations. Mappings, however, are
+  linked to fonts, not to languages.
+\end{note}
+
 \subsection{Selection based on BCP 47 tags}
 \label{bcp47}
 
@@ -4928,8 +4952,8 @@ help from Bernd Raichle, for which I am grateful.
 % \section{Tools}
 %
 %    \begin{macrocode}
-%<<version=3.57.2345>>
-%<<date=2021/04/17>>
+%<<version=3.57.2352>>
+%<<date=2021/04/24>>
 %    \end{macrocode}
 %
 % \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -8899,10 +8923,13 @@ help from Bernd Raichle, for which I am grateful.
 %    or |\normal at char|\m{char} in the case of |\bbl at deactivate|.
 %
 %    \begin{macrocode}
+\chardef\bbl at activated\z@
 \def\bbl at activate#1{%
+  \chardef\bbl at activated\@ne
   \bbl at withactive{\expandafter\let\expandafter}#1%
     \csname bbl at active@\string#1\endcsname}
 \def\bbl at deactivate#1{%
+  \chardef\bbl at activated\tw@
   \bbl at withactive{\expandafter\let\expandafter}#1%
     \csname bbl at normal@\string#1\endcsname}
 %    \end{macrocode}
@@ -9184,6 +9211,11 @@ help from Bernd Raichle, for which I am grateful.
            {\bbl at withactive{\expandafter\let\expandafter}#2%
               \csname bbl at shdef@\string#2\endcsname
             \bbl at csarg\let{shdef@\string#2}\relax}%
+         \ifcase\bbl at activated\or
+           \bbl at activate{#2}%
+         \else
+           \bbl at deactivate{#2}%
+         \fi
        \or
          \bbl at ifunset{bbl at shdef@\string#2}%
            {\bbl at withactive{\bbl at csarg\let{shdef@\string#2}}#2}%
diff --git a/babel.ins b/babel.ins
index 9bc98b1..dd8de65 100644
--- a/babel.ins
+++ b/babel.ins
@@ -26,7 +26,7 @@
 %% and covered by LPPL is defined by the unpacking scripts (with
 %% extension .ins) which are part of the distribution.
 %%
-\def\filedate{2021/04/17}
+\def\filedate{2021/04/24}
 \def\batchfile{babel.ins}
 \input docstrip.tex
 
diff --git a/babel.pdf b/babel.pdf
index 97b50e7..66879b4 100644
Binary files a/babel.pdf and b/babel.pdf differ
diff --git a/bbcompat.dtx b/bbcompat.dtx
index 065e2e2..6b254f8 100644
--- a/bbcompat.dtx
+++ b/bbcompat.dtx
@@ -30,7 +30,7 @@
 %
 % \iffalse
 %<*dtx>
-\ProvidesFile{bbcompat.dtx}[2021/04/17 v3.57.2345]
+\ProvidesFile{bbcompat.dtx}[2021/04/24 v3.57.2352]
 %</dtx>
 %
 %% File 'bbcompat.dtx'
diff --git a/locale/ml/babel-ml.ini b/locale/ml/babel-ml.ini
index 2f1d33b..3cffb6c 100644
--- a/locale/ml/babel-ml.ini
+++ b/locale/ml/babel-ml.ini
@@ -133,7 +133,6 @@ exhyphenchar =
 preexhyphenchar = 
 postexhyphenchar = 
 hyphenationmin = 
-linebreaking = u
 ; The syntax is liable to change in 'other' values
 hyphenate.other.locale = "200C "200D
 
diff --git a/locale/pl/babel-pl.ini b/locale/pl/babel-pl.ini
index f6e122d..67608f2 100644
--- a/locale/pl/babel-pl.ini
+++ b/locale/pl/babel-pl.ini
@@ -184,6 +184,11 @@ superscriptingExponent = ×
 
 [counters]
 
+[transforms.prehyphenation]
+oneletter.nobreak.1.0 = { |[aiouwzAIOUWZ]()|() }
+oneletter.nobreak.1.1 = { insert, penalty=10000 }
+oneletter.nobreak.1.2 = {}
+
 [transforms.posthyphenation]
 hyphen.repeat.1.0 = { (){a}=(){a} }
 hyphen.repeat.1.1 = {}
diff --git a/news-guides/guides/keys-in-ini-files.md b/news-guides/guides/keys-in-ini-files.md
index 95b0cfa..b9b9e74 100644
--- a/news-guides/guides/keys-in-ini-files.md
+++ b/news-guides/guides/keys-in-ini-files.md
@@ -89,6 +89,9 @@ calendar, such as in English for days of the week:
 **hyphenate.other.script** (Tentative syntax.) Same, based on the
   script.
   
+**linebreaking** The line breaking mode, with a letter: h(yphenated, by
+  default), c(jk), s(outheast Asian), u(nhyphenated).
+  
 ### `labels`
 
 Under development:
diff --git a/news-guides/guides/using-babel-with-plain.md b/news-guides/guides/using-babel-with-plain.md
index 3efbd3f..f64ce10 100644
--- a/news-guides/guides/using-babel-with-plain.md
+++ b/news-guides/guides/using-babel-with-plain.md
@@ -11,7 +11,7 @@ Currently, support for Plain is mostly in a maintenance mode, which
 means **many of the features added in the last few months (well, years)
 won't work**.
 
-It is worth noting Babel is *not* compatible with the original Plain,
+It is worth noting Babel is *not* compatible with the original Plain
 but rather with a format named `bplain` (admittedly, the manual is
 somewhat misleading in this regard). Apparently this format has never
 found its way into most of distributions. Version 3.9 added support for
@@ -27,13 +27,13 @@ Here is a minimal working example with two languages:
 \input danish.sty  % Last language, and therefore the main one
 \begindocument
 
-\chaptername ---\today
+\chaptername---\today
 
-\foreignlanguage{dutch}{\chaptername ---\today}
+\foreignlanguage{dutch}{\chaptername---\today}
 
 \selectlanguage{dutch}
 
-\chaptername ---\today
+\chaptername---\today
 
 \bye
 ```
@@ -42,6 +42,12 @@ Which prints (the date will be different, of course):
 > Kapitel—14. april 2021<br>
 > Hoofdstuk—14 april 2021
 
+The optional argument works, so:
+```tex
+\foreignlanguage[captions]{dutch}{\chaptername---\today}
+```
+will print ‘Hoofdstuk’.
+
 This is basically all what you can do with Plain TeX, although in some
 languages there will be additional features (for example, with
 `spanish` `\sen` is correctly recognized) and shorthands are usually
@@ -59,7 +65,8 @@ Everyting related to `\babelprovide` and the `ini` mechanism won't work,
 including `\babelfont`. Obviously, features activated as package
 options won't work either.
 
-Hooks work when they make sense in Plain. For example:
+Hooks work when they make sense, which is particularly useful in
+Plain’s DIY philosophy. For example:
 ```tex
 \AddBabelHook[danish]{font}{beforeextras}{\it}
 ```
@@ -76,9 +83,12 @@ definitions just to avoid errors or simplified versions.
 
 (..... More to follow.)
 
+## Languages
+
 Here is a document which runs with no error messages in pdfTeX and
-ePlain, but with an error in `latin` in TeX (note all of them use
-the Latin script):
+ePlain, but with an error in `latin` in TeX. Note two points: all of
+them use the Latin script, and there is only a set of hyphenation
+patterns (English):
 ```
 \input afrikaans.sty
 \input albanian.sty





More information about the latex3-commits mailing list.