diff options
Diffstat (limited to 'language/french/e-french/texmf/doc/src/french_doc.txt')
-rw-r--r-- | language/french/e-french/texmf/doc/src/french_doc.txt | 152 |
1 files changed, 125 insertions, 27 deletions
diff --git a/language/french/e-french/texmf/doc/src/french_doc.txt b/language/french/e-french/texmf/doc/src/french_doc.txt index b0472c388a..70fae94b61 100644 --- a/language/french/e-french/texmf/doc/src/french_doc.txt +++ b/language/french/e-french/texmf/doc/src/french_doc.txt @@ -30,11 +30,11 @@ \ifx\@unexpandable@protect\undefined\let\protect\empty% \else\let\protect\@unexpandable@protect% \fi% - \xdef\FSfd{31 mai 2019}% eFrench - \xdef\FSfv{V6,101}% + \xdef\FSfd{6 septembre 2019}% eFrench + \xdef\FSfv{V6,11}% \xdef\frenchstyleid{\FSfv\space-- \FSfd\space --}% }}% - \edef\FSfd{2019/05/31}% + \edef\FSfd{2019/09/06}% % % History as given by Bernard Gaulle: % I started this job years ago (in 1989) firstly @@ -191,6 +191,14 @@ % V6,101 % Two minor corrections by interchartoks % Changes made by Raymond Juillerat 2019/05/30 +% V6,11 +% Possibility of choice for non-breakable spaces: +% - as made by Bernard Gaulle (fine spaces except for guillemets) +% - as required by the Imprimerie Nationale de France +% (fine spaces only for ; ! ? full for : << and >>) +% - only fine spaces like in Guide du Typographe +% and choice of the fine space defined by the user +% Changes made by Raymond Juillerat 2019/09/06 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Object: DOCUMENT CLASS OPTION for printing French texts with TeX or LaTeX @@ -729,9 +737,51 @@ %\@txt@msg{WARNING:}% %\@txt@msg{the French language is undefined in your format.}% }% + \fi% \fi% % -\fi% +% more posibilities by high-punctuation and guillemets +% three commands for the user +% - with \NobrkSpacesINFr punctuation as asked by the Imprimerie Nationnale +% - with \NobrkSpacesFine only fine spaces as in theGuide du Typographe +% - with \NobrkSpacesFpro punctuation as it was till version 6.101 +% +%\newif\ifeFrfisp@v@ria +\newif\ifeFr@DPtfine% semicolon fine or not +\newif\ifeFr@Guifine% guillemets fine or not +\newif\ifUSP@GuiFinSpa % for OG space made unbreakable or unused +\newif\ifPonctu@ctived % no more changes in definitions after having used + % some non-breaking spaces +\def\nbsp@ce{\penalty\@M\space} +\def\fispce@rigide{\,}% +\def\eFrFinSp@ce{\penalty\@M% + \hskip 0.5\fontdimen2\font}% +% a possibility for the user to define an own fine non breakable space +\def\MonEspaceFine#1#2#3{\def\eFrFinSp@ce{\penalty\@M% + \hskip #1\fontdimen2\font% + plus #2\fontdimen3\font% + minus #3\fontdimen4\font} +}% +% by guillemets, if fine space, it is always present +\def\eFr@OGsp@cSpl{\ifeFr@Guifine\eFrFinSp@ce + \else\nbsp@ce\fi\ignorespaces} +% for the user: fine, Imprimerie Nationale-France or Frenchpro +\def\NobrkSpacesFine{\ifPonctu@ctived +% don't redefine punctuation behavior + \f@issue\@fw{-94-}[NobrkSpacesFine] + \else\eFr@DPtfinetrue\eFr@Guifinetrue % espaces fines + \fi} +\def\NobrkSpacesFpro{\ifPonctu@ctived +% don't redefine punctuation behavior + \f@issue\@fw{-94-}[NobrkSpacesFpro] + \else\eFr@DPtfinetrue\eFr@Guifinefalse% comme Frenchpro + \fi} +\def\NobrkSpacesINFr{\ifPonctu@ctived +% don't redefine punctuation behavior + \f@issue\@fw{-94-}[NobrkSpacesINFr] + \else\eFr@DPtfinefalse\eFr@Guifinefalse % +% [Imprimerie Nationale de France + \fi} \fontencoding{\encodingdefault}\selectfont% \def\@temp@{OT1}\ifx\@temp@\f@encoding% \def\@temp@{\global\ECMfalse}% @@ -2198,6 +2248,8 @@ %%% %\@txt@msg{configuration de \frenchpack}% %%% }}{}% %%% so we now call \IfFileExists ... \@finput +% by default, the nobreak punctuation set like by Bernard Gaulle + \NobrkSpacesFpro% \IfFileExists{\frenchname.cfg}{% -load site config file. \f@issue% \@fw{-48- %\@txt@msg{Lecture du fichier de }% @@ -3262,11 +3314,11 @@ \XeTeXcharclass `\! \french@punctthin \XeTeXcharclass `\? \french@punctthin \XeTeXcharclass `\; \french@punctthin - \XeTeXcharclass `\: \french@punctthick - \XeTeXinterchartoks \z@ \french@punctthin = {\nobreak\thinspace}% - \XeTeXinterchartoks \z@ \french@punctthick = {\nobreakspace}% + \XeTeXcharclass `\: \french@semicolon + \XeTeXinterchartoks \z@ \french@punctthin = {\ifUSP\nobreak\thinspace\fi}% + \XeTeXinterchartoks \z@ \french@semicolon = {\ifUSP\ifeFr@DPtfine\nobreak\thinspace\else\nobreakspace\fi\fi}% \XeTeXinterchartoks 4095 \french@punctthin = {\efr@unskip\nobreak\thinspace}% - \XeTeXinterchartoks 4095 \french@punctthick = {\efr@unskip\nobreakspace}% + \XeTeXinterchartoks 4095 \french@semicolon = {\efr@unskip\ifeFr@DPtfine\nobreak\thinspace\else\nobreakspace\fi}% } \def\nointercharpunct{% % \lccode8217=\z@ @@ -3290,9 +3342,10 @@ % ceci ou largeur fixe ? % insecable : space : \char160 fine : \char8239 \ifeF@xetex@punct \newXeTeXintercharclass\french@punctthin % ! ? ; et autres - \newXeTeXintercharclass\french@punctthick % : + \newXeTeXintercharclass\french@semicolon % : deux points - Dpt % \def\efr@unskip{\ifhmode\ifdim\lastskip>\z@\unskip\fi\fi} +% \def\eFresp@dpt{\ifeFr@DPtfine\nobreak\thinspace\else\nobreakspace\fi} \def\xpg@nospace#1{#1} % \ifeFr@Typo\protect\intercharpunct\else\nointercharpunct\fi @@ -3313,8 +3366,10 @@ \def\@tempd{\@tempa{\string;}}% \ifx;\undefined\def\@tempd{}\fi\@tempd\@tempc% \def\@PV{\relax\ifmmode\string;\else% +% don't redefine punctuation behavior + \Ponctu@ctivedtrue \ifhmode\ifUSP\unskip\space\fi% - \ifdim\lastskip>\z@\unskip\penalty\@M\,\fi% + \ifdim\lastskip>\z@\unskip\eFrFinSp@ce\fi% \fi\string;\fi}% \def\@tempc{% \def:{\ifFTY\protect\@DP%{}% -............................................... ":" @@ -3324,8 +3379,12 @@ \ifx:\undefined\def\@tempd{}\fi\@tempd\@tempc% \@ifundefined{@beginparpenalty}{\def\@beginparpenalty=#1{\penalty#1}}{}% \def\@DP{\relax\ifmmode\string:\else% +% don't redefine punctuation behavior +\Ponctu@ctivedtrue +\ifeFr@DPtfine\let\eFresp@dpt=\eFrFinSp@ce + \else\let\eFresp@dpt=\nbsp@ce\fi \ifhmode\ifUSP\unskip\space\fi% - \ifdim\lastskip>\z@\unskip\penalty\@M\,\fi% + \ifdim\lastskip>\z@\unskip\eFresp@dpt\fi% \fi% \string:% \@beginparpenalty=\@M\relax% @@ -3351,8 +3410,10 @@ \def\@tempd{\@tempa{\string!}}% \ifx!\undefined\def\@tempd{}\fi\@tempd\@tempc% \def\@PE{\ifmmode\string!\else% +% don't redefine punctuation behavior + \Ponctu@ctivedtrue \ifhmode\ifUSP\unskip\space\fi% - \ifdim\lastskip>\z@\unskip\penalty\@M\,\fi% + \ifdim\lastskip>\z@\unskip\eFrFinSp@ce\fi% \fi% \string!\fi}% \def\@tempc{% @@ -3362,9 +3423,10 @@ \def\@tempd{\@tempa{\string?}}% \ifx?\undefined\def\@tempd{}\fi\@tempd\@tempc% \def\@PI{\relax\ifmmode\string?\else% +% don't redefine punctuation behavior + \Ponctu@ctivedtrue \ifhmode\ifUSP\unskip\space\fi% - \ifdim\lastskip>\z@\unskip\penalty\@M% - \hskip +0.09em plus 0.07667em% -max glue accepted + \ifdim\lastskip>\z@\unskip\eFrFinSp@ce% \fi% \fi% \string?\fi}% @@ -3466,16 +3528,17 @@ \advance\@FrDimen by -\leftmargin\advance\@FrDimen by -\rightmargin% \advance\@FrDimen by -\listparindent\hsize=\@FrDimen}% \@qquotes\fi\fi\fi% + \sp@inogfalse% \@oguills% \ifFLA\ifEPG\bgroup\def\@currenvir{guillemets}% -simulate an environment \let\@CGroup\egroup\fi\fi% -for error processing \ifCG\ifFLA\ifEPG% -save the current \everypar and apply it first \xdef\@epORI{{\the\TeXeverypar}}% \TeXeverypar={\@epORI% -Original \everypar. - \ifEPGR\else% -If not allready done, + \ifEPGR\else\@AG% -guide du typographe + \sp@inogtrue% \@oguills% -insert guillemets and \@ifundefined{@OuvOpen}{% -then according - \,% -kerning just after. }{}% \fi}% \fi\fi% @@ -3483,17 +3546,39 @@ \ifFLA\ifEPG\else\def\@qqguill{\@oguills}\@staring\fi\fi\fi% %%% \protect\@CGfalse% \global\let\ifCG\iffalse% - \ifUSP\kern+0.13em\penalty\@M\ignorespaces% - \else\kern-0.19em\relax\penalty\@M\fi}% -likely as \ignorespaces\fi + \ifeFr@Guifine\USP@GuiFinSpatrue% OG full space not used + \let\eFresp@gui=\eFrFinSp@ce% OG fine unbreakable space + \else\USP@GuiFinSpafalse% OG full space possible + \let\eFresp@gui=\nbsp@ce% OG full unbreakable space + \fi% +%% don't redefine punctuation behavior + \Ponctu@ctivedtrue + \ifUSP\USP@GuiFinSpatrue\fi% OG full space not used + \ifUSP@GuiFinSpa\eFr@OGsp@cSpl% + \else\relax\penalty\@M\fi}% +% \ifUSP\kern+0.13em\penalty\@M\ignorespaces% - >> V6,1 BG \def\@AG{\ifAG\let\@LP\@RP\let\@gotl\@gotr% \fi}% -Apply ancient guillemets if required \def\f@guillemets{<<}% +% do not repeat the non breakable space +\newif\ifsp@inog \def\@oguills{% + \ifeFr@Guifine% + \let\eFresp@gui=\eFrFinSp@ce% + \else\let\eFresp@gui=\nbsp@ce% no space to be made unbreakable + \fi% +% don't redefine punctuation behavior + \Ponctu@ctivedtrue \bgroup\@ifundefined{@OuvOpen}{\def\@OuvOpen{}% -avoid duplicate << \@ifundefined{ly}{\@og}% {\leavevmode\ifECM\hbox{{\ifGIAF\else\@gfnt\fi% \ifx\@gotl\undefined\char\rq\@LP% - \else\@gotl\fi\kern+0.20em}}% +% \else\@gotl\fi\kern+0.20em}}% - >> V6,1 BG + \else\@gotl\fi% + \ifeFr@Guifine% + \let\eFresp@gui=\eFrFinSp@ce% + \else\let\eFresp@gui=\nbsp@ce\fi% + \ifsp@inog\eFresp@gui\fi}}% V6,11 RJ \else\hbox{{\ly\@LP\kern-0.20em\@LP\kern+0.20em}}\fi% \nobreak}}{}\egroup}% %\def>{\ifnum\catcode`> =\active% look at \normalbrackets................. ">>" @@ -3525,17 +3610,21 @@ \else\let\@grORI\grammar\def\grammar{\nofrenchguillemets\@grORI}% \fi% +\newif\ifsp@infg \def\@@FG{\ifCG\f@issue% \@fw{-14- %\@txt@msg{fermeture de guillemets non ouverts}% }\fi% - \ifUSP\unskip\kern+0.13em\else% - \ifdim\lastskip>\z@\unskip% -skip previous space - \penalty\@M% -don't break here - \space% -better than \kern - \penalty\@M% +% don't redefine punctuation behavior + \Ponctu@ctivedtrue + \ifeFr@Guifine% + \USP@GuiFinSpatrue% \fi% - \kern-0.19em% + \ifUSP\USP@GuiFinSpatrue\fi% FG full space not used + \ifUSP@GuiFinSpa\unskip\eFrFinSp@ce% + \else + \ifdim\lastskip>\z@\unskip\nbsp@ce\fi% \fi% + \sp@infgfalse \xdef\@tempd{\@currenvir}\def\@tempe{guillemets}% \ifx\@tempd\@tempe% \@CGroup\@fguills% -end group if any and put closing guillemets @@ -3568,7 +3657,16 @@ \else\@staring\@stared\egroup\fi\fi% \global\let\ifCG\iftrue\let\@CGroup\relax}% \def\@fguills{\@ifundefined{ly}{\@cg}% -ECM - {\nobreak\leavevmode\ifECM\hbox{{\ifGIAF\else\@gfnt\fi\kern+0.20em% + {\nobreak\leavevmode\ifECM\hbox{{\ifGIAF\else\@gfnt\fi% +%\kern+0.20em% bg +% don't redefine punctuation behavior + \Ponctu@ctivedtrue + \ifsp@infg + \ifeFr@Guifine\let\eFresp@gui=\eFrFinSp@ce% + \else\let\eFresp@gui=\nbsp@ce\fi% + \ifUSP\unskip\space\fi + \ifdim\lastskip>\z@\unskip\eFresp@gui\fi + \fi \ifx\@gotr\undefined\char\rq\@RP% \else\@gotr\fi}}% \else\hbox{{\ly\kern+0.20em\@RP\kern-0.20em\@RP}}\fi}% @@ -4170,7 +4268,7 @@ \ifFMA\@oguills% -<< char...\leftguillemets \else<<\fi}% \def\rightguillemets{\@noBDfr% - \ifFMA\@fguills% ->> char..\rightguillemets + \ifFMA\sp@infgtrue\@fguills% ->> char..\rightguillemets \else>>\fi}% \def\fup{\@noBDfr\ifFTY% -.............................................. \fup \expandafter\@fup\fi}\MakeRobustCommand{fup}% |