summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/fmtcount/fc-french.def
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/fmtcount/fc-french.def')
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-french.def448
1 files changed, 259 insertions, 189 deletions
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-french.def b/Master/texmf-dist/tex/latex/fmtcount/fc-french.def
index af6c49a242f..4b5100df890 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-french.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-french.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-french.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2015 Nicola Talbot and Vincent Belaïche
+%% Copyright 2017 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -51,51 +51,59 @@
%% Local Variables:
%% coding: utf-8
%% End:
-\ProvidesFCLanguage{french}[2012/10/24]%
-\def\fc@french@set@plural#1#2#3#4#5#6{%
+\ProvidesFCLanguage{french}[2017/06/15]%
+\ifcsundef{fc@gl@let}{\global\let\fc@gl@let\let}{\PackageError{fmtcount}{Command already defined}{Command
+\protect\fc@gl@let\space already defined.}}
+\ifcsundef{fc@gl@def}{\global\let\fc@gl@def\def}{\PackageError{fmtcount}{Command already defined}{Command
+\protect\fc@gl@def\space already defined.}}
+\gdef\fc@french@set@plural#1#2#3#4#5#6{%
\ifthenelse{\equal{#2}{reformed}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{#3}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{#3}%
}{%
\ifthenelse{\equal{#2}{traditional}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{#4}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{#4}%
}{%
\ifthenelse{\equal{#2}{reformed o}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{#5}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{#5}%
}{%
\ifthenelse{\equal{#2}{traditional o}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{#6}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{#6}%
}{%
\ifthenelse{\equal{#2}{always}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{0}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{0}%
}{%
\ifthenelse{\equal{#2}{never}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{1}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{1}%
}{%
\ifthenelse{\equal{#2}{multiple}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{2}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{2}%
}{%
\ifthenelse{\equal{#2}{multiple g-last}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{3}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{3}%
}{%
\ifthenelse{\equal{#2}{multiple l-last}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{4}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{4}%
}{%
\ifthenelse{\equal{#2}{multiple lng-last}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{5}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{5}%
}{%
\ifthenelse{\equal{#2}{multiple ng-last}}{%
- \expandafter\def\csname fc@frenchoptions@#1@plural\endcsname{6}%
+ \expandafter\fc@gl@def\csname fc@frenchoptions@#1@plural\endcsname{6}%
}{%
\PackageError{fmtcount}{Unexpected argument}{%
`#2' was unexpected: french option `#1 plural' expects `reformed', `traditional',
`reformed o', `traditional o', `always', `never', `multiple', `multiple g-last',
`multiple l-last', `multiple lng-last', or `multiple ng-last'.%
- }}}}}}}}}}}}}
+ }}}}}}}}}}}}}%
\def\@tempa#1#2#3{%
\define@key{fcfrench}{#1 plural}[reformed]{%
\fc@french@set@plural{#1}{##1}{#2}{#2}{#3}{#3}%
}%
-}
+ \expandafter\@tempb\csname KV@fcfrench@#1 plural\endcsname
+}%
+\def\@tempb#1{%
+ \global\let#1#1
+}%
\@tempa{vingt}{4}{5}
\@tempa{cent}{4}{5}
\@tempa{mil}{0}{0}
@@ -107,7 +115,8 @@
\csname KV@fcfrench@mil plural\endcsname{#1}%
\csname KV@fcfrench@n-illion plural\endcsname{#1}%
\csname KV@fcfrench@n-illiard plural\endcsname{#1}%
-}
+}%
+\expandafter\@tempb\csname KV@fcfrench@all plural\endcsname
\define@key{fcfrench}{dash or space}[reformed]{%
\ifthenelse{\equal{#1}{traditional}}{%
\let\fc@frenchoptions@supermillion@dos\space%
@@ -127,7 +136,7 @@
}%
}%
}%
-}
+}%
\define@key{fcfrench}{scale}[recursive]{%
\ifthenelse{\equal{#1}{long}}{%
\let\fc@poweroften\fc@@pot@longscalefrench
@@ -144,7 +153,7 @@
}%
}%
}%
-}
+}%
\define@key{fcfrench}{n-illiard upto}[infinity]{%
\ifthenelse{\equal{#1}{infinity}}{%
\def\fc@longscale@nilliard@upto{0}%
@@ -159,16 +168,16 @@
\fi
\def\fc@longscale@nilliard@upto{#1}%
}}%
-}
+}%
\def\@tempa#1{%
\define@key{fcfrench}{#1}[]{%
\PackageError{fmtcount}{Unexpected argument}{French option with key `#1' does not take
any value}}%
- \expandafter\def\csname KV@fcfrench@#1@default\endcsname{%
- \def\fmtcount@french{#1}}%
+ \csgdef{KV@fcfrench@#1@default}{%
+ \fc@gl@def\fmtcount@french{#1}}%
}%
\@tempa{france}\@tempa{swiss}\@tempa{belgian}%
-\def\fmtcount@french{france}%
+\gdef\fmtcount@french{france}%
\define@key{fcfrench}{dialect}[france]{%
\ifthenelse{\equal{#1}{france}
\or\equal{#1}{swiss}
@@ -176,21 +185,25 @@
\def\fmtcount@french{#1}}{%
\PackageError{fmtcount}{Invalid value `#1' to french option dialect key}
{Option `french' can only take the values `france',
- `belgian' or `swiss'}}}
+ `belgian' or `swiss'}}}%
+\expandafter\@tempb\csname KV@fcfrench@dialect\endcsname
\define@key{fcfrench}{mil plural mark}[le]{%
\def\fc@frenchoptions@mil@plural@mark{#1}}
-\def\fc@UpperCaseFirstLetter#1#2\@nil{%
+\expandafter\@tempb\csname KV@fcfrench@mil plural mark\endcsname
+\gdef\fc@UpperCaseFirstLetter#1#2\@nil{%
\uppercase{#1}#2}
-
-\def\fc@CaseIden#1\@nil{%
+\gdef\fc@CaseIden#1\@nil{%
#1%
-}
-\def\fc@UpperCaseAll#1\@nil{%
+}%
+\gdef\fc@UpperCaseAll#1\@nil{%
\uppercase{#1}%
+}%
+\global\let\fc@wcase\fc@CaseIden
+\global\let\fc@gcase\fc@CaseIden
+\gdef\fc@apply@gcase{%
+ \protected@edef\@tempa{\@tempa}%
+ \protected@edef\@tempa{\expandafter\fc@gcase\@tempa\@nil}%
}
-
-\let\fc@case\fc@CaseIden
-
\newcommand*{\@ordinalMfrench}[2]{%
\iffmtord@abbrv
\ifnum#1=1 %
@@ -207,6 +220,7 @@
\protected@edef#2{\number#1\relax\noexpand\fmtord{\protect\`eme}}%
\fi
\fi}
+\global\let\@ordinalMfrench\@ordinalMfrench
\newcommand*{\@ordinalFfrench}[2]{%
\iffmtord@abbrv
\ifnum#1=1 %
@@ -223,9 +237,10 @@
\protected@edef#2{\number#1\relax\noexpand\fmtord{\protect\`eme}}%
\fi
\fi}
-\let\@ordinalNfrench\@ordinalMfrench
+\global\let\@ordinalFfrench\@ordinalFfrench
+\global\let\@ordinalNfrench\@ordinalMfrench
\newcommand*{\@@unitstringfrench}[1]{%
-\noexpand\fc@case
+\noexpand\fc@wcase
\ifcase#1 %
z\'ero%
\or un%
@@ -239,9 +254,10 @@ z\'ero%
\or neuf%
\fi
\noexpand\@nil
-}
+}%
+\global\let\@@unitstringfrench\@@unitstringfrench
\newcommand*{\@@tenstringfrench}[1]{%
-\noexpand\fc@case
+\noexpand\fc@wcase
\ifcase#1 %
\or dix%
\or vingt%
@@ -255,9 +271,10 @@ z\'ero%
\or cent%
\fi
\noexpand\@nil
-}
+}%
+\global\let\@@tenstringfrench\@@tenstringfrench
\newcommand*{\@@teenstringfrench}[1]{%
-\noexpand\fc@case
+\noexpand\fc@wcase
\ifcase#1 %
dix%
\or onze%
@@ -266,12 +283,13 @@ z\'ero%
\or quatorze%
\or quinze%
\or seize%
-\or dix\noexpand\@nil-\noexpand\fc@case sept%
-\or dix\noexpand\@nil-\noexpand\fc@case huit%
-\or dix\noexpand\@nil-\noexpand\fc@case neuf%
+\or dix\noexpand\@nil-\noexpand\fc@wcase sept%
+\or dix\noexpand\@nil-\noexpand\fc@wcase huit%
+\or dix\noexpand\@nil-\noexpand\fc@wcase neuf%
\fi
\noexpand\@nil
-}
+}%
+\global\let\@@teenstringfrench\@@teenstringfrench
\newcommand*{\@@seventiesfrench}[1]{%
\@tenstring{6}%
\ifnum#1=1 %
@@ -280,9 +298,10 @@ z\'ero%
-%
\fi
\@teenstring{#1}%
-}
+}%
+\global\let\@@seventiesfrench\@@seventiesfrench
\newcommand*\@@eightiesfrench[1]{%
-\fc@case quatre\@nil-\noexpand\fc@case vingt%
+\fc@wcase quatre\@nil-\noexpand\fc@wcase vingt%
\ifnum#1>0 %
\ifnum\fc@frenchoptions@vingt@plural=0 % vingt plural=always
s%
@@ -321,269 +340,302 @@ z\'ero%
\fi
\noexpand\@nil
\fi
-}
+}%
+\global\let\@@eightiesfrench\@@eightiesfrench
\newcommand*{\@@ninetiesfrench}[1]{%
-\fc@case quatre\@nil-\noexpand\fc@case vingt%
+\fc@wcase quatre\@nil-\noexpand\fc@wcase vingt%
\ifnum\fc@frenchoptions@vingt@plural=0 % vingt plural=always
s%
\fi
\noexpand\@nil
-\@teenstring{#1}%
-}
+}%
+\global\let\@@ninetiesfrench\@@ninetiesfrench
\newcommand*{\@@seventiesfrenchswiss}[1]{%
\@tenstring{7}%
\ifnum#1=1\ \@andname\ \fi
\ifnum#1>1-\fi
\ifnum#1>0 \@unitstring{#1}\fi
-}
+}%
+\global\let\@@seventiesfrenchswiss\@@seventiesfrenchswiss
\newcommand*{\@@eightiesfrenchswiss}[1]{%
\@tenstring{8}%
\ifnum#1=1\ \@andname\ \fi
\ifnum#1>1-\fi
\ifnum#1>0 \@unitstring{#1}\fi
-}
+}%
+\global\let\@@eightiesfrenchswiss\@@eightiesfrenchswiss
\newcommand*{\@@ninetiesfrenchswiss}[1]{%
\@tenstring{9}%
\ifnum#1=1\ \@andname\ \fi
\ifnum#1>1-\fi
\ifnum#1>0 \@unitstring{#1}\fi
-}
+}%
+\global\let\@@ninetiesfrenchswiss\@@ninetiesfrenchswiss
\newcommand*\fc@french@common{%
+ \let\fc@wcase\fc@CaseIden
\let\@unitstring=\@@unitstringfrench
\let\@teenstring=\@@teenstringfrench
\let\@tenstring=\@@tenstringfrench
\def\@hundred{cent}%
\def\@andname{et}%
-}
-\DeclareRobustCommand{\@numberstringMfrenchswiss}[2]{%
-\let\fc@case\fc@CaseIden
+}%
+\global\let\fc@french@common\fc@french@common
+\newcommand*{\@numberstringMfrenchswiss}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrenchswiss
\let\@nineties=\@@ninetiesfrenchswiss
\let\fc@nbrstr@preamble\@empty
\let\fc@nbrstr@postamble\@empty
\@@numberstringfrench{#1}{#2}}
-\DeclareRobustCommand{\@numberstringMfrenchfrance}[2]{%
-\let\fc@case\fc@CaseIden
+\global\let\@numberstringMfrenchswiss\@numberstringMfrenchswiss
+\newcommand*{\@numberstringMfrenchfrance}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\let\fc@nbrstr@preamble\@empty
\let\fc@nbrstr@postamble\@empty
\@@numberstringfrench{#1}{#2}}
-\DeclareRobustCommand{\@numberstringMfrenchbelgian}[2]{%
-\let\fc@case\fc@CaseIden
+\global\let\@numberstringMfrenchfrance\@numberstringMfrenchfrance
+\newcommand*{\@numberstringMfrenchbelgian}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\let\fc@nbrstr@preamble\@empty
\let\fc@nbrstr@postamble\@empty
\@@numberstringfrench{#1}{#2}}
+\global\let\@numberstringMfrenchbelgian\@numberstringMfrenchbelgian
\let\@numberstringMfrench=\@numberstringMfrenchfrance
-\DeclareRobustCommand{\@numberstringFfrenchswiss}[2]{%
-\let\fc@case\fc@CaseIden
+\newcommand*{\@numberstringFfrenchswiss}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrenchswiss
\let\@nineties=\@@ninetiesfrenchswiss
\let\fc@nbrstr@preamble\fc@@nbrstr@Fpreamble
\let\fc@nbrstr@postamble\@empty
\@@numberstringfrench{#1}{#2}}
-\DeclareRobustCommand{\@numberstringFfrenchfrance}[2]{%
-\let\fc@case\fc@CaseIden
+\global\let\@numberstringFfrenchswiss\@numberstringFfrenchswiss
+\newcommand*{\@numberstringFfrenchfrance}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\let\fc@nbrstr@preamble\fc@@nbrstr@Fpreamble
\let\fc@nbrstr@postamble\@empty
\@@numberstringfrench{#1}{#2}}
-\DeclareRobustCommand{\@numberstringFfrenchbelgian}[2]{%
-\let\fc@case\fc@CaseIden
+\global\let\@numberstringFfrenchfrance\@numberstringFfrenchfrance
+\newcommand*{\@numberstringFfrenchbelgian}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\let\fc@nbrstr@preamble\fc@@nbrstr@Fpreamble
\let\fc@nbrstr@postamble\@empty
\@@numberstringfrench{#1}{#2}}
-\let\@numberstringFfrench=\@numberstringFfrenchfrance
-\let\@ordinalstringNfrench\@ordinalstringMfrench
-\DeclareRobustCommand{\@NumberstringMfrenchswiss}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
+\global\let\@numberstringFfrenchbelgian\@numberstringFfrenchbelgian
+\global\let\@numberstringFfrench=\@numberstringFfrenchfrance
+\global\let\@ordinalstringNfrench\@ordinalstringMfrench
+\newcommand*{\@NumberstringMfrenchswiss}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrenchswiss
\let\@nineties=\@@ninetiesfrenchswiss
\let\fc@nbrstr@preamble\@empty
-\let\fc@nbrstr@postamble\@empty
+\let\fc@nbrstr@postamble\fc@apply@gcase
\@@numberstringfrench{#1}{#2}}
-\DeclareRobustCommand{\@NumberstringMfrenchfrance}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
+\global\let\@NumberstringMfrenchswiss\@NumberstringMfrenchswiss
+\newcommand*{\@NumberstringMfrenchfrance}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\let\fc@nbrstr@preamble\@empty
-\let\fc@nbrstr@postamble\@empty
+\let\fc@nbrstr@postamble\fc@apply@gcase
\@@numberstringfrench{#1}{#2}}
-\DeclareRobustCommand{\@NumberstringMfrenchbelgian}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
+\global\let\@NumberstringMfrenchfrance\@NumberstringMfrenchfrance
+\newcommand*{\@NumberstringMfrenchbelgian}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\let\fc@nbrstr@preamble\@empty
-\let\fc@nbrstr@postamble\@empty
+\let\fc@nbrstr@postamble\fc@apply@gcase
\@@numberstringfrench{#1}{#2}}
-\let\@NumberstringMfrench=\@NumberstringMfrenchfrance
-\DeclareRobustCommand{\@NumberstringFfrenchswiss}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
+\global\let\@NumberstringMfrenchbelgian\@NumberstringMfrenchbelgian
+\global\let\@NumberstringMfrench=\@NumberstringMfrenchfrance
+\newcommand*{\@NumberstringFfrenchswiss}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrenchswiss
\let\@nineties=\@@ninetiesfrenchswiss
\let\fc@nbrstr@preamble\fc@@nbrstr@Fpreamble
-\let\fc@nbrstr@postamble\@empty
+\let\fc@nbrstr@postamble\fc@apply@gcase
\@@numberstringfrench{#1}{#2}}
-\DeclareRobustCommand{\@NumberstringFfrenchfrance}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
+\global\let\@NumberstringFfrenchswiss\@NumberstringFfrenchswiss
+\newcommand*{\@NumberstringFfrenchfrance}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\let\fc@nbrstr@preamble\fc@@nbrstr@Fpreamble
-\let\fc@nbrstr@postamble\@empty
+\let\fc@nbrstr@postamble\fc@apply@gcase
\@@numberstringfrench{#1}{#2}}
-\DeclareRobustCommand{\@NumberstringFfrenchbelgian}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
+\global\let\@NumberstringFfrenchfrance\@NumberstringFfrenchfrance
+\newcommand*{\@NumberstringFfrenchbelgian}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\let\fc@nbrstr@preamble\fc@@nbrstr@Fpreamble
-\let\fc@nbrstr@postamble\@empty
+\let\fc@nbrstr@postamble\fc@apply@gcase
\@@numberstringfrench{#1}{#2}}
-\let\@NumberstringFfrench=\@NumberstringFfrenchfrance
-\let\@NumberstringNfrench\@NumberstringMfrench
-\DeclareRobustCommand{\@ordinalstringMfrenchswiss}[2]{%
-\let\fc@case\fc@CaseIden
-\let\fc@first=\fc@@firstfrench
+\global\let\@NumberstringFfrenchbelgian\@NumberstringFfrenchbelgian
+\global\let\@NumberstringFfrench=\@NumberstringFfrenchfrance
+\global\let\@NumberstringNfrench\@NumberstringMfrench
+\newcommand*{\@ordinalstringMfrenchswiss}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
+\let\fc@first\fc@@firstfrench
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrenchswiss
\let\@nineties=\@@ninetiesfrenchswiss
\@@ordinalstringfrench{#1}{#2}%
-}
+}%
+\global\let\@ordinalstringMfrenchswiss\@ordinalstringMfrenchswiss
\newcommand*\fc@@firstfrench{premier}
+\global\let\fc@@firstfrench\fc@@firstfrench
\newcommand*\fc@@firstFfrench{premi\protect\`ere}
-\DeclareRobustCommand{\@ordinalstringMfrenchfrance}[2]{%
-\let\fc@case\fc@CaseIden
-\let\fc@first=\fc@@firstfrench
+\global\let\fc@@firstFfrench\fc@@firstFfrench
+\newcommand*{\@ordinalstringMfrenchfrance}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
+\let\fc@first=\fc@@firstfrench
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\@@ordinalstringfrench{#1}{#2}}
-\DeclareRobustCommand{\@ordinalstringMfrenchbelgian}[2]{%
-\let\fc@case\fc@CaseIden
-\let\fc@first=\fc@@firstfrench
+\global\let\@ordinalstringMfrenchfrance\@ordinalstringMfrenchfrance
+\newcommand*{\@ordinalstringMfrenchbelgian}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
+\let\fc@first=\fc@@firstfrench
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\@@ordinalstringfrench{#1}{#2}%
-}
-\let\@ordinalstringMfrench=\@ordinalstringMfrenchfrance
-\DeclareRobustCommand{\@ordinalstringFfrenchswiss}[2]{%
-\let\fc@case\fc@CaseIden
-\let\fc@first=\fc@@firstFfrench
+}%
+\global\let\@ordinalstringMfrenchbelgian\@ordinalstringMfrenchbelgian
+\global\let\@ordinalstringMfrench=\@ordinalstringMfrenchfrance
+\newcommand*{\@ordinalstringFfrenchswiss}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
+\let\fc@first\fc@@firstFfrench
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrenchswiss
\let\@nineties=\@@ninetiesfrenchswiss
\@@ordinalstringfrench{#1}{#2}%
-}
-\DeclareRobustCommand{\@ordinalstringFfrenchfrance}[2]{%
-\let\fc@case\fc@CaseIden
-\let\fc@first=\fc@@firstFfrench
+}%
+\global\let\@ordinalstringFfrenchswiss\@ordinalstringFfrenchswiss
+\newcommand*{\@ordinalstringFfrenchfrance}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
+\let\fc@first=\fc@@firstFfrench
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\@@ordinalstringfrench{#1}{#2}%
-}
-\DeclareRobustCommand{\@ordinalstringFfrenchbelgian}[2]{%
-\let\fc@case\fc@CaseIden
-\let\fc@first=\fc@@firstFfrench
+}%
+\global\let\@ordinalstringFfrenchfrance\@ordinalstringFfrenchfrance
+\newcommand*{\@ordinalstringFfrenchbelgian}[2]{%
\fc@french@common
+\let\fc@gcase\fc@CaseIden
+\let\fc@first=\fc@@firstFfrench
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\@@ordinalstringfrench{#1}{#2}%
-}
-\let\@ordinalstringFfrench=\@ordinalstringFfrenchfrance
-\let\@ordinalstringNfrench\@ordinalstringMfrench
-\DeclareRobustCommand{\@OrdinalstringMfrenchswiss}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
-\let\fc@first=\fc@@firstfrench
+}%
+\global\let\@ordinalstringFfrenchbelgian\@ordinalstringFfrenchbelgian
+\global\let\@ordinalstringFfrench=\@ordinalstringFfrenchfrance
+\global\let\@ordinalstringNfrench\@ordinalstringMfrench
+\newcommand*{\@OrdinalstringMfrenchswiss}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
+\let\fc@first=\fc@@firstfrench
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrenchswiss
\let\@nineties=\@@ninetiesfrenchswiss
\@@ordinalstringfrench{#1}{#2}%
-}
-\DeclareRobustCommand{\@OrdinalstringMfrenchfrance}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
-\let\fc@first=\fc@@firstfrench
+}%
+\global\let\@OrdinalstringMfrenchswiss\@OrdinalstringMfrenchswiss
+\newcommand*{\@OrdinalstringMfrenchfrance}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
+\let\fc@first\fc@@firstfrench
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\@@ordinalstringfrench{#1}{#2}%
-}
-\DeclareRobustCommand{\@OrdinalstringMfrenchbelgian}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
-\let\fc@first=\fc@@firstfrench
+}%
+\global\let\@OrdinalstringMfrenchfrance\@OrdinalstringMfrenchfrance
+\newcommand*{\@OrdinalstringMfrenchbelgian}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
+\let\fc@first\fc@@firstfrench
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\@@ordinalstringfrench{#1}{#2}%
-}
-\let\@OrdinalstringMfrench=\@OrdinalstringMfrenchfrance
-\DeclareRobustCommand{\@OrdinalstringFfrenchswiss}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
-\let\fc@first=\fc@@firstfrench
+}%
+\global\let\@OrdinalstringMfrenchbelgian\@OrdinalstringMfrenchbelgian
+\global\let\@OrdinalstringMfrench=\@OrdinalstringMfrenchfrance
+\newcommand*{\@OrdinalstringFfrenchswiss}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
+\let\fc@first\fc@@firstfrench
\let\@seventies=\@@seventiesfrenchswiss
\let\@eighties=\@@eightiesfrenchswiss
\let\@nineties=\@@ninetiesfrenchswiss
\@@ordinalstringfrench{#1}{#2}%
-}
-\DeclareRobustCommand{\@OrdinalstringFfrenchfrance}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
-\let\fc@first=\fc@@firstFfrench
+}%
+\global\let\@OrdinalstringFfrenchswiss\@OrdinalstringFfrenchswiss
+\newcommand*{\@OrdinalstringFfrenchfrance}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
+\let\fc@first\fc@@firstFfrench
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\@@ordinalstringfrench{#1}{#2}%
-}
-\DeclareRobustCommand{\@OrdinalstringFfrenchbelgian}[2]{%
-\let\fc@case\fc@UpperCaseFirstLetter
-\let\fc@first=\fc@@firstFfrench
+}%
+\global\let\@OrdinalstringFfrenchfrance\@OrdinalstringFfrenchfrance
+\newcommand*{\@OrdinalstringFfrenchbelgian}[2]{%
\fc@french@common
+\let\fc@gcase\fc@UpperCaseFirstLetter
+\let\fc@first\fc@@firstFfrench
\let\@seventies=\@@seventiesfrench
\let\@eighties=\@@eightiesfrench
\let\@nineties=\@@ninetiesfrench
\@@ordinalstringfrench{#1}{#2}%
-}
-\let\@OrdinalstringFfrench=\@OrdinalstringFfrenchfrance
-\let\@OrdinalstringNfrench\@OrdinalstringMfrench
+}%
+\global\let\@OrdinalstringFfrenchbelgian\@OrdinalstringFfrenchbelgian
+\global\let\@OrdinalstringFfrench=\@OrdinalstringFfrenchfrance
+\global\let\@OrdinalstringNfrench\@OrdinalstringMfrench
\ifcsundef{fc@@do@plural@mark}{}%
{\PackageError{fmtcount}{Duplicate definition}{Redefinition of macro
`fc@@do@plural@mark'}}
@@ -624,28 +676,31 @@ z\'ero%
\fi
\fi
\fi
-}
+}%
+\global\let\fc@@do@plural@mark\fc@@do@plural@mark
\ifcsundef{fc@@nbrstr@Fpreamble}{}{%
\PackageError{fmtcount}{Duplicate definition}{Redefinition of macro
`fc@@nbrstr@Fpreamble'}}
\def\fc@@nbrstr@Fpreamble{%
\fc@read@unit{\count1}{0}%
\ifnum\count1=1 %
- \let\fc@case@save\fc@case
- \def\fc@case{\noexpand\fc@case}%
+ \let\fc@wcase@save\fc@wcase
+ \def\fc@wcase{\noexpand\fc@wcase}%
\def\@nil{\noexpand\@nil}%
\let\fc@nbrstr@postamble\fc@@nbrstr@Fpostamble
\fi
-}
+}%
+\global\let\fc@@nbrstr@Fpreamble\fc@@nbrstr@Fpreamble
\def\fc@@nbrstr@Fpostamble{%
- \let\fc@case\fc@case@save
+ \let\fc@wcase\fc@wcase@save
\expandafter\fc@get@last@word\expandafter{\@tempa}\@tempb\@tempc
\def\@tempd{un}%
\ifx\@tempc\@tempd
\let\@tempc\@tempa
- \edef\@tempa{\@tempb\fc@case une\@nil}%
+ \edef\@tempa{\@tempb\fc@wcase une\@nil}%
\fi
-}
+}%
+\global\let\fc@@nbrstr@Fpostamble\fc@@nbrstr@Fpostamble
\ifcsundef{fc@@pot@longscalefrench}{}{%
\PackageError{fmtcount}{Duplicate definition}{Redefinition of macro
`fc@@pot@longscalefrench'}}
@@ -683,7 +738,7 @@ z\'ero%
\ifnum\@temph=1 %
\count10=\fc@frenchoptions@mil@plural\space
\edef\@tempe{%
- \noexpand\fc@case
+ \noexpand\fc@wcase
mil%
\fc@@do@plural@mark\fc@frenchoptions@mil@plural@mark
\noexpand\@nil
@@ -700,7 +755,7 @@ z\'ero%
\count10=\csname fc@frenchoptions@n-illion@plural\endcsname\space
\fi
\edef\@tempe{%
- \noexpand\fc@case
+ \noexpand\fc@wcase
\@tempg
\the\toks10 %
\fc@@do@plural@mark s%
@@ -720,7 +775,8 @@ z\'ero%
\edef\@tempa{\the\toks0 \@temph \def\noexpand#3{\the\toks1}}%
\expandafter
}\@tempa
-}
+}%
+\global\let\fc@@pot@longscalefrench\fc@@pot@longscalefrench
\ifcsundef{fc@@pot@shortscalefrench}{}{%
\PackageError{fmtcount}{Duplicate definition}{Redefinition of macro
`fc@@pot@shortscalefrench'}}
@@ -746,7 +802,7 @@ z\'ero%
\expandafter\fc@@latin@cardinal@pefix\expandafter{\the\count2}\@tempg
\count10=\csname fc@frenchoptions@n-illion@plural\endcsname\space
\edef\@tempe{%
- \noexpand\fc@case
+ \noexpand\fc@wcase
\@tempg
illion%
\fc@@do@plural@mark s%
@@ -766,7 +822,8 @@ z\'ero%
\edef\@tempa{\the\toks0 \@temph \def\noexpand#3{\the\toks1}}%
\expandafter
}\@tempa
-}
+}%
+\global\let\fc@@pot@shortscalefrench\fc@@pot@shortscalefrench
\ifcsundef{fc@@pot@recursivefrench}{}{%
\PackageError{fmtcount}{Duplicate definition}{Redefinition of macro
`fc@@pot@recursivefrench'}}
@@ -781,7 +838,7 @@ z\'ero%
\advance\count2 by -1 %
\let\@tempe\@empty
\edef\@tempf{\fc@frenchoptions@supermillion@dos
- de\fc@frenchoptions@supermillion@dos\fc@case milliards\@nil}%
+ de\fc@frenchoptions@supermillion@dos\fc@wcase milliards\@nil}%
\count11\count0 %
\ifnum\count2>0 %
\count3\count2 %
@@ -838,16 +895,16 @@ z\'ero%
\or
mil\fc@@do@plural@mark\fc@frenchoptions@mil@plural@mark
\noexpand\@nil\fc@frenchoptions@supermillion@dos
- \noexpand\fc@case milliards% 4
+ \noexpand\fc@wcase milliards% 4
\or
million\fc@@do@plural@mark s%
\noexpand\@nil\fc@frenchoptions@supermillion@dos
- de\fc@frenchoptions@supermillion@dos\noexpand\fc@case milliards% 5
+ de\fc@frenchoptions@supermillion@dos\noexpand\fc@wcase milliards% 5
\fi
}%
\edef\@tempe{%
\ifx\@tempf\@empty\else
- \expandafter\fc@case\@tempf\@nil
+ \expandafter\fc@wcase\@tempf\@nil
\fi
\@tempg
}%
@@ -860,7 +917,8 @@ z\'ero%
\edef\@tempa{\the\toks0 \@temph \def\noexpand#3{\the\toks1}}%
\expandafter
}\@tempa
-}
+}%
+\global\let\fc@@pot@recursivefrench\fc@@pot@recursivefrench
\ifcsundef{fc@muladdfrench}{}{%
\PackageError{fmtcount}{Duplicate definition}{Redefinition of macro
`fc@muladdfrench'}}
@@ -909,6 +967,7 @@ z\'ero%
\expandafter
}\@tempa
}%
+\global\let\fc@muladdfrench\fc@muladdfrench
\ifcsundef{fc@lthundredstringfrench}{}{%
\PackageError{fmtcount}{Duplicate definition}{Redefinition of macro
`fc@lthundredstringfrench'}}
@@ -978,7 +1037,8 @@ z\'ero%
\expandafter\@tempb\expandafter{\@tempa}%
\expandafter
}\@tempa
-}
+}%
+\global\let\fc@lthundredstringfrench\fc@lthundredstringfrench
\ifcsundef{fc@ltthousandstringfrench}{}{%
\PackageError{fmtcount}{Duplicate definition}{Redefinition of macro
`fc@ltthousandstringfrench'}}
@@ -1016,10 +1076,10 @@ z\'ero%
\ifnum\count2=0 %
\else
\ifnum\count2=1 %
- \expandafter\fc@case\@hundred\@nil
+ \expandafter\fc@wcase\@hundred\@nil
\else
\@unitstring{\count2}\fc@frenchoptions@submillion@dos
- \noexpand\fc@case\@hundred\@temps\noexpand\@nil
+ \noexpand\fc@wcase\@hundred\@temps\noexpand\@nil
\fi
\@tempb
\fi
@@ -1030,7 +1090,8 @@ z\'ero%
\expandafter\@tempb\expandafter{\@tempa}%
\expandafter
}\@tempa
-}
+}%
+\global\let\fc@ltthousandstringfrench\fc@ltthousandstringfrench
\ifcsundef{@@numberstringfrench}{}{%
\PackageError{fmtcount}{Duplicate definition}{Redefinition of macro `@@numberstringfrench'}}
\def\@@numberstringfrench#1#2{%
@@ -1041,7 +1102,7 @@ z\'ero%
\PackageError{fmtcount}{Out of range}%
{This macro does not work with fractional numbers}%
\fi
- \edef\@tempa{\ifcase\fc@sign@case\space\or\fc@case plus\@nil\or\fc@case moins\@nil\fi}%
+ \edef\@tempa{\ifcase\fc@sign@case\space\or\fc@wcase plus\@nil\or\fc@wcase moins\@nil\fi}%
\fc@nbrstr@preamble
\fc@@nbrstrfrench@inner
\fc@nbrstr@postamble
@@ -1049,7 +1110,8 @@ z\'ero%
\expandafter\@tempb\expandafter{\@tempa}%
\expandafter
}\@tempa
-}
+}%
+\global\let\@@numberstringfrench\@@numberstringfrench
\def\fc@@nbrstrfrench@inner{%
\count0=\fc@max@weight
\divide\count0 by 3 %
@@ -1070,7 +1132,8 @@ z\'ero%
\advance\count0 by -3 %
\ifnum\count6>\count0 \else
\repeat
-}
+}%
+\global\let\fc@@nbrstrfrench@inner\fc@@nbrstrfrench@inner
\ifcsundef{@@ordinalstringfrench}{}{%
\PackageError{fmtcount}{Duplicate definition}{Redefinition of macro
`@@ordinalstringfrench'}}
@@ -1096,7 +1159,7 @@ z\'ero%
\count0=0 %
\fi
\ifnum\count0=1 %
- \protected@edef\@tempa{\expandafter\fc@case\fc@first\@nil}%
+ \protected@edef\@tempa{\expandafter\fc@wcase\fc@first\@nil}%
\else
\def\@tempa##1{%
\expandafter\edef\csname fc@frenchoptions@##1@plural\endcsname{%
@@ -1122,55 +1185,62 @@ z\'ero%
\@tempa{mil}%
\@tempa{n-illion}%
\@tempa{n-illiard}%
- \let\fc@case@save\fc@case
- \def\fc@case{\noexpand\fc@case}%
+ \let\fc@wcase@save\fc@wcase
+ \def\fc@wcase{\noexpand\fc@wcase}%
\def\@nil{\noexpand\@nil}%
\let\@tempa\@empty
\fc@@nbrstrfrench@inner
- \let\fc@case\fc@case@save
+ \let\fc@wcase\fc@wcase@save
\expandafter\fc@get@last@word\expandafter{\@tempa}\@tempb\@tempc
\expandafter\fc@get@last@letter\expandafter{\@tempc}\@tempd\@tempe
\def\@tempf{e}%
\ifx\@tempe\@tempf
- \protected@edef\@tempa{\@tempb\expandafter\fc@case\@tempd i\protect\`eme\@nil}%
+ \protected@edef\@tempa{\@tempb\expandafter\fc@wcase\@tempd i\protect\`eme\@nil}%
\else
\def\@tempf{q}%
\ifx\@tempe\@tempf
- \protected@edef\@tempa{\@tempb\expandafter\fc@case\@tempd qui\protect\`eme\@nil}%
+ \protected@edef\@tempa{\@tempb\expandafter\fc@wcase\@tempd qui\protect\`eme\@nil}%
\else
\def\@tempf{f}%
\ifx\@tempe\@tempf
- \protected@edef\@tempa{\@tempb\expandafter\fc@case\@tempd vi\protect\`eme\@nil}%
+ \protected@edef\@tempa{\@tempb\expandafter\fc@wcase\@tempd vi\protect\`eme\@nil}%
\else
- \protected@edef\@tempa{\@tempb\expandafter\fc@case\@tempc i\protect\`eme\@nil}%
+ \protected@edef\@tempa{\@tempb\expandafter\fc@wcase\@tempc i\protect\`eme\@nil}%
\fi
\fi
\fi
\fi
+ \fc@apply@gcase
\def\@tempb##1{\def\@tempa{\def#2{##1}}}%
\expandafter\@tempb\expandafter{\@tempa}%
\expandafter
}\@tempa
-}
+}%
+\global\let\@@ordinalstringfrench\@@ordinalstringfrench
\newcommand*\fc@frenchoptions@setdefaults{%
\csname KV@fcfrench@all plural\endcsname{reformed}%
- \def\fc@frenchoptions@submillion@dos{-}%
- \let\fc@frenchoptions@supermillion@dos\space
- \let\fc@u@in@duo\@empty% Could be `u'
- % \let\fc@poweroften\fc@@pot@longscalefrench
- \let\fc@poweroften\fc@@pot@recursivefrench
- \def\fc@longscale@nilliard@upto{0}% infinity
- \def\fc@frenchoptions@mil@plural@mark{le}%
-}
-\fc@frenchoptions@setdefaults
-\def\@ordinalstringMfrench{\csuse{@ordinalstringMfrench\fmtcount@french}}%
-\def\@ordinalstringFfrench{\csuse{@ordinalstringFfrench\fmtcount@french}}%
-\def\@OrdinalstringMfrench{\csuse{@OrdinalstringMfrench\fmtcount@french}}%
-\def\@OrdinalstringFfrench{\csuse{@OrdinalstringFfrench\fmtcount@french}}%
-\def\@numberstringMfrench{\csuse{@numberstringMfrench\fmtcount@french}}%
-\def\@numberstringFfrench{\csuse{@numberstringFfrench\fmtcount@french}}%
-\def\@NumberstringMfrench{\csuse{@NumberstringMfrench\fmtcount@french}}%
-\def\@NumberstringFfrench{\csuse{@NumberstringFfrench\fmtcount@french}}%
+ \fc@gl@def\fc@frenchoptions@submillion@dos{-}%
+ \fc@gl@let\fc@frenchoptions@supermillion@dos\space
+ \fc@gl@let\fc@u@in@duo\@empty% Could be `u'
+ % \fc@gl@let\fc@poweroften\fc@@pot@longscalefrench
+ \fc@gl@let\fc@poweroften\fc@@pot@recursivefrench
+ \fc@gl@def\fc@longscale@nilliard@upto{0}% infinity
+ \fc@gl@def\fc@frenchoptions@mil@plural@mark{le}%
+}%
+\global\let\fc@frenchoptions@setdefaults\fc@frenchoptions@setdefaults
+{%
+ \let\fc@gl@def\gdef
+ \def\fc@gl@let{\global\let}%
+ \fc@frenchoptions@setdefaults
+}%
+\gdef\@ordinalstringMfrench{\csuse{@ordinalstringMfrench\fmtcount@french}}%
+\gdef\@ordinalstringFfrench{\csuse{@ordinalstringFfrench\fmtcount@french}}%
+\gdef\@OrdinalstringMfrench{\csuse{@OrdinalstringMfrench\fmtcount@french}}%
+\gdef\@OrdinalstringFfrench{\csuse{@OrdinalstringFfrench\fmtcount@french}}%
+\gdef\@numberstringMfrench{\csuse{@numberstringMfrench\fmtcount@french}}%
+\gdef\@numberstringFfrench{\csuse{@numberstringFfrench\fmtcount@french}}%
+\gdef\@NumberstringMfrench{\csuse{@NumberstringMfrench\fmtcount@french}}%
+\gdef\@NumberstringFfrench{\csuse{@NumberstringFfrench\fmtcount@french}}%
\iffalse Local variables: \fi
\iffalse mode: docTeX \fi
\iffalse End: \fi