- Questo topic ha 5 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 10 anni, 11 mesi fa da .
-
Topic
-
Provate a compilare questo:
`% !TEX encoding = UTF-8 Unicode
% !TEX TS-program = pdflatex\documentclass[
chapfont=smallcaps,
tocchapfont=smallcaps,
%smallcapsstyle=low,%upper
]{suftesi}\usepackage{hyperref}
\begin{document}
\tableofcontents
\chapter{The title and a formula $F=G'(x)$}
Lorem ipsum dolor sit amet.
\end{document}`
Alla seconda compilazione otterrete un errore.La domanda generale è: come è possibile avere le voci dell’indice in maiuscoletto assieme a hyperref?
Nello specifico il problema compare con suftesi quando si usa l’opzione tocchapfont=smallcaps assieme a smallcapsstyle=low (di default) unite al pacchetto hyperref (+ il comando \tableofcontents).
All’interno del comando che definisce, per esempio, lo stile del livello chapter dell’indice si usa \SUF@tocCHAP@font, definito così:
`\def\SUF@tocCHAP@font{\expandafter\SUF@titlesmallcaps}
\DeclareRobustCommand{\SUF@titlesmallcaps}[1]{%
\scshape\suftesi@MakeTextLowercase{\lsstyle #1}}%
\def\suftesi@MakeTextLowercase{\MakeTextLowercase}`Aggiungendo l’opzione smallcapsstyle=upper, che non fa altro che eseguire
`\def\suftesi@MakeTextLowercase{\relax}`
il problema non si presenta. Ma questa non è la soluzione sperata, perché dovrei fare a meno di un’opzione.Di conseguenza la causa sta in:
`\def\suftesi@MakeTextLowercase{\MakeTextLowercase}`
Ovvero, sembra che \MakeTextLowercase non sia accettato all’interno dell’indice quando si carica hyperref. Se uso \lowercase funziona, ma in questo modo, nel caso sia presente una formula nel titolo (raro ma possibile) mi renderebbe eventuali lettere maiuscole in minuscolo.Qualcuno ha un’idea su come risolvere il bug?
Ciao
Ivan
- Devi essere connesso per rispondere a questo topic.