diff options
author | Karl Berry <karl@freefriends.org> | 2010-04-09 23:57:50 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-04-09 23:57:50 +0000 |
commit | bc760bf42782cd2acdebbd360ceca4a5609c658a (patch) | |
tree | 7bc3662ef867522c199595929dfe2d71bc15aecd /Master/texmf-dist/doc/latex/modroman/modroman-fr.tex | |
parent | b00d598c405e2f58e2be6d3511013787b40954dd (diff) |
modroman 1 (9apr10)
git-svn-id: svn://tug.org/texlive/trunk@17778 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/modroman/modroman-fr.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/modroman/modroman-fr.tex | 468 |
1 files changed, 468 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/modroman/modroman-fr.tex b/Master/texmf-dist/doc/latex/modroman/modroman-fr.tex new file mode 100644 index 00000000000..900a16400c6 --- /dev/null +++ b/Master/texmf-dist/doc/latex/modroman/modroman-fr.tex @@ -0,0 +1,468 @@ +%% +%% This is file `modroman-fr.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% modroman.dtx (with options: `doc,fr') +%% +%% This is a generated file. +%% +%% Copyright (C) 2003, 2004, 2008, 2010 by Yvon Henel, +%% dit «le TeXnicien de surface» <le.texnicien.de.surface@wanadoo.fr> +%% +%% This file may be distributed and/or modified under the conditions of +%% the LaTeX Project Public License, either version 1.2 of this license +%% or (at your option) any later version. The latest version of this +%% license is in: +%% +%% http://www.latex-project.org/lppl.txt +%% +%% and version 1.2 or later is part of all distributions of LaTeX version +%% 1999/12/01 or later. +%% +\documentclass[a4paper]{ltxdoc} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{modroman}[2010/04/09] +\usepackage{xspace} +\usepackage{array} +\usepackage{ifthen} +\usepackage{MODRdoctools} +\IfFileExists{lmodern.sty}{\usepackage{lmodern}}{} +\usepackage[english,frenchb]{babel} +\usepackage[colorlinks=true, + linkcolor=blue, + urlcolor=blue, + citecolor=blue]{hyperref} + +\begin{document} +\renewcommand\thepage{\textit{\modroman{page}}} +\title{L'extension \textsf{modroman}\thanks{ + Ce document correspond au fichier + \textsf{modroman}~\fileversion, du \filedate.}} +\author{\href{mailto:le.texnicien.de.surface@wanadoo.fr}{Le \TeX + nicien de surface}} + +\maketitle + +\begin{abstract} +\begin{otherlanguage} +{english} +\bfseries{} + This is the French documentation of \Pkg{modroman} for the final + user. + The English documentation is provided under the name + \texttt{modroman-en}. +\end{otherlanguage} + +\vspace{6pt} +\noindent\hrulefill +\vspace{6pt} + +Documentation française pour l'utilisateur final de l'extension +\Pkg{modroman}. + +\MODRdescrofr +\end{abstract} + +\tableofcontents{} + +\section{Introduction} + +\subsection{Motivation} + +Les formes d'écriture des nombres en chiffres romains telles que les +proposent \TeX, avec \cs{romannumeral}, et \LaTeX, avec \cs{roman} et +\cs{Roman}, sont loin d'être les seules qui furent en usage. J'avais +vu, il y a bien longtemps, la notation \nbshortroman{8} dans un +manuscrit. Les premières versions \TO de 0.1 à 0.4\TF de cette +extension ne permettaient que cette écriture, avec, au gré de +l'utilisateur, l'utilisation d'un |u| pour noter la \emph{cinquaine} +comme dans \og xuij\fg pour~17. + +Le lecteur interessé pourra jeter un \oe il sur la page que wikipedia +consacre aux chiffres romains pour voir que le monde n'est pas +toujours aussi simple que l'on voudrait qu'il soit. + +\subsection{ +Remarques techniques +} + +Le code des premières versions permettait de numéroter les pages avec +les chiffres romains \emph{modifiés} mais on ne pouvait plus alors +utiliser les outils de référence comme \cs{label} et \cs{ref} ni même +espérer voir les nombres écrits correctement dans la table des +matières. + +Si les années qui passent ne me rendent pas beaucoup plus malin, elles +ont un avantage: à force de lire des documentations d'extension, je +finis par en connaitre davantage et il m'arrive de buter par hasard +sur la solution à un problème que je n'avais fait qu'entrevoir. + +Je n'oublie pas les idées --~nombreuses~--, les exemples +--~détaillés~-- et les explications --~claires~-- fournis par +T.~\textsc{Lachand}-\textsc{Robert} dans~\cite{tlachand} mais je +m'abreuve désormais aussi à d'autres sources -- +\texttt{source2e}~\cite{source2e} pour être précis -- et c'est là +que j'ai trouvé l'\emph{astuce} qui me permet de fournir cette +nouvelle version de \Pkg{modroman}. Le lecteur intéressé jettera +un coup d'\oe il sur la définition de la macro \cs{Roman} et ses macros +auxiliaires. + +En réécrivant le code je me suis apperçu que je pouvais aller un peu +plus loin que je ne l'avais fait sans qu'il m'en coute beaucoup +plus. Voila pourquoi on trouvera désormais plus de macros et plus de +présentations des nombres en chiffres romains et une macro +supplémentaire. + +Cette version~1 conserve la compatibilité avec la version précédente +mais le code a été complètement réécrit et l'extension fournit +désormais à l'utilisateur outre les macros \cs{modroman} et +\cs{modromannumeral} une bonne quinzaine d'autres. + +Toutefois, la grande nouveauté de cette version~1 est que, désormais, +la macro \cs{modroman} \TO et ses petites camarades\TF est \og +purement développable\fg \TO voir page~\pageref{puredev} pour plus de +détails\TF, on peut donc l'utiliser pour numéroter des pages \emph{et} +obtenir ce qu'il faut dans la table des matières -- ce qui n'était pas +le cas jusqu'ici. Attention, je ne dis rien de tel à propos de +\cs{modromannumeral}. + +\subsection{ +Macros purement développables +} + +On pourra lire le fil de discussion \og test de développabilité pure ? +\fg dans le forum \texttt{fr.comp.text.tex} pour voir que cette notion +n'est pas aussi simple qu'elle parait au n\ieme abord \texttt{:-)} +toutefois, ici, lorsque je dirais qu'une macro est \og purement +développable\fg j'entendrai ce qui suit. + +Supposons que la macro \cs{truc} soit telle que \cs{truc}\marg{12} +donne \og xij\fg \TO ça vous dit quelque chose? \TF +alors\label{puredev} +\begin{enumerate} +\item la macro \cs{TRUC} définie par + |\edef|\BOP|\TRUC|\BOP|{|\BOP|\truc|\BOP|{|\BOP|12|\BOP|}|\BOP|}| + est telle que: + \begin{enumerate} + \item \cs{TRUC} donne bien \og xij\fg et + \item |\meaning\TRUC| donne \og \texttt{macro:->xij}\fg + \end{enumerate} +\item de plus, si on définit \cs{Axij}, alors la construction +|\csname| |A|\BOP|\truc|\BOP|{|\BOP|12|\BOP|}|\BOP|\endcsname| +appelle bien la macro \cs{Axij}. +\end{enumerate} + +\section{ +Utilisation +} + +\subsection{ +Les macros +} + +Les macros dont le nom finit par \texttt{numeral} s'utilisent comme la +macro \TeX{} \cs{romannumeral}. Elles doivent être suivies d'un nombre +et mangent les espaces qui le suivent. P.~ex. +|\longromannumeral| \verb*+368 ET+ donne \og\longromannumeral +368 ET\fg. + +Les macros dont le nom commence par \cs{nb} prennent un argument qui +est un nombre comme |\nbLongRoman{127}| qui donne \og +\nbLongRoman{127}\fg. + +Les macros dont le nom ne commencent pas par \cs{nb} mais +finissent par \texttt{roman} s'utilisent comme le \cs{roman} de +\LaTeX: leur unique argument est le nom d'un compteur. Avec +|\newcounter{machin}|, |\setcounter{machin}{124}|, +|\shortroman{machin}| on obtient \og \nbshortroman{124}\fg. + +Dans ce qui suit \meta{nbr} indique un nombre, \meta{ctr} indique +le nom d'un compteur à la \LaTeX{} comme \texttt{page} ou +\texttt{chapter}. + +Voici maintenant une présentation de toutes les macros disponibles +dans cette extension. Elles sont rangées par famille, étant entendu +qu'une famille est définie par l'aspect de la représentation obtenue. + +Après la syntaxe de la macro, on trouvera \PD pour dire que cette +macro est purement développable \TO voir page~\pageref{puredev}\TF, +\LT pour signifier qu'elle s'utilise comme une macro \LaTeX, \TX pour +signifier qu'elle s'utilise comme la macro \cs{romannumeral} de \TeX. + +Les exemples sont soumis aux options par défaut: \Option{jfinal}, +\Option{vpourv}, \Option{court}, \Option{min}. + +\subsubsection{ +Famille +shortroman +} + +\begin{macro}{\shortroman} + \cs{shortroman}\marg{ctr} \PD \LT +\end{macro} + +\begin{macro}{\shortromannumeral} + \cs{shortromannumeral} \meta{nbr} \TX +\end{macro} + +\begin{macro}{\nbshortroman} + \cs{nbshortroman}\marg{nbr} \PD \LT +\end{macro} + +\Exemples{shortroman} + +\subsubsection{ +Famille +longroman +} + +\begin{macro}{\longroman} + \cs{longroman}\marg{ctr} \PD \LT +\end{macro} + +\begin{macro}{\longromannumeral} + \cs{longromannumeral} \meta{nbr} \TX +\end{macro} + +\begin{macro}{\nblongroman} + \cs{nblongroman}\marg{nbr} \PD \LT +\end{macro} + +\Exemples{longroman} + +\subsubsection{ +Famille +LongRoman +} + +\begin{macro}{\LongRoman} + \cs{LongRoman}\marg{ctr} \PD \LT +\end{macro} + +\begin{macro}{\LongRomannumeral} + \cs{LongRomannumeral} \meta{nbr} \TX +\end{macro} + +\begin{macro}{\nbLongRoman} + \cs{nbLongRoman}\marg{nbr} \PD \LT +\end{macro} + +\Exemples{LongRoman} + +\subsubsection{ +Famille +roman +} + +\TeX{} fournit \cs{romannumeral} et \LaTeX{} \cs{roman}. Je +complète la famille avec \cs{nbroman}. + +\begin{macro}{\nbroman} + \cs{nbroman}\marg{nbr} \PD \LT +\end{macro} + +\Exemples{roman} + +\subsubsection{ +Famille +Roman +} + +\LaTeX{} fournit \cs{Roman}. Je complète la famille avec \cs{nbRoman} +et \cs{Romannumeral}. + +\begin{macro}{\Romannumeral} + \cs{Romannumeral} \meta{nbr} \TX +\end{macro} + +\begin{macro}{\nbRoman} + \cs{nbRoman}\marg{nbr} \PD \LT +\end{macro} + +\Exemples{Roman} + +\subsubsection{ +Famille +modroman +} + +Les macros \cs{modroman}, \cs{modromannumeral} et \cs{nbmodroman} ont +un rendu défini par les options choisies. Par défaut: + +\begin{macro}{\modroman} + \cs{modroman}\marg{ctr} $=$ \cs{shortroman}\marg{ctr} \PD \LT +\end{macro} + +\begin{macro}{\modromannumeral} + \cs{modromannumeral}\meta{nbr} $=$ \cs{shortromannumeral}\meta{nbr} \TX +\end{macro} + +\begin{macro}{\nbmodroman} + \cs{nbmodroman}\marg{nbr} $=$ \cs{nbshortroman}\marg{nbr} \PD \LT +\end{macro} + +\Exemples{modroman} + +\subsubsection{ +Autres macros +} + +On peut redéfinir le comportement des familles \cs{shortroman} et +\cs{longroman} en utilisant la macro \cs{RedefineMRmdclxvij}. + +\begin{macro}{\RedefineMRmdclxvij} + \cs{RedefineMRmdclxvij}\oarg{ISOL}\BOP\marg{M}\BOP\marg{D}\BOP\marg{C}% + \BOP\marg{L}\BOP\marg{X}\BOP\marg{V}\BOP\marg{I}\BOP\marg{J} +\end{macro} + +Les arguments ci-dessus déterminent l'aspect des nombres romains +produits ensuite \TO on fera attention aux effets de bord et on +limitera la portée de la redéfinition à un groupe si nécessaire\TF par +les familles \cs{shortroman}, \cs{longroman} et, si elle est liée à +une de ces deux précédentes, \cs{modroman}. + +L'argument optionnel \meta{ISOL} donne l'aspect du |i| isolé \CAD le +nombre~1. Si on ne donne pas cet argument l'aspect du |i| isolé est +celui du |i| non-final déterminé par \meta{I}. + +L'argument \meta{J} donne l'aspect du |i| final. Les autres arguments +donne l'aspect du chiffre (minuscule) correspond, p.~ex. \meta{M} +donne l'aspect du~|m|. + +\begin{macro}{\printntimes} + \cs{printntimes}\marg{nbr}% +\marg{texte} +\end{macro} + +Voici deux exemples d'utilisation de cette macro. + +|$\ast$ \texttt{\printntimes{15}{*-*}} $\ast$| + +donne + +$\ast$ \texttt{\printntimes{15}{*-*}} $\ast$ + +\bigskip + +|\newcommand\truc{\par\centering ***\par}|\par +|\newcommand\saut{\par\noindent\hrulefill\par}|\par +|\saut\texttt{\printntimes{5}{\truc}}\saut| + +donne + +\newcommand\truc{\par\centering ***\par} +\newcommand\saut{\par\noindent\hrulefill\par} +\saut\texttt{\printntimes{5}{\truc}}\saut + +\subsection{ +Les options +} + +Il existe -- depuis la version~0.2 -- à la demande générale +d'\textbf{un} contributeur de \url{fr.comp.text.tex} deux options qui +s'excluent mutuellement : l'option par défaut \Option{vpourv} qui +conserve le comportement de la version précédente et l'option +\Option{upourv} qui remplace \og v \fg par \og u \fg dans l'écriture +des chiffres romains. + +Par souci de symétrie, j'ajoute, avec la version~1, deux +options antithétiques \Option{jfinal} -- option par défaut -- et +\Option{ifinal} qui permettent de choisir si le dernier |i| d'un +nombre sera transformé en~|j| ou pas. + +J'ajoute encore deux couples d'options antithétiques. D'abord +\Option{min} \TO pour \emph{minuscule}, option par défaut \TF et +\Option{maj} \TO pour \emph{majuscule}\TF puis \Option{court} \TO +option par défaut\TF et \Option{long}. + +J'ajoute enfin, une option \Option{sansmod} -- sans modification -- +qui a pour effet de faire des macros de la famille \cs{modroman} des +alias de celles de la famille \cs{roman}. + +Les cinq dernières options déterminent le comportement des macros de +la famille \cs{modroman}. + +\DescribeOption{upourv} +Avec cette option, le chiffre romain \og v\fg est transformé en \og +u\fg et on a, par exemple, \og xuij\fg pour~17. + +\DescribeOption{vpourv} +Cette option, active par défaut, est l'opposée de la précédente. Avec +elle, on obtient \Exemple{17} pour~17. + +Les trois options suivantes apparaissent avec la version~1 de +l'extension. + +\DescribeOption{jfinal} +Avec cette option, active par défaut, si le nombre traité est plus +grand que~1 et si le dernier chiffre romain est un~i, ce dernier est +remplacé par un~j. Voir l'exemple précédent. + +\DescribeOption{ifinal} +Cette option s'oppose à la précédente. Lorsqu'on l'a choisie, on +obtient \romannumeral 17{} pour~17. + +\DescribeOption{sansmod} +Avec cette option, les macros \cs{modroman}, \cs{modromannumeral} et +\cs{nbmodroman} deviennent des alias -- avec \cs{let} -- de +\cs{roman}, \cs{romannumeral} et \cs{nbroman} respectivement. + +Choisir simultanément les options \Option{vpourv}, \Option{court}, +\Option{min} et \Option{ifinal} revient à choisir l'option +\Option{sansmod}. + +\bigskip + +Le tableau suivant indique quelle famille est liée à la famille +\cs{modroman} suivant les options choisies lorsque \Option{sansmod} +n'est pas en vigueur. + +\begin{center} + \begin{tabular}{|*{3}{c|}}\hline + & \Option{court} & \Option{long}\\ \hline + \Option{min} & \cs{shortroman} & \cs{longroman} \\ \hline + \Option{maj} & \cs{Roman} & \cs{LongRoman} \\ \hline + \end{tabular} +\end{center} + +\input{MODRbiblio} + +\iffalse +\newpage +\section{ +Nombres de \nbmodroman{1} à \nbmodroman{1000} +} + +\newcounter{machin}\setcounter{machin}{1} +\noindent +\whiledo{\value{machin}<1001}{% + \mbox{\arabic{machin} -- \shortroman{machin} -- \longroman{machin} + -- \LongRoman{machin}}\stepcounter{machin}\par\noindent} +\newpage +\fi +\vspace*{\stretch{4}} +\noindent\hrulefill +\begin{center} +Dans le préambule de ce document, on trouve +\\ +|\renewcommand\thepage{\textit{\modroman{page}}}| +\\ +d'où la numérotation des pages. +\end{center} +\noindent\hrulefill + +\vspace*{\stretch{2}} + +\begin{center} +\framebox{ + Ici finit la documentation de \Pkg{modroman}. +} +\end{center} +\vspace*{\stretch{4}} +\end{document} +\endinput +%% +%% End of file `modroman-fr.tex'. |