summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/generic
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-04-06 21:35:26 +0000
committerKarl Berry <karl@freefriends.org>2018-04-06 21:35:26 +0000
commit55775bf052ff3a80c31cf9fe831737120b77c31e (patch)
treee36a83fc4aab336b12d65ace2cf2444ddb82ec6b /Master/texmf-dist/source/generic
parent6b64e41067fb2363bf57e03fbbeeb5affa745b4f (diff)
babel-french (6apr18)
git-svn-id: svn://tug.org/texlive/trunk@47332 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/generic')
-rw-r--r--Master/texmf-dist/source/generic/babel-french/frenchb.dtx402
1 files changed, 200 insertions, 202 deletions
diff --git a/Master/texmf-dist/source/generic/babel-french/frenchb.dtx b/Master/texmf-dist/source/generic/babel-french/frenchb.dtx
index 2bf0b16bd0d..fe64cd9f8da 100644
--- a/Master/texmf-dist/source/generic/babel-french/frenchb.dtx
+++ b/Master/texmf-dist/source/generic/babel-french/frenchb.dtx
@@ -1,7 +1,7 @@
-%\CheckSum{3597}
+%\CheckSum{3600}
%
%\iffalse
-% Tell the \LaTeX\ system who we are and write an entry on the
+% Tell the LaTeX system who we are and write an entry on the
% transcript.
%<*dtx>
\ProvidesFile{frenchb.dtx}
@@ -13,7 +13,7 @@
%<frenchb>\ProvidesLanguage{frenchb}
%<lua>--[[
%<lua> File `frenchb.lua’ generated from frenchb.dtx
- [2018/02/04 v3.4b French support from the babel system]
+ [2018/03/25 v3.4c French support from the babel system]
%<*internal>
\iffalse
%</internal>
@@ -59,19 +59,18 @@
\newcommand*{\hlabel}[1]{\phantomsection\label{#1}}
\newcommand*\babel{\textsf{babel}}
\newcommand*\frenchb{\textsf{babel-french}}
-\newcommand*\langvar{$\langle \it lang \rangle$}
-\newcommand*\Lopt[1]{\texttt{#1}}
-\newcommand*\opt[1]{\texttt{#1}}
\newcommand*\file[1]{\texttt{#1}}
\newcommand*\cls[1]{\texttt{#1}}
\newcommand*\pkg[1]{\texttt{#1}}
+\newcommand*\opt[1]{\texttt{#1}}
\newcommand*\env[1]{\texttt{#1}}
\newcommand*\exe[1]{\texttt{#1}}
\newcommand*\fbo[1]{\texttt{\ColorArg #1}}
\newcommand*\fbsetup[1]{\cs{frenchsetup\{\fbo{#1}\}}}
+\renewcommand\meta[1]{\textit{<#1>}} % no math mode (see doc.sty)
+\let\Module\meta % no math mode (see doc.sty)
\renewcommand*\descriptionlabel[1]{%
\hspace\labelsep \normalfont \fbo{#1}}
-\providecommand*\eTeX{\leavevmode\hbox{$\varepsilon$}-\TeX}
\let\up\textsuperscript
\newcommand*{\FRguillspace}{\penalty 10000
\hskip.8\fontdimen2\font
@@ -127,9 +126,9 @@
% Vincent Jalby, Denis Bitouzé and Ulrike Fisher.
% Thanks to all of them!
%
-% \LaTeX-2.09 is no longer supported.
+% LaTeX-2.09 is no longer supported.
% This new version (3.x) has been designed to be used only with
-% \LaTeXe{} and Plain formats based on TeX, pdfTeX, LuaTeX or XeTeX
+% LaTeX2e and Plain formats based on TeX, pdfTeX, LuaTeX or XeTeX
% engines.
%
% Changes between version 3.0 and \fileversion{} are listed in
@@ -148,8 +147,8 @@
%
% The French language can be loaded with \babel{} by a command like:
% \\ |\usepackage[german,spanish,french,british]{babel}|%
-% \footnote{\emph{Always} use \Lopt{french} as option name for the
-% French language, former aliases \Lopt{frenchb} or \Lopt{francais}
+% \footnote{\emph{Always} use \opt{french} as option name for the
+% French language, former aliases \opt{frenchb} or \opt{francais}
% are \emph{depreciated}; expect them to be removed sooner or later!}
%
% \frenchb{} takes account of \babel’s \emph{main language} defined
@@ -163,18 +162,18 @@
% makes the following changes to the global layout, \emph{both in
% French and in all other languages}\footnote{%
% For each item, hooks are provided to reset standard
-% \LaTeX{} settings or to emulate the behavior of former versions
+% LaTeX settings or to emulate the behavior of former versions
% of \frenchb{} (see command \fbsetup{},
% section~\ref{ssec-custom} p.~\pageref{ssec-custom}).}:
% \begin{enumerate}
% \item the first paragraph of each section is indented
-% (\LaTeX{} only);
+% (LaTeX only);
% \item the default items in itemize environment are set to `---’
% instead of `\textbullet’, and all vertical spacing and glue
% is deleted; it is possible to change `---’ to something else
% (`--’ for instance) using \fbsetup{} (see
% section~\ref{ssec-custom} p.~\pageref{ssec-custom});
-% \item vertical spacing in general \LaTeX{} lists is
+% \item vertical spacing in general LaTeX lists is
% shortened;
% \item footnotes are displayed ``à la française’’.
% \item the separator following the table or figure number in
@@ -202,7 +201,7 @@
% whole document;
% \item |\today| prints the date in French;
% \item the caption names are translated into French
-% (\LaTeX{} only). For customisation of caption names see
+% (LaTeX only). For customisation of caption names see
% section~\ref{sssec-captions-name}
% p.~\pageref{sssec-captions-name}.
% \item the space after |\dots| is removed in French.
@@ -212,14 +211,14 @@
% easier:
% \begin{enumerate}
% \item French quotation marks can be entered using the commands
-% |\og| and |\fg| which work in \LaTeXe and Plain\TeX,
+% |\og| and |\fg| which work in LaTeX2e and PlainTeX,
% their appearance depending on what is available to draw
-% them; even if you use \LaTeXe{} \emph{and} |T1|-encoding,
+% them; even if you use LaTeX2e \emph{and} |T1|-encoding,
% you should refrain from entering them as
% |<<~French quotation~>>|: |\og| and |\fg| provide
% better horizontal spacing (controlled by |\FBguillspace|).
% If French quote characters are available on your keyboard,
-% you can use them, to get proper spacing in \LaTeXe{} see
+% you can use them, to get proper spacing in LaTeX2e see
% option \fbo{og=«, fg=»} p.~\pageref{option-og-fg}.
%
% |\og| and |\fg| can be used outside French, they typeset
@@ -378,6 +377,19 @@
% française’’ in French. Note that the layout of footnotes is
% language independent anyway (see below \fbo{FrenchFootnotes}
% and \fbo{AutoSpaceFootnotes}).
+% \item [IndentFirst=false (true*)]; set this option to \fbo{false}
+% if you do not want \frenchb{} to force indentation of the
+% first paragraph of sections. When French is the main language,
+% this option applies to all languages.
+% \item [PartNameFull=false (true)]; when true, \frenchb{} numbers
+% the title of |\part{}| commands as ``Première partie’’,
+% ``Deuxième partie’’ and so on. With some classes which
+% change the |\part{}| command (AMS classes do so), you could
+% get ``Première partie~1’’, ``Deuxième partie~2’’ in the toc;
+% when this occurs, this option should be set to
+% \fbo{false}, part titles will then be printed as ``Partie I’’,
+% ``Partie II’’.
+%
% \item [ReduceListSpacing=false (true*)]; \frenchb{} reduces the
% values of the vertical spaces used in the \emph{all} list
% environments in French (this includes itemize, enumerate,
@@ -385,24 +397,16 @@
% possibly others). Setting this option to \fbo{false}
% reverts to the standard settings of the \env{list}
% environment.
-% \item [ListOldLayout=true (false)]; starting with version~2.6a,
-% the layout of lists has changed regarding leftmargins’ sizes
-% and default itemize label (`---’ instead of `--’ up to~2.5k).
-% This option, provided for backward compatibility, displays
-% lists as they were up to version~2.5k.
-% \item [CompactItemize=false (true*)]; should no longer be used
-% (kept only for backward compatibility), it is replaced by the
-% next two options.
% \item [StandardItemizeEnv=true (false*)]; \frenchb{} redefines
% the \env{itemize} environment to suppress any vertical space
% between items of \env{itemize} lists in French and customises
-% left margins. Setting this option to \fbo{false} reverts to
+% left margins. Setting this option to \fbo{true} reverts to
% the standard definition of \env{itemize}.
% \item [StandardEnumerateEnv=true (false*)]; starting with
% version~2.6 \frenchb{} redefines the \env{enumerate} and
% \env{description} environments to make left margins match those
% of the French version of \env{itemize} lists. Setting this
-% option to \fbo{false} reverts to the standard definition of
+% option to \fbo{true} reverts to the standard definition of
% \env{enumerate} and \env{description}.
% \item [StandardItemLabels=true (false*)] when set to \fbo{true}
% this option prevents \frenchb{} from changing the labels in
@@ -429,10 +433,15 @@
% options \fbo{ReduceListSpacing=false},
% \fbo{StandardItemizeEnv=true}, \fbo{StandardEnumerateEnv=true}
% and \fbo{StandardItemLabels=true}.
-% \item [IndentFirst=false (true*)]; set this option to \fbo{false}
-% if you do not want \frenchb{} to force indentation of the
-% first paragraph of sections. When French is the main language,
-% this option applies to all languages.
+% \item [ListOldLayout=true (false)]; starting with version~2.6a,
+% the layout of lists has changed regarding leftmargins’ sizes
+% and default itemize label (`---’ instead of `--’ up to~2.5k).
+% This option, provided for backward compatibility, displays
+% lists as they were up to version~2.5k.
+% \item [CompactItemize=false (true*)]; is kept only for backward
+% compatibility), it is replaced by \fbo{StandardItemizeEnv} and
+% \fbo{StandardEnumerateEnv}.
+%
% \item [FrenchFootnotes=false (true*)] reverts to the standard
% layout of footnotes. By default \frenchb{} typesets leading
% numbers as `1.\hspace{.5em}’ instead of `\up{1}’, but
@@ -446,11 +455,7 @@
% adds a thin space in the running text before the number or
% symbol calling the footnote. Making this option \fbo{false}
% reverts to the standard setting (no space added).
-% \item [FrenchSuperscripts=false (true)]; then
-% |\up=\textsuperscript|. % (option added in version 2.1).
-% Should only be made \fbo{false} to recompile documents written
-% before 2008 without changes: by default |\up| now relies on
-% |\fup| designed to produce better looking superscripts.
+%
% \item [AutoSpacePunctuation=false (true)]; in French, the user
% \hlabel{autospacepunctuation}
% \emph{should} input a space before the four characters `|:;!?|’
@@ -491,34 +496,31 @@
% supported by the French `Imprimerie Nationale’.
% \item [OriginalTypewriter=true (false)] prevents any
% customisation of |\ttfamily| and |\texttt{}| in French.
-% \item [LowercaseSuperscripts=false (true)]; by default \frenchb{}
-% inhibits the uppercasing of superscripts (for instance when
-% they are moved to page headers). Making this option
-% \fbo{false} will disable this behaviour (not recommended).
-% \item [PartNameFull=false (true)]; when true, \frenchb{} numbers
-% the title of |\part{}| commands as ``Première partie’’,
-% ``Deuxième partie’’ and so on. With some classes which
-% change the |\part{}| command (AMS classes do so), you could
-% get ``Première partie~1’’, ``Deuxième partie~2’’ in the toc;
-% when this occurs, this option should be set to
-% \fbo{false}, part titles will then be printed as ``Partie I’’,
-% ``Partie II’’.
-% \item [CustomiseFigTabCaptions=false (true*)]; when \fbo{false}
-% the default separator (colon) is used instead of
-% |\CaptionSeparator|. Anyway, \frenchb{} tries hard to insert
-% a proper space before it and warns if it fails to do so.
-% \item [OldFigTabCaptions=true (false)] is to be used when
-% figures’ and tables’ captions must be typeset as with pre~3.0
-% versions of \frenchb{} (with |\CaptionSeparator| in French and
-% colon otherwise). Intended for standard \LaTeX{} classes only.
-% \item [SmallCapsFigTabCaptions=false (true*)]; when set to
-% \fbo{false}, |\figurename| and |\tablename| will be printed in
-% French captions as ``Figure’’ and ``Table’’ instead of being
-% printed in small caps (the default).
-% \item [SuppressWarning=true (false)]; can be turned to \fbo{true}
-% if you are bored with \frenchb’s warnings; use this option as
-% \emph{first} option of \fbsetup{} to cancel warnings launched
-% by other options.
+% This option should only be used to ensure backward compatibility.
+% The current default behaviour is to switch off any addition of
+% space before high punctuation with typewriter fonts
+% (\textit{e.g.} verbatim).
+% \item [UnicodeNoBreakSpaces=true (false)];\hlabel{ucs-nbsp}
+% (experimental) this option should be set to \fbo{true}
+% \emph{only while converting LuaLaTeX files} to HTML.
+% It ensures that non-breaking spaces added by \frenchb{} are
+% inserted in the PDF file as U+A0 or U+202F (thin) instead of
+% penalties and glues.
+% Note that \exe{lwarp} (v.~0.37 and up) is fully compatible with
+% \frenchb{} for translating PDFLaTeX or XeLaTeX files to HTML.
+%
+% \item [og=«, fg=»]; when guillemets characters are available on
+% the keyboard (through a compose key for instance), it is nice
+% to use them instead of typing |\og| and |\fg|. This option
+% tells \frenchb{} which characters are opening and closing
+% French guillemets (they depend on the input encoding), then
+% you can type either \hlabel{option-og-fg}
+% \texttt{« guillemets »} or \texttt{«guillemets»} (with or
+% without spaces) to get properly typeset French quotes.
+% This option works with LuaLaTeX and XeLaTeX; with pdfLaTeX it
+% requires \file{inputenc} to be loaded with a proper encoding:
+% 8-bits encoding (latin1, latin9, ansinew, applemac,\dots) or
+% multi-byte encoding (utf8, utf8x).
% \item [INGuillSpace=true (false)] resets the dimensions of spaces
% after opening French quotes and before closing French quotes to
% the French `Imprimerie Nationale’ standards (inter-word space).
@@ -551,26 +553,41 @@
% \fbo{close}) is set, a \texttt{\guilsinglleft} (or
% \texttt{\guilsinglright}) is added at the beginning of every
% parapraph included in the inner quotation.
-% \item [UnicodeNoBreakSpaces=true (false)];\hlabel{ucs-nbsp}
-% (experimental) this option should be set to \fbo{true}
-% \emph{only while converting LuaLaTeX files} to HTML.
-% It ensures that non-breaking spaces added by \frenchb{} are
-% inserted in the PDF file as U+A0 or U+202F (thin) instead of
-% penalties and glues.
-% Note that \exe{lwarp} (v.~0.37 and up) is fully compatible with
-% \frenchb{} for translating PDFLaTeX or XeLaTeX files to HTML.
-% \item [og=«, fg=»]; when guillemets characters are available on
-% the keyboard (through a compose key for instance), it is nice
-% to use them instead of typing |\og| and |\fg|. This option
-% tells \frenchb{} which characters are opening and closing
-% French guillemets (they depend on the input encoding), then
-% you can type either \hlabel{option-og-fg}
-% \texttt{« guillemets »} or \texttt{«guillemets»} (with or
-% without spaces) to get properly typeset French quotes.
-% This option works with LuaLaTeX and XeLaTeX; with pdfLaTeX it
-% requires \file{inputenc} to be loaded with a proper encoding:
-% 8-bits encoding (latin1, latin9, ansinew, applemac,\dots) or
-% multi-byte encoding (utf8, utf8x).
+%
+% \item [ThinSpaceInFrenchNumbers=true (false)]; if \pkg{numprint}
+% has been loaded with the \opt{autolanguage} option, while
+% typesetting numbers with the |\numprint{}| command,
+% |\npthousandsep| is defined as a non-breaking space (|~|)%
+% \footnote{Actually without stretch nor shrink.} in French;
+% when set to true, this option redefines |\npthousandsep|
+% as a thin space (|\,|).
+%
+% \item [SmallCapsFigTabCaptions=false (true*)]; when set to
+% \fbo{false}, |\figurename| and |\tablename| will be printed in
+% French captions as ``Figure’’ and ``Table’’ instead of being
+% printed in small caps (the default).
+% \item [CustomiseFigTabCaptions=false (true*)]; when \fbo{false}
+% the default separator (colon) is used instead of
+% |\CaptionSeparator|. Anyway, \frenchb{} tries hard to insert
+% a proper space before it and warns if it fails to do so.
+% \item [OldFigTabCaptions=true (false)] is to be used when
+% figures’ and tables’ captions must be typeset as with pre~3.0
+% versions of \frenchb{} (with |\CaptionSeparator| in French and
+% colon otherwise). Intended for standard LaTeX classes only.
+%
+% \item [FrenchSuperscripts=false (true)]; then
+% |\up=\textsuperscript|. % (option added in version 2.1).
+% Should only be made \fbo{false} to recompile documents written
+% before 2008 without changes: by default |\up| now relies on
+% |\fup| designed to produce better looking superscripts.
+% \item [LowercaseSuperscripts=false (true)]; by default \frenchb{}
+% inhibits the uppercasing of superscripts (for instance when
+% they are moved to page headers). Making this option
+% \fbo{false} will disable this behaviour (not recommended).
+% \item [SuppressWarning=true (false)]; can be turned to \fbo{true}
+% if you are bored with \frenchb’s warnings; use this option as
+% \emph{first} option of \fbsetup{} to cancel warnings launched
+% by other options.
% \end{description}
%
% \textbf{Options’ order} -- Please remember that options are read
@@ -589,7 +606,7 @@
% All caption names can easily be customised in French using the
% simplified syntax introduced by \babel~3.9, for instance
% |\def\frenchproofname{Preuve}| or
-% |\def\acadianproofname{Preuve}| for the \Lopt{acadian} dialect.
+% |\def\acadianproofname{Preuve}| for the \opt{acadian} dialect.
% The older syntax |\addto\captionsfrench{\def\proofname{Preuve}}|
% still works. Keep in mind that \emph{only} |french| can be used
% to redefine captions, even if \babel{}’s option was entered as
@@ -599,7 +616,7 @@
% \label{sssec-captions-fig}
%
% In French, captions in figures and tables should never be printed
-% as ‘Figure 1: ’ which is the default in standard \LaTeXe{}
+% as ‘Figure~1: ’ which is the default in standard LaTeX2e
% classes (a space should \emph{always} preceed a colon in French),
% anyway ‘Figure 1 -- ’ is preferred.
%
@@ -608,7 +625,7 @@
% tables’ captions \emph{for all languages} to |\CaptionSeparator|
% which defaults to ` -- ’ and can be redefined in the preamble with
% |\renewcommand*{\CaptionSeparator}{...}|.
-% This works for the standard \LaTeXe{} classes, for the \cls{memoir}
+% This works for the standard LaTeX2e classes, for the \cls{memoir}
% and koma-script classes.
% In case this procedure fails a warning is issued.
%
@@ -625,7 +642,7 @@
% \fbo{true} to print figures’ and tables’ captions as they were
% with versions pre~3.0 of \frenchb{} (using |\CaptionSeparator|
% in French and colon in other languages); this option only makes
-% sense with the standard \LaTeX{} classes \cls{article},
+% sense with the standard LaTeX classes \cls{article},
% \cls{report} and \cls{book};
% \item the last option, \fbo{SmallCapsFigTabCaptions}, can be set
% to \fbo{false} to typeset |\figurename| and |\tablename| in
@@ -638,7 +655,7 @@
%
% Once you have built your format, a good precaution would be to
% perform some basic tests about hyphenation in French.
-% For \LaTeXe{} I suggest this:
+% For LaTeX2e I suggest this:
% \begin{itemize}
% \item run |pdfLaTeX| on the following file, with the encoding
% suitable for your machine (\textit{my-encoding} will be |latin1|
@@ -688,16 +705,16 @@
% length. |\renewcommand*{\FBthousandsep}{~}| will switch back
% to the former (wrong) behaviour.
%
-% Both options \Lopt{french} and \Lopt{acadian} can now be used
-% simultaneously in a document; currently \Lopt{french} and
-% \Lopt{acadian} are identical, it is up to the user to customise
-% \Lopt{acadian} in terms of hyphenation patterns, captionnames,
+% Both options \opt{french} and \opt{acadian} can now be used
+% simultaneously in a document; currently \opt{french} and
+% \opt{acadian} are identical, it is up to the user to customise
+% \opt{acadian} in terms of hyphenation patterns, captionnames,
% date format or high punctuation and quotes spacing if he/she
% needs a variant for French.
%
% A new command |\FBsetspaces| has been added for easy customising of
% spacing before high punctuation and inside quotes independently for
-% \Lopt{french} and \Lopt{acadian}, see p.~\pageref{FBsetspaces}.
+% \opt{french} and \opt{acadian}, see p.~\pageref{FBsetspaces}.
%
% Version 3.4 requires eTeX and LuaTeX 1.0.4 or newer.
%
@@ -720,11 +737,11 @@
%
% According to current \babel's standards, every dialect should
% have it’s own \file{.ldf} file; starting with version~3.3b,
-% the main support for French is in \file{french.ldf}, portemanteau
+% the main support for French is in \file{french.ldf}, portmanteau
% files \file{frenchb.ldf},\file{francais.ldf}, \file{acadian.ldf}
% and \file{canadien.ldf} have been added. Recommended options are
-% \Lopt{french} or \Lopt{acadian}, all other are deprecated.
-% BTW, options \Lopt{french} and \Lopt{acadian} are currently
+% \opt{french} or \opt{acadian}, all other are deprecated.
+% BTW, options \opt{french} and \opt{acadian} are currently
% strictly identical.
%
% Release 3.3a is compatible with LuaTeX v.~0.95 (TL2016) and up.
@@ -798,8 +815,8 @@
% reworked; two new options added.
% \item Canadian French didn’t work as a normal \babel’s dialect,
% it should now; btw. the French language should now be loaded
-% as \Lopt{french}, \emph{not as} \Lopt{frenchb} or
-% \Lopt{francais} and preferably as a \emph{global} option of
+% as \opt{french}, \emph{not as} \opt{frenchb} or
+% \opt{francais} and preferably as a \emph{global} option of
% |\documentclass|. Some tolerance still exists in v3.0, but
% do not rely on it.
% \item \frenchb{} no longer loads \file{frenchb.cfg}:
@@ -846,10 +863,6 @@
% no date/version information). The real name of current language
% (french) as to be corrected before calling \cs{LdfInit}.}
%
-% \iffalse
-%<*french>
-% \fi
-%
% \changes{v3.0a}{2014/02/28}{Support for options frenchb, francais,
% canadien, acadian changed.}
%
@@ -862,11 +875,12 @@
% Prevents loading french.ldf again with acadian option.}
%
% The macro |\LdfInit| takes care of preventing that this file is
-% loaded more than once (even if both options \Lopt{french} and
-% \Lopt{acadian} are used in the same document), checking the
+% loaded more than once (even if both options \opt{french} and
+% \opt{acadian} are used in the same document), checking the
% category code of the \texttt{@} sign, etc.
%
% \begin{macrocode}
+%<*french>
\LdfInit\CurrentOption{FBclean@on@exit}
% \end{macrocode}
%
@@ -954,7 +968,7 @@
\ifdefined\l@french \else \FB@nopatterns \fi
% \end{macrocode}
%
-% Babel’s French language can be loaded with option \Lopt{acadian}
+% Babel’s French language can be loaded with option \opt{acadian}
% which stands for Canadian French.
% If no specific hyphenation patterns are available, Canadian French
% will use the French ones.
@@ -975,8 +989,8 @@
% when \cs{ifx} ... incomplete’ with LaTeX-2.09.}
%
% \begin{macro}{\ifLaTeXe}
-% No support is provided for late \LaTeX-2.09: issue a warning
-% and exit if \LaTeX-2.09 is in use. Plain is still supported.
+% No support is provided for late LaTeX-2.09: issue a warning
+% and exit if LaTeX-2.09 is in use. Plain is still supported.
% \begin{macrocode}
\newif\ifLaTeXe
\let\bbl@tempa\relax
@@ -1017,14 +1031,21 @@
% \changes{v2.6g}{2013/12/15}{lccode values for the French
% `apostrophe’ are now the same for XeTeX and LuaTeX.}
%
+% \changes{v3.4c}{2018/02/16}{Reverting to former test, beware of
+% \cs{XeTeXrevision} left as \cs{relax} by careless testing.}
+%
% \begin{macrocode}
\newif\ifFBunicode
\newif\ifFBLuaTeX
\newif\ifFBXeTeX
-\ifdefined\luatexversion
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname luatexversion\endcsname\relax
+\else
\FBunicodetrue \FBLuaTeXtrue
\fi
-\ifdefined\XeTeXrevision
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname XeTeXrevision\endcsname\relax
+\else
\FBunicodetrue \FBXeTeXtrue
\fi
% \end{macrocode}
@@ -1230,7 +1251,7 @@
% This command makes it easy to fine tune |\FBguillspace|,
% |\FBcolonspace| and |\FBthinspace| in French (defaut) or
% independently in a French dialect using the optional argument.
-% They are meant for \LaTeXe{} \emph{only} and can only be used
+% They are meant for LaTeX2e \emph{only} and can only be used
% in the preamble.
% Four mandatory arguments are expected besides the optional one:
% the first one is a \textit{string} either "guill", "colon", or
@@ -1391,7 +1412,7 @@
% The following part holds specific code for punctuation with modern
% LuaTeX engines, i.e. version 1.0.4 (included in TL2017) or newer.
%
-% \changes{v3.0b}{2014/02/13}{Require luatexbase with LaTeXe in case
+% \changes{v3.0b}{2014/02/13}{Require luatexbase with LaTeX2e in case
% fontspec has not been loaded before babel.}
%
% \changes{v3.0c}{2014/03/26}{Just load luatexbase.sty instead of
@@ -1511,16 +1532,14 @@
}%
}
\fi
+%</french>
% \end{macrocode}
%
-% \iffalse
-%</french>
-% \fi
+% \begin{macro}{frenchb.lua}
% This is \file{frenchb.lua}. It holds Lua code to deal with `high
% punctuation’ and quotes. This code is based on suggestions from
% Paul Isambert.
%
-% \begin{macro}{frenchb.lua}
% First we define two flags to control spacing before French `high
% punctuation’ (thin space or inter-word space).
%
@@ -1999,9 +2018,6 @@ return french_punctuation
%</lua>
% \end{macrocode}
% \end{macro}
-% \iffalse
-%<*french>
-% \fi
%
% \begin{macro}{\FB@luatex@punct@french}
% As a language tag is part of glyph nodes in LuaTeX, no more
@@ -2015,6 +2031,7 @@ return french_punctuation
% \cs{shorthandon} and \cs{shorthandoff}.}
%
% \begin{macrocode}
+%<*french>
\ifFB@luatex@punct
\newcommand*{\FB@luatex@punct@french}{%
\babel@save\shorthandon
@@ -2451,7 +2468,7 @@ return french_punctuation
% to 0 (false). User commands |\AutoSpaceBeforeFDP| and
% |\NoAutoSpaceBeforeFDP| do the same and take care of the flag
% |\ifFBAutoSpacePunctuation| in \LaTeX{}.
-% Set the default now for Plain (done later for \LaTeX).
+% Set the default now for Plain (done later for LaTeX).
% \begin{macrocode}
\def\autospace@beforeFDP{%
\ifFB@luatex@punct\FB@addDPspace=1 \fi
@@ -2488,7 +2505,7 @@ return french_punctuation
% and \cs{sffamily} have to be robust. Bug introduced in 2.3a,
% pointed out by Manuel Pégourié-Gonnard.}
%
-% In \LaTeXe{} |\ttfamily| (and hence |\texttt|) will be redefined
+% In LaTeX2e |\ttfamily| (and hence |\texttt|) will be redefined
% `AtBeginDocument’ as |\ttfamilyFB| so that no space
% is added before the four |; : ! ?| characters, even if
% \fbo{AutoSpacePunctuation} is \fbo{true}. When
@@ -2558,7 +2575,7 @@ return french_punctuation
% \begin{macro}{\guillemotright}
% \begin{macro}{\textquoteddblleft}
% \begin{macro}{\textquoteddblright}
-% With pdfLaTeX \LaTeX{} users are supposed to use 8-bit output
+% pdfLaTeX users are supposed to use 8-bit output
% encodings (T1, LY1,\dots) to typeset French, those who still
% stick to OT1 should load \pkg{aeguill} or a similar package.
% In both cases the commands |\guillemotleft| and |\guillemotright|
@@ -2744,7 +2761,7 @@ return french_punctuation
\let\FBeveryparguill\FBguillopen
\let\FBeverylineguill\FBguillnone
% \end{macrocode}
-% The main command |\frquote| accepts (in \LaTeXe{} only) a starred
+% The main command |\frquote| accepts (in LaTeX2e only) a starred
% version which suppresses the closing quote; it is meant to be used
% for inner quotations which end together with the outer one, then
% only one closing guillemet (the outer one) should be printed.
@@ -2831,7 +2848,7 @@ return french_punctuation
\fi
\else
% \end{macrocode}
-% Warn if |\FBguill@level| $\ge 3$:
+% Warn if |\FBguill@level| >~2:
% \begin{macrocode}
\ifx\PackageWarning\@undefined
\fb@warning{\noexpand\frquote\space handles up to
@@ -2879,13 +2896,13 @@ return french_punctuation
% \changes{v3.4a}{2018/01/04}{Specific code for Plain finally removed
% (babel bug reported).}
%
-% \changes{v3.4b}{2018/02/44}{Do not redefine \cs{date} as
+% \changes{v3.4b}{2018/02/04}{Do not redefine \cs{date} as
% \cs{frenchdate} in French.}
%
% Explicitly defining |\BabelLanguages| as the list of all French
% dialects defines \emph{both} |\datefrench| and |\dateacadian|;
% this is required as \file{french.ldf} is read only once even if
-% both language options \Lopt{french} and \Lopt{acadian} are supplied
+% both language options \opt{french} and \opt{acadian} are supplied
% to \babel. Note that coding |\StartBabelCommands*{french,acadian}|
% would \emph{only} define |\csname date\CurrentOption\endcsname|,
% leaving the second language undefined in \babel's sens.
@@ -2952,7 +2969,7 @@ return french_punctuation
%
% |\up| eases the typesetting of superscripts like
% `1\up{er}’. Up to version 2.0 of \frenchb{} |\up| was just a
-% shortcut for |\textsuperscript| in \LaTeXe, but several users
+% shortcut for |\textsuperscript| in LaTeX2e, but several users
% complained that |\textsuperscript| typesets superscripts
% too high and too big, so we now define |\fup| as an attempt to
% produce better looking superscripts. |\up| is defined as |\fup|
@@ -3353,7 +3370,7 @@ return french_punctuation
% \changes{v2.0}{2006/11/06}{\cs{nombre} now requires numprint.sty.}
%
% The command |\nombre| is now borrowed from \file{numprint.sty} for
-% \LaTeXe. There is no point to maintain the former tricky code
+% LaTeX2e. There is no point to maintain the former tricky code
% when a package is dedicated to do the same job and more.
% For Plain based formats, |\nombre| no longer formats numbers,
% it prints them as is and issues a warning about the change.
@@ -3393,8 +3410,8 @@ return french_punctuation
\FBstop@here
% \end{macrocode}
%
-% What follows is for \LaTeXe{} \emph{only}.
-% We redefine |\nombre| for \LaTeXe. A warning is issued
+% What follows is for LaTeX2e \emph{only}.
+% We redefine |\nombre| for LaTeX2e. A warning is issued
% at the first call of |\nombre| if |\numprint| is not
% defined, suggesting what to do. The package \pkg{numprint}
% is \emph{not} loaded automatically by \frenchb{} because of
@@ -3439,11 +3456,11 @@ return french_punctuation
% \label{ssec-captions-name}
%
% The next step consists in defining the French equivalents for
-% the \LaTeX{} caption names.
+% the LaTeX caption names.
%
% \begin{macro}{\captionsfrench}
% Let’s first define |\captionsfrench| which sets all strings used
-% in the four standard document classes provided with \LaTeX.
+% in the four standard document classes provided with LaTeX.
%
% \changes{v2.0}{2006/11/06}{`Fig.’ changed to `Figure’ and
% `Tab.’ to `Table’.}
@@ -3564,7 +3581,7 @@ return french_punctuation
% \begin{macro}{\CaptionSeparator}
% Let’s consider now captions in figures and tables.
% In French, captions in figures and tables should never be printed
-% as `Figure 1:~’ which is the default in standard \LaTeXe{} classes
+% as `Figure 1:~’ which is the default in standard LaTeX2e classes
% (a space should preceed the colon in French). This flaw may occur
% with pdfLaTeX as `:’ is made active too late.
% With LuaLaTeX and XeLaTeX, this glitch doesn’t occur, you get
@@ -3572,7 +3589,7 @@ return french_punctuation
% provides the following workaround.
%
% The standard definition of |\@makecaption| (e.g., the one provided
-% in article.cls, report.cls, book.cls which is frozen for \LaTeXe{}
+% in article.cls, report.cls, book.cls which is frozen for LaTeX2e
% according to Frank Mittelbach), is saved in |\STD@makecaption|.
% `AtBeginDocument’ we compare it to its current definition (some
% classes like \cls{memoir}, koma-script classes, AMS classes,
@@ -3792,15 +3809,15 @@ return french_punctuation
% \label{ssec-dots}
%
% \begin{macro}{\FBtextellipsis}
-% \LaTeXe’s standard definition of |\dots| in text-mode is
+% LaTeX’s standard definition of |\dots| in text-mode is
% |\textellipsis| which includes a |\kern| at the end;
% this space is not wanted in some cases (before a closing brace
% for instance) and |\kern| breaks hyphenation of the next word.
-% We define |\FBtextellipsis| for French (in \LaTeXe{} only).
+% We define |\FBtextellipsis| for French (in LaTeX only).
%
-% The |\if| construction in the \LaTeXe{} definition of |\dots|
+% The |\if| construction in the LaTeX definition of |\dots|
% doesn’t allow the use of |xspace| (|xspace| is always followed
-% by a |\fi|), so we use the AMS-\LaTeX{} construction of |\dots|;
+% by a |\fi|), so we use the AMS-LaTeX construction of |\dots|;
% this has to be done `AtBeginDocument’ not to be overwritten
% when \file{amsmath.sty} is loaded after \babel.
%
@@ -3826,7 +3843,7 @@ return french_punctuation
% \end{macrocode}
% |\Mdots@| and |\Tdots@| hold the definitions of |\dots| in
% Math and Text mode. They default to those of amsmath-2.0, and
-% will revert to standard \LaTeX{} definitions `AtBeginDocument’,
+% will revert to standard LaTeX definitions `AtBeginDocument’,
% if amsmath has not been loaded. |\Mdots@| doesn’t change when
% switching from/to French, while |\Tdots@| is redefined as
% |\FBtextellipsis| in French.
@@ -3950,8 +3967,7 @@ return french_punctuation
% \changes{v2.0e}{2007/10/05}{New option: StandardLists.}
%
% \changes{v2.0f}{2008/03/23}{Two typos corrected in
-% option StandardLists: [false] $\to$ [true] and
-% StandardLayout $\to$ StandardLists.}
+% option StandardLists.}
%
% \changes{v2.0f}{2008/03/23}{StandardLayout option had no
% effect on lists. Test moved to \cs{FBprocess@options}.}
@@ -4732,10 +4748,9 @@ return french_punctuation
ShowOptions=true [false]\MessageBreak
StandardLayout=true [false]\MessageBreak
GlobalLayoutFrench=false [true]\MessageBreak
- StandardLists=true [false]\MessageBreak
+ PartNameFull=false [true]\MessageBreak
IndentFirst=false [true]\MessageBreak
ReduceListSpacing=false [true]\MessageBreak
- ListOldLayout=true [false]\MessageBreak
StandardItemizeEnv=true [false]\MessageBreak
StandardEnumerateEnv=true [false]\MessageBreak
StandardItemLabels=true [false]\MessageBreak
@@ -4749,26 +4764,28 @@ return french_punctuation
\protect\ding{43},... [\textendash]\MessageBreak
ItemLabeliv=\textemdash, \textbullet,
\protect\ding{43},... [\textendash]\MessageBreak
+ StandardLists=true [false]\MessageBreak
+ ListOldLayout=true [false]\MessageBreak
+ CompactItemize=false [true]\MessageBreak
FrenchFootnotes=false [true]\MessageBreak
AutoSpaceFootnotes=false [true]\MessageBreak
AutoSpacePunctuation=false [true]\MessageBreak
- OriginalTypewriter=true [false]\MessageBreak
ThinColonSpace=true [false]\MessageBreak
- ThinSpaceInFrenchNumbers=true [false]\MessageBreak
- FrenchSuperscripts=false [true]\MessageBreak
- LowercaseSuperscripts=false [true]\MessageBreak
- PartNameFull=false [true]\MessageBreak
- SuppressWarning=true [false]\MessageBreak
- CustomiseFigTabCaptions=false [true]\MessageBreak
- OldFigTabCaptions=true [false]\MessageBreak
- SmallCapsFigTabCaptions=false [true]\MessageBreak
+ OriginalTypewriter=true [false]\MessageBreak
+ UnicodeNoBreakSpaces=true [false]\MessageBreak
+ og= <left quote character>, fg= <right quote character>%
INGuillSpace=true [false]\MessageBreak
- InnerGuillSingle=true [false]\MessageBreak
EveryParGuill=open, close, none [open]\MessageBreak
EveryLineGuill=open, close, none
[open in LuaTeX, none otherwise]\MessageBreak
- UnicodeNoBreakSpaces=true [false]\MessageBreak
- og= <left quote character>, fg= <right quote character>%
+ 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
\MessageBreak
*********************************************%
\MessageBreak\protect\frenchsetup{ShowOptions}}
@@ -4864,36 +4881,18 @@ return french_punctuation
% \changes{v3.3c}{2017/09/06}{LaTeX 2017-04-15 defines TU encoding
% for Unicode engines, fontspec is no longer required.}
%
-% Some warnings are issued when output font encodings are not
-% properly set. With XeLaTeX or LuaLaTeX, \file{fontspec.sty}
-% should be loaded unless either TU encoding is set by LaTeX or
-% T1 encoded fonts are used through \file{luainputenc}, in the
-% latter case |\FB@og| and |\FB@fg| have to be redefined.
-% With (pdf)\LaTeX, a warning is issued when OT1 encoding is in use
-% at the |\begin{document}|.
-% Mind that |\encodingdefault| is defined as `long’, defining
-% |\FBTU| or |\FBOTone| with |\newcommand*| would fail!
+% Finally, a warning is issued with pdfLaTeX when OT1 encoding
+% is in use at the |\begin{document}|; mind that |\encodingdefault|
+% is defined as `long’, the test would fail if |\FBOTone| was
+% defined with |\newcommand*|!
% \begin{macrocode}
\begingroup
- \newcommand{\FBTU}{TU}%
\newcommand{\FBOTone}{OT1}%
- \ifFBunicode
- \ifx\encodingdefault\FBTU
- \else
- \@ifpackageloaded{fontspec}{}%
- {\@ifpackageloaded{luainputenc}{}%
- {\FBWarning{Add \protect\usepackage{fontspec} to the%
- \MessageBreak preamble of your document, reported}%
- }%
- }
- \fi
- \else
- \ifx\encodingdefault\FBOTone
- \FBWarning{OT1 encoding should not be used for French.%
- \MessageBreak
- Add \protect\usepackage[T1]{fontenc} to the
- preamble\MessageBreak of your document; reported}%
- \fi
+ \ifx\encodingdefault\FBOTone
+ \FBWarning{OT1 encoding should not be used for French.%
+ \MessageBreak
+ Add \protect\usepackage[T1]{fontenc} to the
+ preamble\MessageBreak of your document; reported}%
\fi
\endgroup
}
@@ -4912,7 +4911,7 @@ return french_punctuation
% \begin{macro}{\listORI}
% \begin{macro}{\FB@listVsettings}
% Vertical spacing in lists should be shorter in French texts than
-% the defaults provided by \LaTeX.
+% the defaults provided by LaTeX.
% Note that the easy way, just changing values of vertical spacing
% parameters when entering French and restoring them to their
% defaults on exit would not work; so we define the command
@@ -4956,7 +4955,7 @@ return french_punctuation
% \end{macro}
%
% Let’s now consider French itemize-lists. They differ from those
-% provided by the standard \LaTeXe{} classes:
+% provided by the standard LaTeX classes:
% \begin{itemize}
% \item The `\textbullet’ is never used in French itemize-lists,
% an emdash `---’ or an endash `--’ is preferred for all
@@ -4972,7 +4971,7 @@ return french_punctuation
% \def\FBlabel{\textemdash}%
% \settowidth{\labelwidth}{\FBlabel}%
% Text starting at `parindent’ \\
-% \noindent$\Leftarrow$ Leftmargin\\
+% \noindent<= Leftmargin\\
% \hspace*{\parindent}\textemdash{} first item\dots\\
% \hspace*{\parindent}\hspace*{\labelwidth}%
% \textemdash{} first second level item\\
@@ -5008,7 +5007,7 @@ return french_punctuation
% \begin{macro}{\labelwidthFB}
% Let’s define three lengths |\listindentFB|, |\descindentFB| and
% |\labelwidthFB| to customise lists’ horizontal indentations.
-% They are given silly values here ($-1$\,pt) in order to eventually
+% They are given silly negative values here in order to eventually
% enable their customisation in the preamble. They will get
% reasonnable defaults later when entering French (see
% |\bbl@frenchlabelitems|) unless they have been customised.
@@ -5087,7 +5086,7 @@ return french_punctuation
}
% \end{macrocode}
% The definition of |\itemizeFB| follows the one of |\itemize|
-% in standard \LaTeXe{} classes (see \file{ltlists.dtx}),
+% in standard LaTeX classes (see \file{ltlists.dtx}),
% spaces are customised by |\FB@itemizesettings|.
%
% \begin{macrocode}
@@ -5130,7 +5129,7 @@ return french_punctuation
%
% \begin{macro}{\enumerateFB}
% The definition of |\enumerateFB|, new to version~2.6a, follows
-% the one of |\enumerate| in standard \LaTeXe{} classes (see
+% the one of |\enumerate| in standard LaTeX classes (see
% \file{ltlists.dtx}), vertical spaces are customised (or not)
% via |\list| (=|\listFB| or |\listORI|) and horizontal spaces
% (leftmargins) are borrowed from |itemize| lists via
@@ -5578,10 +5577,8 @@ return french_punctuation
\FBclean@on@exit
\ldf@finish\CurrentOption
\let\loadlocalcfg\FB@llc
-% \end{macrocode}
-% \iffalse
%</french>
-% \fi
+% \end{macrocode}
%
% \subsection[Files \file{frenchb.ldf}, \file{francais.ldf},
% \file{canadien.ldf} and \file{acadian.ldf}]%
@@ -5592,14 +5589,15 @@ return french_punctuation
% \file{acadian.ldf}, \file{canadien.ldf}, \file{frenchb.ldf},
% and \file{francais.ldf} and warn about deprecated options.}
%
-% Babel now expects a \file{\langvar{}.ldf} file for each \langvar.
-% So we create portmanteau \file{.ldf} files for options \texttt{canadien},
-% \texttt{francais}, \texttt{frenchb} and \texttt{acadian}.
-% These files themselves only load \file{french.ldf} which does
-% the real work.
-% Warn users about options \Lopt{canadien}, \Lopt{frenchb} and
-% \Lopt{francais} being deprecated and force recommended options
-% \Lopt{acadian} or \Lopt{french}.
+% Babel now expects a \file{\meta{lang}.ldf} file for each
+% \meta{lang}.
+% So we create portmanteau \file{.ldf} files for options
+% \texttt{canadien}, \texttt{francais}, \texttt{frenchb} and
+% \texttt{acadian}. These files themselves only load
+% \file{french.ldf} which does the real work.
+% Warn users about options \opt{canadien}, \opt{frenchb} and
+% \opt{francais} being deprecated and force recommended options
+% \opt{acadian} or \opt{french}.
% \begin{macrocode}
%<*acadian>
\PackageInfo{acadian.ldf}%
@@ -5625,8 +5623,8 @@ return french_punctuation
%</francais>
% \end{macrocode}
% Compatibility code for \babel{} pre-3.13: \file{frenchb.ldf}
-% could be loaded with options \Lopt{acadian}, \Lopt{canadien},
-% \Lopt{frenchb} or \Lopt{francais}.
+% could be loaded with options \opt{acadian}, \opt{canadien},
+% \opt{frenchb} or \opt{francais}.
% \begin{macrocode}
%<*frenchb>
\def\bbl@tempa{frenchb}