diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/babel/frenchb.ldf')
-rw-r--r-- | Master/texmf-dist/tex/generic/babel/frenchb.ldf | 1288 |
1 files changed, 700 insertions, 588 deletions
diff --git a/Master/texmf-dist/tex/generic/babel/frenchb.ldf b/Master/texmf-dist/tex/generic/babel/frenchb.ldf index 73334212a7a..e545dbe7f6e 100644 --- a/Master/texmf-dist/tex/generic/babel/frenchb.ldf +++ b/Master/texmf-dist/tex/generic/babel/frenchb.ldf @@ -7,7 +7,7 @@ %% frenchb.dtx (with options: `code') %% This is a generated file. %% -%% Copyright 1989-2005 Johannes L. Braams and any individual authors +%% Copyright 1989-2008 Johannes L. Braams and any individual authors %% listed elsewhere in this file. All rights reserved. %% %% This file was generated from file(s) of the Babel system. @@ -37,30 +37,29 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension .ins) which are part of the distribution. \ProvidesLanguage{french} - [2005/02/06 v1.6g French support from the babel system] + [2007/10/05 v2.0e French support from the babel system] %% File `frenchb.dtx' %% Babel package for LaTeX version 2e -%% Copyright (C) 1989 - 2005 +%% Copyright (C) 1989 - 2007 %% by Johannes Braams, TeXniek %% Frenchb language Definition File -%% Copyright (C) 1989 - 2005 +%% Copyright (C) 1989 - 2007 %% by Johannes Braams, TeXniek %% Daniel Flipo, GUTenberg %% Please report errors to: Daniel Flipo, GUTenberg %% Daniel.Flipo at univ-lille1.fr -%% \LdfInit\CurrentOption\datefrench -\newif\ifLaTeX -\ifx\magnification\@undefined\LaTeXtrue\fi \newif\ifLaTeXe -\ifx\@compatibilitytrue\@undefined\else\LaTeXetrue\fi -\newif\if@Two@E \@Two@Etrue -\def\@FI@{\fi} -\ifx\@compatibilitytrue\@undefined - \@Two@Efalse \def\@FI@{\relax} -\else - \if@compatibility \@Two@Efalse \fi -\@FI@ +\ifx\magnification\@undefined + \ifx\@compatibilitytrue\@undefined + \PackageError{frenchb.ldf}% + {LaTeX-2.09 format is no longer supported.\MessageBreak + Aborting here.}% + \endinput + \else + \LaTeXetrue + \fi +\fi \ifx\l@french\@undefined \ifx\l@francais\@undefined \ifx\l@canadien\@undefined @@ -91,239 +90,119 @@ \let\l@acadian\l@french \fi \def\datefrancais{\datefrench} -\def\extrasfrancais{\extrasfrench} -\def\noextrasfrancais{\noextrasfrench} \def\datefrenchb{\datefrench} +\def\extrasfrancais{\extrasfrench} \def\extrasfrenchb{\extrasfrench} +\def\noextrasfrancais{\noextrasfrench} \def\noextrasfrenchb{\noextrasfrench} -\ifLaTeXe - \AtBeginDocument{\let\captions@French\captionsfrench - \ifx\captionsfrenchb\@undefined - \let\captions@Frenchb\relax - \else - \let\captions@Frenchb\captionsfrenchb - \fi - \ifx\captionsfrancais\@undefined - \let\captions@Francais\relax - \else - \let\captions@Francais\captionsfrancais - \fi - \def\captionsfrench{\captions@French - \captions@Francais\captions@Frenchb}% - \def\captionsfrancais{\captionsfrench}% - \def\captionsfrenchb{\captionsfrench}% - \iflanguage{french}{\captionsfrench}{}% - } -\else - \def\captionsfrancais{\captionsfrench} - \def\captionsfrenchb{\captionsfrench} -\fi -\@ifpackagewith{babel}{canadien}{% - \def\captionscanadien{\captionsfrench}% - \def\datecanadien{\datefrench}% - \def\extrascanadien{\extrasfrench}% - \def\noextrascanadien{\noextrasfrench}% - }{} -\@ifpackagewith{babel}{acadian}{% - \def\captionsacadian{\captionsfrench}% - \def\dateacadian{\datefrench}% - \def\extrasacadian{\extrasfrench}% - \def\noextrasacadian{\noextrasfrench}% - }{} \@namedef{extras\CurrentOption}{\lccode`\'=`\'} \@namedef{noextras\CurrentOption}{\lccode`\'=0} -\ifx\scshape\@undefined - \ifx\sc\@undefined - \let\scshape\relax - \else - \let\scshape\sc - \fi -\fi -\ifx\emph\@undefined - \ifx\em\@undefined - \let\emph\relax - \else - \def\emph#1{\em #1} - \fi -\fi -\ifLaTeXe - \long\def\STD@makecaption#1#2{% - \vskip\abovecaptionskip - \sbox\@tempboxa{#1: #2}% - \ifdim \wd\@tempboxa >\hsize - #1: #2\par - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \vskip\belowcaptionskip} - \def\CaptionSeparator{\string:\space} - \long\def\FB@makecaption#1#2{% - \vskip\abovecaptionskip - \sbox\@tempboxa{#1\CaptionSeparator #2}% - \ifdim \wd\@tempboxa >\hsize - #1\CaptionSeparator #2\par - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \vskip\belowcaptionskip} - \AtBeginDocument{% - \ifx\@makecaption\STD@makecaption - \let\@makecaption\FB@makecaption + \expandafter\addto\csname extras\CurrentOption\endcsname{% + \bbl@frenchspacing} + \expandafter\addto\csname noextras\CurrentOption\endcsname{% + \bbl@nonfrenchspacing} +\long\def\STD@makecaption#1#2{% + \vskip\abovecaptionskip + \sbox\@tempboxa{#1: #2}% + \ifdim \wd\@tempboxa >\hsize + #1: #2\par \else - \ifx\@makecaption\@undefined\else - \PackageWarning{frenchb.ldf}% - {The definition of \protect\@makecaption\space - has been changed,\MessageBreak - frenchb will NOT customize it;\MessageBreak reported}% - \fi + \global \@minipagefalse + \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% \fi - \let\FB@makecaption\relax - \let\STD@makecaption\relax} - \expandafter\addto\csname noextras\CurrentOption\endcsname{% - \def\CaptionSeparator{\string:\space}} -\fi -\ifLaTeX -\@namedef{captions\CurrentOption}{% - \def\refname{R\'ef\'erences}% - \def\abstractname{R\'esum\'e}% - \def\bibname{Bibliographie}% - \def\prefacename{Pr\'eface}% - \def\chaptername{Chapitre}% - \def\appendixname{Annexe}% - \def\contentsname{Table des mati\`eres}% - \def\listfigurename{Table des figures}% - \def\listtablename{Liste des tableaux}% - \def\indexname{Index}% - \def\figurename{{\scshape Fig.}}% - \def\tablename{{\scshape Tab.}}% - \def\CaptionSeparator{\space\textendash\space}% - \def\partname{\protect\@Fpt partie}% - \def\@Fpt{{\ifcase\value{part}\or Premi\`ere\or Deuxi\`eme\or - Troisi\`eme\or Quatri\`eme\or Cinqui\`eme\or Sixi\`eme\or - Septi\`eme\or Huiti\`eme\or Neuvi\`eme\or Dixi\`eme\or Onzi\`eme\or - Douzi\`eme\or Treizi\`eme\or Quatorzi\`eme\or Quinzi\`eme\or - Seizi\`eme\or Dix-septi\`eme\or Dix-huiti\`eme\or Dix-neuvi\`eme\or - Vingti\`eme\fi}\space\def\thepart{}}% - \def\pagename{page}% - \def\seename{{\emph{voir}}}% - \def\alsoname{{\emph{voir aussi}}}% - \def\enclname{P.~J. }% - \def\ccname{Copie \`a }% - \def\headtoname{}% - \def\proofname{D\'emonstration}% for AMS-\LaTeX - \def\glossaryname{Glossaire}% - } -\fi -\initiate@active@char{:} -\initiate@active@char{;} -\initiate@active@char{!} -\initiate@active@char{?} -\expandafter\addto\csname extras\CurrentOption\endcsname{% - \languageshorthands{french}} -\expandafter\addto\csname extras\CurrentOption\endcsname{% - \bbl@activate{:}\bbl@activate{;}% - \bbl@activate{!}\bbl@activate{?}} -\expandafter\addto\csname noextras\CurrentOption\endcsname{% - \bbl@deactivate{:}\bbl@deactivate{;}% - \bbl@deactivate{!}\bbl@deactivate{?}} -\expandafter\addto\csname extras\CurrentOption\endcsname{% - \bbl@frenchspacing} -\expandafter\addto\csname noextras\CurrentOption\endcsname{% - \bbl@nonfrenchspacing} -\declare@shorthand{french}{;}{% - \ifhmode + \vskip\belowcaptionskip}% +\newif\ifFBpunct@active \FBpunct@activetrue +\ifFBpunct@active + \initiate@active@char{:} + \initiate@active@char{;} + \initiate@active@char{!} + \initiate@active@char{?} + \declare@shorthand{french}{;}{% + \ifhmode \ifdim\lastskip>\z@ - \unskip\penalty\@M\thinspace - \else - \FDP@thinspace + \unskip\penalty\@M\thinspace + \else + \FDP@thinspace + \fi \fi - \fi - \string;} -\declare@shorthand{french}{!}{% - \ifhmode - \ifdim\lastskip>\z@ - \unskip\penalty\@M\thinspace - \else - \FDP@thinspace + \string;} + \declare@shorthand{french}{!}{% + \ifhmode + \ifdim\lastskip>\z@ + \unskip\penalty\@M\thinspace + \else + \FDP@thinspace + \fi \fi - \fi - \string!} -\declare@shorthand{french}{?}{% - \ifhmode - \ifdim\lastskip>\z@ - \unskip\penalty\@M\thinspace - \else - \FDP@thinspace + \string!} + \declare@shorthand{french}{?}{% + \ifhmode + \ifdim\lastskip>\z@ + \unskip\penalty\@M\thinspace + \else + \FDP@thinspace + \fi \fi - \fi - \string?} -\declare@shorthand{french}{:}{% - \ifhmode - \ifdim\lastskip>\z@ - \unskip\penalty\@M\Fcolonspace - \else - \FDP@colonspace + \string?} + \newcommand*{\Fcolonspace}{\space} + \declare@shorthand{french}{:}{% + \ifhmode + \ifdim\lastskip>\z@ + \unskip\penalty\@M\Fcolonspace + \else + \FDP@colonspace + \fi \fi - \fi - \string:} -\newcommand{\Fcolonspace}{\space} -\def\AutoSpaceBeforeFDP{% - \def\FDP@thinspace{\penalty\@M\thinspace}% - \def\FDP@colonspace{\penalty\@M\Fcolonspace}} -\def\NoAutoSpaceBeforeFDP{\let\FDP@thinspace\@empty - \let\FDP@colonspace\@empty} -\AutoSpaceBeforeFDP -\declare@shorthand{system}{:}{\string:} -\declare@shorthand{system}{!}{\string!} -\declare@shorthand{system}{?}{\string?} -\declare@shorthand{system}{;}{\string;} -\newcommand{\og}{\@empty} -\newcommand{\fg}{\@empty} + \string:} + \def\AutoSpaceBeforeFDP{% + \def\FDP@thinspace{\penalty\@M\thinspace}% + \def\FDP@colonspace{\penalty\@M\Fcolonspace}} + \def\NoAutoSpaceBeforeFDP{\let\FDP@thinspace\@empty + \let\FDP@colonspace\@empty} + \AutoSpaceBeforeFDP + \declare@shorthand{system}{:}{\string:} + \declare@shorthand{system}{!}{\string!} + \declare@shorthand{system}{?}{\string?} + \declare@shorthand{system}{;}{\string;} + \addto\extrasfrench{% + \languageshorthands{french}% + \bbl@activate{:}\bbl@activate{;}% + \bbl@activate{!}\bbl@activate{?}% + } + \addto\noextrasfrench{% + \bbl@deactivate{:}\bbl@deactivate{;}% + \bbl@deactivate{!}\bbl@deactivate{?}} +\fi +\newcommand*{\og}{\@empty} +\newcommand*{\fg}{\@empty} +\ifLaTeXe +\else + \ifx\guillemotleft\@undefined + \def\guillemotleft{\leavevmode\raise0.25ex + \hbox{$\scriptscriptstyle\ll$}} + \fi + \ifx\guillemotright\@undefined + \def\guillemotright{\raise0.25ex + \hbox{$\scriptscriptstyle\gg$}} + \fi + \let\xspace\relax +\fi +\newcommand*{\FBguill@spacing}{\penalty\@M\hskip.8\fontdimen2\font + plus.3\fontdimen3\font + minus.8\fontdimen4\font} +\DeclareRobustCommand*{\FB@og}{\leavevmode + \guillemotleft\FBguill@spacing} +\DeclareRobustCommand*{\FB@fg}{\ifdim\lastskip>\z@\unskip\fi + \FBguill@spacing\guillemotright\xspace} \ifLaTeXe - \def\FrenchGuillemetsFrom#1#2#3#4{% - \DeclareFontEncoding{#1}{}{}% - \DeclareFontSubstitution{#1}{#2}{m}{n}% - \DeclareTextCommand{\guillemotleft}{OT1}{% - {\fontencoding{#1}\fontfamily{#2}\selectfont\char#3}}% - \DeclareTextCommand{\guillemotright}{OT1}{% - {\fontencoding{#1}\fontfamily{#2}\selectfont\char#4}}} - \def\CyrillicGuillemets{\FrenchGuillemetsFrom{OT2}{wncyr}{60}{62}} - \def\PolishGuillemets{\FrenchGuillemetsFrom{T1}{lmr}{19}{20}} - \def\LasyGuillemets{% - \DeclareTextCommand{\guillemotleft}{OT1}{\hbox{% - \fontencoding{U}\fontfamily{lasy}\selectfont(\kern-0.20em(}}% - \DeclareTextCommand{\guillemotright}{OT1}{\hbox{% - \fontencoding{U}\fontfamily{lasy}\selectfont)\kern-0.20em)}}} - \IfFileExists{t1lmr.fd}{\PolishGuillemets}{\LasyGuillemets} - \DeclareTextSymbolDefault{\guillemotleft}{OT1} - \DeclareTextSymbolDefault{\guillemotright}{OT1} - \def\guill@spacing{\penalty\@M\hskip.8\fontdimen2\font - plus.3\fontdimen3\font - minus.8\fontdimen4\font} - \DeclareRobustCommand*{\begin@guill}{\leavevmode - \guillemotleft\penalty\@M\guill@spacing} - \DeclareRobustCommand*{\end@guill}{\ifdim\lastskip>\z@\unskip\fi - \penalty\@M\guill@spacing\guillemotright\xspace} - \AtBeginDocument{\ifx\xspace\@undefined\let\xspace\relax\fi} - \def\bbl@frenchguillemets{\renewcommand{\og}{\begin@guill}% - \renewcommand{\fg}{\end@guill}} - \def\bbl@nonfrenchguillemets{\renewcommand{\og}{``}% - \renewcommand{\fg}{\ifdim\lastskip>\z@\unskip\fi ''}} + \def\bbl@frenchguillemets{\renewcommand*{\og}{\FB@og}% + \renewcommand*{\fg}{\FB@fg}} + \def\bbl@nonfrenchguillemets{\renewcommand*{\og}{\textquotedblleft}% + \renewcommand*{\fg}{\ifdim\lastskip>\z@\unskip\fi + \textquotedblright}} \else - \def\begin@guill{\leavevmode\raise0.25ex - \hbox{$\scriptscriptstyle\ll$}% - \penalty\@M\hskip.8\fontdimen2\font - plus.3\fontdimen3\font - minus.3\fontdimen4\font} - \def\end@guill{\ifdim\lastskip>\z@\unskip\penalty\@M\fi - \penalty\@M\hskip.8\fontdimen2\font - plus.3\fontdimen3\font minus.3\fontdimen4\font - \raise0.25ex\hbox{$\scriptscriptstyle\gg$}} - \let\xspace\relax - \def\bbl@frenchguillemets{\let\og\begin@guill - \let\fg\end@guill} + \def\bbl@frenchguillemets{\let\og\FB@og + \let\fg\FB@fg} \def\bbl@nonfrenchguillemets{\def\og{``}% \def\fg{\ifdim\lastskip>\z@\unskip\fi ''}} \fi @@ -331,296 +210,17 @@ \bbl@frenchguillemets} \expandafter\addto\csname noextras\CurrentOption\endcsname{% \bbl@nonfrenchguillemets} -\newif\ifFrenchListSpacing \FrenchListSpacingtrue -\newif\ifFrenchOldTrivlist -\ifLaTeX - \let\listORI\list - \let\endlistORI\endlist - \def\FR@listsettings{% - \setlength{\itemsep}{0.4ex plus 0.2ex minus 0.2ex}% - \setlength{\parsep}{0.4ex plus 0.2ex minus 0.2ex}% - \setlength{\topsep}{0.8ex plus 0.4ex minus 0.4ex}% - \setlength{\partopsep}{0.4ex plus 0.2ex minus 0.2ex}% - \@tempdima=\parskip - \addtolength{\topsep}{-\@tempdima}% - \addtolength{\partopsep}{\@tempdima}}% - \def\listFR#1#2{\listORI{#1}{\FR@listsettings #2}}% - \let\@trivlistORI\@trivlist - \def\@trivlistFR{\FR@listsettings\@trivlistORI} - \def\bbl@frenchlistspacing{\ifFrenchListSpacing\let\list\listFR\fi - \ifFrenchOldTrivlist\let\@trivlist\@trivlistFR - \let\list\listORI\fi} - \def\bbl@nonfrenchlistspacing{\let\list\listORI - \let\@trivlist\@trivlistORI} - \expandafter\addto\csname extras\CurrentOption\endcsname{% - \bbl@frenchlistspacing} - \expandafter\addto\csname noextras\CurrentOption\endcsname{% - \bbl@nonfrenchlistspacing} -\fi -\newif\ifFrenchItemizeSpacing \FrenchItemizeSpacingtrue -\ifLaTeX - \newcommand{\FrenchLabelItem}{\textendash} - \newcommand{\Frlabelitemi}{\FrenchLabelItem} - \newcommand{\Frlabelitemii}{\FrenchLabelItem} - \newcommand{\Frlabelitemiii}{\FrenchLabelItem} - \newcommand{\Frlabelitemiv}{\FrenchLabelItem} - \def\bbl@frenchitemize{% - \let\@ltiORI\labelitemi - \let\@ltiiORI\labelitemii - \let\@ltiiiORI\labelitemiii - \let\@ltivORI\labelitemiv - \let\itemizeORI\itemize - \let\labelitemi\Frlabelitemi - \let\labelitemii\Frlabelitemii - \let\labelitemiii\Frlabelitemiii - \let\labelitemiv\Frlabelitemiv - \ifFrenchItemizeSpacing - \def\itemize{\let\@trivlist\@trivlistORI - \ifnum \@itemdepth >\thr@@\@toodeep\else - \advance\@itemdepth\@ne - \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% - \expandafter - \listORI - \csname\@itemitem\endcsname - {\settowidth{\labelwidth}{\csname\@itemitem\endcsname}% - \setlength{\leftmargin}{\labelwidth}% - \addtolength{\leftmargin}{\labelsep}% - \ifnum\@listdepth=0 - \setlength{\itemindent}{\parindent}% - \else - \addtolength{\leftmargin}{\parindent}% - \fi - \setlength{\itemsep}{\z@}% - \setlength{\parsep}{\z@}% - \setlength{\topsep}{\z@}% - \setlength{\partopsep}{\z@}% - \@tempdima=\parskip - \addtolength{\topsep}{-\@tempdima}% - \addtolength{\partopsep}{\@tempdima}}% - \fi}% - \fi} - \def\bbl@nonfrenchitemize{\let\Frlabelitemi\labelitemi - \let\Frlabelitemii\labelitemii - \let\Frlabelitemiii\labelitemiii - \let\Frlabelitemiv\labelitemiv - \let\labelitemi\@ltiORI - \let\labelitemii\@ltiiORI - \let\labelitemiii\@ltiiiORI - \let\labelitemiv\@ltivORI - \let\itemize\itemizeORI} - \expandafter\addto\csname extras\CurrentOption\endcsname{% - \bbl@frenchitemize} - \expandafter\addto\csname noextras\CurrentOption\endcsname{% - \bbl@nonfrenchitemize} -\fi -\ifLaTeX - \let\@aifORI\@afterindentfalse - \def\bbl@frenchindent{\let\@afterindentfalse\@afterindenttrue - \@afterindenttrue} - \def\bbl@nonfrenchindent{\let\@afterindentfalse\@aifORI - \@afterindentfalse} - \expandafter\addto\csname extras\CurrentOption\endcsname{% - \bbl@frenchindent} - \expandafter\addto\csname noextras\CurrentOption\endcsname{% - \bbl@nonfrenchindent} -\fi -\newif\ifthinspace@FN -\newif\ifFR@fntlayout -\newdimen\parindentFFN -\ifLaTeXe - \newcommand{\AddThinSpaceBeforeFootnotes}{\thinspace@FNtrue} - \AtBeginDocument{\let\@footnotemarkORI\@footnotemark - \def\@footnotemarkFR{\leavevmode\unskip\unkern - \,\@footnotemarkORI}% - \ifthinspace@FN - \let\@footnotemark\@footnotemarkFR - \fi} - \def\ftnISsymbol{\@fnsymbol\c@footnote} - \long\def\@makefntextFR#1{\ifx\thefootnote\ftnISsymbol - \@makefntextORI{#1}% - \else - \parindent=\parindentFFN - \rule\z@\footnotesep - \setbox\@tempboxa\hbox{\@thefnmark}% - \ifdim\wd\@tempboxa>\z@ - \llap{\@thefnmark}.\kern.5em - \fi #1 - \fi}% - \AtBeginDocument{\parindentFFN=\parindent - \ifdim\parindentFFN<1.5em\parindentFFN=1.5em\fi - \let\@makefntextORI\@makefntext - \long\def\@makefntext#1{% - \ifFR@fntlayout - \@makefntextFR{#1}% - \else - \@makefntextORI{#1}% - \fi - }% - } - \newcommand{\FrenchFootnotes}{\FR@fntlayouttrue} - \newcommand{\StandardFootnotes}{\FR@fntlayoutfalse} -\fi -\newcount\std@mcc -\newcount\dec@mcc -\std@mcc=\mathcode`\, -\dec@mcc=\std@mcc -\@tempcnta=\std@mcc -\divide\@tempcnta by "1000 -\multiply\@tempcnta by "1000 -\advance\dec@mcc by -\@tempcnta -\newcommand{\DecimalMathComma}{\iflanguage{french}% - {\mathcode`\,=\dec@mcc}{}% - \addto\extrasfrench{\mathcode`\,=\dec@mcc}} -\newcommand{\StandardMathComma}{\mathcode`\,=\std@mcc - \addto\extrasfrench{\mathcode`\,=\std@mcc}} -\expandafter\addto\csname noextras\CurrentOption\endcsname{% - \mathcode`\,=\std@mcc} -\mathchardef\m@comma=\dec@mcc -\def\@comma@{\ifmmode\m@comma\else,\fi} -\def\f@thousandsep{\ifmmode\mskip5.5mu\else\penalty\@M\kern.3em\fi} -\def\ThinSpaceInFrenchNumbers{\def\f@thousandsep{% - \ifmmode\mskip3mu\else\penalty\@M\kern.16667em\fi}} -\newcommand{\decimalsep}{.} -\newcommand{\thousandsep}{\@comma@} -\expandafter\addto\csname extras\CurrentOption\endcsname{% - \def\decimalsep{\@comma@}% - \def\thousandsep{\f@thousandsep}} -\expandafter\addto\csname noextras\CurrentOption\endcsname{% - \def\decimalsep{.}% - \def\thousandsep{\@comma@}} -\providecommand{\textminus}{\textendash} -\providecommand{\textplusminus}{\ensuremath{\pm}} -\providecommand{\textminusplus}{\ensuremath{\mp}} -\def\fb@minus{\ifmmode-\else\textminus\fi} -\def\fb@plusminus{\ifmmode\pm\else\textplusminus\fi} -\def\fb@minusplus{\ifmmode\mp\else\textminusplus\fi} -\if@Two@E - \newcommand{\nombre}[2][\decimalsep]{\def\@decimalsep{#1}% - \@@nombre#2\@empty,\@empty,\@nil} -\else - \def\@decimalsep{\decimalsep} - \newcommand{\nombre}[1]{\@nombre#1\@empty,\@empty,\@nil} -\fi -\def\@firstofmany#1#2,{#1} -\def\@@nombre#1,#2,#3\@nil{% - \def\nb@sign{}% - \edef\nb@first{\@firstofmany #1\@empty,}% - \edef\nb@suite{\@secondoftwo #1\@empty,}% - \if+\nb@first \def\nb@sign{+}\fi - \if-\nb@first \def\nb@sign{\fb@minus}\fi - \expandafter\ifx\nb@first\pm \def\nb@sign{\fb@plusminus}\fi - \expandafter\ifx\nb@first\mp \def\nb@sign{\fb@minusplus}\fi - \ifx\@empty\nb@sign - \let\@tmp\nb@suite\edef\nb@suite{\nb@first\@tmp}% - \fi - \nb@sign\expandafter\@nombre\nb@suite#2,#3\@nil} -\def\@nombre#1,#2,#3\@nil{% - \ifx\@empty#2% - \@integerpart{#1}% - \else - \@integerpart{#1}\@decimalsep\@decimalpart{#2}% - \fi} -\def\@decimalpart#1{\@@decimalpart#1\@empty\@empty\@empty} -\def\@@decimalpart#1#2#3#4{#1#2#3% - \ifx\@empty#4% - \else - \thousandsep\expandafter\@@decimalpart\expandafter#4% - \fi} -\def\@integerpart#1{\@@integerpart{}#1\@empty\@empty\@empty} -\def\@@integerpart#1#2#3#4{% - \ifx\@empty#2% - \@addthousandsep#1\relax - \else - \ifx\@empty#3% - \@addthousandsep\@empty\@empty#1#2\relax - \else - \ifx\@empty#4% - \@addthousandsep\@empty#1#2#3\relax - \else - \@@integerpartafterfi{#1#2#3#4}% - \fi - \fi - \fi} -\def\@@integerpartafterfi#1\fi\fi\fi{\fi\fi\fi\@@integerpart{#1}} -\def\@addthousandsep#1#2#3#4{#1#2#3% - \if#4\relax - \else - \thousandsep\expandafter\@addthousandsep\expandafter#4% - \fi} -\ifLaTeXe - \DeclareTextCommandDefault{\Frtextellipsis}{% - .\kern\fontdimen3\font.\kern\fontdimen3\font.\xspace} - \newcommand{\Tdots@ORI}{\@xp\textellipsis} - \newcommand{\Tdots@}{\Tdots@ORI} - \newcommand{\Mdots@}{\@xp\mdots@} - \AtBeginDocument{\DeclareRobustCommand{\dots}{\relax - \csname\ifmmode M\else T\fi dots@\endcsname}% - \ifx\@xp\@undefined\let\@xp\relax\fi - \ifx\mdots@\@undefined\let\Tdots@ORI\textellipsis - \let\Mdots@\mathellipsis\fi} - \def\bbl@frenchdots{\let\Tdots@\Frtextellipsis} - \def\bbl@nonfrenchdots{\let\Tdots@\Tdots@ORI} - \expandafter\addto\csname extras\CurrentOption\endcsname{% - \bbl@frenchdots} - \expandafter\addto\csname noextras\CurrentOption\endcsname{% - \bbl@nonfrenchdots} -\fi +\@namedef{date\CurrentOption}{% + \def\today{\number\day \ifnum1=\day {\ier}\fi \relax \space + \ifcase\month + \or janvier\or f\'evrier\or mars\or avril\or mai\or juin\or + juillet\or ao\^ut\or septembre\or octobre\or novembre\or + d\'ecembre\fi \relax + \space \number\year}} \ifLaTeXe - \newcommand{\FrenchLayout}{% - \renewcommand{\StandardLayout}{% - \PackageWarning{frenchb.ldf}% - {\protect\StandardLayout\space makes no change\MessageBreak - (\protect\FrenchLayout\space has been selected before - \MessageBreak for the whole document)}% - }% - \AtBeginDocument{\bbl@frenchitemize\bbl@frenchlistspacing - \bbl@frenchindent}% - \let\bbl@nonfrenchitemize\relax - \let\bbl@nonfrenchlistspacing\relax - \let\bbl@nonfrenchindent\relax} - \newcommand{\StandardLayout}{% - \renewcommand{\FrenchLayout}{% - \PackageWarning{frenchb.ldf}% - {\protect\FrenchLayout\space makes no change\MessageBreak - (\protect\StandardLayout\space has been selected before - \MessageBreak for the whole document)}% - }% - \let\@ltiORI\labelitemi - \let\@ltiiORI\labelitemii - \let\@ltiiiORI\labelitemiii - \let\@ltivORI\labelitemiv - \let\itemizeORI\itemize - \let\bbl@frenchitemize\relax - \let\bbl@frenchlistspacing\relax - \let\bbl@frenchindent\relax} - \@onlypreamble\FrenchLayout - \@onlypreamble\StandardLayout -\fi -\ifx\sevenrm\@undefined - \ifx\@ptsize\@undefined - \let\up@size\small - \else - \ifx\selectfont\@undefined - \ifcase\@ptsize - \let\up@size\ixpt\or - \let\up@size\xpt\or - \let\up@size\xipt - \fi - \else - \ifcase\@ptsize - \def\up@size{\fontsize\@ixpt{10pt}\selectfont}\or - \def\up@size{\fontsize\@xpt{11pt}\selectfont}\or - \def\up@size{\fontsize\@xipt{12pt}\selectfont} - \fi - \fi - \fi + \newcommand*{\up}[1]{\textsuperscript{#1}} \else - \let\up@size\sevenrm -\fi -\if@Two@E - \DeclareRobustCommand*{\up}[1]{\textsuperscript{#1}} -\else - \DeclareRobustCommand*{\up}[1]{\leavevmode\raise1ex\hbox{\up@size#1}} + \newcommand*{\up}[1]{\leavevmode\raise1ex\hbox{\sevenrm #1}} \fi \def\ieme{\up{\lowercase{e}}\xspace} \def\iemes{\up{\lowercase{es}}\xspace} @@ -628,9 +228,9 @@ \def\iers{\up{\lowercase{ers}}\xspace} \def\iere{\up{\lowercase{re}}\xspace} \def\ieres{\up{\lowercase{res}}\xspace} -\DeclareRobustCommand*{\FrenchEnumerate}[1]{% +\newcommand*{\FrenchEnumerate}[1]{% #1\up{\lowercase{o}}\kern+.3em} -\DeclareRobustCommand*{\FrenchPopularEnumerate}[1]{% +\newcommand*{\FrenchPopularEnumerate}[1]{% #1\up{\lowercase{o}})\kern+.3em} \def\primo{\FrenchEnumerate1} \def\secundo{\FrenchEnumerate2} @@ -642,38 +242,29 @@ \def\fquarto){\FrenchPopularEnumerate4} \DeclareRobustCommand*{\No}{N\up{\lowercase{o}}\kern+.2em} \DeclareRobustCommand*{\no}{n\up{\lowercase{o}}\kern+.2em} -\DeclareRobustCommand*{\bsc}[1]{\leavevmode\hbox{\scshape #1}} +\DeclareRobustCommand*{\bsc}[1]{\leavevmode\begingroup\kern0pt + \scshape #1\endgroup} +\ifLaTeXe\else\let\scshape\relax\fi \ifLaTeXe - \DeclareTextSymbol{\ae}{T1}{230} - \DeclareTextSymbol{\ae}{OT1}{26} - \DeclareTextSymbol{\oe}{T1}{247} - \DeclareTextSymbol{\oe}{OT1}{27} - \DeclareTextSymbol{\AE}{T1}{198} - \DeclareTextSymbol{\AE}{OT1}{29} - \DeclareTextSymbol{\OE}{T1}{215} - \DeclareTextSymbol{\OE}{OT1}{30} \DeclareTextSymbol{\at}{T1}{64} - \DeclareTextSymbol{\at}{OT1}{64} \DeclareTextSymbol{\circonflexe}{T1}{94} - \DeclareTextSymbol{\circonflexe}{OT1}{94} \DeclareTextSymbol{\tild}{T1}{126} - \DeclareTextSymbol{\tild}{OT1}{126} - \DeclareTextSymbolDefault{\at}{OT1} - \DeclareTextSymbolDefault{\circonflexe}{OT1} - \DeclareTextSymbolDefault{\tild}{OT1} + \DeclareTextSymbolDefault{\at}{T1} + \DeclareTextSymbolDefault{\circonflexe}{T1} + \DeclareTextSymbolDefault{\tild}{T1} \DeclareRobustCommand*{\boi}{\textbackslash} \DeclareRobustCommand*{\degre}{\r{}} \else \def\T@one{T1} \ifx\f@encoding\T@one - \newcommand{\degre}{\char6} + \newcommand*{\degre}{\char6} \else - \newcommand{\degre}{\char23} + \newcommand*{\degre}{\char23} \fi - \newcommand{\at}{\char64} - \newcommand{\circonflexe}{\char94} - \newcommand{\tild}{\char126} - \newcommand{\boi}{{$\backslash$}} + \newcommand*{\at}{\char64} + \newcommand*{\circonflexe}{\char94} + \newcommand*{\tild}{\char126} + \newcommand*{\boi}{$\backslash$} \fi \ifLaTeXe \def\Warning@degree@TSone{% @@ -693,53 +284,574 @@ \hbox{\UseTextSymbol{TS1}{\textdegree}}}% \fi} \else - \DeclareRobustCommand*{\degres}{% + \newcommand*{\degres}{% \leavevmode\hbox to 0.3em{\hss\degre\hss}} \fi -\ifLaTeXe - \AtBeginDocument{% - \ifx\csubinverse\@undefined - \DeclareTextCompositeCommand{\^}{OT1}{i}{\^\i}% - \DeclareTextCompositeCommand{\"}{OT1}{i}{\"\i}% - \fi} -\fi -\@namedef{date\CurrentOption}{% - \def\today{\number\day - \ifnum1=\day {\ier}\fi - \space \ifcase\month - \or janvier\or f\'evrier\or mars\or avril\or mai\or juin\or - juillet\or ao\^ut\or septembre\or octobre\or novembre\or - d\'ecembre\fi - \space \number\year}} -\ifLaTeXe - \loadlocalcfg{frenchb} +\newcount\std@mcc +\newcount\dec@mcc +\std@mcc=\mathcode`\, +\dec@mcc=\std@mcc +\@tempcnta=\std@mcc +\divide\@tempcnta by "1000 +\multiply\@tempcnta by "1000 +\advance\dec@mcc by -\@tempcnta +\newcommand*{\DecimalMathComma}{\iflanguage{french}% + {\mathcode`\,=\dec@mcc}{}% + \addto\extrasfrench{\mathcode`\,=\dec@mcc}} +\newcommand*{\StandardMathComma}{\mathcode`\,=\std@mcc + \addto\extrasfrench{\mathcode`\,=\std@mcc}} +\expandafter\addto\csname noextras\CurrentOption\endcsname{% + \mathcode`\,=\std@mcc} +\newcommand*{\nombre}[1]{{#1}\message{% + *** \noexpand\nombre no longer formats numbers\string! ***}}% +\let\FBstop@here\relax +\def\FBclean@on@exit{\let\ifLaTeXe\@undefined + \let\LaTeXetrue\@undefined + \let\LaTeXefalse\@undefined} +\ifx\magnification\@undefined +\else + \def\FBstop@here{\let\STD@makecaption\relax + \FBclean@on@exit + \ldf@quit\CurrentOption\endinput} \fi -\let\T@one\relax -\let\@FI@\relax -\let\ifLaTeX\@undefined -\let\LaTeXtrue\@undefined -\let\LaTeXfalse\@undefined -\let\ifLaTeXe\@undefined -\let\LaTeXetrue\@undefined -\let\LaTeXefalse\@undefined +\FBstop@here +\renewcommand*{\nombre}[1]{\Warning@nombre\numprint{#1}} +\newcommand*{\Warning@nombre}{% + \@ifundefined{numprint}% + {\PackageWarning{frenchb.ldf}{% + \protect\nombre\space now relies on package numprint.sty, + \MessageBreak add \protect + \usepackage[autolanguage]{numprint}\MessageBreak + to your preamble *after* loading babel, \MessageBreak + see file numprint.pdf for other options.\MessageBreak + \protect\nombre\space called}% + \global\let\Warning@nombre\relax + \global\let\numprint\relax + }{}% +} +\newcommand*{\ThinSpaceInFrenchNumbers}{% + \PackageWarning{frenchb.ldf}{% + Type \protect\frenchbsetup{ThinSpaceInFrenchNumbers} + \MessageBreak Command \protect\ThinSpaceInFrenchNumbers\space + is no longer\MessageBreak defined in frenchb v.2,}} +\@namedef{captions\CurrentOption}{% + \def\refname{R\'ef\'erences}% + \def\abstractname{R\'esum\'e}% + \def\bibname{Bibliographie}% + \def\prefacename{Pr\'eface}% + \def\chaptername{Chapitre}% + \def\appendixname{Annexe}% + \def\contentsname{Table des mati\`eres}% + \def\listfigurename{Table des figures}% + \def\listtablename{Liste des tableaux}% + \def\indexname{Index}% + \def\figurename{{\scshape Figure}}% + \def\tablename{{\scshape Table}}% + \def\partname{\protect\@Fpt partie}% + \def\@Fpt{{\ifcase\value{part}\or Premi\`ere\or Deuxi\`eme\or + Troisi\`eme\or Quatri\`eme\or Cinqui\`eme\or Sixi\`eme\or + Septi\`eme\or Huiti\`eme\or Neuvi\`eme\or Dixi\`eme\or Onzi\`eme\or + Douzi\`eme\or Treizi\`eme\or Quatorzi\`eme\or Quinzi\`eme\or + Seizi\`eme\or Dix-septi\`eme\or Dix-huiti\`eme\or Dix-neuvi\`eme\or + Vingti\`eme\fi}\space\def\thepart{}}% + \def\pagename{page}% + \def\seename{{\emph{voir}}}% + \def\alsoname{{\emph{voir aussi}}}% + \def\enclname{P.~J. }% + \def\ccname{Copie \`a }% + \def\headtoname{}% + \def\proofname{D\'emonstration}% + \def\glossaryname{Glossaire}% + } +\AtBeginDocument{\let\captions@French\captionsfrench + \@ifundefined{captionsfrenchb}% + {\let\captions@Frenchb\relax}% + {\let\captions@Frenchb\captionsfrenchb}% + \@ifundefined{captionsfrancais}% + {\let\captions@Francais\relax}% + {\let\captions@Francais\captionsfrancais}% + \def\captionsfrench{\captions@French + \captions@Francais\captions@Frenchb}% + \def\captionsfrancais{\captionsfrench}% + \def\captionsfrenchb{\captionsfrench}% + \iflanguage{french}{\captionsfrench}{}% + } +\@ifpackagewith{babel}{canadien}{% + \def\captionscanadien{\captionsfrench}% + \def\datecanadien{\datefrench}% + \def\extrascanadien{\extrasfrench}% + \def\noextrascanadien{\noextrasfrench}% + }{} +\@ifpackagewith{babel}{acadian}{% + \def\captionsacadian{\captionsfrench}% + \def\dateacadian{\datefrench}% + \def\extrasacadian{\extrasfrench}% + \def\noextrasacadian{\noextrasfrench}% + }{} +\def\CaptionSeparator{\string:\space} +\long\def\FB@makecaption#1#2{% + \vskip\abovecaptionskip + \sbox\@tempboxa{#1\CaptionSeparator #2}% + \ifdim \wd\@tempboxa >\hsize + #1\CaptionSeparator #2\par + \else + \global \@minipagefalse + \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% + \fi + \vskip\belowcaptionskip} +\AtBeginDocument{% + \ifx\@makecaption\STD@makecaption + \global\let\@makecaption\FB@makecaption + \else + \@ifundefined{@makecaption}{}% + {\PackageWarning{frenchb.ldf}% + {The definition of \protect\@makecaption\space + has been changed,\MessageBreak + frenchb will NOT customise it;\MessageBreak reported}% + }% + \fi + \let\FB@makecaption\relax + \let\STD@makecaption\relax +} +\expandafter\addto\csname extras\CurrentOption\endcsname{% + \def\CaptionSeparator{\space\textendash\space}} +\expandafter\addto\csname noextras\CurrentOption\endcsname{% + \def\CaptionSeparator{\string:\space}} +\let\listORI\list +\let\endlistORI\endlist +\def\FB@listsettings{% + \setlength{\itemsep}{0.4ex plus 0.2ex minus 0.2ex}% + \setlength{\parsep}{0.4ex plus 0.2ex minus 0.2ex}% + \setlength{\topsep}{0.8ex plus 0.4ex minus 0.4ex}% + \setlength{\partopsep}{0.4ex plus 0.2ex minus 0.2ex}% + \@tempdima=\parskip + \addtolength{\topsep}{-\@tempdima}% + \addtolength{\partopsep}{\@tempdima}}% +\def\listFB#1#2{\listORI{#1}{\FB@listsettings #2}}% +\let\endlistFB\endlist +\newcommand*{\FrenchLabelItem}{\textendash} +\newcommand*{\Frlabelitemi}{\FrenchLabelItem} +\newcommand*{\Frlabelitemii}{\FrenchLabelItem} +\newcommand*{\Frlabelitemiii}{\FrenchLabelItem} +\newcommand*{\Frlabelitemiv}{\FrenchLabelItem} +\newif\ifFB@enterFrench \FB@enterFrenchtrue +\def\bbl@frenchlabelitems{% + \ifFB@enterFrench + \let\@ltiORI\labelitemi + \let\@ltiiORI\labelitemii + \let\@ltiiiORI\labelitemiii + \let\@ltivORI\labelitemiv + \let\labelitemi\Frlabelitemi + \let\labelitemii\Frlabelitemii + \let\labelitemiii\Frlabelitemiii + \let\labelitemiv\Frlabelitemiv + \FB@enterFrenchfalse + \fi +} +\let\itemizeORI\itemize +\let\enditemizeORI\enditemize +\let\enditemizeFB\enditemize +\def\itemizeFB{% + \ifnum \@itemdepth >\thr@@\@toodeep\else + \advance\@itemdepth\@ne + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + \expandafter + \listORI + \csname\@itemitem\endcsname + {\settowidth{\labelwidth}{\csname\@itemitem\endcsname}% + \setlength{\leftmargin}{\labelwidth}% + \addtolength{\leftmargin}{\labelsep}% + \ifnum\@listdepth=0 + \setlength{\itemindent}{\parindent}% + \else + \addtolength{\leftmargin}{\parindent}% + \fi + \setlength{\itemsep}{\z@}% + \setlength{\parsep}{\z@}% + \setlength{\topsep}{\z@}% + \setlength{\partopsep}{\z@}% + \@tempdima=\parskip + \addtolength{\topsep}{-\@tempdima}% + \addtolength{\partopsep}{\@tempdima}}% + \fi} +\def\bbl@nonfrenchlabelitems{% + \ifFB@enterFrench + \else + \let\Frlabelitemi\labelitemi + \let\Frlabelitemii\labelitemii + \let\Frlabelitemiii\labelitemiii + \let\Frlabelitemiv\labelitemiv + \let\labelitemi\@ltiORI + \let\labelitemii\@ltiiORI + \let\labelitemiii\@ltiiiORI + \let\labelitemiv\@ltivORI + \FB@enterFrenchtrue + \fi +} +\let\@aifORI\@afterindentfalse +\def\bbl@frenchindent{\let\@afterindentfalse\@afterindenttrue + \@afterindenttrue} +\def\bbl@nonfrenchindent{\let\@afterindentfalse\@aifORI + \@afterindentfalse} +\AtBeginDocument{\@ifpackageloaded{bigfoot}% + {\PackageWarning{frenchb.ldf}% + {bigfoot package in use.\MessageBreak + frenchb will NOT customise footnotes;\MessageBreak + reported}}% + {\let\@footnotemarkORI\@footnotemark + \def\@footnotemarkFB{\leavevmode\unskip\unkern + \,\@footnotemarkORI}% + \ifFBAutoSpaceFootnotes + \let\@footnotemark\@footnotemarkFB + \fi}% + } +\newdimen\parindentFFN +\parindentFFN=10in +\def\ftnISsymbol{\@fnsymbol\c@footnote} +\long\def\@makefntextFB#1{\ifx\thefootnote\ftnISsymbol + \@makefntextORI{#1}% + \else + \parindent=\parindentFFN + \rule\z@\footnotesep + \setbox\@tempboxa\hbox{\@thefnmark}% + \ifdim\wd\@tempboxa>\z@ + \llap{\@thefnmark}.\kern.5em + \fi #1 + \fi}% +\AtBeginDocument{\@ifpackageloaded{bigfoot}{}% + {\ifdim\parindentFFN<10in + \else + \parindentFFN=\parindent + \ifdim\parindentFFN<1.5em\parindentFFN=1.5em\fi + \fi + \let\@makefntextORI\@makefntext + \long\def\@makefntext#1{% + \ifFBFrenchFootnotes + \@makefntextFB{#1}% + \else + \@makefntextORI{#1}% + \fi}% + }% + } +\newcommand*{\AddThinSpaceBeforeFootnotes}{\FBAutoSpaceFootnotestrue} +\newcommand*{\FrenchFootnotes}{\FBFrenchFootnotestrue} +\newcommand*{\StandardFootnotes}{\FBFrenchFootnotesfalse} +\newcommand*{\FrenchLayout}{\FBGlobalLayoutFrenchtrue + \PackageWarning{frenchb.ldf}% + {\protect\FrenchLayout\space is obsolete. Please use\MessageBreak + \protect\frenchbsetup{GlobalLayoutFrench} instead.}% +} +\newcommand*{\StandardLayout}{\FBStandardLayouttrue + \PackageWarning{frenchb.ldf}% + {\protect\StandardLayout\space is obsolete. Please use\MessageBreak + \protect\frenchbsetup{StandardLayout} instead.}% +} +\@onlypreamble\FrenchLayout +\@onlypreamble\StandardLayout +\DeclareTextSymbol{\FBtextellipsis}{LY1}{133} +\DeclareTextCommandDefault{\FBtextellipsis}{% + .\kern\fontdimen3\font.\kern\fontdimen3\font.\xspace} +\newcommand*{\Tdots@ORI}{\@xp\textellipsis} +\newcommand*{\Tdots@}{\Tdots@ORI} +\newcommand*{\Mdots@}{\@xp\mdots@} +\AtBeginDocument{\DeclareRobustCommand{\dots}{\relax + \csname\ifmmode M\else T\fi dots@\endcsname}% + \@ifundefined{@xp}{\let\@xp\relax}{}% + \@ifundefined{mdots@}{\let\Tdots@ORI\textellipsis + \let\Mdots@\mathellipsis}{}} +\def\bbl@frenchdots{\let\Tdots@\FBtextellipsis} +\def\bbl@nonfrenchdots{\let\Tdots@\Tdots@ORI} +\expandafter\addto\csname extras\CurrentOption\endcsname{% + \bbl@frenchdots} +\expandafter\addto\csname noextras\CurrentOption\endcsname{% + \bbl@nonfrenchdots} +\newif\ifFBStandardLayout \FBStandardLayoutfalse +\newif\ifFBGlobalLayoutFrench \FBGlobalLayoutFrenchfalse +\newif\ifFBAutoSpacePunctuation \FBAutoSpacePunctuationtrue +\newif\ifFBThinColonSpace \FBThinColonSpacefalse +\newif\ifFBReduceListSpacing \FBReduceListSpacingtrue +\newif\ifFBCompactItemize \FBCompactItemizetrue +\newif\ifFBStandardItemLabels \FBStandardItemLabelsfalse +\newif\ifFBStandardLists \FBStandardListsfalse +\newif\ifFBIndentFirst \FBIndentFirsttrue +\newif\ifFBFrenchFootnotes \FBFrenchFootnotestrue +\newif\ifFBAutoSpaceFootnotes \FBAutoSpaceFootnotestrue +\newif\ifFBThinSpaceInFrenchNumbers \FBThinSpaceInFrenchNumbersfalse +\newif\ifFBPartNameFull \FBPartNameFulltrue +\newif\ifFBShowOptions \FBShowOptionsfalse +\newcommand*{\frenchbsetup}[1]{% + \setkeys{FB}{#1}% +}% +\@onlypreamble\frenchbsetup +\AtEndOfPackage{% + \RequirePackage{keyval}% + \define@key{FB}{StandardLayout}[true]% + {\csname FBStandardLayout#1\endcsname + \ifFBStandardLayout + \FBStandardListstrue + \FBIndentFirstfalse + \FBFrenchFootnotesfalse + \FBAutoSpaceFootnotesfalse + \fi}% + \define@key{FB}{GlobalLayoutFrench}[true]% + {\csname FBGlobalLayoutFrench#1\endcsname}% + \define@key{FB}{AutoSpacePunctuation}[true]% + {\csname FBAutoSpacePunctuation#1\endcsname}% + \define@key{FB}{ThinColonSpace}[true]% + {\csname FBThinColonSpace#1\endcsname}% + \define@key{FB}{ReduceListSpacing}[true]% + {\csname FBReduceListSpacing#1\endcsname}% + \define@key{FB}{CompactItemize}[true]% + {\csname FBCompactItemize#1\endcsname}% + \define@key{FB}{StandardItemLabels}[true]% + {\csname FBStandardItemLabels#1\endcsname}% + \define@key{FB}{ItemLabels}{% + \renewcommand*{\FrenchLabelItem}{#1}}% + \define@key{FB}{ItemLabeli}{% + \renewcommand*{\Frlabelitemi}{#1}}% + \define@key{FB}{ItemLabelii}{% + \renewcommand*{\Frlabelitemii}{#1}}% + \define@key{FB}{ItemLabeliii}{% + \renewcommand*{\Frlabelitemiii}{#1}}% + \define@key{FB}{ItemLabeliv}{% + \renewcommand*{\Frlabelitemiv}{#1}}% + \define@key{FB}{StandardLists}[false]% + {\csname FBStandardLayout#1\endcsname + \ifFBStandardLists + \FBReduceListSpacingfalse + \FBCompactItemizefalse + \FBStandardItemLabelstrue + \fi}% + \define@key{FB}{IndentFirst}[true]% + {\csname FBIndentFirst#1\endcsname}% + \define@key{FB}{FrenchFootnotes}[true]% + {\csname FBFrenchFootnotes#1\endcsname}% + \define@key{FB}{AutoSpaceFootnotes}[true]% + {\csname FBAutoSpaceFootnotes#1\endcsname}% + \define@key{FB}{ThinSpaceInFrenchNumbers}[true]% + {\csname FBThinSpaceInFrenchNumbers#1\endcsname}% + \define@key{FB}{PartNameFull}[true]% + {\csname FBPartNameFull#1\endcsname}% + \define@key{FB}{ShowOptions}[true]% + {\csname FBShowOptions#1\endcsname}% + \define@key{FB}{og}{% + \newcommand*{\FB@@og}{\iflanguage{french}% + {\FB@og\ignorespaces}{\guillemotleft}}% + \expandafter\ifx\csname XeTeXrevision\endcsname\relax + \AtBeginDocument{% + \@ifundefined{DeclareInputText}% + {\PackageWarning{frenchb.ldf}% + {Option `og' requires package inputenc.\MessageBreak}% + }% + {\@ifundefined{uc@dclc}% + {\@ifundefined{DeclareUnicodeCharacter}% + {\@tempcnta`#1\relax + \@ifundefined{mule@def}% + {\DeclareInputText{\the\@tempcnta}{\FB@@og}}% + {\mule@def{11}{{\FB@@og}}}% + }% + {\DeclareUnicodeCharacter{00AB}{\FB@@og}}% + }% + {\uc@dclc{171}{default}{\FB@@og}}% + }% + }% + \else + \catcode`#1=\active + \bgroup + \uccode`\~`#1% + \uppercase{% + \egroup + \def~% + }{\FB@@og}% + \fi + }% + \define@key{FB}{fg}{% + \newcommand*{\FB@@fg}{\iflanguage{french}% + {\FB@fg}{\guillemotright}}% + \expandafter\ifx\csname XeTeXrevision\endcsname\relax + \AtBeginDocument{% + \@ifundefined{DeclareInputText}% + {\PackageWarning{frenchb.ldf}% + {Option `fg' requires package inputenc.\MessageBreak}% + }% + {\@ifundefined{uc@dclc}% + {\@ifundefined{DeclareUnicodeCharacter}% + {\@tempcnta`#1\relax + \@ifundefined{mule@def}% + {\DeclareInputText{\the\@tempcnta}{{\FB@@fg}}}% + {\mule@def{27}{{\FB@@fg}}}% + }% + {\DeclareUnicodeCharacter{00BB}{{\FB@@fg}}}% + }% + {\uc@dclc{187}{default}{{\FB@@fg}}}% + }% + }% + \else + \catcode`#1=\active + \bgroup + \uccode`\~`#1% + \uppercase{% + \egroup + \def~% + }{{\FB@@fg}}% + \fi + }% +} +\newcommand*{\FBprocess@options}{% + \ifFBAutoSpacePunctuation + \AutoSpaceBeforeFDP + \else + \NoAutoSpaceBeforeFDP + \fi + \ifFBThinColonSpace\renewcommand*{\Fcolonspace}{\thinspace}\fi + \ifFBReduceListSpacing + \addto\extrasfrench{\let\list\listFB + \let\endlist\endlistFB}% + \addto\noextrasfrench{\ifFBGlobalLayoutFrench + \let\list\listFB + \let\endlist\endlistFB + \else + \let\list\listORI + \let\endlist\endlistORI + \fi}% + \else + \addto\extrasfrench{\let\list\listORI + \let\endlist\endlistORI}% + \addto\noextrasfrench{\let\list\listORI + \let\endlist\endlistORI}% + \fi + \ifFBCompactItemize + \addto\extrasfrench{\let\itemize\itemizeFB + \let\enditemize\enditemizeFB}% + \addto\noextrasfrench{\ifFBGlobalLayoutFrench + \let\itemize\itemizeFB + \let\enditemize\enditemizeFB + \else + \let\itemize\itemizeORI + \let\enditemize\enditemizeORI + \fi}% + \else + \addto\extrasfrench{\let\itemize\itemizeORI + \let\enditemize\enditemizeORI}% + \addto\noextrasfrench{\let\itemize\itemizeORI + \let\enditemize\enditemizeORI}% + \fi + \ifFBStandardItemLabels + \addto\extrasfrench{\bbl@nonfrenchlabelitems}% + \addto\noextrasfrench{\bbl@nonfrenchlabelitems}% + \else + \addto\extrasfrench{\bbl@frenchlabelitems}% + \addto\noextrasfrench{\ifFBGlobalLayoutFrench + \bbl@frenchlabelitems + \else + \bbl@nonfrenchlabelitems + \fi}% + \fi + \ifFBIndentFirst + \addto\extrasfrench{\bbl@frenchindent}% + \addto\noextrasfrench{\ifFBGlobalLayoutFrench + \bbl@frenchindent + \else + \bbl@nonfrenchindent + \fi}% + \else + \addto\extrasfrench{\bbl@nonfrenchindent}% + \addto\noextrasfrench{\bbl@nonfrenchindent}% + \fi + \@ifpackageloaded{numprint}% + {\ifnprt@autolanguage + \providecommand*{\npstylefrench}{}% + \ifFBThinSpaceInFrenchNumbers + \renewcommand*\npstylefrench{% + \npthousandsep{\,}% + \npdecimalsign{,}% + \npproductsign{\cdot}% + \npunitseparator{\,}% + \npdegreeseparator{}% + \nppercentseparator{\nprt@unitsep}% + }% + \else + \renewcommand*\npstylefrench{% + \npthousandsep{~}% + \npdecimalsign{,}% + \npproductsign{\cdot}% + \npunitseparator{\,}% + \npdegreeseparator{}% + \nppercentseparator{\nprt@unitsep}% + }% + \fi + \npaddtolanguage{french}{french}% + \fi}{}% + \ifFBPartNameFull + \else\addto\captionsfrench{\def\partname{Partie}}\fi + \ifFBShowOptions + \GenericWarning{* }{% + * **** List of possible options for frenchb ****\MessageBreak + [Default values between brackets]\MessageBreak + ShowOptions=true [false]\MessageBreak + StandardLayout=true [false]\MessageBreak + GlobalLayoutFrench=true [false]\MessageBreak + AutoSpacePunctuation=false [true]\MessageBreak + ThinColonSpace=true [false]\MessageBreak + StandardLists=true [false]\MessageBreak + ReduceListSpacing=false [true]\MessageBreak + CompactItemize=false [true]\MessageBreak + StandardItemLabels=true [false]\MessageBreak + ItemLabels=\textemdash, \textbullet, + \protect\ding{43},... [\textendash]\MessageBreak + ItemLabeli=\textemdash, \textbullet, + \protect\ding{43},... [\textendash]\MessageBreak + ItemLabelii=\textemdash, \textbullet, + \protect\ding{43},... [\textendash]\MessageBreak + ItemLabeliii=\textemdash, \textbullet, + \protect\ding{43},... [\textendash]\MessageBreak + ItemLabeliv=\textemdash, \textbullet, + \protect\ding{43},... [\textendash]\MessageBreak + IndentFirst=false [true]\MessageBreak + FrenchFootnotes=false [true]\MessageBreak + AutoSpaceFootnotes=false [true]\MessageBreak + ThinSpaceInFrenchNumbers=true [false]\MessageBreak + PartNameFull=false [true]\MessageBreak + og= <left quote character>, fg= <right quote character> + \MessageBreak + ********************************************* + \MessageBreak\protect\frenchbsetup{ShowOptions}} + \fi +} +\AtBeginDocument{% + \let\listORI\list + \let\endlistORI\endlist + \let\itemizeORI\itemize + \let\enditemizeORI\enditemize + \let\@ltiORI\labelitemi + \let\@ltiiORI\labelitemii + \let\@ltiiiORI\labelitemiii + \let\@ltivORI\labelitemiv + \providecommand*{\xspace}{\relax}% + \FBprocess@options + \iflanguage{french}{\extrasfrench\captionsfrench}{\noextrasfrench}% + \expandafter\ifx\csname XeTeXrevision\endcsname\relax + \begingroup \newcommand{\FBOTone}{OT1}% + \ifx\encodingdefault\FBOTone + \PackageWarning{frenchb.ldf}% + {OT1 encoding should not be used for French. + \MessageBreak + Add \protect\usepackage[T1]{fontenc} to the + preamble\MessageBreak of your document,} + \fi + \endgroup + \else + \@ifundefined{DeclareUTFcharacter}% + {\PackageWarning{frenchb.ldf}% + {Add \protect\usepackage{fontspec} *and*\MessageBreak + \protect\usepackage{xunicode} to the preamble\MessageBreak + of your document,}}% + {}% + \fi +} +\loadlocalcfg{frenchb} +\FBclean@on@exit \ldf@quit\CurrentOption -%% -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% \endinput %% %% End of file `frenchb.ldf'. |