From 97dc41b4b9989605f603429280836ec60a723002 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 14 Jan 2019 22:05:08 +0000 Subject: e-french (14jan19) git-svn-id: svn://tug.org/texlive/trunk@49700 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/generic/e-french/test/XeLaTeX/frenT1xe.pdf | Bin 0 -> 275049 bytes .../doc/generic/e-french/test/XeLaTeX/frenT1xe.tex | 87 + .../doc/generic/e-french/test/XeLaTeX/french.tst | 3678 ++++++++++++++++++++ .../generic/e-french/test/XeLaTeX/lisez-moi.txt | 1 + 4 files changed, 3766 insertions(+) create mode 100644 Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/frenT1xe.pdf create mode 100644 Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/frenT1xe.tex create mode 100644 Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/french.tst create mode 100644 Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/lisez-moi.txt (limited to 'Master/texmf-dist/doc/generic/e-french/test') diff --git a/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/frenT1xe.pdf b/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/frenT1xe.pdf new file mode 100644 index 00000000000..8f44ea1d435 Binary files /dev/null and b/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/frenT1xe.pdf differ diff --git a/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/frenT1xe.tex b/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/frenT1xe.tex new file mode 100644 index 00000000000..22ebc1a0b1c --- /dev/null +++ b/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/frenT1xe.tex @@ -0,0 +1,87 @@ +% !TeX program =XeLatex +% This is frenT1lb.tex +% +% French Torture Test with LaTeX (main style: book) +% Copyright Bernard Gaulle as in french.doc +% +% last mods 2006/04/25 +% +\advance\hoffset by -10pt% marge droite (chez moi) pas totalement imprimee +\documentclass[twocolumn,a4paper]{book}% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%% si vous n'avez pas utilise kbconfig, probablement avez-vous besoin de : +%\usepackage[T1]{fontenc}% pour utiliser les fontes a la norme Cork (DC,...) +%\usepackage[utf8]{inputenc}% pour le codage d'entree, ici utf8, XeLaTex s'en passe +\usepackage{eurosym} % pour euro +\usepackage{xltxtra}% pour le logo de XeTeX +%\DeclareUnicodeCharacter{20AC}\euro de ceci aussi, XeLaTex s'en passe +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\usepackage{mysmall,mylist} +%\usepackage{epstopdf} %converting to PDF +%\usepackage{french}% Maintenant on peut utiliser cette syntaxe: +\usepackage[anglais,francais]{mlp} +\setlength{\textheight}{225mm}% a4paper is a little shorter...than a4.sty +\advance\hoffset by 40pt% for better placement +\listfiles + \catcode`« \active + \catcode`» \active + \def«{\guillemotleft } + \def»{\guillemotright} + +\setlength{\textwidth}{410pt}%% +\catcode`\@=11 +\let\Stop\undefined\ifx\@@end\undefined\let\@@end\end\fi +% Localisation code for numbered \typeout: "\kbAissue% localise it." +% For debugging one can remove "msg" access, just uncomment +%\let\kbAissue\relax% this line. + \ifx\kbAissue\undefined% +% Firstly we add the material to use the "msg" package for localization. + \def\kb@issue#1#2{\kb@issue@[#1]#2\void}% The local \issuemsg macro. + % which will call the real one; + % #1 is the macro message required. + % #2 is the message header + msg number + % such as "^^J -234-", just message + % number (234) is kept. + \let\kbAissue\kb@issue% + \def\kb@issue@[#1]#2-#3-#4\void{\issuemsg[#1]#3(french)}% + \ifx\issuemsg\undefined\let\kbAissue\relax\let\typeouA\typeout\fi% + \fi% +% +\ifx\endfrench\switchtolanguage +\kbAissue% localise it. + \typeout{-37a- ANOMALIE : extension french active ici.}\Stop +\@@end +\fi +\def\LPLAIN{lplain} +\ifx\fmtname\LPLAIN\else\relax + \def\LPLAIN{LaTeX2e} + \ifx\fmtname\LPLAIN\else\relax + \typeout{**********************************************} +\kbAissue% localise it. + \typeout{-36- ANOMALIE \string: nom de format LaTeX (\fmtname) invalide.} + \typeouA{CORRIGER pour avoir \fmtname=\LPLAIN\space ou ancien nom.} +\Stop% Vous devez avoir dans ltvers.dtx : \def\fmtname{LaTeX2e} ! +\@@end + \fi +\fi +\catcode`\@=12 +\let\iflatex\iftrue +\def\SmsG{\typeout% + {\string<\string<--------------------------------------------------------}} +\def\FmsG{\typeout% + {--------------------------------------------------------\string>\string>}} +{\SmsG\obeyspaces +\typeout{( Test de torture du style \frenchname} +\typeout{(Ce test genere deliberement quelques messages d'erreur. )} +\typeout{(Pour vous permettre de distinguer les messages d'erreur )} +\typeout{(normaux de ceux qui sont anormaux, j'ai encadre, comme )} +\typeout{(ici, ces messages ; ne vous en preoccupez pas. --bg )} +\FmsG}% +\frenchtest +\ifx\endfrench\switchtolanguage\else +\kbAissue% localise it. + \typeout{-37b- ANOMALIE \string: extension french inactive ici.}\Stop\fi +\end{document} +%% +%% checksum = "56133 79 312 3522" +%% diff --git a/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/french.tst b/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/french.tst new file mode 100644 index 00000000000..847aabe41c0 --- /dev/null +++ b/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/french.tst @@ -0,0 +1,3678 @@ +% !TeX encoding = utf8 +% This is the french torture file for all formats. +% Copyright Bernard Gaulle as in french.doc +% +% À passer en 8 bits conformément à votre système +% +%% checksum = "25011 3750 14847 120214" +%% +% +% For localisation: +% +\makeatletter% +\ifx\documentclass\undefined\let\kbAissue\relax\let\typeouA\typeout% +\else% + \let\typeouA\@gobble% +% For debugging one can remove "msg" access, just uncomment +%\let\kbAissue\relax% this line. + \ifx\kbAissue\undefined% +% Firstly we add the material to use the "msg" package for localization. + \def\kb@issue#1#2{\kb@issue@[#1]#2\void}% The local \issuemsg macro. + % which will call the real one; + % #1 is the macro message required. + % #2 is the message header + msg number + % such as "^^J -234-", just message + % number (234) is kept. + \let\kbAissue\kb@issue% + \def\kb@issue@[#1]#2-#3-#4\void{\issuemsg[#1]#3(french)}% + \ifx\issuemsg\undefined\let\kbAissue\relax\let\typeouA\typeout\fi% + \fi% +\fi% +\makeatother% +% +% For better debugging: +%\ifx\IeC\undefined code dont XeLaTex se passe +%\kbAissue% localise it. +%\typeout{^^J-66- ERROR! This file can't be typeset without any input} +% \typeouA{-66- encoding declaration (look at keyboard or inputenc packages.)} +%\expandafter\stop% \usepackage[latin1]{keyboard} should be fine. +%\fi +\let\FP\frenchpack\hyphenation{e-french} % anciennement French-Pro +\wlog{Formating \jobname\space with\space\FP\space(\frenchstyleid)} +% +% +\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi% +\ProvidesFile{french.tst}% + [2005/05/11 The torture test file for the package \FP]% **last mods** +\ifx\undefined\FmsG\def\FmsG{}\def\SmsG{}\fi +% +{\catcode`\<=\active\catcode`\>=\active% +% Je veux : +%\global\def<{\left\langle}\global\def>{\right\rangle} +% Et pour ne pas pouvoir avoir l'effet que localement, +% je fais : +\gdef<{\myinf}\gdef>{\mysup} +} +\label{nulllabel}% null \label for AmSTeX test \ref within a \ref +\iflatex\makeindex \makeglossary + \csname frhyphex\endcsname% load (again) the exceptions, outside babel + \def\NL#1{\Sauter#1Lignes} + \begin{document} + \makeatletter + \ifx\babel@savevariable\undefined% + \let\FRENCH\frenchTeXmods% + \else\def\FRENCH{\selectlanguage{french}}% pour babel + \fi% + \makeatother + \csname onecolumn\endcsname % avoid writting \onecolumn + % (special effect in frencht.tex) + \renewcommand{\thepage}{\roman{page}}% + \ifx\documentclass\undefined\else% for 2e + % As 2e doesn't accept \verb in arguments: + \gdef\myverb|#1|{%\nonfrench + \texttt{#1}% + %\endnonfrench + \relax}% + \fi +\else + \let\FRENCH\frenchTeXmods% + \def\NL#1{\par} +\fi +\ifx\myverb\undefined\let\myverb=\verb\fi% +% global here is just req. for TeX--XeT tests. +\global\let\myinf\inferieura% A no-op def +\global\let\mysup\superieura% for a temporary action +\ifx\undefined\english\let\english\relax\fi% +% Les \ldots sont $\ldots$ a cause de AmSLaTeX V1.1 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\HyphDiff#1#2{{\setbox0=\vbox{% + \pretolerance=-1 \hyphenpenalty=-10000 + \hsize=0pt \leftskip=0pt \rightskip=0pt \parfillskip=0pt + \parindent=0pt \hfuzz=\maxdimen \interlinepenalty=0 + \clubpenalty=0 \widowpenalty=0 \brokenpenalty=0 + \hskip 0pt #1}% + \setbox2=\hbox{}% + \setbox9=\vbox{\unvbox 0 \loop \unskip \setbox1=\lastbox + \ifhbox 1 + \global\setbox 2 = \hbox{% + \unhbox 1 \discretionary{}{}{}% + \unhbox 2}% + \repeat}% +\setbox3\hbox{#2}\ifnum\wd2=\wd3\else +\kbAissue% localise it. +\typeout{-31- Wrong French Hyphenation\string! + Are you sure to run with a format ***********} +\typeouA{-31- in which the french patterns were + installed at initex time\string? ***********} +\ifECM\else% +\kbAissue% localise it. +\typeout{-32- if yes try to switch to T1 font + encoding (\noexpand\usepackage[T1]{fontenc})***} +\fi% +\showhyphens{#1}\typeout{(should be\string: #2) + \string<\string<======== *********************************} +\fi}} +\HyphDiff{éventualité}{éven-tua-lité} +\HyphDiff{dégazonnage}{dé-ga-zon-nage} +\HyphDiff{chromosomique}{chro-mo-so-mique} +%%%% +\SmsG% +\typeout{V\'% + erification de la sortie de caract\`% + eres 8-bits \string:} +\message{L'\'% \typeout ne transforme pas en 8bits pour l'instant. + et\'% + e est l\`% + a en ao\^% + ut \string!} +\typeout{Et si les caractères sont en utf8 \string:} +\message{L'été est en août \string!} +\typeout{Ce n'est pas mieux} +\iflatex% +\typeout{Essai de macro d'accentuation dans un ordre \string\showhyphens % + \string:} +\showhyphens{Faut-il croire \`% + a l'\'% + ETERNIT\'% + E ? \'% + eludons ...} +\showhyphens{Ao\^% + ut 2001 ou l'autre \`% + ere ...} +\fi% +\FmsG% +% +\english% Title page is in english +\ifx\documentclass\undefined % Still Plain! so no \DeclareFontFamily +\else% +% To avoid "No file OMScmtt.fd" message 2004/10/29 +\DeclareFontFamily{OMS}{cmtt}{\skewchar\font48 } +\DeclareFontShape{OMS}{cmtt}{m}{n}% + {<->ssub*cmsy/m/n}{} +\DeclareFontShape{OMS}{cmtt}{m}{it}% + {<->ssub*cmsy/m/n}{} +\DeclareFontShape{OMS}{cmtt}{m}{sl}% + {<->ssub*cmsy/m/n}{} +\DeclareFontShape{OMS}{cmtt}{m}{sc}% + {<->ssub*cmsy/m/n}{} +\DeclareFontShape{OMS}{cmtt}{bx}{n}% + {<->ssub*cmsy/b/n}{} +\DeclareFontShape{OMS}{cmtt}{bx}{it}% + {<->ssub*cmsy/b/n}{} +\DeclareFontShape{OMS}{cmtt}{bx}{sl}% + {<->ssub*cmsy/b/n}{} +\DeclareFontShape{OMS}{cmtt}{bx}{sc}% + {<->ssub*cmsy/b/n}{} +%%%%%%%%%%%%%%%%%%%%%%% +\fi% +\makeatletter% for \f@encoding +\french +\title{\fbox{ \FP\ avec \XeLaTeX% +% \thanks{We are here in english, notice the problem when we use, +% like in \texttt{frenchla}, a +% {\mdseries\texttt{\textbackslash fnsymbol}} +% in a box.\newline% +% \indent \hspace*{0.5em} +% Notice also that +% {\mdseries\texttt{\textbackslash backslash}} +% can't be used.% +% }% + }\\ \ \\% + Version \frenchstyleid\\ \ \\ + ``Torture'' Test (\jobname) \\ with + \ifx\encodingdefault\undefined Unknown + \else\ifx\f@encoding\undefined\encodingdefault{} + \else\f@encoding{} \fi + \fi Font Encoding\\\ } + \author{Bernard {\sc Gaulle}% + \thanks{Thanks to those good guys who helped me.\newline% + \indent\hspace*{0.5em} + This test note is also referred by a + {\mdseries\texttt{\textbackslash refmark}} call. + \label{title:thanks}% + }% + \\ \ \\ et...\refmark{title:thanks}\\[2em]% +Revisited 2018 by Raymond Juillerat for \XeLaTeX + }% +% AmS \normalparindent no more exists 2000/06/15, so the code is removed. +%\makeatletter% Don't let AMS change \parindent +%\ifx\RIfM@\undefined\else\normalparindent=1em\parindent=\normalparindent\fi% +%\makeatother +\makeatother% +\date{Printed on \today} +% As the titlepage is in English but the date in French we let \ier defined: +{\def\ier{ier}\maketitle} +\setcounter{page}{2}\thispagestyle{empty} +\cleardoublepage\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\onecolumn +\sommaire[4] +\bigskip +\begin{center} +\noindent\fbox{% +\begin{minipage}[t]{0.5\textwidth} +\begin{center} \fbox{\parbox{5cm}{{\bf Remarque} : \\ la commande +\texttt{\backslash som\-maire}\label{pbverb}% +\footnote{Cette note a été demandée depuis une minipage.}% +\footnote{Cette deuxième note aussi.} +%%%%NB : \verb|\sommaire| ou \verb|\tableofcontents| produisent des HORREURS, +%%%% lorsqu'ils ont utilises dans un \fbox, BUG LATEX ! + est un apport de \FP.\hfill}} +\end{center} +\end{minipage} +} +\end{center} + +{% Not a LaTeX redefinition : \def\thefootnote{\fnsymbol{footnote}} +\renewcommand{\thefootnote}{\fnsymbol{footnote}}% +Essai de note avec \verb|\fnsymbol| +\footnote{Note avec une étoile.}. + +\def\thefootnote{\relax} +Essai de note de bas de page non numérotée +\footnote{Note non numérotée.}. +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\cleardoublepage +\chapter*{\prefacename} + +{\em Certains croient qu'une préface peut apporter de la valeur au livre, +moi je pense plutôt que cela apporte de la {\em valeur} +à l'auteur...} (dans +tous les sens du terme). + +\cleardoublepage + +\twocolumn +\renewcommand{\thepage}{\arabic{page}}\setcounter{page}{1}% +\chapter*{Introduction} + +\begin{motsclef} +french, style, francisation, francophonie, multilingue, +english, option, extension. +\end{motsclef} + +\begin{resume} +Ce document a été conçu +uniquement pour tester intensivement \FP\ (anciennement appelé +option de style% + \glossary{<< : ; style ? ! >>}\index{<< : ; style ? >>}% + \footnote{Cette note a pour but de faire appel à une macro + \texttt{\backslash index} contenant des caractères actifs.% + \index{<< : ; depuis la note de bas de page ? >>}% + } +\index{french!Le point d'exclamation est un caractère spécial de Makeindex}% +\index{<@{\tt\protect\inferieura} ({\tt\protect\backslash inferieura})}% +\index{>@{\tt\protect\superieura} ({\tt\protect\backslash superieura})}% +\index{Magic di N'Konga (auteur célèbre)}% + \texttt{FrenchPro}). +\end{resume} + +\bigskip Notez que les deux environnements \verb|resume| et \verb|motsclef| +(ainsi que \verb|keywords|) +sont des apports de \FP. + +\bigskip Si le libellé << Résumé >> apparaît dans la partie + anglaise, cela +signifie que \FP\ ne possédait pas de définition +d'\verb|\abstract| et donc l'a remplacé par \verb|\resume|. Cela signifie +aussi que les libellés anglais n'ont pas été définis +%(\verb|\captionnames|% +%\footnote{Une extension {\tt fenglish} est fournie conjointement avec +%\FP\ ; {\tt\backslash captionnames} y est défini. +%Cette extension {\tt +%fenglish} est automatiquement appelée par \FP\ dans le +%cas que nous avons cité.} +% n'était pas défini par les extensions appelées avant +% \FP). +Rappelez-vous aussi que \verb|\abstract| ne fait pas partie de la classe +de document \verb|book|. + +Remarquez les différences entre les numéros de notes de bas de page en +français et en anglais, ainsi que l'impression de ce même numéro en +bas de la page. + +\english\newpage +\begin{keywords} %???\relax% for AMS which has its own macro with #1 +French, Style, Option, Package, French-Speaking usage, English, Multilingual. +\end{keywords} + +\begin{abstract} The object of this paper is to test intensively \FP. +\end{abstract} +\NL1 + +\bigskip Notice that the three environments +\verb|resume|, \verb|keywords| and \verb|motsclef| +are all introduced by \FP. + +\bigskip Notice that if the abstract name printed here is not ``Abstract'' you +are using packages that have no \verb|\abstractname| defined for eng\-lish. + The english package defining such captions is loaded only +if \verb|\captionsnames|% +\footnote{The {\tt fenglish} package is given with \FP, +so {\tt$\backslash$captionnames} are normally defined because +\FP\ is calling automatically the {\tt fenglish} package in the +pre\-viously cited case.} was +previously undefined. (Remember also that as \verb|\abstract| is not defined +in the \verb|book| document class the \FP\ assumes it is a +\verb|\resume|.) + +Notice the different typesetting of the footnote numbers in French and English +as well as the printing of that numbers before the footnote text.\vfill + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%\pagebreak +\french +\part{Ce qui marche est ici...} +\disallowuchyph% ce que je prefere... + +\chapter{Avertissements} + +Seul le document authentique qui est fourni par l'auteur + sous une forme composée +constitue la référence. Cela veut dire que l'installateur de \FP\ +sur un système doit comparer son résultat +(sous forme papier ou +fichier \verb|.pdf|) avec la forme authentique fournie par l'auteur. + +\bigskip + +\bigskip \FP\ a été conçu pour fonctionner +avec la majorité des formats basés sur \LaTeX{} +\footnote{Au siècle dernier (XX\ieme), \FP\ était appelé << style +\texttt{french} >> et pouvait fonctionner en dehors de \LaTeX\ mais +l'effort pour assurer cette facilité dans de trop nombreux formats +exotiques était totalement disproportionné ; ceci a donc été +abandonné (au moment de la sortie de \LaTeXe).}% +. + +\bigskip \AllTeX{} est mon logo ; il symbolise {\em tous les \TeX{}} ; on peut +l'imprimer correctement dans toutes les polices ({\em \AllTeX}, {\bf \AllTeX}, +{\sf \AllTeX}, {\tt \AllTeX}, ...) grâce à la partie NFSS de \LaTeXe% +\footnote{Le document de référence ({\tt frenchrf}) +a été produit avec NFSS. Ce document-ci a été composé avec le format +{\tt \fmtname}.} +. + +\newpage\english Only the authentic author's document in a composed form is +the reference. That means that the on site \FP\ installator must +compare his result (paper or \verb|.pdf| file) with the authentic form +provided by the author. +\NL2 + +\bigskip \FP\ was designed to work with all {\em formats\/} +based on \LaTeX. + +\bigskip \AllTeX{} is my logo ; it's a symbol for expressing +{\em all \TeX{}} ; one can print it correctly in all shapes +({\em \AllTeX}, {\bf \AllTeX}, +{\sf \AllTeX}, {\tt \AllTeX}, etc.) due to the NFSS part of \LaTeXe% +\footnote{The +reference document was produced with NFSS of {\tt \fmtname}.}% +. + +\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{La torture} + +\section{Le saviez-vous ?} Nos journaux, livres, revues, +articles scientifiques ou autres ont été (en gros) durant les trente +dernières années du vingtième siècle imprimés +par des machines d'origine +américaine. Ainsi, petit à petit, nous perdîmes +l'habitude de lire des +majuscules accentuées parce que tout simplement les polices + de caractères +utilisables sur ces machines n'en comportaient pas. + +L'usage de plus en plus généralisé de l'infor\-ma\-tique +{\em américaine} fit ainsi disparaître pendant un temps tous + les accents de notre langue écrite. + +De la même manière un certain nombre de +{\em mauvaises habitudes} furent +prises quasiment inconsciemment tout simplement parce que les programmes +informatiques ne pouvaient pas faire autrement. Ainsi de nombreuses {\it +coquetteries} de notre typographie sont tombées dans l'oubli. + +Saviez-vous par exemple qu'on n'imprime pas des guillemets comme ceci `` '' ni +même ` ' mais ainsi << >> ? Nous nous autoriserons toutefois + à utiliser dans +ce document ces guillemets %\noenglishquote +(` ') que nous considérons comme +{\em techniques}. + +\newpage\english \section{Did you know that?} +Our (french) +newspapers, books, magazines, scientific articles and other things have +been printed the last thirty years (roughly) +of the twentiest century with american machines. So our +habits to read accented uppercase letters declined because they simply were +not included in the machinery.\NL2 + +Together with American computer usage growth, all french +diacritics disappeared from our french written language.\NL1 + +In a same way {\em bad +habits} took place, inconsciously, for the only reason that computer programs +could not do otherwise. So, a lot of french typographic {\em coquetteries\/} +are largely forgotten.\NL1 + + Did you know for example that we never typeset french +guillemets like this `` '' neither ` ' but% +{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f@encoding\else% +\footnote{We switched to \emph{French} here to be able % + to print valid glyphs.}% +\fi} % +\begin{french}<< and >>\end{french}? Instead, we will +authorised ourselves to use (` ') in this document +because we consider they are {\em technical} guillemets. +\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +*** Cet espace est laissé intentionellement à blanc *** +\NL3 +\section{Typographie française} +%\noenglishquote +La typographie française est spécifique en ce qui concerne +l'utilisation des signes sui\-vants : +`\verb|.| \verb|:| \verb|;| \verb|!| \verb|?| \verb|<<| \verb|>>|'. + +La répartition des espaces dans une ligne se fait de façon +équitable entre les +mots (jamais à l'intérieur des mots) et après +la ponctuation (c'est le +\verb|\frenchspacing| de \TeX{}) contrairement à la + typographie anglaise. + +Les `\verb|; ! ?|' doivent être précédés d'une espace fine +insécable. C'est +ce que nous avons appliqué dans \FP. +Le cas du `\verb|?|' +a été traité spécialement car l'espace fine ayant +été jugée trop grande (par +des spécialistes), a été réduite tout en adjoignant une peu de +{\em glue} d'extensibilité. + +En ce qui concerne le `\verb|:|', le code typogra\-phi\-que% +\footnote{Nous +avons choisi d'adopter les recommandations de l'imprimerie nationale +française.} précise qu'il est précédé +d'une espace {\em mot\/} +insécable. +D'autres ont jugé que c'était inesthétique et cela a été +remplacé par une espace fine. + +Les guillemets français << doivent être suivis d'une espace mot +insécable qui +a été remplacée ici par une espace moindre. +Les guillemets fermants >> +sont, eux, précédés de la même espace. + +\SmsG% +Lorsque la ligne n'est pas assez remplie et qu'il existe un `:', les +typographes ont --~semble-\hbox{t-il}~-- l'habitude +de répartir largement les espaces autour +des deux points. C'est ce qui a été fait dans \FP\ qui +pourra éventuellement produire une ligne : peu remplie\footnote{Le cas présenté ici a été +créé artificiellement et peut donc apparaître exagéré dans +certaines mises-en-pages.}% +\penalty-10000% + ou aussi bien une ligne se terminant ainsi : << {\em com\-me % \- pour fourier +font les pros\/} >> +lorsqu'ils ne trouvent pas d'autre moyen mais il devrait s'agir que de cas +extrêmes. À noter que cela a pour avantage de réduire les +\verb|over/under-full hbox| de façon significative. + +Paragraphe de remplissage...\\ ...\\... pour vérifier que le `:' ne +termine ni la page ni la colonne. Ainsi : + +%\englishquote +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{itemize} +\item %qu'il s'agisse de verbatim ou d'une liste d'éléments +les deux points et le texte qui suit +sont tous deux sur la même page. +\end{itemize} +%\newpage % already done with the previous list +\FmsG% +\english + +\smallskip + +\section{French printing} + +French printing use specific typographic rules specially in concern with +the following: `. : ; ! ?' and french guillemets. + +Interword spacing in a line is allways equal (and never modified inside a +word). It's the same way after punctuation (standard \verb|\frenchspacing|) as +opposed to the english typography.\NL1 + +All `; ! ?' are preceeded by a thin and uncuttable space. We apply this +automatically in \FP. (We have added few stretching {\em glue} to +the question mark).\NL2 + +Regarding the `:' we have not inserted an inter-word space but a thin space +and also have added some glue.\NL2 + +\smallskip +French guillemets are processed the same way. \NL3 + +In an {\em underfull\/} line containing a `:' man has habits to share spaces +around the double points. This way used in \FP\ can also produce a +line with a ragged right, as shown in the french column. This technique + reduce a lot of {\em overfull} and {\em underfull} {\tt hboxes} +produced by \TeX{}. +\NL3 + +As shown also, \FP\ is reluctant to print a double point at the +end of a page or a column.\french%\noenglishquote +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\section[Dactylographie française]{Rappels concernant la \newline +dactylographie} + +Les habitudes de saisie c.-à-d. les habitudes dactylographiques, + veulent que les signes suivants +`\verb|:| \verb|;| \verb|!| \verb|?| \verb|>>|' +soient toujours précédés d'un blanc +(barre d'espace sur les claviers) et les \verb|<<| toujours +suivis d'un blanc. \FP\ remplacera +automatiquement ce blanc (à la composition) par l'espace appropriée. + +{\moretolerance\moretolerance\moretolerance +Les guillemets français << (et respectivement >>)... +\footnote{\tthyphenation Avec les options fournies +telles \vers|A4| et \vers|double|\-\vers|column| on obtient + là un \vers|overfull| \vers|hbox| difficilement réductible +de façon automatique mais je l'ai réduit +avec 3 \texttt{\backslash moretolerance}% +\notthyphenation.} +\par} +%\nooverfullhboxmark + +Les vrais guillemets français << (et respectivement >>) +s'utilisent toujours doublés (\verb|<<| et respectivement +\verb|>>|). Ainsi $<$ et $>$ ne +sont que des signes mathématiques et n'ont pas +d'autre sens en français que : {\em inférieur à} et +{\em supérieur à}. + +Il est fortement conseillé de poursuivre +ces habitudes dactylographiques qui +contribuent aussi à éclaircir le texte +saisi et donc ainsi à faciliter les +corrections ultérieures. +\NL1 + +\subsection[Test de la ponctuation française + \mdseries`\protect\myverb|. : ; ! ?|'] +{Test de la ponctuation \newline française + \mdseries`\protect\myverb|. : ; ! ?|'} + +Le deux points s'imprime comme ceci : s'il est précédé d'un blanc +(au moins un) sinon rien n'est changé (par ex. 11:33). Notez +l'espace après le point terminant la phrase ; le point virgule +est aussi précédé d'une espace fine s'il n'est pas collé +au mot le précédant (comme dans cet exemple dû à une faute +de frappe; assez fréquente).\\ +{\moretolerance +Oh ! Quoi-donc ? Notez ici l'espacement utilisé +devant le `!' et le `?'. Il ne faut +pas oublier aussi de taper le blanc avant, sinon? tout est +%terriblement + collé! Voyez-vous la différence ? Bravo ! +} + +Mais pour les documents {\em mal\/} saisis (c.-à-d. sans blanc) il est +toujours possible de spécifier la sous-option \verb|\untypedspaces| +\untypedspaces pour obtenir une insertion automatique des espaces +manquants comme ici! où il avait été saisi `\verb|ici!|'. +Vérifions pour les autres ponctuations :;? \typedspaces que nous +n'obtenons pas :;? serrées comme ici. + +Vérification de l'espacement : + +\noindent +\verb| \typedspaces X~; Y ; Z;| = \typedspaces X~; Y ; Z; + +\noindent +\verb|\untypedspaces X~; Y ; Z;| = \untypedspaces X~; Y ; Z; \typedspaces + +\newpage\english +\section{French typing} +French typists have some habits. For example they type a space before `: ; ! ? +\verb|>>|' and after \verb|<<|. \FP\ replace automatically this +blank space by the appropriate spacing. + +There is only one kind of quoting in French by the mean of guillemets which +are allways typed \verb|<<| and \verb|>>|. Usual english simple and double +quotes must be prohibited. + +\subsection{\mdseries% + \texttt{\textbackslash untypedspaces}}% +This control command offers the ability to repair automatically a document +badly typed i.e. in which spaces were not typed before french punctuation. +This bypass can help but is not the good way to use daily because there are +many cases where, for example, a double point must never be preceeded +by a space. + +Now we verify that the spacing is unchanged in English: + +\noindent +\verb| \typedspaces X~; Y ; Z;| = \typedspaces X~; Y ; Z; + +\noindent +\verb|\untypedspaces X~; Y ; Z;| = \untypedspaces X~; Y ; Z; \typedspaces + +\subsection{\mdseries% + \texttt{\textbackslash wrongtypedspaces}} +A french typist may input spaces before +punctuation as it is usual in French. These unfortunate space + can be removed by simply letting \FP\ do it with* the control +sequence: + +\begin{verbatim} +\letpunctuationactivefor + \wrongtypedspaces +\end{verbatim} + +\FRENCH% pour ne pas dire \french +\letpunctuationactivefor\wrongtypedspaces +\english +Let's try the previous example:\par +\noindent +\verb| X~; Y ; Z;| = X~; Y ; Z; + +Now we say \verb|\nowrongtypedspaces| +\nowrongtypedspaces to come back to the normal +situation. + +\vfill +\french +\nowrongtypedspaces% to be sure it is set when english text is skipped +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\csname StopFrenchLbT\endcsname% special case, temporary. + +\section[Test des guillemets français 7-bits (<< >>) +et utf8 (« ») +]% +{Test des guillemets \newline français (<< >>)} +\hyphenation{nor-ma-le-ment} + +Les guillemets français s'écrivent et se saisissent +<< normalement >> comme ceci : +\verb|<< |{\tt nor}\-% +{\tt male}\-{\tt ment }\verb|>>| + ou éventuellement en italiques mais toujours +\bgroup% for frenchle +<< \em normalement\/ >> % +\egroup% for frenchle +; ici nous avons tapé au clavier : +\verb|<< \em| {\tt normalement}\verb| >>|. +Et en tapant par contre :\\ \verb|<<\em| + {\tt anormale\-ment (sans espace)}\verb|>>| \ on obtient... +\bgroup% for frenchle +<<\em anormale\-ment (sans espace)\/>>. +\egroup% for frenchle +Re\-mar\-quez que les guillemets font office d'acco\-lades \TeX{} et que donc +les changements de polices sont restaurés en sortant de la citation. + +Pour les documents déjà saisis {\em sans espace} << \FP\ >> +insérera systématiquement un espace à l'endroit +désiré si l'on a donné la sous-option \verb|\untypedspaces|. +\untypedspaces +Et en tapant à nouveau +\verb|<<\em| {\tt anormale\-ment (sans espace)}\verb|>>| on obtient +\bgroup% for frenchle +<<\em anormalement (sans espace)\/>>. +\egroup% for frenchle +\typedspaces + +Parfois on désirera remplacer systématiquement tous les +guillemets anglais (`` et '') d'un texte par de vrais guillemets +français, il +suffira alors de fournir l'étrange option :\\ +\texttt{\backslash noenglishdoublequotes}\\ +\noenglishdoublequotes pour obtenir : `` ''. + +`` '' (même test en début de paragraphe).\englishdoublequotes + +Lorsqu'une citation est faite dans un texte, celle-ci commence +toujours par des guillemets. << Cette citation peut se poursuivre sur +plusieurs paragraphes. + +Dans ce cas, le style %\verb|french| +insérera systématiquement les guillemets nécessaires +en début de +chaque paragraphe. >> + +Mais une citation peut aussi en contenir une autre. << Dans ce cas l'imprimerie + nationale précise dans ses {\em Règles typographiques} : +\ancientguillemets + << Lors\-que la première citation est +elle-même placée entre +guillemets, chaque ligne de la seconde débutera par un +guillemet ouvrant. >> +Ce dispositif, comme on le voit, n'est pas mis en œuvre ici + (voir son application au paragraphe \ref{noeveryparguillemets}). + << La deuxième citation peut aussi... + +se poursuivre sur un ou +plusieurs paragra\-phes. >> Notez bien qu'avant cette citation nous avons +demandé les \verb|\ancientguillemets| +pour produire ces guillemets fermants +en début de ligne. Le \verb|\todayguillemets| rétablit la +situation une fois +le deuxième niveau terminé. \todayguillemets + +{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f@encoding +\enlargethispage{10pt}% increase probably due to EC fonts metrics? +\fi} +Il arrive que la fin d'une citation de deux\-ième niveau +coïncide avec celle +du premier niveau. << Dans ce cas il faudra coder, comme ici :\\ +\verb|\endguillemets| +à la place de ``\verb|>>|'' \endguillemets. + +Deux tests : \fbox{\begin{guillemets} XXX \end{guillemets}} +et \fbox{X \begin{guillemets} XXX \end{guillemets} X} servant à +vérifier l'espacement quand on utilise \verb|\begin| et \verb|\end|. + +Le paragraphe suivant va alors démarrer de façon +tout à fait normale... + +On peut aussi coder : +\begin{verbatim} +\begin{guillemets} +Une citation... +\end{guillemets} +\end{verbatim} +ce qui donnera : +\begin{guillemets} +Une citation... +\end{guillemets} +et en tapant {\em à la \TeX} : \verb|\guillemets{}| \verb|Une citation...| +\verb|\en|\vers|d|\-\vers|guillemets{}| nous devons obtenir absolument la même chose : +\guillemets{} Une citation... \endguillemets{} + +Vérifions maintenant l'espacement dans les différents cas : + +\noindent +\fbox{\parbox{2cm}{<>}} \%\texttt{\backslash typedspaces} + {\em sans blanc} + +\noindent +\fbox{\parbox{2cm}{<< X\dotfill X >>}} \%\texttt{\backslash typedspaces} +{\em normal} + +\noindent\untypedspaces +\fbox{\parbox{2cm}{<< X\dotfill X >>}} \%\texttt{\backslash untypedspaces} +{\em avec blanc} + +\noindent +\fbox{\parbox{2cm}{<>}} \%\texttt{\backslash untypedspaces} +{\em sans blanc} +\typedspaces + +\noindent +\fbox{\parbox{3cm}{A blabla bla blabla : << +Ceci est mon test de césure >>}} <<...>> reste possible. + +\begin{flushleft} + Ceci est << un test avec \verb|\raggedright| >> qui +--~théoriquement~-- ne devrait plus nous poser de problème. +\end{flushleft} + +\subsection{{\mdseries% +\texttt{\textbackslash noeveryparguillemets}}}\label{noeveryparguillemets} +Cette option permet de gérer correctement les citations de second +rang mais elle est tout à fait contraire + au processus \verb|\everypar| cité précédemment grâce auquel + les guillemets sont générés automatiquement à chaque +début de paragraphe. +Voici ce que produit l'option {\em normale\/} +\texttt{\backslash every\-par\-guil\-lemets} sur le paragraphe suivant : + +<< Tout le monde s'accorde à trouver légitime la division : +{\tt extra-ordinaire}. Le cas des mots com\-posés est le seul +à rencontrer +cette unanimité. Dans les autres, les opinions sont très partagées. + Frey est le plus catégorique : il n'admet de division selon la formation +que pour des mots de composition complètement française, et la rejette +sinon... Le {\em Code typographique}, tout en adoptant ce même point + de vue << ... [reconnaît] néanmoins que certains auteurs de travaux +scientifiques préfèrent la division éty\-mologique +qui fait ressortir + la racine grecque ou latine. >> Quant à Gouriou, il écrit : +<< On préfèrera cependant garder la coupure étymologique + chaque fois que les composants sont {\em aisément} re\-connaissables. >> +(L'italique est de Gouriou.) +\marginpar{{\footnotesize Ici on a triché avec des} \texttt{\backslash!}} +\!Telle \!est aussi \!l'opinion \!de \!Girodet >>. + +Et voici l'effet de \verb|\noeveryparguillemets| : +\noeveryparguillemets + +<< Tout le monde s'accorde à trouver légitime la division : +{\tt extra-ordinaire}. Le cas des mots com\-posés est le seul +à rencontrer +cette unanimité. Dans les autres, les opinions sont très partagées. + Frey est le plus catégorique : il n'admet de division selon la formation +que pour des mots de composition complètement française, et la rejette +sinon... Le {\em Code typo\-graphique}, tout en adoptant ce même point + de vue << ... [reconnaît] néanmoins que certains auteurs de travaux +scientifiques préfèrent la division éty\-mologique +qui fait ressortir + la racine grecque ou latine. >> Quant à Gouriou, il écrit : +<< On préfèrera cependant garder la coupure étymologique + chaque fois que les composants sont {\em aisément} re\-connaissables. >> +(L'itali\-que est de Gouriou.) +Telle est aussi l'opinion de Girodet >>. +\everyparguillemets + +Il faut noter que cette option impose que le paragraphe commence et se +termine par des guillemets. % sinon code \guillpar et \parguill +C'est pour cela que nous n'avons pas mis cette option par défaut. + +\subsubsection{Un test assez méchant} +Voici un exemple d'utilisation dans un environement \verb|quotation|% +\footnote{Nous avons introduit \texttt{\backslash moretolerance} +pour obtenir une composition correcte.} : +\begin{quotation} +\moretolerance\moretolerance\moretolerance +<< Je ne peux mieux faire que de citer la définition qu'a donnée +de la gravure un de nos maîtres fondeurs, Fournier le Jeune : + +<< La scien\-ce du graveur, dit-il, consiste à connaître la figure +la plus parfaite que l'on puisse donner aux caractères, les dimensions +qu'ils doivent avoir et à les représenter sur l'acier pour les frapper +sur le cuivre afin d'en former des matrices qui perpétuent des lettres +à l'infini par la fonte. \endguillemets +\end{quotation} + +Le même exemple sans \verb|quotation| : + +<< Je ne peux mieux faire que de citer la définition qu'a donnée +de la gravure un de nos maîtres fondeurs, Fournier le Jeune : + +<< La scien\-ce du graveur, dit-il, consiste à con\-naître la figure +la plus parfaite que l'on puisse donner aux caractères, les dimensions +qu'ils doivent avoir et à les représenter sur l'acier pour les frapper +sur le cuivre afin d'en former des matrices qui perpétuent des lettres +à l'infini par la fonte. \endguillemets +\bigskip + +\noeveryparguillemets +Puis avec \verb|\noeveryparguillemets| (c.-à-d. sans \verb|quotation|) : + +<< Je ne peux mieux faire que de citer la définition qu'a donnée +de la gravure un de nos maîtres fondeurs, Fournier le Jeune : + +<< La scien\-ce du graveur, dit-il, consiste à connaî\-tre la figure +la plus parfaite que l'on puisse donner aux caractères, les dimensions +qu'ils doivent avoir et à les représenter sur l'acier pour les frapper +sur le cuivre afin d'en former des matrices qui perpétuent des lettres +à l'infini par la % En cas d'arrêt à cet endroit : le format +fonte. \endguillemets%.fmt utilisé n'est prob. pas ds le bon codage ! +\bigskip + +Et enfin avec \verb|quotation|, voilà +ce que cela peut donner\label{quotation} : +%%% La \marginpar suivante pose un pb de ``Lost Float'' qd elle est +%%% placee plus loin, pourquoi ? +\marginpar{{\footnotesize Il y a ici un problème à étudier en 2 colonnes !}} +\begin{quotation} +<< Je ne peux mieux faire que de citer la définition qu'a donnée +de la gravure un de nos maîtres fondeurs, Fournier le Jeune : + +<< La scien\-ce du graveur, dit-il, consis\-te à connaître la figure +la plus parfaite que l'on puisse donner aux caractères, les dimensions +qu'ils doivent avoir et à les représenter sur l'acier pour les frapper +sur le cuivre afin d'en former des matrices qui perpétuent des lettres +à l'infini par la fonte. + \endguillemets +\end{quotation} +\everyparguillemets +On notera ici les espaces inter-mots beaucoup plus {\em tolérants}. C'est +la seule solution trouvée pour arriver à imprimer +quelque chose d'à peu +près correct en double colonnage. + +Essayons les \verb|\og| et \verb|\fg| ainsi :\\ +\verb|Ceci \og est entre guillemets \fg.|\\ +Ceci \og est entre guillemets \fg. + + +\vfill +Terminons la page en anglais pour tester le haut de page. Les guillemets +doivent être bons avec le codage T1. + +\english +Let's complete the page with english text in order to test and show +how will be printed the header. +\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\onecolumn +\subsubsection{Même test en \mdseries\texttt{\textbackslash onecolumn}} +Voici un exemple en environement \verb|quotation| : +\begin{quotation} +<< Je ne peux mieux faire que de citer la définition qu'a donnée +de la gravure un de nos maîtres fondeurs, Fournier le Jeune : + +<< La scien\-ce du graveur, dit-il, consiste à connaître la figure +la plus parfaite que l'on puisse donner aux caractères, les dimensions +qu'ils doivent avoir et à les représenter sur l'acier pour les frapper +sur le cuivre afin d'en former des matrices qui perpétuent des lettres +à l'infini par la fonte. \endguillemets +\end{quotation} + +Le même exemple sans \verb|quotation| : + +<< Je ne peux mieux faire que de citer la définition qu'a donnée +de la gravure un de nos maîtres fondeurs, Fournier le Jeune : + +<< La scien\-ce du graveur, dit-il, consiste à connaître la figure +la plus parfaite que l'on puisse donner aux caractères, les dimensions +qu'ils doivent avoir et à les représenter sur l'acier pour les frapper +sur le cuivre afin d'en former des matrices qui perpétuent des lettres +à l'infini par la fonte. \endguillemets +\bigskip + +\noeveryparguillemets +Puis avec \verb|\noeveryparguillemets| (sans \verb|quotation|) : + +<< Je ne peux mieux faire que de citer la définition qu'a donnée +de la gravure un de nos maîtres fondeurs, Fournier le Jeune : + +<< La scien\-ce du graveur, dit-il, consiste à connaître la figure +la plus parfaite que l'on puisse donner aux caractères, les dimensions +qu'ils doivent avoir et à les représenter sur l'acier pour les frapper +sur le cuivre afin d'en former des matrices qui perpétuent des lettres +à l'infini par la fonte. \endguillemets +\bigskip + +Et enfin avec \verb|quotation| : +\begin{quotation} + \let\bkORI\break + %\def\break{\bkORI\hbox to 0pt{/}}% for debug + %\ancientguillemets% for debug +<< Je ne peux mieux faire que de citer la définition qu'a donné +de la gravure un de nos maîtres fondeurs, Fournier le Jeune : + +<< La scien\-ce du graveur, dit-il, consiste à connaître la figure +la plus parfaite que l'on puisse donner aux caractères, les dimensions +qu'ils doivent avoir et à les représenter sur l'acier pour les frapper +sur le cuivre afin d'en former des matrices qui perpétuent des lettres +à l'infini par la fonte. \endguillemets +\end{quotation} +\everyparguillemets + +\subsubsection{Test de << stretchability >>} + +Les espaces doivent être également répartis sur la ligne : + +\medskip +\hbox to \hsize{etiord-gauche\footnote{En plain \TeX{} l'espacement est ici +\label{etiord} + curieusement incorrect ! ...} + << centre-ertnec >> \hbox{}\footnote{... alors qu'il faudrait +la même répartition + de l'espace.}% + ehcuag-droite} +\medskip + +\subsection{Test des commandes \mdseries\texttt{\textbackslash ifnum}} + +\ifnum 1 < 3 1\verb| < |3 est VRAI, bien sûr ! + \else 1\verb| < |3 est FAUX ! \fi +comme +\ifnum 3 > 1 3\verb| > |1 est aussi VRAI, bien sûr ! + \else 3\verb| > |1 est FAUX ! \fi + +\medskip + +\subsection{Test des commandes \mdseries\texttt{\textbackslash everypar}} + +{J'ai codé dans cette section \verb|\everypar{$++\,$}| : \everypar{$++\,$} + +Paragraphe 1 << citation niveau 1 + +Paragraphe 2 << citation niveau 2 + +Paragraphe 3 fin citation niveau 2 >> puis fin niveau 1 >> + +Paragraphe 4} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage% tjrs en 1 colonne +\hbox{}\ifx\itshape\undefined\else% avoid old frencht crash +\subsection{Test de fermeture prématurée} + +Il arrive que les guillemets soient fermés dans un environnement +plus intérieur qui n'apparie donc pas correctement les blocs. +Voici un exemple d'utilisation : + +\begin{verbatim} +Maître Corbeau dit à son clerc : << \itshape Cher collègue, + +\begin{itemize} +\item Ah que vous êtes joli ! +\item Ah que vous me semblez beau ! >> \upshape +et s'enfuit de ce pas... +\end{itemize} + +\endguillemets +\textsf{Quel homme étrange, n'est-ce pas ?} +\end{verbatim} + +Voici ce que cela donne comme composition : + +\medskip +\bgroup% for frenchle +Maître Corbeau dit à son clerc : << \itshape Cher collègue, + +\SmsG% +\begin{itemize} +\item Ah que vous êtes joli ! +\item Ah que vous me semblez beau ! >> \upshape +et s'enfuit de ce pas... +\end{itemize} +\FmsG% + +\endguillemets +\egroup% for frenchle +\textsf{Quel homme étrange, n'est-ce pas ?} + +\medskip +On notera plusieurs choses. Premièrement il a fallu +rétablir \verb|\upshape| après les guillemets fermants, +du fait du mauvais appariement des blocs. Ensuite un message +sort indiquant une fermeture prématurée des guillemets. +Cette fermeture restant incomplète on note enfin que l'on a forcé +un \verb|\endguillemets| pour clore proprement et définitivement +l'environnement guillemets. + +\subsection{\mdseries\texttt{\textbackslash everyparguillemetsremoved}} +\label{noeveryparguillemetsremoved} +Dans le même exemple nous pouvons aussi interdire la génération +automatique des guillemets ouvrants à chaque début de paragraphe ; +il faut alors saisir \verb|\everyparguillemetsremoved| : +\everyparguillemetsremoved + +\medskip +\bgroup% for frenchle +Maître Corbeau dit à son clerc : << \itshape Cher collègue, + +\SmsG% +\begin{itemize} +\item Ah que vous êtes joli ! +\item Ah que vous me semblez beau ! >> \upshape +et s'enfuit de ce pas... +\end{itemize} +\FmsG% + +\endguillemets +\egroup% for frenchle +\textsf{Quel homme étrange, n'est-ce pas ?} + +\medskip +Il suffit ensuite de rétablir \verb|\everyparguillemets|. +\everyparguillemets +\fi% ifx \itshape + +\subsection{Test de l'espacement} +{\def\marque#1{\vbox{\halign{\hfil##\hfil\cr + \llap{\vrule width4.5mm height.4pt}% + \rlap{\vrule width4.5mm height.4pt}\cr + \noalign{\vskip-1cm}% + #1\cr}}} + \Huge + \def\ecartement{\fbox{a << \marque{\hbox{$|$}} >> b}} + \ecartement +} +% Difference de taille a voir entre les deux %%%%%% +\setbox7\hbox{\leftguillemets\ X} +\setbox8\hbox{X\ \rightguillemets} +\SmsG% +\message{Taille des boites page \thepage\space \string: + \the\wd7=\string?=\the\wd8} +\FmsG% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\onecolumn +\newpage +\hbox{} +\vfill +\centerline{\Large Page intentionnellement laissée blanche} +\vfill +\twocolumn +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage + +\subsection{Guillemets interrompus} +Une citation peut être en anglais et donc se commencer par +\vers|<< \|\vers|english| et se terminer par \vers|\|\vers|french >>|. Ce cas +ne doit plus générer de message +{\em fermeture de guillemets non ouverts} ! +Voici le test, réalisé ici +tout d'abord avec l'environnement \vers|nonfrench| : + +\medskip +1 \fbox{<< \begin{nonfrench}% LaTeX keeps space + Text in English + \end{nonfrench}% LaTeX keeps space + >>} + + +\medskip +Puis avec : \\ +\verb|\begin{english}| ... \verb|\end{english}| : + +\medskip +% bypass here our TeX--XeT emulation to avoid message: english environment +% ended by \end{guillemets} +\def\temp{\begingroup} +\ifx\beginL\temp +\else +{% local redef of english for plain and our specific test file + \ifx\undefined\englishORI\else\let\english\englishORI\fi% +2 \fbox{<< \begin{english}% LaTeX keeps space + Text in English + \end{english}% LaTeX keeps space + >>} + +\medskip +Et enfin avec \verb|\|\verb|english| ... \verb|\endenglish| : + +\medskip +3 \fbox{<< {\csname english\endcsname + Text in English + \csname endenglish\endcsname}% space here to remove + >>} +}% local redef of english for plain test +\fi + +\medskip +Ceci avait aussi pour but de tester ces possibilités de +changement de langage et de vérifier l'espacement qui +devrait être ainsi : + +\medskip +0 \fbox{<< Text in English >>} + +\noenglishdoublequotes +\subsection{`` {\mdseries\texttt{\textbackslash noenglishdoublequotes}} ''} + +Nous avons mis la commande \vers|\noenglish|\-\vers|doublequotes| juste avant +le titre de section de façon à remplacer les << quotes >> anglaises +par des guillemets français dans ce titre. +Il s'agit de vérifier aussi que la génération des fichiers auxiliaires +\verb|.aux| et \verb|.toc| ne pose pas de problème lorsque ces fichiers +sont réutilisés. Bien sûr, si cette option n'est pas activée pour tout le +document, comme ici, on ne retrouvera pas les guillemets français +dans la table des matières. + +\noenglishdoublequotes + +\english% histoire de changer de langue ? +\french +%\newpage +\subsection%{<< no-french guillemets >>} + {\mdseries\texttt{\textbackslash nofrenchguillemets}} +En codant \verb|\nofrenchguillemets| +\nofrenchguillemets on n'utilise plus +les guillemets programmés dans l'extension {\tt french}. Si on les utilise +malgré tout, le résultat dépendra de la police. Ici nous utilisons la +police \fontname\font{} et nous obtenons : + +<% + < en 7-bits >% + > + +et aussi : + +<< en 8-bits >>. + +Réactivons maintenant les guillemets avec la commande +\verb|\frenchguillemets| +\frenchguillemets et faisons le même test : + +<% + < en 7-bits >% + > + +et aussi : + +<< en 8-bits >>. Voyez-vous ? +\vfill +\subsection{Haut de page+guillemets} + +\subsubsection{En 8-bits} +Il ne devrait pas y avoir de problème du tout. +Car, puisqu'il s'agit d'un guillemet en 8-bits, cela doit +être forcément un vrai guillemet français. Mais, malheureusement, +{\em la solution pour l'implémenter n'est pas encore trouvée avec +le codage OT1 ; mais avec le codage TU de XeTeX il y a une possibilité, +voir ci-dessous}. +Le codage de fonte de ce document imprime : +\nonfrench <% + < >% + >% +\endnonfrench{} + (doit être parfait en T1 et qui l'est aussi ici sous Xe\LaTeX). + +\subsubsection{En 7-bits} +En codage OT1 les guillemets 7-bits de haut de page ne peuvent être +bons sur cette page + {\bf QUE} parce que nous avons terminé la +page en français, sinon nous aurions eu : +\ifx\textexclamdown\undefined + \def\textexclamdown{¡}\def\textquestiondown{¿} +\fi +\textexclamdown\textexclamdown{} et \textquestiondown\textquestiondown. + +\textbf{Remarque :} OT1 concerne une autre version de ce document +qui était utilisée bien avant \XeLaTeX. + \subsubsection{En Utf8 avec \XeLaTeX} +Pour des guillemets corrects avec \XeLaTeX{} et source en Utf8, +je propose cette insertion dans le source.\\ + \verb| \catcode\char|«\verb|\active|\\ + \verb| \catcode\char|»\verb|\active|\\ + \verb| \def|«\verb|{\guillemotleft}|\\ + \verb| \def|»\verb|{\guillemotright}|\\ + +Ce sont les définitions ici utilisées dans ce document. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\hbox{ }\NL{24} + +\subsection{Guillemets et maths} + +L'équation suivante ne doit plus produire le fameux message : + +{\tt ! Argument of \backslash \string @genG % string pour amslatex + has an extra % { pour emacs + $\}$% c'est un \delimiter qui pose pb tq avec frencht d'ou mode math +.} + +$$U^{k+1}=U^{k}- {< g_{k},d_{k} >}$$ + +\section{D'autres guillemets}\label{autres} +Avec \FP\ il est possible de substituer automatiquement aux +guillemets `anglais' la forme \noenglishquote `que voici' en donnant la +sous-option \verb|\noenglishquote|. +Mais attention, les apostrophes deviennent des accents +comme dans : {\em il s'agit ici de l'exemple} +\englishquote qui aurait dû être imprimé : +{\em il s'agit ici de l'exemple}. +Un usage intensif de cette option est plutôt à déconseiller. + +\newpage +\english +\section{French guillemets} +Using french guillemets in an english document (\verb|<<| and \verb|>>|) will +give (depending of font encoding) that: << and >>, it is normal! + +As you can look in the previous columns, french guillemets have specific +rules. They are used for quotation when an author is cited or each time an +emphasis is needed. Normally, italic is not used inside a quoted french +text, excepted when you really want to show some wording. + +When opened, each paragraph of the quoted text will start left + with the opening french guillemets. + +Another quotated text can take place inside a first level. This second level +citation is also very specific. Each line must start with guillemets. + +The style designer, from time to time, chose to apply here an ancient rule +by putting here closing guillemets. + +The technical tools involved in \FP\ + disallow to have at the same time +the \verb|\everypar| possibility and the second level mechanism. + +\subsection{Guillemets and maths} + +The following equation is always correct: + +$$U^{k+1}=U^{k}- {< g_{k},d_{k} >}$$ + +and never produce an error message. +\NL1 + +\section{Other guillemets} +With \FP\ it is possible to replace english guillemets by +diacritic caracters. But, be careful, all apostrophes will be diacritics too. +\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\section{Trois petits points} +Les points de suspension sont : ... et non pas ceux de \TeX{} : $\ldots{}$ +\noTeXdots +En codant \verb|\noTeXdots| les commandes \verb|\dots| ou \verb|\ldots| de +\LaTeX{} donneront : $\ldots{}$ Mais l'option par défaut a été +volontairement maintenue au standard (\verb|\TeXdots|) puisqu'il suffit +de ne pas les utiliser.\TeXdots + +\section{Crochets} +IBM, en son temps, avait créé l'EBCDIC dans lequel ne figurait pas +les crochets ([ ]). C'est la raison pour laquelle les utilisateurs IBM +ont parfois substitué $<$ et $>$ aux crochets. La sous option +\verb|\EBCDICbrackets| \EBCDICbrackets +permet de les remplacer comme ici par des crochets. +Mais faites attention, les doubles guillemets +\verb|<|\verb|<| et \verb|>|\verb|>| % pour eviter la conversion 8bits + ne donneront jamais des crochets mais << et >> +(sauf en mode \verb|verbatim|). On peut en général +se contenter de \verb|< <| et \verb|> >| pour obtenir < < et > >. +On revient à la situation antérieure en tapant la commande suivante : +\verb|\normalbrackets|\normalbrackets. + +\section{Débordements} +Nous venons de choisir l'option d'indication de débordement de ligne +\verb|\overfullhboxmark| et nous voyons son +effet lorsque la ligne ne peut être coupée grâce à l'impression +de la petite boîte noire. +%(cf. page \pageref{debordement}). +Cette option est activée au minimum pour une page entière. +Ne pas spécifier l'option et son contraire sur la même page sinon +l'effet est inchangé. + +\labelsinmargin +\section{\mdseries\texttt{\textbackslash labelsinmargin}}% +\label{labels: in: margin} +\FP\ offre la possibilité, comme cela a été demandé +à partir de cette section, d'imprimer dans la marge le libellé des +étiquettes utilisées dans les ordres \verb|\label|. +Cette option, utilisable +aussi en dehors du français, est la suivante : +\verb|\labelsinmargin|. + +\newpage\english +\section{Three dots} +Usual and common \TeX{} and \LaTeX{} dots are not french dots. +\NL4 + +\section{Brackets} +An option is offered to replace \verb|<| and \verb|>| by brackets. +\NL{11} + +\section{\mdseries\texttt{\textbackslash overfullhboxmark}} +The command \verb|\overfullhboxmark| print a black +box where your have an overfull \verb|hbox| i.e.\ when a line can't be +hyphenated. The default is \verb|\nooverfullhboxmark|. +\NL4 + +\section{Labels in margin}\label{labels are in margin} +An option allow you to print the labels you use in a page. These labels are +printed in margins. +\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\section{Des points sur...} +Inutile de mettre les points sur les i quand on accentue un i. Tout bon +éditeur de texte doit faire ce travail pour vous. Sinon il existe la +sous-option \verb|\idotless| qui produira \idotless +\let\XX\^% Pour éviter une traduction éventuelle en 8 bits +\XX{i} si on lui demande d'imprimer \verb|\^i|. +\iwithdot La valeur par défaut +dans \FP\ est \verb|\iwithdot| qui donnera malgré tout de +bons i accentués avec ML\TeX{} (î) s'ils sont saisis directement en 8 +bits (vérifiez dans votre fichier source). + +{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f@encoding +\section{Ponctuation et mode \protect\linebreak % SPECIAL FONTES EC REELLES + mathématique} +\else +\section{Ponctuation et mode mathématique} +\fi} +Il s'agit de vérifier que les modifications introduites +par l'extension \FP\ +ne posent aucun genre de problème en mode mathématique. +\\ Nous définissons une macro \verb|\test| : +\\ \verb|\def\test#1{#1}|\def\test#1{#1} +\\ pour voir si le mode mathématique peut être appelé +sans problème en +argument de macro-instructions. L'appel de \verb|\test{$x''$}| ne doit +pas poser de problème% +\iflatex +, ni même \verb|\texttt{|\-\verb|[$x''=0$]}| +\\ Ainsi : \verb|\texttt{[$x''=0$]}| +\\donne : \texttt{[$x''=0$]} et +\else% +. \\Ainsi : +\fi +\\ \verb|$A':B''_1D^2\ et\,\ !n\ ?\ ;$| +\\ \verb|\test{$A':B''_1D^2\ et\,\ !n\ ?\ ;$ +\\\phantom{donne :} \test{$A':B''_1D^2\ et\,\ !n\ ?\ ;$ +\\\phantom{donne :} \test{$A':B''_1D^2\ et\,\ !n\ ?\ ; +$$% \end{displaymath} +$$% \begin{displaymath} + \test{A':B''_1% + >$)} +\end{verbatim} +doit s'imprimer :\\ +{\tt CALL SUBR($<$iopt$<$,ilopt$>% + >$)}\\ +sans produire le message d'erreur << Fermeture de guillemets non ouverts ! >>. +\englishdoublequotes + + +\newpage\english +\section{An \i dotless} +Everybody knows that a french ``{\em i circonflexe}'' has no dot on it. +(In my opinion it is a \TeX{} bug to leave the dot when a diacritic is +put on.) To suppress the dot automatically the best way is to use a well +programmed text editor. \FP\ offers another opportunity with +\verb|\idotless|. + +\NL3 + +\section[Math mode and punctuation]{Math mode and \newline punctuation} +Here we verify that french modifications about punctation +does not introduce any problem in printing mathematics. +\\ We define a new macro \verb|\test| : +\\ \verb|\def\test#1{#1}|\def\test#1{#1} +\\ in order to see if there is no more problem when passing maths +inside a macro argument. Calling \verb|\test{$x''$}| must not +introduce any problem% +\iflatex +, as well as \verb|\texttt{|\-\verb|[$x''=0$]}| +\NL1\\So: \verb|\texttt{[$x''=0$]}| +\\gives: \texttt{[$x''=0$]} and +\else% +. \NL1\\So: +\fi +\\\verb|$A':B''_1D^2\ et\,\ !n\ ?\ ;$| +\\\verb|\test{$A':B''_1D^2\ et\,\ !n\ ?\ ;$ +\\\phantom{gives:} \test{$A':B''_1D^2\ et\,\ !n\ ?\ ;$ +\\\phantom{gives:} \test{$A':B''_1D^2\ et\,\ !n\ ?\ ; +$$% \end{displaymath} +$$% \begin{displaymath} + \test{A':B''_1% + >$)} +\end{verbatim} +must print:\\ +%\SmsG% +{\tt CALL SUBR($<$iopt$<$,ilopt$>% + >$)}\\ +%\FmsG% +without producing the error message: +``Fermeture de guillemets non ouverts !''. +\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +Pour ma part lorsque je désire des crochets que je n'ai pas +au clavier, je préfère taper :\\ +\verb|{\tt CALL SUBR( >)}| et utiliser +l'option \verb|\EBCDICbrackets|\EBCDICbrackets{} :\\ +{\tt CALL SUBR( >)} + +Cette option n'a pas d'effet en mode mathématique : +$$ 1233 < 1234 <% + < 1235 >% + > 1234 > 1233 $$ +\normalbrackets + +\makeatletter% we should use \frac with AmS +\ifx\RIfM@\undefined%\ifx\csname amsmath.sty\endcsname\relax + \long\def\text#1{#1}\long\def\frac#1#2{{#1\over#2}} +\fi +\makeatother + +Vérifions aussi +($x < {\frac{1}{3}} < {\frac{1}{2}} > {\frac{1}{4}}$) : +$$x < \frac{1}{3} < \frac{1}{2} > \frac{1}{4} $$ +puis aussi : + + \text{\quad pour $|y| < \frac{111}{444}$} + +\bigskip +La double ponctuation ne doit avoir aucun effet +(visible) dans une formule en mode +mathématiques, est-ce bien le cas sur l'exemple ci-dessous : + +{\LARGE $$a := b, (c!n=m) \textrm{ ; vrai ?}$$} + +On notera que la partie texte de la formule a été saisie avec la +commande : \\ +\verb|\textrm{ ; vrai ?}|\\ +et que l'espacement français y a été appliqué. + +\iflatex +\subsection{Le cas de la virgule} +En standard \AllTeX{} (ou alors avec l'option spéciale +\verb|\regularmathcomma| de \FP) le traitement de la virgule +est spécifique, ainsi quand on tape ce qui suit en mode +mathématique de mise en valeur : +\regularmathcomma% +\begin{versatim} +$$\textrm{La fonction}\ f(x,y)\ + \textrm{ou le Vecteur}\ V(x, y, z)$$ +$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{€}$$ +\end{versatim} +on obtient des espacements après les virgules, +qu'il y ait ou non des espaces dans le source \TeX\ : +$$\textrm{La fonction}\ f(x,y)\ + \textrm{ou le Vecteur}\ V(x, y, z)$$ +$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{€}$$ +(ce qui montre une anomalie dans la composition +des nombres relatifs) +\frenchmathcomma +\fi + +\newpage\english +When I have no brackets on my keyboard I prefer to type:\\ +\verb|{\tt CALL SUBR( >)}|\\ using + the option \verb|\EBCDICbrackets| but the result in english +remains unchanged\EBCDICbrackets{}:\\ +{\tt CALL SUBR( >)} + +And within math mode: +$$ 1233 < 1234 <% + < 1235 >% + > 1234 > 1233 $$ +\normalbrackets + +\makeatletter% we should use \frac with AmS +\ifx\RIfM@\undefined%\ifx\csname amsmath.sty\endcsname\relax + \long\def\text#1{#1}\long\def\frac#1#2{{#1\over#2}} +\fi +\makeatother + +Let's verify also ($x < {\frac{1}{3}} < {\frac{1}{2}} > {\frac{1}{4}}$) : +$$x < \frac{1}{3} < \frac{1}{2} > \frac{1}{4}$$ +and: + + \text{\quad pour $|y| < \frac{111}{444}$} + +\bigskip +The ``double punctuation'' should not have any effect +in maths, which is obviously the case in the following +English example: +\NL1 + +{\LARGE $$a := b, (c!n=m) \textrm{ ; vrai ?}$$} + +Though the text part of the formula has been typed +via a command: \\ +\verb|\textrm{ ; vrai ?}|\\ +the french spacing doesn't apply here. + +\iflatex +\subsection{The comma case} +With \AllTeX{} standard (or with the special \FP\ +\verb|\regularmathcomma| the processing of comma is really specific. +So, when you type in the following in display math mode: +\regularmathcomma% +\begin{verbatim} +$$\textrm{La fonction}\ f(x,y)\ + \textrm{ou le Vecteur}\ V(x, y, z)$$ +$$Total=1,255\,\$\ ou\ + 1\,500,00\,\textrm{€}$$ +\end{verbatim} +you will get thin spaces after the commas, +no matter spaces are given or not in the \TeX\ source: +$$\textrm{La fonction}\ f(x,y)\ + \textrm{ou le Vecteur}\ V(x, y, z)$$ +$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{€}$$ +(which shows a french typesetting error for +the relative numbers). +\frenchmathcomma +\fi% + +\iflatex\french +\newpage +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +Par contre avec \FP\ on n'obtient +aucun espacement supplémentaire : +$$\textrm{La fonction}\ f(x,y)\ + \textrm{ou le Vecteur}\ V(x, y, z)$$ +$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{€}$$ +cela est dû à l'option \verb|\frenchmathcomma| qui est +activée par défaut avec \FP. +Mais cela montre alors une anomalie de composition +dans les listes $(x,y,z)$. + +Si l'on veut des espaces il faut alors les indiquer +explicitement, comme cela est l'usage, plus +généralement, en mode mathématique : +\begin{versatim} +$$\textrm{La fonction}\ f(x,\,y)\ + \textrm{ou le Vecteur}\ V(x,\,y,\,z)$$ +$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{€}$$ +\end{versatim} +ce qui donnera : +$$\textrm{La fonction}\ f(x,\,y)\ + \textrm{ou le Vecteur}\ V(x,\,y,\,z)$$ +$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{€}$$ + +\medskip + +On notera que \FP\ obéit à l'extension \texttt{icomma} +lorsque cette dernière est chargée avant \FP, mais +seulement en français. + + +\newpage\english +With the \FP\ package there is no space added +at all: +\frenchmathcomma% +$$\textrm{La fonction}\ f(x,y)\ + \textrm{ou le Vecteur}\ V(x, y, z)$$ +$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{€}$$ +this is due to the option \verb|\frenchmathcomma| which is +defaultly activated in the \FP\ package. +People will then distinguish a typesetting error +in the lists $(x,y,z)$. + +If you want spaces you should then give them to \TeX\ +explicitely, as usually done, more generally in math mode: +\begin{verbatim} +$$\textrm{La fonction}\ f(x,\,y)\ + \textrm{ou le Vecteur}\ + V(x,\,y,\,z)$$ +$$Total=1,255\,\$\ ou\ + 1\,500,00\,\textrm{€}$$ +\end{verbatim} +which will give: +$$\textrm{La fonction}\ f(x,\,y)\ + \textrm{ou le Vecteur}\ V(x,\,y,\,z)$$ +$$Total=1,255\,\$\ ou\ 1\,500,00\,\textrm{€}$$ +\fi + +You should notice that \FP\ respect the choice of +the \texttt{icomma} package when that last one is loaded before +\FP; but it only applies in French. +\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\section{Mon antislash est \mdseries\texttt{\backslash}} + +L'antislash n'existe pas dans toutes les polices en OT1. +Que vous utilisiez \verb|\backslash| ou \verb|\textbackslash| +vous obtiendrez la même chose, ainsi +en romain droit on obtient : + +textbackslash=\textbackslash + +backslash=\backslash + +\noindent +mais avec la fonte tt on obtient : + +{\tt +textbackslash=\textbackslash + +backslash=\backslash +} +\NL2 + +\section{Notes de bas de page} + +\iflatex\makeatletter\xdef\countSAVED{\the\c@footnote}\makeatother\fi +\long\def\XX{% + Numérotation normale\footnote{Une note normalement numérotée.}. + {\setcounter{footnote}{0} + \renewcommand{\thefootnote}{\fnsymbol{footnote}} + + Voici une note\footnote{Première note.} + puis une autre\footnote{Deuxième note.} + puis encore une autre\footnote{Troisième note.} + }} + +Nous comparons ici la composition des notes de bas de page +(avec et sans \verb|\fnsymbol|) +dans une langue et dans l'autre. Voyons ce que cela donne : + +\XX + +\newpage\english +\section{My antislash is \mdseries\texttt{\textbackslash}} + +The antislash glyph doesn't exist in all OT1 font. +Whatever you use, \verb|\backslash| or \verb|\textbackslash| +you will obtain the same output, so +in upright roman you obtain: + +textbackslash=\textbackslash + +backslash=$\backslash$ + +\noindent +but with the tt font you obtain: + +{\tt +textbackslash=\textbackslash + +backslash=$\backslash$ +} + +\noindent +but \verb|\backslash| is only available in +math mode. + +\section{Compared footnotes} + +We compare the typesetting of footnotes +(with and without \verb|\fnsymbol|) +in one language versus the other. Let's look at them. + +\iflatex\makeatletter\c@footnote=\countSAVED\makeatother\fi + +\XX +\iflatex\makeatletter\c@footnote=\countSAVED\makeatother\fi +\addtocounter{footnote}{1} +\NL1 + +\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage + +\section{\mdseries\texttt{\textbackslash guillemetsinarrays}} + +Avec \FP\ l'utilisation de guillemets à la +française en mode texte dans les environnements \texttt{array} ou +\texttt{eqnarray} est possible +mais il est nécessaire de protéger les opérateurs +inférieur (\texttt{<}) et supérieur (\texttt{>}) lorsqu'ils terminent +une colonne. On rajoute alors une paire d'accolades ou \verb|\relax| +pour terminer la macro-commande : +\begin{verbatim} +$ +\begin{array}{ccc} +a & \inferieura &b\\ +a & \protect< &b\\ +a & b &<\\ +a & >{} &c\\ +<{}& << >> &c\\ +<{}& \textrm{<< text >>}&c +\end{array} +$ +\end{verbatim} + +\noindent ce qui donne : + +$ +\begin{array}{ccc} +a & \inferieura &b\\ +a & \protect< &b\\ +a & b &<\\ +a & >{} &c\\ +<{}& << >> &c\\ +<{}& \textrm{<< text >>}&c +\end{array} +$ + +\medskip +On peut éviter d'avoir à modifier des tableaux existants et dans ce +cas on codera \verb|\no|\-\verb|guil|\-\verb|lemetsinarrays| : + +\begin{verbatim} +\noguillemetsinarrays +$ +\begin{array}{ccc} +a & \inferieura &b\\ +a & < &b\\ +a & b &<\\ +a & > &c\\ +< & << >> &c\\ +< & \textrm{<< text >>}&c +\end{array} +$ +\end{verbatim} + +\noindent ce qui donne alors : + +\noguillemetsinarrays +$ +\begin{array}{ccc} +a & \inferieura &b\\ +a & < &b\\ +a & b &<\\ +a & > &c\\ +< & << >> &c\\ +< & \textrm{<< text >>}&c +\end{array} +$ +\guillemetsinarrays% reset default + +\newpage\english +\section{Guillemets in arrays} +The \FP\ package allows people to print french guillemets +in \texttt{array} environments (but in text mode). This usually breaks +the code for \texttt{<} or \texttt{>} when they finish an array slot. +So you should protect them; like this: +\NL2 + +\begin{verbatim} +$ +\begin{array}{ccc} +a & \inferieura &b\\ +a & \protect< &b\\ +a & b &<\\ +a & >{} &c\\ +<{}& \textrm{<< text >>}&c +\end{array} +$ +\end{verbatim} +\NL1 + +\noindent which gives: + +$ +\begin{array}{ccc} +a & \inferieura &b\\ +a & \protect< &b\\ +a & b &<\\ +a & >{} &c\\ +<{}& \textrm{<< text >>}&c +\end{array} +$ +\NL1 + +\medskip + +One can avoid to modify existing arrays and then just say +\verb|\noguillemetsinarrays| but this command is not +interesting in English because the problem doesn't exist +at all: + +\begin{verbatim} +$ +\begin{array}{ccc} +a & \inferieura &b\\ +a & < &b\\ +a & b &<\\ +a & > &c\\ +< & \textrm{<< text >> &c +\end{array} +$ +\end{verbatim} +\NL1 + +\noindent gives the following result: + +\def\GOfrench{\let\ifCLA\iffalse}% To allow dmy and frencht to compile +\ifx\ifCLA\undefined\expandafter\GOfrench\fi% without error. +$ +\begin{array}{ccc} +a & \inferieura &b\\ +a & +\ifCLA\expandafter\protect\fi% To allow \ConstantLayout test file. +< &b\\ +a & b &<\\ +a & +\ifCLA\expandafter\protect\fi% To allow \ConstantLayout test file. +> &c\\ +\ifCLA\expandafter\protect\fi% To allow \ConstantLayout test file. +< & \textrm{<< text >>}&c +\end{array} +$ +\NL1 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\french + +\noguillemetsinarrays% for continuation of column +Cette commande est aussi valable pour les environnements +\texttt{eqnarray} : + +\begin{eqnarray} +a & < &b\\ +a & > &c\\ +< & << >> &c\\ +< & \textrm{<< text >>}&c +\end{eqnarray} + +Pour terminer je rétablis la valeur par défaut : +\verb|\guillemetsinarrays| +\guillemetsinarrays +et si j'essaye le même exemple j'obtiendrais +le message : \\ +{\makeatletter\let\@PreserveBraces={% uggly hack for plain +\vers|! Argument of \@PreserveBraces has an|\\ +\vers|extra }.| +}% closing hack. + +\section{Guillemets verbatim} + +Avec l'option \verb|\nofrenchguillemets| il est possible +--~si \FP\ travaille en codage de fonte du genre \texttt{T1} +{\makeatletter\def\GOfrench{T1}\ifx\GOfrench\f@encoding\else +(mais ca ne semble pas être le cas ici)\fi}% +~-- +\nofrenchguillemets +d'imprimer des guillemets 8-bits en verbatim : \verb|<< >>|. +\frenchguillemets + +\iflatex +\section{Environnement guillemets exclus} + +\begin{versatim} +\guillemets{} Je me suis dit que : +<< avec l'option [...] les guillemets +sont inopérants. \endguillemets{} +\end{versatim} +\SmsG +\noeveryparguillemets +\guillemets{} +\verb|[\guillemets{}]| Je me suis dit que : +<< avec l'option \vers|\noevery|\-\vers|par|\-\vers|guillemets| +on ne doit pas avoir un environnement qui se termine avant la fin +du paragraphe. C'est pourquoi l'environnement \texttt{guillemets} +n'est plus autorisé dans ce cadre. +Désormais un message est émis et ces environnements +guillemets sont inopérants. \endguillemets{} + +On note que \verb|\guillemets{}| n'a aucun effet visible +et que le début de paragraphe est forcé aux premiers +caractères-guillemets ouvrants qui suivent. Le +\verb|\endguillemets{}| de fin d'environnement ferme cependant +le paragraphe. + +\guillemets [\verb|\guillemets{}|]\! +Ces environnements exclus dans le cadre de cette option + peuvent être de premier ou +/\guillemets{} deuxième \endguillemets{}/ niveau +comme ici (slashs). [\verb|\endguillemets{}|] +\endguillemets{} + +\FmsG +\frenchguillemets +\fi% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\english +Notice that with standard \LaTeX\ you obtain a message +saying that \verb|\guillemotleft| and \verb|\guillemotright| +are invalid in math mode when you try to use guillemets +in an \texttt{array} environement. +\NL{9} + +\smallskip + +\section{Verbatim Guillemets} + +The 8bit french guillemets chars printed within +a verbatim environnement give here: \verb|<< >>| + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\french +\section{Utilisation de la \mdseries\texttt{toc}} + +Il n'est pas prévu de pouvoir composer une table des matières ou un +sommaire dans plus d'une langue. +On notera que \verb|\sommaire| est un apport de \FP. + +\section{Fichiers {\mdseries\texttt{lof}} et {\mdseries\texttt{lot}}} +On vérifie ici que la ponctuation française n'a pas créé +d'ennui particulier. +Nous avons laissé en blanc la figure \ref{x<<:;!?>>x} +qui n'est qu'un simple +test. De même le tableau \ref{y`<<:;!?>>'y} n'est là que pour +créer une entrée dans la liste des tableaux. + +Le {\em caption} de la figure +\ref{x<<:;!?>>x} + doit apparaître com\-me ceci : + {\it << essai >> ; 2 cm ! pourquoi pas ?} +\begin{figure}[h] +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\%\vspace*{2cm} +\ \\ +\ Peu importe la figure...\\ +\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\caption{<< essai >> ; 2 cm ! pourquoi pas ? + \protect\\ (cf. aussi le tableau \ref{frenchdactylo})} +\label{x<<:;!?>>x} +\end{figure} + +Le {\em caption} du tableau +\ref{y`<<:;!?>>'y} + doit être comme ceci : +{\it ` << essai >> ; 2 cm ! pourquoi pas ? '} +\begin{table}[h] +\caption{` << essai >> ; 2 cm ! pourquoi pas ? ' + \protect\\ (cf. aussi le tableau \ref{frenchdactylo})} +\label{y`<<:;!?>>'y} + +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +\ \\ +\ Peu importe le tableau\footnote{Une note de tableau.}...\\ +\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\end{table} + +On notera les libellés ({\sc Fig.} et {\sc Tab.}) plus confor\-mes à +l'usage français. Ne pas oublier non plus que les titres de tableaux sont +toujours placés, en français, avant ceux-ci contrairement aux figures. + +\FP\ ne prévoit pas que l'on puisse composer une +partie des tables des figures (ou tableaux) en français et une autre +en anglais par exemple. Les fichiers \verb|.lof| et \verb|.lot| seront +donc composés entièrement dans la langue présélectionnée. + +\newpage\english +\section{{\mdseries\texttt{toc}} file use} +No facility is given to typeset the \verb|.toc| in various languages. + +Notice that \verb|\sommaire| is a new command brought up with this +package. + +\section{{\mdseries\texttt{lof}} and {\mdseries\texttt{lot}} files} +Same test in English just to verify that our french modifications +does not affect the text in English. + +You will notice, of course, that the caption names are re-established +to their original values ({\bf figure} and {\bf table}). + +The following figure (not referable) %(\ref{ex<<:;!?>>ex}) +caption must look like: +<< essai >>; 2 cm! Why not? +\begin{figure}[h] +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +\ \\ +\ No matter how is the figure$\ldots{}$\\ +\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\caption{<< essai >>; 2 cm! Why not? + \protect\\ (cf. also the table \ref{frenchdactylo})} +%\label{ex<<:;!?>>ex}% produit un missing \endcsname +\end{figure} + +The {\em caption} of the table (not referable) %\ref{ey`<<:;!?>>'ey} +must look like: +` << essai >>; 2 cm! Why not? ' +\begin{table}[h] +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +\ \\ +\ No matter how is the table\footnotemark% \footnotetext est perdu ! + $\ldots{}$\\ +\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\caption{` << essai >>; 2 cm! Why not? ' + \protect\\ (cf. also the table \ref{frenchdactylo})} +%\label{ey`<<:;!?>>'ey}% generates missing \endcsname +\end{table}\footnotetext{A note from a table.} +\NL1 + +Notice that we have here the standard caption names used by \LaTeX{}. + +You can see in the French column the specific labels and places of caption +titles (under the figure but over the table). + +Don't try to compose \verb|.lof| and \verb|.lot| files in more than one +language, it's not designed in this (stupid?) way! + +\french +\begin{table*}[tb] +\caption{` << essai >> ; 2 cm ! pourquoi pas ? ' + (cf. aussi le tableau \ref{frenchdactylo})} +\label{2`<<:;!?>>'2} +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +\ \\ +\ Peu importe le tableau sur deux colonnes% +\footnote{Une note de tableau.}...\\ +\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\end{table*} + +\newpage +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Encore un tableau...} +Mais celui-ci est sur deux colonnes si l'option +\verb|twocolumn| est active. Vérifions simplement +que le traitement est le même qu'en une seule +colonne. + +Le {\em caption} du tableau +\ref{2`<<:;!?>>'2} + doit être comme ceci : +{\it ` << essai >> ; 2 cm ! pourquoi pas ? '} + +\section{\sloppy Encore {\mdseries\texttt{\textbackslash labelsinmargin}}} + +À nouveau nous utilisons \verb|\labelsinmargin| +\labelsinmargin +pour vérifier son fonctionnement dans une figure +et un titre de figure + +\begin{figure}[h] +\label{label de la figure} +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +\ \\ +\ Peu importe la figure...\\ +\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\caption{le titre de la figure avec label +\label{label du titre fig.}} +\end{figure} + +Même test avec un tableau : +\begin{table}[h] +\label{label du tableau} +\caption{le titre du tableau avec label\label{label du titre tab.}} +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +\ \\ +\ Peu importe le tableau...\\ +\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\end{table} + +\sloppypar{ +Désactivons définitivement l'option +avec \verb!\nolabelsinmargin!. +} +\nolabelsinmargin + +\newpage\english +\NL8 +\section{{\mdseries\texttt{\textbackslash labelsinmargin}} again} + +Again we test \verb|\labelsinmargin| +\labelsinmargin +to verify that it is running within a figure +and in a figure's caption. + +\begin{figure}[h] +\label{label in a figure} +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +\ \\ +\ No matter the figure$\ldots{}$\\ +\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\caption{title with a label\label{label in fig. caption}} +\end{figure} + +Same test with a table: +\begin{table}[h] +\label{label in a table} +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +\ \\ +\ No matter the table$\ldots{}$\\ +\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\caption{title with a label\label{label in a tab. caption}} +\end{table} + +Disactivate definitely the option with \verb!\nolabelsinmargin!. +\nolabelsinmargin + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\french + +\section{Notes dans \mdseries\texttt{\textbackslash caption}} + +Si une note dans un tableau doit être imprimée à la fin du +tableau, une note dans un titre de tableau doit être +imprimée en fin de page. Malheureusement \LaTeX{} perd +le texte des notes dans les environnements {\tt figure} et +{\tt table}. L'ex\-ten\-sion \FP\ prévient l'utilisateur +que le texte doit être réinséré à l'aide de \verb|\footnotetext|. + +\begin{table}[h] + +\SmsG% +\caption[Essai de footnote dans un caption de tableau] + {Légende\protect\footnote{Une note de bas de page.}} +\FmsG% + +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +%\ \\ +\ Peu importe le tableau...\\ +%\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\end{table} +\footnotetext{Une note de bas de page.} + +\section{{\mdseries\texttt{\textbackslash caption}} vide} + +\begin{table}[h] +\caption{} +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +%\ \\ +\ Tableau sans légende\\ +%\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\end{table} + +\section{\mdseries\texttt{\textbackslash nombre}} + +Les nombres en français sont imprimés correctement lorsque l'on +utilise \verb|\nombre|, ainsi : + +\begin{verbatim} +\nombre{123 456,123 456} +\end{verbatim} +imprime \nombre{123 456,123 456} au lieu de la forme habituelle + {\regularmathcomma $123 456,123 456$} +ou \mbox{123 456,123 456} suivant que l'on est en mode math +ou en mode texte. + +On y voit des espaces fines à chaque millier et (normalement) +une virgule sans espace supplémentaire comme cela se produit +en mode math avec \TeX{} standard. + +\section{Autre chose ?} +Non ! + +[espace libre utilisable] + +\newpage\english + +\section{Notes within \mdseries\texttt{\textbackslash caption}} + +Normally in French we print table's footnotes at the end of the table +but it can't be the case when a footnote is called from a caption title. +But unfortunately footnote's text is lost when inside a \LaTeX{} figure +or table environnement, as shown here. +Thus {\tt french.sty} warn the user with the appropriate message, but +in English nothing is done. + +\begin{table}[h] +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +%\ \\ +\ No matter the table$\ldots{}$\\ +%\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\caption[footnote try within a table's caption] + {Caption title\protect\footnote{A footnote page.}} + +\end{table} +%\footnotetext{A footnote page.} + +\section{Empty \mdseries\texttt{\textbackslash caption}} + +\begin{table}[h] +\begin{center} +\begin{tabular}{|c|} +\hline +\ \hfill \ \\ +%\ \\ +\ Empty caption\\ +%\ \\ +\ \\ +\hline +\end{tabular} +\end{center} +\caption{} +\end{table} + +\section{\mdseries\texttt{\textbackslash nombre}} + +French number should be correctly printed using +\verb|\nombre|, so : + +\begin{verbatim} +\nombre{123 456,123 456} +\end{verbatim} +should not print as usual +$123 456,123 456$ nor \mbox{123 456,123 456} +(depending you are in math or in text mode) +but $123\,456{,}123\,456$. +\NL1 + +We see here thin spaces between each thousand part and no +(usual) space after the comma (as it is in math with standard +\TeX{}). + +\smallskip + +\section{Anything else?} + +No! + +\noindent +[free space to reuse] +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\french +\section{Le 1\protect\fup{er} paragraphe} +Notez bien que le 1\fup{er} paragraphe d'une section +ne commence jamais au fer à gauche +en français, comme vous le voyez ici. + +Le deuxième paragraphe démarre comme le premier...\footnote{% +La typographie du titre de section (1\fup{er}) est à noter ; + {\tt mysmaller.sty} a été utilisé +à la compilation de {\tt frenchrf} avec \LaTeX{}. +Il existe aussi l'extension {\tt relsize} qui fonctionne +bien avec \FP.} + +\section{Test des listes}\label{listes} + +Voici un test d'énumération (\verb|itemize|) de \LaTeX{} : + +\begin{itemize} +\item liste de niveau 1 ; + \begin{itemize} + \item incluant un niveau 2, + \begin{itemize} + \item mais aussi un niveau 3, + \item peu utilisé ; + \end{itemize} + \item le niveau 2 se terminant ici ; + \end{itemize} +\item suite de la liste de niveau 1 ; +\item dernier élément de niveau 1. +\end{itemize} + +On remarquera les deux choses suivantes : +\primo les marqueurs sont identiques quel que soit +le niveau et \secundo aucun élément ne commence par une majuscule. +\NL2 + +\section{Caractères actifs} +Quelques jeux de macros doivent parfois être chargés +directement dans le document +et utilisent les caractères {\em actifs\/} de \FP. Il y +a alors conflit ouvert. Plusieurs solutions sont offertes, soit utiliser +l'ordre : \\ +\verb| \originalinput{fichier}|\\ + soit : +\begin{verbatim} + \begin{nonfrench} + ... macros-instructions... + \end{nonfrench} +\end{verbatim} + +Mais attention n'utilisez pas en français un code que +vous auriez chargé +en anglais ou réciproquement ! + + +\newpage\english +\section{First paragraph} +In English each paragraph is indented except the first one of a section, +subsection, etc. as you can see in this example. + +Subsequent paragraphs start indented$\ldots{}$\NL1 + +\section{Itemized lists} +Here is the same french \verb|itemize| list:\NL1 + +\begin{itemize} +\item liste de niveau 1; + \begin{itemize} + \item incluant un niveau 2, + \begin{itemize} + \item mais aussi un niveau 3, + \item peu utilisé ; + \end{itemize} + \item le niveau 2 se terminant ici ; + \end{itemize} +\item suite de la liste de niveau 1 ; +\item dernier élément de niveau 1. +\end{itemize} + +You can compare english and french lists. +Notice firstly that item markers are identical at each level and secondly +that each item never starts with an uppercase letter. + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Active characters} +Codes that were designed for English might bring problems when used with +\FP\ because few characters are {\em activated\/}. +Few solutions are offered, either:\\ +\verb| \originalinput{file}| + +or: +\begin{verbatim} + \begin{nonfrench} + ... macros-instructions... + \end{nonfrench} +\end{verbatim} +% * * * + +But be carefull, don't use in French a code that was loaded in English +or reciprocally! + +% * * * + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\french + +\section{Abréviations} +\abbreviations +Si on demande \verb|\abbreviations| alors on a +accès à un fichier d'abré\-via\-tions +typo\-graphi\-ques françaises. +Ainsi je saisis \verb|"monseigneur"| et j'imprime "monseigneur"\!. +De même, avec ML\TeX{} je saisis \verb|"deuxième"| +(vérifiez dans le +source que ce mot est bien codé en 8bits) et j'imprime "deuxième"\!% +. %alors que le fichier d'abréviations contient \verb|"deuxi\`|\verb|eme"|. +Ainsi il n'est plus vraiment indispensable de se rappeler que +l'abréviation de madame est "madame" (et maître : "maître"\!). + +Lorsqu'un mot ne figure pas dans le fichier d'abréviations, il est alors +imprimé tel que. Ainsi \verb|"GUTenberg"| imprimera +\SmsG% +"GUTenberg". +\FmsG% + Mais n'oubliez jamais le double guillemet fermant sinon vous obtiendrez + un message du genre : +\begin{versatim} + Paragraph ended before \AbbrevName was complete. +\end{versatim} + +Je peux aussi donner mon fichier personnel d'abréviations en codant :\\ +\verb|\abreviations[mon_fichier_personnel]| + +On retire ces possibilités par la commande \verb|\noabbreviations|. +N'oublions pas que le caractère \verb|"| sert normalement en \TeX{} +comme en \LaTeX{} à exprimer les nombres en hexadécimal. + +\section{Monsieur s'abrège "Monsieur"} + +Que je saisisse \verb|"Monsieur"| ou \verb|"monsieur"| +j'obtiens la même abréviation : "Monsieur" ou "monsieur", respectivement. + +Il n'en est pas toujours de même... ainsi lorsqu'on saisit +\verb|"Numéro"| et \verb|"numéro"| on obtient respectivement : +"Numéro" et "numéro", car \verb|Numéro| +est une entrée dans le fichier des abbréviations où il est écrit +\verb|{Numéro}|. + +Il est désormais possible de placer une abréviation dans un titre +de chapitre ou de section, comme le titre de cette section le +démontre ; nous avons saisi : +\begin{verbatim} +\section{Monsieur s'abrège "Monsieur"} +\end{verbatim} + +\noabbreviations + +\newpage\english + +\section{Abbreviations} +The abbreviation facility offered in \FP\ is based on +an abbreviations file. When requested by \verb|\abbreviations| one +may call any \verb|"abbreviation"|. If this abbreviation is found in the +file it will be replaced by the typographic expansion, if not it will +be printed as is.\NL2 + +But never forget the ending double quotes otherwise you will obtain the +terrible message: +{\tt Paragraph} {\tt ended before} \texttt{\textbackslash AbbrevName} +{\tt was complete.} +\NL4 + +You can have your own abbreviations file by calling: +\verb|\abreviations[my_file]|.\NL1 + +Saying \verb|\noabbreviations| this facility is lost. Remember that the +char \verb|"| is used normally in \TeX{} as in \LaTeX{} to start an +hexadecimal number. + +But used in English, \verb|"monsieur"| will give "monsieur"% +\footnote{Notice the quoting!}. + +\newpage\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Autres macros utiles} +\verb|\fsc{KnUtH}| permet d'imprimer \fsc{KnUtH} et \verb|\lsc{SnCf}| +donne \lsc{SnCf}. Cela doit aussi marcher si le mot commence par une +accentuation comme ici avec le mot \fsc{\'% a laisser tq a cause du 7bits +epinal} et même quand cette accentuation est plus loin dans +le mot comme ici dans \fsc{ANDR\'% a laisser tq a cause du 7bits +E}. + +\bigskip +Voici une note% +\footnote{La note.\label{NOTE}} +de bas de page commandée par \verb|\footnote{La note.\label{NOTE}}|. +Je peux faire à nouveau appel à cette note\refmark{NOTE} + par l'ordre \verb|\refmark{NOTE}|. + +\bigskip +Par analogie avec l'environnement \verb|verse| : +\begin{verse} +%\moretolerance % pour eviter un leger overfull hbox +1\iere{} ligne : cette ligne est bien trop longue, elle doit être coupée autant de fois que nécessaire...\\ +2\ieme{} ligne : le test terrible de...\\% +3\ieme{} ligne : `ceci est le test des quotes'\\ +\end{verse} +\tthyphenation +voici le même test (sans \verb|\\|) +avec l'environnement \vers|versatim| qui est +un environnement \vers|verba|\-\vers|tim| composé +avec des coupures de lignes +comme l'est l'environnement \verb|verse| et dont les {\em quotes} peuvent +être imprimées avec des accents si on précise +\vers|\noenglishquote| : +\noenglishquote +\begin{versatim} +1\iere{} ligne : cette ligne est bien trop longue, elle doit être coupée autant de fois que nécessaire... +2\ieme{} ligne : le test terrible de \end{document} +3\ieme{} ligne : `ceci est le test des quotes' +\end{versatim} +\englishquote + +\allowuchyph +Et maintenant voici l'ordre réduit \verb|\vers| qui +s'utilise comme \verb|\verb| et doit permettre de couper une +longue chaîne de caractères \texttt{ver\-batim}. Celle-ci +sera coupée par défaut entre les mots (\vers|\notthyphe|\-\vers|nation|) +mais pourra l'être à l'intérieur des mots si on précise +\tthyphenation \vers|\tthyphe|\-\vers|nation| comme ici : << +\vers|Longue Chaîne De Caractères À Couper Absolument| >>. +Les mots commençant en majuscule ne pourront être coupés +que si \vers|\uchyph=1|, valeur par défaut dans \FP\ +(\vers|\|\vers|allow|\-\vers|uchyph|) qui est utilisée pour cette +partie uniquement. + +\subsection*{Test de {\mdseries\texttt{\textbackslash fsc}} +(\fsc{French CAPS})} +Ce paragraphe teste la protection de certaines macro-instructions. + +\disallowuchyph\notthyphenation +\newpage\english +\section{Other useful macros} +French patronymic names are printed in small capitals with the first +letter in uppercase. That is done with the \verb|\fsc| macro. +Another macro \verb|\lsc| is available to print all the word(s) in small +capitals, specially usefull for trademark or companies names. + +\LaTeX{} is at the current time unable to print a \verb|\ref| as +a footnotemark, the command \verb|\refmark| is able to do that. + +Also, \LaTeX{} doesn't offer any {\tt verbatim} style able to +hyphenate lines. \FP\ is able to do this with the +environment {\tt versatim} or the \texttt{\textbackslash vers} order within a +line. + +These environments allow to replace the {\tt tt} quoting +({\tt ` '}) by more realistic ones ({\tt\`{ } \'{ }}) with +the order \texttt{\textbackslash noenglishquote}. Of course this environment +produce nothing different from the standard \verb|verbatim| when +used in \verb|\english|: +{\overfullrule=5pt + +\hfuzz=30pt +\begin{versatim} +1\iere{} ligne : cette ligne est bien trop +2\ieme{} ligne : le test terrible de... +3\ieme{} ligne : `ceci est le test des... +\end{versatim} + +\SmsG% + +And now this a test of a long string within a \verb|\vers|: +``\vers|Longue Chaîne De Caractères À Couper A| +This string would be hyphenated only if someone said +\verb|\tthyphenation| previously. +} + +\FmsG% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\french +\section{Accents et {\mdseries\tt tabbing}} +\FP\ apporte une solution pour pouvoir introduire +des lettres accentuées dans un environnement \vers|tabbing| lorsque +le source \TeX{} est en 7bits ou utilise Ml\TeX{} +\footnote{% +Cette option est aussi utile désormais en T1 car les lettres accentuées +sont traduites avec \FP, de façon interne, en 7-bits à la \TeX. + }% + ; c'est l'option par défaut +\vers|\|\vers|tabbing|\-\vers|accents|\tabbingaccents. L'exem\-ple : +\begin{tabbing} +Les TYPES : \= Les matieres \= Les genres \kill +Bidon : \> d'huile \>$A'=B''$\` normal \\ +Caisse : \> \`% + a outils \> rustique \\ +Toile : \> \a`% + a matelas \> confort +\end{tabbing} +\notabbingaccents +doit s'imprimer ainsi : +\begin{tabbing} +Les TYPES : \= Les matieres \= Les genres \kill +Bidon : \> d'huile \>$A'=B''$\` normal \\ +Caisse : \>\a`a outils \> rustique \\ +Toile : \>\a`a matelas \> confort \\ +\end{tabbing} +\vspace*{-0.5\baselineskip} +Nous l'avions saisi comme suit : +\begin{versatim} +\begin{tabbing} +Les TYPES : \= Les matieres \= Les genres \kill +Bidon : \> d'huile \>$A'=B''$\` normal \\ +Caisse : \> \`% + a outils \> rustique \\ +Toile : \> \a`% + a matelas \> confort +\end{tabbing} +\end{versatim} + +\section{Figurettes} +Le style \verb|french| propose un environnement spécial, appelé +\verb|figurette|, + pour placer les figures à l'enfroit exact où +ces figures se présentent +dans le texte. Cela est particulièrement utile pour des petites figures, +domaine où \LaTeX{} n'est pas adapté en standard. +Pour réaliser ceci : + \begin{figurette} + \center\fbox{essai}\endcenter% rajoute pour plain TeX + \caption{Ceci est une figurette} + \label{figurette} + \end{figurette} +Nous avons écrit : +\begin{verbatim} + \begin{figurette} + \center\fbox{essai} + \caption{Ceci est une figurette} + \label{figurette} + \end{figurette} +\end{verbatim} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\english +\section{Diacritics \& {\mdseries\tt tabbing}} +There is no way in a \LaTeX{} \texttt{tabbing} to put diacritics on letters +as we use them usually. Here is how is printed the {\tt tabbing} +you can find in the french part: + +\begin{tabbing} +Les TYPES : \= Les matieres \= Les genres \kill +Bidon : \> d'huile \>$A'=B''$\` normal \\ +Caisse : \> \`% + a outils \> rustique \\ +Toile : \> \`% + a matelas \> confort +\end{tabbing} + +and that would normally be printed as follows: + +\begin{tabbing} +Les TYPES : \= Les matieres \= Les genres \kill +Bidon : \> d'huile \>$A'=B''$\` normal \\ +Caisse : \>\a`a outils \> rustique \\ +Toile : \>\a`a matelas \> confort \\ +\end{tabbing} + + \begin{figurette} + \center\fbox{essai}\endcenter% rajoute pour plain TeX + \caption{Originally a figurette} + \label{engfig} + \end{figurette} +\NL{4} + +\section{Little figures} + +\FP\ offers a special environment called +\verb|figurette| which allows to put little figures EXACTLY +where they appear in the text. This is a lack in the present +versions of \LaTeX{}. In English the environment \verb|figurette| +is replaced by an environment \verb|figure[h]|; look at figure +\ref{engfig} we tried to put here without success and we +typed like this: + +\begin{verbatim} + \begin{figurette} + \center\fbox{essai} + \caption{Originally a figurette} + \label{engfig} + \end{figurette} +\end{verbatim} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\french +\ifx\drapeaufg\undefined\else +\section{Composition \protect\linebreak en drapeau} +À gauche on trouve une composition justifiée standard \LaTeX. +Dessous, une composition avec l'environnement \texttt{drapeaufg} +proposé par l'extension \FP, il s'agit d'une composition +\emph{en drapeau, au fer} à gauche. À droite, il s'agit aussi d'une +composition \emph{en drapeau, au fer} à gauche mais cette fois-ci avec +l'environnement \texttt{drapeaufgIN}, sans coupure de mots, comme cela +est recommandé par l'imprimerie nationale. + +\subsection{Tests ordinaires} +\textbf{\large Texte justifié de référence} + +\medskip +\def\GOfrench{\noindent{\fboxsep 0pt\fboxrule 0.2pt\fbox{\advance\hsize by -2pt + \hbox{\vbox{\noindent +<< Par ailleurs, les lignes n'occupant pas toute la + justification (titres ou légendes le plus souvent) peuvent être + \emph{centrées} ou se présenter alignées verticalement + par la gauche sur la + marge de gauche de la page, ou \XX + verticalement par la droite sur la marge de + droite de la page. On dira alors qu'elles sont composées +\emph{en drapeau, au fer} à gauche ou \emph{en drapeau, au fer} à droite. +Dans ce type de composition, les coupures de mots sont proscrites et les +rejets à la ligne devront obéir à une certaine logique souvent dictée par le +sens. Ainsi on ne séparera pas l'article du substantif, le pronom personnel +sujet de son verbe, l'adjectif numéral du nom auquel il se \XX +rapporte, \etc. >> +(règles Imprimerie Nationale, p~153)% +}}\hss}}} + +\let\XX\relax +\GOfrench + +\hbox{} + +\textbf{\large Drapeau, au fer à gauche} + +\medskip +\begin{drapeaufg} +\GOfrench +\end{drapeaufg} + +\newpage +\enlargethispage{20pt}\hbox{}\smallskip + +\hbox{}\smallskip\NL5 +Dans ce dernier cas, des débordements dans la marge droite +sont possibles ; ils sont à traiter +au cas par cas par de simples coupures de lignes placées aux endroits +recommandés par l'imprimerie nationale (selon texte encadré). Le +dernier texte est ainsi corrigé.\NL3\vspace*{-2.5pt} + +\textbf{\large Drapeau << fg >>, selon IN} + +\medskip +\begin{drapeaufgIN} +\GOfrench +\end{drapeaufgIN} + +\medskip +\textbf{\large Drapeau << fg IN >>, corrigé} + +\medskip +\let\XX\\ +\begin{drapeaufgIN} +\GOfrench +\end{drapeaufgIN} + +\newpage +\subsection{Tests en drapeau << fg >>, aux limites} +Voici deux tests aux limites de la composition +\emph{en drapeau, au fer} à gauche, sur une colonne +étroite (2cm) tout d'abord avec l'environnement +\texttt{drapeaufg} et ensuite avec la recommandation +de l'imprimerie nationale appliquée à +\FP\ (ou interprètée par l'environnement \texttt{drapeaufgIN}). + +Les coefficients de laideur (\texttt{badness}) +acceptés sont élevés, c'est la raison pour laquelle +aucun message d'\texttt{underfull hbox} +(tout comme celui d'\texttt{overfull}) +n'est émis dans les deux cas +ci-dessous. + +\bigskip + +\def\temp{\noindent{\fboxsep 0pt\fboxrule 0.2pt\fbox{\advance\hsize by -2pt + \hbox{\vbox{\noindent + instit instits +institut instituts +institution institutions +institutionnel institutionnels +institutionnelle institutionnelles +institutionnellement +constitutionnellement +inconstitutionnellement +}}\hss}}} + +\let\XX\relax +\parbox{2cm}{% +\begin{drapeaufg} +\hsize=2cm +\temp +\end{drapeaufg} +} +\hspace*{0.5cm} +\parbox{2cm}{% +\begin{drapeaufgIN} +\hsize=2cm +\temp +\end{drapeaufgIN} +} + +\newpage +\subsection{Tests en drapeau << fd >>, aux limites} +Nous effectuons ici les mêmes test mais avec +les environnements \texttt{drapeaufd} (fer à droite) +et \texttt{drapeaufdIN} (selon imprimerie nationale). +En fait, l'environnement +\texttt{drapeaufd} est tout simplement +un \texttt{raggedleft}. +\NL{9} + +\let\XX\relax +\parbox{2cm}{% +\begin{drapeaufd} +%\mbox{Avec \the\rightskip :} +\hsize=2cm +\temp +\end{drapeaufd} +} +\hspace*{0.5cm} +\parbox{2cm}{% +\begin{drapeaufdIN} +%\mbox{Avec \the\rightskip :} +\hsize=2cm +\temp +\end{drapeaufdIN} +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\Large +\let\XX\relax +\subsection{Test << fd >> classique} + +\begin{drapeaufd} +\GOfrench +\end{drapeaufd} + +\normalsize\bigskip + +L'œil aiguisé sera troublé car +les deux colonnes ne sont pas alignées horizontalement ; +cela est dû à la différence de matériel à composer, au total, +dans chacune des deux colonnes. + +\vfill + +\newpage +\Large +\subsection{Test << fd >> IN} +\begin{drapeaufdIN} +\GOfrench +\end{drapeaufdIN} + +\normalsize\bigskip + +Quelque soit le corps de la police (dans les limites +classiques de \LaTeX{}), avec cette largeur de colonne, +on n'obtient pas de différence +de mise en page entre les deux environnements. Les règles +de l'imprimerie nationale sont donc plus largement appliquées +dans ce cas. + +\vfill +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\onecolumn +\newpage\french +\hbox{} +\vfill +\centerline{\Large Page intentionnellement laissée blanche} +\vfill +\twocolumn + +\fi% on a saute si drapeaufg est inconnu (frencht) +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\french +\section{Lettrines} +\SmsG% lettrine reduite a 1 seule lettre ! +Voici le test des lettrines proposées en mode semi-automatique +avec \FP\ : + +\bigskip +\verb| \flettrine{Quoi ?}| +\flettrine{Quoi ?} {Paris} +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés. + +<< Ici démarre une lettrine dans une citation. + +\bigskip +\lettrine{Paris} +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés. + +\bigskip +\flettrine{Paris} +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés. + +et la citation se termine ici. >> + +\bigskip +\verb| \font\lettrinefont=cmr17 scaled|\\ +{\font\lettrinefont=cmr17 scaled \magstep5 +\verb| \magstep5\lettrine[`` {Paris} '']| +\lettrine[`` {Paris} ''] +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés.\par} + +\bigskip +\verb| \lettrine[<< {Paris} >>]| +\lettrine[<< {Paris} >>] +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés. + +\bigskip +\verb| \flettrine[<< {Paris} ]| +\flettrine[<< {Paris} ] +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés. >> + +\bigskip +\tthyphenation\noindent +\vers|\|\vers|font\lettrinefont=cmti12 scaled| \!\vers| \magstep4\lettrine| +{\em \% vérification d'italique.} +\font\lettrinefont=cmti12 scaled \magstep4\lettrine +Blalbla {\bf je blablate}, tu blablates, ils blablatent, b... +(ceci est l'exemple même de ce qu'il ne faut pas faire car ainsi +le mot n'est pas mis en petites capitales). Ceci avait pour but +de tester une police italique. + +\bigskip +\lettrine{L'absurdité} de cette lettrine... + +\notthyphenation +\FmsG + +\newpage\english + +\section{Illuminated letters} + +Look at the French part of this document because, in English, +these macros have no effect: + +\bigskip +\verb| \flettrine{Quoi ?}| +\flettrine{Quoi ?} {Paris} +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés. + +<< Ici démarre une lettrine dans une citation. + +\bigskip +\lettrine{Paris} +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés. + +\bigskip +\flettrine{Paris} +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés. + +et la citation se termine ici. >> + +\bigskip +\verb| \font\lettrinefont=cmr17 scaled|\\ +{\font\lettrinefont=cmr17 scaled \magstep5 +\verb| \magstep5\lettrine[`` {Paris} '']| +\lettrine[`` {Paris} ''] +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés.\par} + +\bigskip +\verb| \lettrine[<< {Paris} >>]| +\lettrine[<< {Paris} >>] +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés. + +\bigskip +\verb| \flettrine[<< {Paris} ]| +\flettrine[<< {Paris} ] +{sera toujours Paris}. Ceci est une lettrine obtenue +grâce au collègue allemand E.~{\sc Scha\-lück} et + aux différents codes qu'il +m'a donnés. >> + +\bigskip +\noindent +\verb|\font\lettrinefont=cmti12 scaled| \verb| \magstep4\lettrine| +%{\em \% vérification d'italique.} +\font\lettrinefont=cmti12 scaled \magstep4\lettrine +Blalbla {\bf je blablate}, tu blablates, ils blablatent, b... +(ceci est l'exemple même de ce qu'il ne faut pas faire car ainsi +le mot n'est pas mis en petites capitales). Ceci avait pour but +de tester une police italique. + +\bigskip +\lettrine{L'absurdité} de cette lettrine... + +\onecolumn\newpage% +\french +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% ===>>>> Il n'y a plus d'anglais au delà de cette limite <<<<=== +\def\lastlinein#1{\expandafter\gdef\csname #1\endcsname{\relax}} +\lastlinein{english}% this is for frencht.tex +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage\french +\section{Lettrines automatiques ou non} + +\bigskip +\lettrine{THIS IS A TEST} (a non-automatic one) +is a piece of text and some more and some more +and some more and some more and some more and some more and some more +and some more and some more and some more and some more and some more +and some more and some more. + +\bigskip +\flettrine{THIS IS A TEST} (a non-automatic one) +is a piece of text and some more and some more +and some more and some more and some more and some more and some more +and some more and some more and some more and some more and some more +and some more and some more. + +\bigskip +\automaticlettrine + +\lettrine{THIS IS A TEST} (a default automatic one) +is a piece of text and some more and some more +and some more and some more and some more and some more and some more +and some more and some more and some more and some more and some more +and some more and some more. + +\bigskip +\flettrine{THIS IS A TEST} (a default automatic one) +is a piece of text and some more and some more +and some more and some more and some more and some more and some more +and some more and some more and some more and some more and some more +and some more and some more. + + +\bigskip +\def\lettrinefontname{cmr17} +\lettrine{THIS IS A TEST} (a cmr17 automatic one) +is a piece of text and some more and some more +and some more and some more and some more and some more and some more +and some more and some more and some more and some more and some more +and some more and some more. + +\bigskip +\flettrine{THIS IS A TEST} (a cmr17 automatic one) +is a piece of text and some more and some more +and some more and some more and some more and some more and some more +and some more and some more and some more and some more and some more +and some more and some more. + +\bigskip +\lettrine{Que vaut ce test ?} (en automatique) +is a piece of text and some more and some more +and some more and some more and some more and some more and some more +and some more and some more and some more and some more and some more +and some more and some more. + +\bigskip +\noautomaticlettrine +\lettrine{THIS IS A TEST} (a non-automatic one) +is a piece of text and some more and some more +and some more and some more and some more and some more and some more +and some more and some more and some more and some more and some more +and some more and some more. + +\bigskip +\lettrine{Que vaut ce test ?} (non-automatique) +is a piece of text and some more and some more +and some more and some more and some more and some more and some more +and some more and some more and some more and some more and some more +and some more and some more. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\section{Énumérations} +L'espacement des énumérations françaises est + profondément modifié avec \FP, pour s'en +convaincre voir le test des listes page \pageref{listes} ou +l'environnement \texttt{order} ci-après. + +\section{L'environnement << {\mdseries\texttt{order}} >>} +Un environnement spécifique est proposé, il s'agit de l'environnement +\verb|order| pour \LaTeX{} dont voici un petit exemple : + +\begin{order} +\item Bien regarder ; +\item l'espacement de chaque élément est spécial ; +\item l'espacement vertical est aussi différent. +\item A-D-O-P-T-E-Z \ \ L-E ! +\end{order} + +Ce prototype correspond bien aux énumérations +françaises (je ne +parle pas uniquement des marqueurs -- primo, secundo, \etc. -- +mais aussi de la gestion des espaces). En voici un autre exemple +concret : +\NL1 + +Les guillemets entrent aussi en ligne de compte : << Je citerai +3 cas très importants : +\begin{order} +\item le premier cas ; +\item le second ; +\item le dernier. +\end{order} +qui sont [...] >> +\NL1 + +À noter que ce mécanisme de rajout des guillemets en début de +chaque élément de liste marche aussi avec un environnement +comme \texttt{itemize}. + +\expandafter\ifx\csname frenchTeXmods\endcsname\relax + \space% ce test ne marche pas en LaTeX standard. +\else + \ifx\frenchTeXmods\empty\space% ni en dummy french ! + \else +\section{Tests aux limites des guillemets anglais} + +Vérifions qu'il est possible d'activer temporairement +quelques caractères sans perturber le traitement. Exemple : + +\begin{verbatim} +{\catcode`\'=\active\catcode`\'=\active + `` Test guillemets anglais '' +} +\end{verbatim} + +{\catcode`\'=\active\catcode`\'=\active + `` Test guillemets anglais '' +} + \fi +\fi + +Un cas bien spécial avait été rencontré avec l'extension \myverb|amstex| +qui utilisait une référence avec des mathématiques dans une autre +référence, ce qui entrainait une boucle infinie avec \FP. Voici +le test en question : +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% this code generates a loop with versions of french < V3,42 %%%%%% +\makeatletter +\def\r@ref{{\ref{nulllabel}$'$}}{1} +\makeatother +\ref{ref} = 1 $'$ % boucle garantie si < V3,42 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +Autre test aux limites ? + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\newpage +\section{<< Autres tests >>} +Nous sommes ici en une colonne. + +\bigskip +Voici un test d'encadré contenant le mode \verb|centering| : +\begin{center}\fbox{% +\parbox{6cm}{\begin{center}Information : si vous voulez me joindre, +mon tél. : 01 69 35 85 40. Je n'y suis qu'aux horaires de +bureau.\end{center}}% + }\end{center} + +Bon ?\footnote{L'objet de cette note de bas de page est +de vérifier l'espacement des inférieurs et supérieurs, +\primo en \texttt{\backslash tt} : +\texttt{XXXX ===> <=== YYYY} et +\secundo en {\tt verbatim} : +\myverb|french V4 < french V5 > frenchOLD|% +.} + +\begin{table*}[h] +\caption{Dactylographie et typographie comparées} +\label{frenchdactylo} +\vspace*{1cm} +\huge +\begin{tabular}{|r|r|} +\hline +dactylographie\ \ \ \ \hfill & \ \ \ typographie\ \ \ \hfill\\ +\hline + \verb|use \dots or \ldots| \ & use \dots\ or $\ldots{}$\ \\ + \verb|utilisez...| \ & utilisez...\ \\ + \verb|semi-colon;| \ & semi-colon;\ \\ + \verb|point-virgule ;| \ & point-virgule ;\ \\ + \verb|My god!| \ & My god!\ \\ + \verb|Mon dieu !| \ & Mon Dieu !\ \\ + \verb|Why not?| \ & Why not?\ \\ + \verb|Pourquoi pas ?| \ & Pourquoi pas ?\ \\ + \verb|``I say''| \ & ``I say''\ \\ + \verb|<< Je dis >>| \ & << Je dis >>\ \\ + \verb|He said: Yes| \ & He said: Yes\ \\ + \verb|Il dit : non| \ & Il dit : non\ \\ + \verb|$1\,234,567$| \ & $1\,234,567$\ \\ + \verb|$f(x,\,y)$| \ & $f(x,\,y)$\ \\ +\hline +\end{tabular} +\normalsize +\end{table*} + +\newpage +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\ifx\itshape\undefined\else% avoid old frencht crash +\subsection{Test des guillemets dans un \mdseries\texttt{\backslash edef}} + +Les guillemets peuvent être appelés dans une définition de macro +telle que \verb|\edef| mais comme les guillemets ne sont pas expansibles +entièrement il a donc fallu arriver à réaliser une définition acceptable. + +Ainsi \verb|\edef\testedef{<< essai >>}| +\edef\testedef{<< essai >>} +donnera la curieuse définition suivante : \\ +\hbox{}\hfill\texttt{\meaning\testedef} ; \\ +elle reste complètement expansible (dans certaines conditions) +ou pas du tout (comme ici appelée en tt on obtiendra +le résultat suivant : \texttt{\testedef}). +\fi + +\subsection{{\mdseries\tt <{}} et {\mdseries\tt >{}} redéfinis} + +Mes utilisateurs sont terribles ! Ils veulent le beurre, l'argent du +beurre et aussi la fermière... S'ils codent +\verb9\def\truc<#1|#2>{/#1 OU #2/}9 + ils veulent pouvoir obtenir +/Essai OU Erreur/ en saisissant \verb9\truc9. Faisons +l'essai réel : +{\def\truc<#1|#2>{/#1 OU #2/} \truc}. + +Encore plus fort : nous voulons avoir une notation de Backus-Naur +c'est-à-dire des \verb|\rangle| et \verb|\langle|. Voici la +définition que nous avons entrée avant le \verb|\begin{document}| : +\begin{verbatim} +{\catcode`\<=\active\catcode`\>=\active% +\global\def<{\left\langle}\global\def>{\right\rangle} +} +\end{verbatim} + +Pour tester l'efficacité de ces macros il suffit alors de faire +par exemple : +\begin{verbatim} +<< $$ >> +\end{verbatim} +à condition que l'option \verb|\frenchguillemets| soit +active (en maths). + +Essayons cela : +% en fait il faut reactiver cela maintenant : +{% + \gdef\myinf{\left\langle}% + \gdef\mysup{\right\rangle}% +<< $\frenchguillemets% on a \nofrenchguillemets avec AmSTeX + $ >>. +}% +% Remettre ici pour frenchle +\global\let\myinf\inferieura% A no-op def +\global\let\mysup\superieura% for a temporary action + +\subsection{\mdseries\texttt{\textbackslash special}} +L'inclusion d'une commande \verb|\special| est ici testée :\\ +{%%%%%%%%%%%% attention : commentaires impossible dans cette partie. + \catcode`\%=12 + \texttt{\backslash special}\verb|{ps:|{\tt %%% + }\verb| Texte bidon {`<>'}}| + \special{ps:%%% + Texte bidon {`<>'}} +} + +\subsection{{\mdseries\texttt{\textbackslash refmark}} dans un tableau} + +Où l'on reparle encore de \verb|\refmark|... + +La note \ref{bas} est référencée depuis le tableau ci-dessous, tout comme +les notes du tableau lui-même. + + \begin{table}[htbp] + \begin{center} + \begin{tabular}{|c|l|} + \hline + Lettre & Utilisation\\ + \hline + {\tt h} & petit blabla gentil et anodin \refmark{bas}\\ + {\tt l} & ici reblabla assez moyen\refmark{bas}$^,$\refmark{refnote}\\ + {\tt L} & autre grand grand grand blabla + \footnote{La note du tableau << refmark >>.\label{refnote}}\\ + \hline + \end{tabular} + \caption{Le titre du tableau.} + \end{center} +\end{table} + +En dehors du tableau on peut faire appel\footnote{La note de page.\label{bas}} +à une note qui est, par contre, référencée dans le tableau. Tout cela +est réalisé grâce à l'ordre \verb|\refmark| introduit par l'extension +\FP. + +\subsection{{\mdseries\texttt{\textbackslash nombre}} en argument} + +Voici un test simple permettant de valider \verb|\nombre| lorsqu'il +est en argument d'une macro-instruction : + +\begin{verbatim} +\noindent +1\,234 un nombre simple !\\ +$*$\\ +\nombre{1 234} un nombre simple !\\ +\nombre{1 234,5} avec une décimale.\\ +\texttt{\nombre{1 234,56} avec fonte tt.}\\ +\emph{\nombre{1 234,567} en mode emphasé.}\\ +\nombre{1 234,567 8} avec encore une décimale. +\end{verbatim} + +Il faut noter que l'ordre \verb|\nombre| est toujours composé en mode +mathématique ce qui force l'utilisation des fontes mathématiques. +Tout changement de fonte doit donc être précisé de façon ad hoc. +Par ailleurs, la composition n'est garantie que si l'option +\verb|\nofiles| n'a pas été indiquée en début de document. +Voici ce que ce test donne : + +\noindent +1\,234 un nombre simple !\\ +$*$\\ +\nombre{1 234} un nombre simple !\\ +\nombre{1 234,5} avec une décimale.\\ +\texttt{\nombre{1 234,56} avec fonte tt.}\\ +\emph{\nombre{1 234,567} en mode emphasé.}\\ +\nombre{1 234,567 8} avec encore une décimale. + +\ifx\documentclass\undefined % Still Plain! so no \DeclareFontFamily +\else% +\subsection{{\mdseries\texttt{\textbackslash label}} en mode math} + +Il s'agit ici de tester la commande \verb|\label| dans un environnement +\verb|equation| : + +\begin{verbatim} +Vérifions le numéro de l'équation \ref{labelequation} ci-dessous : +\begin{equation}\label{labelequation} +V_{Lm}=\frac{L}{t_p} +\end{equation} +\end{verbatim} + +Voici le résultat du test : + +Vérifions le numéro de l'équation \ref{labelequation} ci-dessous : +\begin{equation}\label{labelequation} +V_{Lm}=\frac{L}{t_p} +\end{equation} +\fi + +\csname TexteComplementaire\endcsname + +\subsection{Bibliographie} +Voyons maintenant la bibliographie. +Dans \cite{`<>'} on trouvera... +\nocite{`<>'} +Par contre +\cite[pp.1--3, X \& consorts]{<>} +est beaucoup plus fourni en exemples et commentaires... Mais dans +\cite[p. 25 \S~13 {{\it et seq.}}]{`<>'} +toutes ces informations +sont plus détaillées. + +Ce qui suit n'est pas un exemple de belle bibliographie, juste une +vérification de bon fonctionnement. + +\bibliographystyle{plain} + +\begin{thebibliography}{Knuth 99} + +\section*{Bibliographie dans le document} + +\bibitem[Knuth 99]{<>} Le \TeX book ou la << bible >> + des gourous \TeX +\bibitem{`<>'} B. {\sc Gaulle}, {\em + Le résultat d'une << {\em dure} >> journée de travail !} +\bibitem{`<>'} R. {\sc Keryell}, {\em + Le gentil normalien qui m'a beaucoup aidé grâce à sa thèse...} +\bibitem{`<>'} B. {\sc Gaulle}, {\em + Notice d'utilisation du style french}, 1991-1999. +\bibitem{`<>'} B. {\sc Gaulle}, {\em + Notice d'utilisation de l'extension \FP\ pour \LaTeX}, 2000-20xx. +\end{thebibliography} + +\ifx\documentclass\undefined % Still Plain! so skip +\else% +\section*{\phantom{\normalsize[Knuth 99]}Bibliographie en dehors du document} + +Avec certaines extensions de bibliographie il peut s'avérer utile +de protéger les caractères actifs à l'intérieur même de la base +de données bibliographique. + +\bibliography{testbib} +\fi% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\listoffigures +\listoftables +\glossary{Façon cordon bleu} +\glossaires +\section*{Glossaire des mots techniques} +\printglossary[\jobname.glo] + +\noindent -- magnification + +\noindent -- caractères spéciaux : \NL1 + +{\huge%\frenchmacros n'est pas utile ici +\begin{tabular}{|c|c|} +\hline +Pour imprimer ceci & Saisir cela\\ \hline +\at & \verb|\at|\\ \hline +\texttt{\vert} & \verb|\texttt{\vert}|\\ \hline +\tilde & \verb|\tilde|\\ \hline +\texttt{\backslash}& \verb|\texttt{\backslash}|\\ \hline +\chap & \verb|\chap|\\ \hline +\degre & \verb|\degre| \\ \hline +\degres & \verb|\degres| \\ \hline +\normalsize +1\ier{} étage & \verb|1\ier{} étage| \\ \hline +\normalsize +(2\ieme\!) & \verb|(2\ieme\!)| \\ \hline +\primo & \verb|\primo|\\ \hline +\secundo) & \verb|\secundo)|\\ +\hline +\end{tabular} +} \NL1 + +On notera que le caractère \verb|\degre| n'est pas le signe typographique +usuellement utilisé pour exprimer +des degrés mais que \verb|\degres| est +plus conforme à la tradition. On remarque bien les différences entre +\verb|\primo| et \verb|\secundo)| +(la forme parenthésée n'est pas valable +en {\em belle} typographie française). +\primo... \secundo... \tertio... \quarto... +\primo)... \secundo)... \tertio)... \quarto)... + +\section*{Glossaire argotique} +Le pied + +\printindex + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\part{Ce qui ne marche pas (bien)...} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Quelques questions à étudier} + +Cette partie ne comporte que des << anomalies >> que l'auteur espère +résoudre d'ici quelque temps, +grâce à votre aide... peut être ? + +En fait il ne reste vraiment +pas grand chose à règler mais ce sont probablement des +vieux problèmes sacrément compliqués. + +\section{Le << 2 points >>} +Le << 2 points >> a une fâcheuse tendance +à rester en bas de page lorsqu'il est +suivi d'un {\tt verbatim}. Il serait souhaitable d'en trouver la raison. + +\section{Les guillemets} + +Le problème avec \verb|quotation| page \pageref{quotation}. + +%Et la perte d'informations +%dans le cas de \verb|\noeveryparguillemets| lorsque l'on démarre +%une citation dans un paragraphe déjà commencé. +% +%Vraiment très {\em fragile} ce \verb|\noeveryparguillemets| ! ( + +Voir le cas des notes +de bas de page ou en marge qui produis(ai ?)ent des désastres +avec \verb|\noeveryparguillemets|. + +\section{Le cas des extensions mal écrites ...} + +... ne se résout souvent que par la modification de l'extension en question. +Cela a été le cas de nombreuses extensions depuis le début de \frenchname{} +et j'ai bien peur que cela continue \emph{éternellement}% (et à propos : qui me succèdera ?) +. +Ici Bernard Gaulle ajoutait (déjà en 2002) : << et à propos : qui me succédera ? >>. +Nous pensons que le groupe de travail autour du projet e-french répond à sa question. + +Certains cas sont insolubles, par exemple : +l'extension \verb|here.sty| +redéfinissait << au vol >> +l'ordre \LaTeX{} \verb|\table| au lieu +de modifier l'existant ; cela posait un réel problème à FrenchPro +qui se base sur la modification d'une commande \verb|\table| +existante. Heureusement ce style périmé peut être remplacé +avantageusement par \verb|float|. + +Notons qu'aujourd'hui avec les diverses variantes de \texttt{float}, +ce problème n'existe plus (comme bien d'autres d'ailleurs). + +\chapter{Améliorations à envisager} + +\section{Index et bibliographie} +Deux thèmes qui n'ont que très peu été abordés. + +\section{Abréviations} +Il est fâcheux d'avoir à connaître quelles sont les mots +abrégeables pour pouvoir demander leur abréviation ; autant les saisir +correctement dès le début... + +Faut-il arrêter la composition \LaTeX{} quand une abréviation +n'est pas trouvée ? + +Faut-il offrir la possibilité de lister toutes les abréviations ? + +\annexes +\hsize=18cm +% +%\chapter{Copyright} +%\Mylisting{copyrigh.tex} +% +%\chapter{Le fichier \mdseries{\tt language.dat}} +%\Mylisting{language.dat} + +\chapter{Le fichier \mdseries{\tt frabbrev.tex}} +\Mylisting{frabbrev.tex} + +% retire pour mettre french.cmd 98/06 +%\chapter{Le fichier \mdseries{\tt french.dmy}} +%My\listing{french.dmy} + +\chapter{Le fichier \mdseries{\tt french.cmd}} +\Mylisting{french.cmd} + +\chapter{Le fichier \mdseries{\tt french.chk}} +\Mylisting{french.chk} +% +%\chapter{Un style english (\mdseries{\tt fenglish})} +%\Mylisting{fenglish_doc} + +%\chapter{Le code de l'extension \FP} +% +%\Mylisting{french_doc.txt} + +\newpage +\hsize=15cm +\abbreviations\noenglishdoublequotes +\tableofcontents +\noabbreviations\englishdoublequotes% remove options set for toc. + +\english %=\relax if english text (see \lastlinein) +\endinput +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/lisez-moi.txt b/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/lisez-moi.txt new file mode 100644 index 00000000000..faa5f5202c5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/e-french/test/XeLaTeX/lisez-moi.txt @@ -0,0 +1 @@ +Pour compiler ajouter ..\mymaj et ..\mylist ici. -- cgit v1.2.3