Des entrées dans la table des matières qui ne donnent pas la bonne page

J’ai écrit une macro qui produit une entrée dans la TDM. La voici, un peu raccourcie :

\newcommand{\titre}[3]{%
{\raggedright{\textsl{\bfseries\large \capitalisewords{#1}}}}\%
\addcontentsline{toc}{section}{{\bfseries #1.} %
\begin{center}{\Large\bfseries #3}\end{center}%
}

L’appeler crée bien une entrée dans la table , mais si \tableofcontents engendre bien le texte que je souhaite, le numéro de page est incorrect.
Un explication ?


--
classe: book
geometry: b5

-–

t.d.

La commande \titre ne compile pas, il manque une accolade fermante.

Le \% de la ligne 2 est-il voulu ? le % de la ligne 3 ne sert à rien puisqu’il est précédé d’une espace.

Cette commande \titre est du même niveau que \section ?

Il faudrait un ECM et une indication de la présentation souhaitée pour pouvoir en dire plus.

Autre point surprenant, concernant la commande \titre : elle prend 3 paramètres (non décrits…) mais sa définition n’utilise pas le paramètre numéro 2 (#2). S’agit-il d’une erreur dans la recopie de la définition ou d’une erreur dans la définition d’origine de la commande ?

Un EMC (exemple minimal complet) aiderait à résoudre le problème exposé : c’est un exemple de code qui idéalement compile, même si le résultat obtenu n’est pas parfait (dans votre cas, il produit un numéro de page incorrect).

Donc un exemple de code avec \documentclass{...}, \begin{document}, \end{document} et un peu de contenu (le package lipsum peut aider s’il y a des pages de contenu à produire) nous aiderait à vous aider. Merci :smiley:

Je suis désolé d’avoir posé (mal) une question stupide et fait un couper coller malencontreux!

Il n’y a pas de question stupide. On apprend toujours, quelle que soit la question.

L’erreur provenait d’un problème de copier-coller ou bien le problème reste-t-il présent ?

\capitalisewords est une commande qui provient d’un package ? Sans contexte, on peut être perdu. Je viens de voir que le package mfirstuc définit cette commande (voir la première page du chapitre 3 de la documentation du package). À retenir pour l’avenir : je doute que tout le monde connaisse sur le bout des doigts les commandes définies par le package mfirstuc, aussi un exemple complet minimal aide grandement :slightly_smiling_face:.

1 « J'aime »