Sommaire et chapitres

Bonjour

Lorsqu'on utilise la merveilleuse commande \tableofcontents, LaTeX fait tout seul une jolie table des matières contenant chapitres, sections et sous-sections, tout en indiquant les pages associées.
Mais à moins de taper d'immenses introductions à chaque chapitre, le numéro de page d'un chapitre et de sa première section sont identiques.

Quelle horreur ! Des informations redondantes !

Est-ce que vous connaissez un moyen de désactiver l'indication des pages pour les chapitres exclusivement, ou est-ce que vous avez une bonne raison à me donner pour que je laisse cette redondance ?

Merchi beaucoup

Réponses

  • Bonjour,

    Je ne vois pas quel est le problème, mais on peut enlever le numéro :

    1) En lisant la documentation d'un package tel que titletoc ou tocloft.

    2) Ou bien en redéfinissant la commande \l@chapter (pour les entrées générées par les chapitres). Par exemple, dans report.cls, on a :
    \newcommand*\l@chapter[2]{%
      \ifnum \c@tocdepth >\m@ne
        \addpenalty{-\@highpenalty}%
        \vskip 1.0em \@plus\p@
        \setlength\@tempdima{1.5em}%
        \begingroup
          \parindent \z@ \rightskip \@pnumwidth
          \parfillskip -\@pnumwidth
          \leavevmode \bfseries
          \advance\leftskip\@tempdima
          \hskip -\leftskip
          #1\nobreak\hfil
          \nobreak\hb@xt@\@pnumwidth{\hss #2%
                                     \kern-\p@\kern\p@}\par
          \penalty\@highpenalty
        \endgroup
      \fi}
    
    Si le document est en classe report, il suffit donc de faire :
    \makeatletter
    \renewcommand*{\l@chapter}[2]{%
      \ifnum \c@tocdepth >\m@ne
        \addpenalty{-\@highpenalty}%
        \vskip 1.0em \@plus\p@
        \setlength\@tempdima{1.5em}%
        \begingroup
          \parindent \z@ \rightskip \@pnumwidth
          \parfillskip -\@pnumwidth
          \leavevmode \bfseries
          \advance\leftskip\@tempdima
          \hskip -\leftskip
          #1\par
          \penalty\@highpenalty
        \endgroup
      \fi}
    \makeatother
    
    dans le préambule pour faire disparaître le numéro de page des entrées de chapitre dans la table des matières (on pourrait aussi modifier la commande en live avec etoolbox ou xpatch).
  • Merci beaucoup !
Connectez-vous ou Inscrivez-vous pour répondre.