In questa discussione:http://www.guit.sssup.it/phpbb/viewtopic.php?t=8932
enrico scriveva:l codice
\renewcommand{\chaptermark}[1]{\markboth{\textbf{\thechapter. #1}}{}}
\renewcommand{\sectionmark}[1]{\markright{\textbf{\thesection. #1}}}
è molto rozzo e non tiene conto appunto di \frontmatter e \backmatter.Cercando esempio in rete ho trovato fra l’altro questa pagina:
http://www.kronto.org/thesis/tips/custom-headers.html
dove l’autore fissa regole diverse dopo \frontmatter, \mainmatter e \backmatter.
In tal modo però, se si hanno un file .tex complessivo e un file .sty
per gestire vari file di input, si mescolano forma e contenuto.
Quella dell’esempio che ho trovato è l’unica modalità o comunque
la più opportuna per differenziare il codice?
`\makeatletter
\renewcommand{\chaptermark}[1]{%
\markboth{\if@mainmatter\thechapter. \fi#1}
{\if@mainmatter\thechapter. \fi#1}}
\renewcommand{\sectionmark}[1]{%
\markright{\if@mainmatter\thesection. \fi#1}}
\makeatother`
L’eventuale \textbf o \bfseries andrà nel codice di produzione effettiva delle testatine.
Ma non vedo il problema anche mettendo una ridefinizione dopo \frontmatter, \mainmatter o \backmatter se usi il sistema del file “master” che quindi non ha “contenuto”, ma solo i comandi per impostarlo.
Nella classe book ciò che fanno \frontmatter e \backmatter è essenzialmente impostare a falso il risultato del condizionale \if@mainmatter.
Ciao
Enrico