[latex3-commits] [git/LaTeX3-latex3-babel] master: Shorthands with safe=none work. Fixed issue with LGR (#30). (1d1c180)

Javier jbezos at dante.de
Wed Oct 2 16:41:12 CEST 2019


Repository : https://github.com/latex3/babel
On branch  : master
Link       : https://github.com/latex3/babel/commit/1d1c18073b54908fc7d827d337a73676285b82b2

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

commit 1d1c18073b54908fc7d827d337a73676285b82b2
Author: Javier <jbezos at localhost>
Date:   Wed Oct 2 16:41:12 2019 +0200

    Shorthands with safe=none work. Fixed issue with LGR (#30).


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

1d1c18073b54908fc7d827d337a73676285b82b2
 README.md    |  10 ++++--
 babel.dtx    | 108 ++++++++++++++++++++++++++++++++++-------------------------
 babel.ins    |   2 +-
 babel.pdf    | Bin 701228 -> 701874 bytes
 bbcompat.dtx |   2 +-
 5 files changed, 72 insertions(+), 50 deletions(-)

diff --git a/README.md b/README.md
index 5c1718d..00caecd 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-## Babel 3.34
+## Babel 3.34.1782
 
 This package manages culturally-determined typographical (and other)
 rules, and hyphenation patterns for a wide range of languages.  Many
@@ -51,16 +51,20 @@ respective authors.
 ### Latest changes
 
 ```
+3.35   2019-10-??
+       - Shorthands work in bibs and refs even with safe=none.
+       - Fix - Another issue related to \ensureascii and LGR (#30)
+
 3.34   2019-09-27
        - Improved compatibility for \babelfont vs \setmainfont.
-       - Fix - active ' entered in an infinite loop with lua.
+       - Fix - active ' entered in an infinite loop with lua (#27).
        - Fix - main in \babelprovide was not set until begin document.
 
 3.33   2019-07-19
        - \prehyphenchar set to 0 in languages requiring it: kannada,
          marathi, tamil, etc. (lua).
        - \AddBabelHook can be set for specific languages.
-       - Fix - !\grq in T1 behaved like the ligature !`.
+       - Fix - !\grq in T1 behaved like the ligature !` (#19).
        - Minimal preliminary support for the experimental harftex.
 
 3.32   2019-06-03
diff --git a/babel.dtx b/babel.dtx
index 86d4890..b4e5f4c 100644
--- a/babel.dtx
+++ b/babel.dtx
@@ -31,7 +31,7 @@
 %
 % \iffalse
 %<*filedriver>
-\ProvidesFile{babel.dtx}[2019/09/27 v3.34 The Babel package]
+\ProvidesFile{babel.dtx}[2019/10/02 v3.34.1782 The Babel package]
 \documentclass{ltxdoc}
 \GetFileInfo{babel.dtx}
 \usepackage{fontspec}
@@ -1023,11 +1023,13 @@ using them; see above.
 shorthands is safe. With \texttt{safe=bib} only |\nocite|, |\bibcite|
 and |\bibitem| are redefined. With |safe=ref| only |\newlabel|, |\ref|
 and |\pageref| are redefined (as well as a few macros from
-\textsf{varioref} and \textsf{ifthen}). With |safe=none| no macro is
-redefined. This option is strongly recommended, because a good deal of
-incompatibilities and errors are related to these redefinitions -- of
-course, in such a case you cannot use shorthands in these macros, but
-this is not a real problem (just use ``allowed'' characters).
+\textsf{varioref} and \textsf{ifthen}).
+
+With |safe=none| no macro is redefined. This option is strongly
+recommended, because a good deal of incompatibilities and errors are
+related to these redefinitions. As of \New{3.34}, in $\epsilon$\TeX{}
+based engines (ie, almost every engine except the oldest ones)
+shorthands can be used in these macros (formerly you could not).
 
 \Describe{math=}{\texttt{active} $\string|$ \texttt{normal}}
 Shorthands are mainly intended for text, not for math. By setting this
@@ -4071,8 +4073,8 @@ help from Bernd Raichle, for which I am grateful.
 % \section{Tools}
 %
 %    \begin{macrocode}
-%<<version=3.34>>
-%<<date=2019/09/27>>
+%<<version=3.34.1782>>
+%<<date=2019/10/02>>
 %    \end{macrocode}
 %
 % \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -4211,24 +4213,26 @@ help from Bernd Raichle, for which I am grateful.
 %   waste memory.
 %
 %    \begin{macrocode}
-\def\bbl at ifunset#1{%
-  \expandafter\ifx\csname#1\endcsname\relax
-    \expandafter\@firstoftwo
-  \else
-    \expandafter\@secondoftwo
-  \fi}
-\bbl at ifunset{ifcsname}%
-  {}%
-  {\def\bbl at ifunset#1{%
-     \ifcsname#1\endcsname
-       \expandafter\ifx\csname#1\endcsname\relax
-         \bbl at afterelse\expandafter\@firstoftwo
+\begingroup
+  \gdef\bbl at ifunset#1{%
+    \expandafter\ifx\csname#1\endcsname\relax
+      \expandafter\@firstoftwo
+    \else
+      \expandafter\@secondoftwo
+    \fi}
+  \bbl at ifunset{ifcsname}%
+    {}%
+    {\gdef\bbl at ifunset#1{%
+       \ifcsname#1\endcsname
+         \expandafter\ifx\csname#1\endcsname\relax
+           \bbl at afterelse\expandafter\@firstoftwo
+         \else
+           \bbl at afterfi\expandafter\@secondoftwo
+         \fi
        \else
-         \bbl at afterfi\expandafter\@secondoftwo
-       \fi
-     \else
-       \expandafter\@firstoftwo
-     \fi}}
+         \expandafter\@firstoftwo
+       \fi}}
+\endgroup
 %    \end{macrocode}
 % \end{macro}
 %
@@ -6079,28 +6083,41 @@ help from Bernd Raichle, for which I am grateful.
 %    The command |\active at prefix| which is used in the expansion of
 %    active characters has a function similar to |\OT1-cmd| in that it
 %    |\protect|s the active character whenever |\protect| is
-%    \emph{not} |\@typeset at protect|.
-%
-%    \begin{macrocode}
-\def\active at prefix#1{%
-  \ifx\protect\@typeset at protect
-  \else
-%    \end{macrocode}
-%
-%    When |\protect| is set to |\@unexpandable at protect| we make sure
-%    that the active character is als \emph{not} expanded by inserting
-%    |\noexpand| in front of it. The |\@gobble| is needed to remove
+%    \emph{not} |\@typeset at protect|. The |\@gobble| is needed to remove
 %    a token such as |\activechar:| (when the double colon was the
-%    active character to be dealt with).
+%    active character to be dealt with). There are two definitions,
+%    depending of |\ifincsname| is available. If there is, the
+%    expansion will be more robust.
 %
 %    \begin{macrocode}
-    \ifx\protect\@unexpandable at protect
-      \noexpand#1%
-    \else
-      \protect#1%
-    \fi
-    \expandafter\@gobble
-  \fi}
+\begingroup
+\bbl at ifunset{ifincsname}%
+  {\gdef\active at prefix#1{%
+     \ifx\protect\@typeset at protect
+     \else
+       \ifx\protect\@unexpandable at protect
+         \noexpand#1%
+       \else
+         \protect#1%
+       \fi
+       \expandafter\@gobble
+     \fi}}
+  {\gdef\active at prefix#1{%
+     \ifincsname
+       \string#1%
+       \expandafter\@gobble
+     \else
+       \ifx\protect\@typeset at protect
+       \else
+         \ifx\protect\@unexpandable at protect
+           \noexpand#1%
+         \else
+           \protect#1%
+         \fi
+         \expandafter\expandafter\expandafter\@gobble
+       \fi
+     \fi}}
+\endgroup
 %    \end{macrocode}
 %
 %  \end{macro}
@@ -9386,10 +9403,11 @@ help from Bernd Raichle, for which I am grateful.
 % \changes{babel~3.9j}{2014/03/17}{Moved misplaced code - it should be
 %    executed only with LaTeX}
 % \changes{babel~3.23}{2018/08/28}{Added TS1, T3, TS3}
+% \changes{babel~3.35}{2019/10/01}{Added PU, PD1}
 %
 %    \begin{macrocode}
 \bbl at trace{Encoding and fonts}
-\newcommand\BabelNonASCII{LGR,X2,OT2,OT3,OT6,LHE,LWN,LMA,LMC,LMS,LMU}
+\newcommand\BabelNonASCII{LGR,X2,OT2,OT3,OT6,LHE,LWN,LMA,LMC,LMS,LMU,PU,PD1}
 \newcommand\BabelNonText{TS1,T3,TS3}
 \let\org at TeX\TeX
 \let\org at LaTeX\LaTeX
diff --git a/babel.ins b/babel.ins
index c0e8e5b..45f7afa 100644
--- a/babel.ins
+++ b/babel.ins
@@ -26,7 +26,7 @@
 %% and covered by LPPL is defined by the unpacking scripts (with
 %% extension .ins) which are part of the distribution.
 %%
-\def\filedate{2019/09/27}
+\def\filedate{2019/10/02}
 \def\batchfile{babel.ins}
 \input docstrip.tex
 
diff --git a/babel.pdf b/babel.pdf
index 5d548cc..d2e6952 100644
Binary files a/babel.pdf and b/babel.pdf differ
diff --git a/bbcompat.dtx b/bbcompat.dtx
index 8b58d8b..0171ca8 100644
--- a/bbcompat.dtx
+++ b/bbcompat.dtx
@@ -30,7 +30,7 @@
 %
 % \iffalse
 %<*dtx>
-\ProvidesFile{bbcompat.dtx}[2019/09/27 v3.34]
+\ProvidesFile{bbcompat.dtx}[2019/10/02 v3.34.1782]
 %</dtx>
 %
 %% File 'bbcompat.dtx'





More information about the latex3-commits mailing list