summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/babel-contrib/french/frenchb.dtx
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-01-31 03:01:20 +0000
committerNorbert Preining <norbert@preining.info>2020-01-31 03:01:20 +0000
commit1d1c81d42f36755f72bbd69c5a29c2d6a9fec04d (patch)
treec0ecbc7ed9fd2d67ea828d0ec80e160524fc61b3 /macros/latex/contrib/babel-contrib/french/frenchb.dtx
parent1f2683ba3ec9c1855d5518e773c72d2241637449 (diff)
CTAN sync 202001310301
Diffstat (limited to 'macros/latex/contrib/babel-contrib/french/frenchb.dtx')
-rw-r--r--macros/latex/contrib/babel-contrib/french/frenchb.dtx84
1 files changed, 49 insertions, 35 deletions
diff --git a/macros/latex/contrib/babel-contrib/french/frenchb.dtx b/macros/latex/contrib/babel-contrib/french/frenchb.dtx
index 8241658b28..4f9697f12d 100644
--- a/macros/latex/contrib/babel-contrib/french/frenchb.dtx
+++ b/macros/latex/contrib/babel-contrib/french/frenchb.dtx
@@ -1,4 +1,4 @@
-%\CheckSum{3801}
+%\CheckSum{3802}
%
%\iffalse
% Tell the LaTeX system who we are and write an entry on the
@@ -13,7 +13,7 @@
%<frenchb>\ProvidesLanguage{frenchb}
%<lua>--[[
%<lua> File `frenchb.lua’ generated from frenchb.dtx
- [2019/09/07 v3.5f French support from the babel system]
+ [2020/01/30 v3.5g French support from the babel system]
%<*internal>
\iffalse
%</internal>
@@ -123,7 +123,7 @@
%
% \frenchb{} has been improved using helpful suggestions from many
% people, mainly from Jacques André, Michel Bovani, Thierry Bouche,
-% Vincent Jalby, Denis Bitouzé and Ulrike Fisher.
+% Vincent Jalby, Denis Bitouzé, Ulrike Fisher and Marcel Krüger.
% Thanks to all of them!
%
% LaTeX-2.09 is no longer supported.
@@ -324,8 +324,9 @@
% \item A command |\nombre| was provided in 1.x versions to easily
% format numbers in slices of three digits separated either
% by a comma in English or with a space in French; |\nombre|
-% is now mapped to |\numprint| from \file{numprint.sty}, see
-% \file{numprint.pdf} for more information.
+% is now mapped to |\numprint| from \file{numprint.sty}, which
+% should be loaded \emph{after} \babel, see \file{numprint.pdf}
+% for more information.
%
% \item \frenchb{} has been designed to take advantage of the
% \pkg{xspace} package if present: adding
@@ -763,7 +764,10 @@
% unwanted guillemets (typically when lists are embedded in
% |\frquote{}|).
%
-% \subsubsection*{What’s new in version 3.4?}
+% Version 3.5g fixes a long standing bug affecting LuaTeX: legacy
+% kerning was disabled for Type1 fonts since v3.1g (2015).
+%
+% \subsubsection*{What’s new in version 3.4?}
%
% Version 3.4a adds a new command |\frenchdate| (see
% p.~\pageref{frenchdate}) and slightly changes number formatting:
@@ -1821,8 +1825,16 @@ local has_attribute = node.has_attribute
% in french\_punctuation (Tikz \cs{nullfont}).
% Bug pointed out by Paul Gaborit.}
%
+% \changes{v3.5g}{2020/01/30}{The kerning callback is a bit specific:
+% adding code with add\_to\_callback actually deletes the legacy
+% kerning as pointed out by Marcel Krüger on SE.}
+%
% \begin{macrocode}
local function french_punctuation (head)
+% \end{macrocode}
+% Restore the built-in kerning for 8-bits fonts.
+% \begin{macrocode}
+ node.kerning(head)
for item in node.traverse_id(GLYPH, head) do
local lang = item.lang
local char = item.char
@@ -2140,7 +2152,9 @@ return french_punctuation
%
% The next definition will be used to activate Lua punctuation: it
% loads \file{frenchb.lua} and adds function |french_punctuation|
-% at the end of the |kerning| callback (no priority).
+% to the |kerning| callback; "adding" anything actually disables
+% the built-in kerning for Type1 fonts (which is now added to
+% |french_punctuation|).
% \begin{macrocode}
\def\activate@luatexpunct{%
\directlua{%
@@ -3693,7 +3707,7 @@ return french_punctuation
Seizi\`eme,Dix-septi\`eme,Dix-huiti\`eme,Dix-neuvi\`eme,%
Vingti\`eme}
\AfterBabelCommands{%
- \DeclareRobustCommand*{\FB@emptypart}{\def\thepart{}}%
+ \DeclareRobustCommand*{\FB@emptypart}{\def\thepart{\unskip}}%
\DeclareRobustCommand*{\FB@partname}{%
\ifFBPartNameFull
\csname ordinal\romannumeral\value{part}\endcsname\space
@@ -4925,16 +4939,16 @@ return french_punctuation
***** List of possible options for babel-french ****\MessageBreak
[Default values between brackets when french is loaded *LAST*]%
\MessageBreak
- ShowOptions=true [false]\MessageBreak
- StandardLayout=true [false]\MessageBreak
- GlobalLayoutFrench=false [true]\MessageBreak
- PartNameFull=false [true]\MessageBreak
- IndentFirst=false [true]\MessageBreak
- ListItemsAsPar=true [false]\MessageBreak
- StandardListSpacing=true [false]\MessageBreak
- StandardItemizeEnv=true [false]\MessageBreak
- StandardEnumerateEnv=true [false]\MessageBreak
- StandardItemLabels=true [false]\MessageBreak
+ ShowOptions [false]\MessageBreak
+ StandardLayout [false]\MessageBreak
+ GlobalLayoutFrench [true]\MessageBreak
+ PartNameFull [true]\MessageBreak
+ IndentFirst [true]\MessageBreak
+ ListItemsAsPar [false]\MessageBreak
+ StandardListSpacing [false]\MessageBreak
+ StandardItemizeEnv [false]\MessageBreak
+ StandardEnumerateEnv [false]\MessageBreak
+ StandardItemLabels [false]\MessageBreak
ItemLabels=\textemdash, \textbullet,
\protect\ding{43},... [\textendash]\MessageBreak
ItemLabeli=\textemdash, \textbullet,
@@ -4945,27 +4959,27 @@ return french_punctuation
\protect\ding{43},... [\textendash]\MessageBreak
ItemLabeliv=\textemdash, \textbullet,
\protect\ding{43},... [\textendash]\MessageBreak
- StandardLists=true [false]\MessageBreak
- ListOldLayout=true [false]\MessageBreak
- FrenchFootnotes=false [true]\MessageBreak
- AutoSpaceFootnotes=false [true]\MessageBreak
- AutoSpacePunctuation=false [true]\MessageBreak
- ThinColonSpace=true [false]\MessageBreak
- OriginalTypewriter=true [false]\MessageBreak
- UnicodeNoBreakSpaces=true [false]\MessageBreak
+ StandardLists [false]\MessageBreak
+ ListOldLayout [false]\MessageBreak
+ FrenchFootnotes [true]\MessageBreak
+ AutoSpaceFootnotes [true]\MessageBreak
+ AutoSpacePunctuation [true]\MessageBreak
+ ThinColonSpace [false]\MessageBreak
+ OriginalTypewriter [false]\MessageBreak
+ UnicodeNoBreakSpaces [false]\MessageBreak
og= <left quote character>, fg= <right quote character>%
- INGuillSpace=true [false]\MessageBreak
+ INGuillSpace [false]\MessageBreak
EveryParGuill=open, close, none [open]\MessageBreak
EveryLineGuill=open, close, none
[open in LuaTeX, none otherwise]\MessageBreak
- InnerGuillSingle=true [false]\MessageBreak
- ThinSpaceInFrenchNumbers=true [false]\MessageBreak
- SmallCapsFigTabCaptions=false [true]\MessageBreak
- CustomiseFigTabCaptions=false [true]\MessageBreak
- OldFigTabCaptions=true [false]\MessageBreak
- FrenchSuperscripts=false [true]\MessageBreak
- LowercaseSuperscripts=false [true]\MessageBreak
- SuppressWarning=true [false]\MessageBreak
+ InnerGuillSingle [false]\MessageBreak
+ ThinSpaceInFrenchNumbers [false]\MessageBreak
+ SmallCapsFigTabCaptions [true]\MessageBreak
+ CustomiseFigTabCaptions [true]\MessageBreak
+ OldFigTabCaptions [false]\MessageBreak
+ FrenchSuperscripts [true]\MessageBreak
+ LowercaseSuperscripts [true]\MessageBreak
+ SuppressWarning [false]\MessageBreak
\MessageBreak
*********************************************%
\MessageBreak\protect\frenchsetup{ShowOptions}}