Non l’ho provato con ClassicThesis, se devo dire la verità, ma penso che funzioni. Il caso semplice è di un solo indice a due colonne, supponiamo con stile di indice classic.ist:
`\usepackage{imakeidx}
\makeindex[options=-s classic]`Allora Enrico, ho appena provato a compilare l’Arte mettendo
`\usepackage{imakeidx}
\makeindex[options=-s classic]`
al posto di
`\usepackage{makeidx}
\makeindex`
Ricevo un errrore (alla prima compilazione con LaTeX):
`! LaTeX Error: \begin{theindex} on input line 1 ended by \end{multicols}.`
L’indice analtico lo produco così:
`\manualmark
\markboth{\spacedlowsmallcaps{\indexname}}{\spacedlowsmallcaps{\indexname}}
\phantomsection
\addcontentsline{toc}{chapter}{\tocEntry{\indexname}}
\printindex`
Dove sbaglio?Ciao,
L.P.S. le colonne dell’indice analitico prodotto con classic.ist vengono bilanciate. Eppure nei miei sorgenti non trovo traccia del codice
`\let\orgtheindex\theindex
\let\orgendtheindex\endtheindex
\def\theindex{%
\def\twocolumn{\begin{multicols}{2}}%
\def\onecolumn{}%
\clearpage
\orgtheindex
}
\def\endtheindex{%
\end{multicols}%
\orgendtheindex
}`
che avevo letto essere necessario per farlo.Sogno o son desto? 😯
1. Con un esempio minimo non ho quell’errore.
2. Ottieni la funzionalità che ti serve con
`\usepackage{imakeidx}
\makeindex[options=-s classic]
\indexsetup{headers={\spacedlowsmallcaps{\indexname}}{\spacedlowsmallcaps{\indexname}}}`
nel preambolo e
`\manualmark
\phantomsection
\addcontentsline{toc}{chapter}{\tocEntry{\indexname}}
\printindex`
nel documento. In generale basterebbe l’opzione “intoc” a \makeindex; ma nel tuo caso hai bisogno di una particolare forma dell’annotazione per l’indice, quindi occorre un \addcontentsline esplicito (e va evitata l’opzione “intoc”).
Il pacchetto imakeidx ridefinisce l’ambiente theindex in modo che le colonne dell’ultima pagina siano bilanciate. 8)
Ciao
Enrico