Ho notato che lo stesso errore capita anche a Cesare Beccari, addirittura nella documentazione di toptesi stesso.
E’ dunque un baco del pacchetto. A lui però usa perlomeno i numeri romani maiuscoli sempre, mentre a me nell’indice usa come ho già detto i,ii,iii ecc.A questo punto,accertato che dipende dal pacchetto, qualcuno sa come risolverlo?
L’errore è nella definizione
`\DeclareRobustCommand*{\@roman}[1]{\textsc{\romannumeral#1}}`
che scrive nel file .toc qualcosa come
`\contentsline {chapter}{Sommario}{\@roman \c@page }`
che è sbagliato. I comandi del tipo \@roman, \@Roman, \@arabic devono essere espandibili e \DeclareRobustCommand invece li rende non espandibili quando vengono scritti nei file ausiliari.
Soluzione:
`\makeatletter
\DeclareRobustCommand{\@textsc}{\textsc}
\def\@roman#1{\textsc{\romannumeral #1}}
\makeatother`
Rimane il piccolo problema che i tipi Computer Modern non dispongono del maiuscoletto nero; ne consegue che nell’indice i numeri romani corrispondenti a capitoli diventano ciò che Claudio Beccari aborrisce (a ragione): lettere minuscole.
Seconda soluzione:
`\makeatletter
\DeclareTextFontCommand{\@smallRoman}{%
\check@mathfonts\fontsize\sf@size\z@\math@fontsfalse\selectfont}
\def\@roman#1{\@smallRoman{\expandafter\@slowromancap\romannumeral #1@}}
\makeatother`
Sapevo che Claudio aveva intenzione di mandare una versione aggiornata su CTAN, gli ho scritto per fargli presente il problema.
Ciao
Enrico