diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/fmtcount/fc-french.def')
-rw-r--r-- | Master/texmf-dist/tex/latex/fmtcount/fc-french.def | 448 |
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 |