ConTeXt/Table des matières avancée
ConTeXt — Chapitre 11 : Structuration d’un livre
Frontmatter, bodymatter, backmatter • Table des matières avancée
Navigation
- ← Page précédente : Frontmatter / Bodymatter / Backmatter
- ↑ Retour au sommaire du Wikilivre
- → Page suivante : Partie V, chapitre 12 : Initiation à MetaPost
Table des matières avancée
La table des matières (ToC) est un élément structurant essentiel pour tout document long. ConTeXt permet non seulement de générer automatiquement une table des matières classique, mais aussi de la personnaliser en profondeur : niveaux inclus, style, indentation, exclusions, versions abrégées ou thématiques. Cette page présente les commandes avancées pour contrôler, adapter et styliser la table des matières dans un document ConTeXt.
Objectifs de cette page
- Comprendre et configurer les niveaux de la table des matières.
- Inclure ou exclure des titres selon leur type (préface, appendices, chapitres...).
- Adapter l’apparence : style, indentation, points de suite, numéros.
- Créer des tables des matières partielles ou thématiques.
- Intégrer la ToC dans un document structuré (frontmatter / bodymatter / backmatter).
- Utiliser des commandes avancées pour personnaliser la ToC.
1. Rappel : table des matières simple
[modifier | modifier le wikicode]La commande la plus courante pour produire la table des matières est :
\completecontent
Elle affiche :
- toutes les parties, chapitres, sections (selon réglages),
- avec numéros de page,
- dans l’ordre du document.
Cette commande se place généralement dans le frontmatter.
2. Contrôler les niveaux inclus dans la ToC
[modifier | modifier le wikicode]Par défaut, ConTeXt inclut les éléments standard. Pour restreindre la profondeur :
\setupcombinedlist
[content]
[list={chapter,section,subsection}]
Pour n’afficher que les chapitres :
\setupcombinedlist
[content]
[list={chapter}]
Pour inclure les sous-sous-sections :
\setuplist[subsubsection][alternative=d, width=3em]
3. Exclure certains éléments de la table des matières
[modifier | modifier le wikicode]ConTeXt permet d’empêcher un titre d’apparaître dans la ToC :
\startchapter[title={Préface}, list=no]
...
\stopchapter
Ou pour une section :
\section[list=no]{Note technique}
Ceci est pratique pour les avant-propos, avertissements, notes internes, etc.
A contrario, forcer l’ajout manuel dans la ToC :
\writetolist[chapter]{Titre ajouté manuellement}
4. Personnaliser l’apparence de la table des matières
[modifier | modifier le wikicode]4.1 Style typographique
[modifier | modifier le wikicode]\setuplist[chapter][style={\bf}]
\setuplist[section][style={\it}]
4.2 Points de suite
[modifier | modifier le wikicode]\setuplist[chapter][distance=1em,alternative=c]
4.3 Indentation des niveaux
[modifier | modifier le wikicode]\setuplist[section][margin=2em] \setuplist[subsection][margin=4em]
4.4 Numérotation
[modifier | modifier le wikicode]Supprimer les numéros :
\setuplist[chapter][number=no]
Inclure des numéros romains pour les parties :
\setuphead[part][numberconversion=romannumerals]
5. Tables des matières partielles ou thématiques
[modifier | modifier le wikicode]Il est possible de produire une ToC limitée à certains éléments.
ToC des seules sections :
\placelist[section]
ToC des parties :
\placelist[part]
ToC personnalisée :
\placelist [chapter] [criterium=all]
Cela peut servir pour :
- mini-sommaire en début de chapitre ;
- plan partiel d’une partie du document ;
- sommaire méthodologique.
Astuce
On peut créer une table des matières en marge à l’aide des
fonctionnalités d’encadrement ou de colonnes, pour un document pédagogique
ou une mise en page sophistiquée (voir le module columns).
6. Tables des matières et frontmatter / bodymatter / backmatter
[modifier | modifier le wikicode]Dans un livre structuré, on placera la ToC dans le frontmatter :
\startfrontmatter \completecontent \stopfrontmatter
La ToC peut :
- inclure ou exclure les éléments du frontmatter (préface...) ;
- inclure les annexes du backmatter si désiré ;
- contrôler la numérotation des pages : romain pour frontmatter, arabe pour bodymatter.
On peut forcer l’inclusion d’un élément en frontmatter :
\setuphead[chapter][page=no]
7. Techniques avancées : modifier la commande \completecontent
[modifier | modifier le wikicode]Vous pouvez redéfinir le rendu :
\definecombinedlist [mycontent] [chapter,section] \setupcombinedlist [mycontent] [alternative=c, level=2] \placemycontent
Cela permet de créer :
- des ToC abrégées ;
- des ToC thématiques ;
- des ToC insérées à des endroits spécifiques du document.
8. MWE complet : table des matières avancée
[modifier | modifier le wikicode]Voici un document complet illustrant les techniques essentielles :
\setuppapersize[A4]
\mainlanguage[fr]
\starttext
\startfrontmatter
\title{Mon ouvrage}
\startchapter[title={Préface}, list=no]
Ceci est la préface (non incluse dans la ToC).
\stopchapter
\completecontent
\stopfrontmatter
\startbodymatter
\startchapter[title={Chapitre 1}]
Premier chapitre.
\stopchapter
\startchapter[title={Chapitre 2}]
Deuxième chapitre.
\section{Une section}
\subsection{Une sous-section}
\stopchapter
\stopbodymatter
\startbackmatter
\startchapter[title={Annexes}]
Informations complémentaires.
\stopchapter
\stopbackmatter
\stoptext
Ce MWE permet d’expérimenter directement les options de la ToC.
Avertissement
Si votre table des matières n’est pas à jour, c’est souvent qu’une
recompilation est nécessaire. ConTeXt ne met pas toujours immédiatement à jour
les numéros de page après modification de la structure.
ConTeXt — Chapitre 11 : Structuration d’un livre
Frontmatter, bodymatter, backmatter • Table des matières avancée
Navigation