Bonjour,
Merci beaucoup!
Chez moi ça ne marche pas. J’ai donc substitué la définition de \paper comme suit:
\def@paper [ #1 ][ #2 ] #3#4 { \cleardoublepage
\title { #3 } \shorttitle { #1 } \author { #4 } \maketitle
\addcontentsline {toc}{ Chapter }{ \protect { \mbox { \MakeUppercase { #4 }} \protect\ { #2 }}}}
\def@@paper#1#2 { \clearemptydoublepage
\title { #1 } \author { #2 } \maketitle
\addcontentsline {toc}{ Chapter } %
{ \protect { \MakeTextUppercase { #2 } \protect\ { #1 }}}}
\def\paper { \main@ifnextchar [{ @paper }{ @@paper }}
\def\l@Chapter#1#2 { \addpenalty {- @highpenalty } %
\vskip 1em plus 1pt minus 1pt
@tempdima 0em
\begingroup
\parindent \z@ \rightskip @pnumwidth
\parfillskip - @pnumwidth
\leavevmode
\advance\leftskip@tempdima
\hskip - \leftskip
\parbox [b]{ \textwidth }{ #1 \nobreak\hfill \nobreak\hbox
to @pnumwidth { \hss #2 }} \par \penalty@highpenalty
\endgroup }
L’erreur est la suivante:
]
! Undefined control sequence.
@paper … cleardoublepage \title { #3 } \shorttitle
{ #1 } \author { #4 } \maketitle…
l.20 … ourant ][Titre ToC ]{Titre chapitre}{auteur}
The control sequence at the end of the top line
of your error message was never \def’ed. If you have
misspelled it (e.g., \hobx' ), typeI’ and the correct
spelling (e.g., `I \hbox’ ). Otherwise just continue,
and I’ll forget about whatever was undefined.
Mais si ça peut marcher, ça serait super!
Merci beaucoup pour votre aide!
Sandrine
----- Le 3 Jan 23, à 17:35, Pétiard François xyz@xyz.tld a écrit :
Voilà une solution pas optimisée mais qui a l’air de fonctionner; moyennant
quelques précautions :
\def@paper[#1][#2]#3#4{\cleardoublepage
\title{#3}\shorttitle{#1}\author{#4}\maketitle
\addcontentsline{toc}{Chapter}{\protect{\mbox{\MakeUppercase{#4}}\protect\
{#2}}}}
\paper[Titre courant1][Titre 1 dans toc]{Titre 1 très long\ avec des sauts\ de
ligne}{Auteur 1}
\paper[Titre courant2][Titre 2 dans toc]{Titre 2 très long\ avec des sauts\ de
ligne}{Auteur 2}
\paper{Titre 3 sans saut de ligne}{Auteur 3}
% \paper[Titre 4 courant]{Titre 4 sans saut de ligne}{Auteur 4} occasionne une
erreur
% à remplacer par :
\paper[Titre 4 courant][Titre 4 sans saut de ligne]{Titre 4 sans saut de
ligne}{Auteur 4}
% \paper[Titre 5 dnas toc]{Titre 5 sans saut de ligne}{Auteur 5} occasionne une
erreur
% à remplacer par :
\paper[Titre 5 sans saut de ligne][Titre 5 dans toc]{Titre 5 sans saut de
ligne}{Auteur 5}
Si vous mettez un paramètre optionnel, alors il faut en mettre deux, quitte à
répliquer du texte.
François
Le 03/01/2023 à 16:42, Sandrine Avril a écrit :
Bonjour,
Merci beaucoup à tous les deux, effectivement, ça marche: j’ai pu récupérer le
titre de la ToC entre crochets.
\paper[titre dans la ToC]{titre du chapitre}
Mais le titre entre crochets était en fait le titre courant , comment je fais
maintenant pour récupérer le \chaptermark{} qui me permettrait d’entre un titre
courant légèrement différent du titre du chapitre?
Merci beaucoup vous êtes trop forts!
Bonne soirée
----- Le 3 Jan 23, à 16:35, Paul Gaborit [ mailto:xyz@xyz.tld |
xyz@xyz.tld ] a écrit :
Le 03/01/2023 à 16:23, Sandrine Avril a écrit :
[…]
Dans cette feuille de style la commande \chapter a été redéfinie.
Ainsi au lieu d’avoir
\chapter[titre dans la ToC]{Titre dans le document}
j’ai
\paper[titre courant]{titre dans le document et même apparence dans la ToC}
En voyant le code fourni, je l’interprétais plus comme:
\paper[titre court]{titre}{auteurs}
Mais il y a effectivement un bug (à mon sens) dans la définition de @paper:
\def@paper[#1]#2#3{\clearemptydoublepage
\title{#2}\shortitle{#1}\author{#3}\maketitle
\addcontentsline{toc}{Chapter}%
% {\protect{\mbox{\uppercase{#3}}\vskip1pt{#2}}}}
{\protect{\mbox{\MakeTextUppercase{#3}}\protect\{#2}}}}
Il me semblerait plus pertinent d’utiliser le ‘shortitle’ (qui doit sans
doute déjà servir dans les entêtes) dans la TOC:
\def@paper[#1]#2#3{\clearemptydoublepage
\title{#2}\shortitle{#1}\author{#3}\maketitle
\addcontentsline{toc}{Chapter}%
% {\protect{\mbox{\uppercase{#3}}\vskip1pt{#2}}}}
{\protect{\mbox{\MakeTextUppercase{#3}}\protect\ {#1}}}}
(J’ai juste remplacé le dernier #2 par #1.)
Cordialement,
Paul Gaborit
–
Sandrine Avril
Tél. masqué
–
Sandrine Avril
Tél. masqué