summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/listofitems/listofitems-fr.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-11-01 22:08:53 +0000
committerKarl Berry <karl@freefriends.org>2018-11-01 22:08:53 +0000
commit15360daf880519448794c8bc606dad9d850bb7a8 (patch)
tree000acb2a60c239c5c54e58d01cd8309a5cf616a7 /Master/texmf-dist/doc/generic/listofitems/listofitems-fr.tex
parent17df798d5ce5a412d77eb1d5d5689cd92d1f2e08 (diff)
listofitems (1nov18)
git-svn-id: svn://tug.org/texlive/trunk@49044 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/generic/listofitems/listofitems-fr.tex')
-rw-r--r--Master/texmf-dist/doc/generic/listofitems/listofitems-fr.tex93
1 files changed, 86 insertions, 7 deletions
diff --git a/Master/texmf-dist/doc/generic/listofitems/listofitems-fr.tex b/Master/texmf-dist/doc/generic/listofitems/listofitems-fr.tex
index 27e44bf8764..d1efe06030b 100644
--- a/Master/texmf-dist/doc/generic/listofitems/listofitems-fr.tex
+++ b/Master/texmf-dist/doc/generic/listofitems/listofitems-fr.tex
@@ -1,16 +1,16 @@
-% Ceci est la documentation du package "listofitems"%
+% !TeX encoding = UTF-8
+% Ceci est la documentation du package "listofitems"
%
% Fichier compilé avec pdflatex
-\documentclass[frenchb,a4paper]{article}
+\documentclass[french,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
-\usepackage{listofitems,babel,xspace}
+\usepackage{listofitems,babel}
\usepackage[bottom]{footmisc}
\usepackage{libertine}\usepackage[italic,frenchmath]{mathastext}
\usepackage[scaled=0.8]{luximono}
\usepackage[margin=3cm]{geometry}
-\usepackage{fancybox}
-\usepackage{xcolor}
+\usepackage{fancybox,xcolor,xspace,listings,MnSymbol}
\def\listofitems{\loiname\xspace}
\def\eTeX{\hbox{$\varepsilon$-\TeX}}
\makeatletter
@@ -23,6 +23,9 @@
\let\do\@makeother \dospecials
\ttfamily\small\@noligs
\obeylines\obeyspaces
+ \catcode`\<13 \catcode`\>13
+ \begingroup\lccode`\~`\<\lowercase{\endgroup\def~{\begingroup$\langle$\itshape}}%
+ \begingroup\lccode`\~`\>\lowercase{\endgroup\def~{\/$\rangle$\endgroup}}%
\def\code@ii##1#1{##1\par\medbreak\endgroup}%
\code@ii
}
@@ -88,7 +91,7 @@
\catcode`\<13 \catcode`\>13 \def<{\begingroup$\langle$\itshape}\def>{$\rangle$\endgroup}%
\@ifstar\@sverb\@verb}
\endgroup
-\def\longfrloidate@i#1/#2/#3\@nil{\number#3\relax\space \ifcase #2 \or janvier\or février\or mars\or avril\or mai\or juin\or juillet\or aout\or septembre\or octobre\or novembre\or décembre\fi\space#1}
+\def\longfrloidate@i#1/#2/#3\@nil{\number#3\relax\ifnum#3=1 \ier\fi\space \ifcase #2 \or janvier\or février\or mars\or avril\or mai\or juin\or juillet\or aout\or septembre\or octobre\or novembre\or décembre\fi\space#1}
\def\longfrloidate{\expandafter\longfrloidate@i\loidate\@nil}
\makeatother
\begin{document}
@@ -111,7 +114,7 @@
\vskip2cm
\leftskip=.2\linewidth \rightskip=.2\linewidth \small
Cette petite extension pour est destinée à lire une liste d'éléments dont le séparateur peut être choisi par l'utilisateur. Une fois la liste lue, ses éléments sont stockés dans une structure qui se comporte comme un tableau unidimensionnel et ainsi, il devient très facile d'accéder à un élément de la liste par son numéro. Par exemple, si la liste est stockée dans la macro \verb|\foo|, l'élément \no3 est désigné par \verb|\foo[3]|.
-
+
Un élément peut à son tour être une liste disposant d'un autre séparateur que celui de la liste de niveau supérieur, ce qui ouvre la voie à des imbrications et donne une syntaxe rappelant celle des tableaux à plusieurs dimensions du type \verb|\foo[3,2]| pour accéder à l'élément \no2 de la liste contenue dans l'élément \no3 de la liste de plus haut niveau.
\end{titlepage}
\def\listofitems{\textsf\loiname\xspace}
@@ -354,4 +357,80 @@ Rêve des chers instants qui la délasseront.}% 2e strophe de << Green >>, Paul
Un mot = \mot|
La macro \verb|\gitemtomacro| fait une assignation globale.
+
+\section{Tokens appariés}
+Pour le découpage des items, il est possible à partir de la version 1.6, de tenir compte de la présence de caractères \emph{appariés}. Ainsi, si une liste de caractères appariés est définie, chaque item s'étend jusqu'au prochain \verb|<séparateur>| qui équilibre les tokens appariés.
+
+Pour définir une liste de tokens appariés, on utilise
+
+\code|\defpair{<tok1><tok2><tok3><tok4>...}|
+
+où les tokens sont lus deux par deux pour former les paires d'appariement. Un \verb|<token>| d'appariement doit être constitué d'un seul caractère; les macros, primitives, espaces, accolades, token «\verb|#|», ensembles de plusieurs tokens entre accolades sont interdits. Deux tokens formant une paire \emph{doivent} être différents.
+
+\exemple/\setsepchar{+||-}
+\defpair{()[]}
+\readlist\termes{1+2*[3+4*(5+6-7)+8]-9+10}
+\showitems\termes/
+
+Pour revenir au comportement par défaut, c'est-à-dire sans tokens appariés, il faut exécuter
+
+\code|\defpair{}|
+
+Dans une expression, pour stocker dans une macro ce qui se trouve entre deux tokens appariés, on peut faire appel à
+
+\code|\insidepair<tok1><tok2>{<expression>}\macro|
+
+qui mettra dans la \verb|\macro| ce qui de trouve entre la paire \verb|<tok1><tok2>| dans l'\verb|<expression>|.
+
+\exemple/\setsepchar{+||-}
+\defpair{()}
+\readlist\termes{1+2*(3+4*(5+6-7)+8)-9+10}
+\showitems\termes
+
+\itemtomacro\termes[2]\parenterm
+Dans la parenthèse extérieure :
+\insidepair()\parenterm\inbigparen
+"\inbigparen"
+
+Dans la parenthèse intérieure :
+\insidepair()\inbigparen\insmallparen
+"\insmallparen"/
+
+\section{Le code}
+Toute suggestion, remontée de bug, remarque, demande, ajout ou modification de fonctionnalité est bienvenue; dans ce cas, j'invite les utilisateurs de \listofitems à m'envoyer un email à \verb|unbonpetit@netc.fr|.\medbreak
+
+Le code ci-dessous est l'exact verbatim du fichier \verb|listofitems.tex|. J'espère que les quelques commentaires qui le parsèment de-ci de-là seront suffisants pour que l'utilisateur ou le curieux comprenne la machinerie interne de ce package :
+
+\lstinputlisting[
+ language=TeX,
+ inputencoding=latin1,
+ moretexcs={unless,ifcsname,ifdefined,detokenize,numexpr,dimexpr,glueexpr,unexpanded},
+ basicstyle=\small\ttfamily\color{black!25},
+ identifierstyle=\bfseries\color{white},%
+ backgroundcolor=\color{black!85},
+ keywordstyle=\bfseries\color{orange},
+ commentstyle=\color{cyan!66},
+ columns=fixed,
+ alsoletter={\_},
+ tabsize=2,
+ extendedchars=true,
+ showspaces=false,
+ showstringspaces=false,
+ numbers=left,
+ numberstyle=\tiny\ttfamily\color{black},
+ breaklines=true,
+ prebreak={\hbox{$\rhookswarrow$}},
+ breakindent=3em,
+ breakautoindent=true,
+ xleftmargin=1em,
+ xrightmargin=0pt,
+ lineskip=0pt,
+ numbersep=1em,
+ classoffset=1,
+ alsoletter={\_},
+ morekeywords={defpair,insidepair,setsepchar,greadlist,readlist,listlen,foreachitem,%
+ showitems,showitemsmacro,itemtomacro,gitemtomacro,ignoreemptyitems,reademptyitems},
+ keywordstyle=\bfseries\color{red!85!black},
+ classoffset=0,
+ ]{listofitems.tex}
\end{document} \ No newline at end of file