Paramétrage avancé des listes

Fleuron

Comme toujours avec ConTeXt, on peut aller très loin dans la configuration des listes, mais dans ce cas on a deux possibilité soit toutes les listes de ton document sont identique alors tu utilises le couple \setupitemize[] \startitemize[]. Tu pourras quand même modifier une liste en utilisant un \setupitemize[] juste avant la liste à modifier.
Soit tu envisages d'utiliser plusieurs listes avec des aspects différents et dans ce cas tu utilises \defineitemgroup et \setupitemgroup.

\defineitemgroup permet de créer ses propres listes et \setupitemgroup de les paramétrer.

Tu défini tes listes de la façon suivante :

\defineitemgroup[maliste]
\defineitemgroup[unautreliste]

Et tu les utilises dans ton texte comme ceci :

\startmaliste
\item le premier item ;
\item le deuxième ;
\item le troisième.
\stopmaliste
Ou bien pour la seconde liste :
\startuneautreliste
\item le premier item ;
\item le deuxième ;
\item le troisième.
\stopuneautreliste

Paramétrer les listes

\setupitemgroup et \setupitemize présentent plusieurs zones pour saisir des options. \setupitemgroup possède 4 zones et \setupitemize 3:

\setupitemgroup[-1-][-2-][-3-][-4-]
\setupitemize[-2-][-3-][-4-]

Comme pour tous les \setupquelquechose tu n'es pas obligé de toutes les mettre, mais si tu en mets plusieurs il faut qu'elles soient dans l'ordre.

\setupitemgroup [-1-]

La première zone [-1-] contient uniquement le nom de la liste affecté par les transformations, elle n'est utilisée que par \setupitemgroup

Par exemple pour paramétrer ou modifier « maliste» définie au-dessus tu écris :

\setupitemgroup[maliste][-2-][-3-][-4-]

\setupitemgroup [-1-][-2-]

La deuxième zone [-2-] est utilisé dans le cas des listes imbriquées. Si tu veux modifier la sixième liste imbriquée où la puce par défaut est un cercle moyen pour le remplacer par des nombres, tu fais :

\setupitemize[6][n]

\setupitemgroup [-1-][-2-][-3-]

La troisième zone [-3-] accepte une série de mots clés. On en a déjà rencontré un certain nombre. C'est tous les termes rencontrés dans la section « Les options de itemize » de la premières fiche consacrée aux listes, comme par exemple : n, packed, inmargin,…

\setupitemgroup [-1-][-2-][-3-][-4-]

La zone [-4-] contient des paramètres auxquels ont attribue une valeur, ils sont donc suivit d'un signe =.

Les arguments de la zone [-3-]

Certains ont déjà été vue dans un précédent chapitre je ne reviens pas dessus.

standard

Permet de remettre les valeur par défaut.

broad

Permet d'ajouter un espace supplémentaire entre la puce et le texte de l'item. On peut y adjoindre un coefficient multiplicateur sous la forme n*broad. Le nombre doit être un entier, pas de décimale.

\setupitemize[4*broad]
\startitemize
\item le premier item ;
\item le deuxième ;
\item le troisième.
\stopitemize

serried

Identique à broad, mais l'espace est plus petit.

\setupitemize[4*serried]
\startitemize
\item le premier item ;
\item le deuxième ;
\item le troisième.
\stopitemize

unpacked

Le contraire de packed vu plus haut, valeur par défaut.

stopper

Ajoute un point après le numéros d'item, valeur par défaut.

joinedup

Supprime tous les espaces verticaux entre les items et entre la liste et le texte, voici trois exemples, la liste par défaut, avec packed et avec joinedup :

\setupitemize[joinedup]
\startitemize
\item le premier item ;
\item le deuxième ;
\item le troisième.
\stopitemize

atmargin, inmargin

atmargin, place la puce ou le numéro sur la marge, valeur par défaut, inmargim les met dans la marge, voir plus haut.

autointro, intro, loose

Ces trois commandes gèrent le positionnement des listes quand elle arrivent en fin de page. Voici les trois résultats avec successivement autointro, intro et loose :

\starttext
Un peu de texte pour visualiser comment les listes s'intègrent au texte. Encore du texte pour visualiser comment les listes s'intègrent au texte. Encore du texte pour visualiser comment les listes s'intègrent au texte. Voici une liste :
\setupitemize[autointro]
\startitemize
\item le premier item ;
\item le deuxième ;
\item le troisième.
\stopitemize
Encore du texte pour visualiser comment les listes s'intègrent au texte.
\stoptext

Avec intro

Avec loose

Customizer le numéro

stopper

Par défaut, le numéro des listes (qu'il soit un nombre ou une lettre) est toujours suivit d'un point, voir ci-dessus. Pour le supprimer ou le modifier il faut utiliser l'option « stopper= »

« stopper= » sans aucune valeur supprime le point :

\setupitemize[stopper=]
\startitemize[n,packed]
\item le premier item ;
\item le deuxième ;
\item le troisième.
\stopitemize

Tu peux modifier le « stopper » de la façon suivante :

\setupitemize[stopper={:}]
\startitemize[n,packed]
\item le premier item ;
\item le deuxième ;
\item le troisième.
\stopitemize

N'oublies pas les { }.

Avec un blanc devant les deux points c'est mieux !

\setupitemize[stopper={ :}]
\startitemize[n,packed]
\item le premier item ;
\item le deuxième ;
\item le troisième.
\stopitemize

Un autre exemple

\setupitemize[stopper=\high{o}]
\startitemize[n,packed]
\item le premier item ;
\item le deuxième ;
\item le troisième.
\stopitemize

repeat

Permet de répéter, dans les listes imbriquées le numéro de la liste parent :

\setupitemize[repeat]
\startitemize[n,packed]
\item le premier item ;
\item le deuxième ;
\startitemize[n,packed]
\item le premier item ;
\startitemize[n,packed]
\item le premier item ;
\item le deuxième ;
\stopitemize
\item le deuxième ;
\stopitemize
\item le troisième.
\stopitemize