Ho fatto un po’ di prove e non è perfetto.
Sostituisci, alla definizione precedente, questa:
`\newcommand{\mypart}[2][]{\clearpage\ifthenelse{\isodd{\value{page}}}
{\part[#1]{#2}\cleardoublepage}{\cleardoublepage\part[#1]{#2}\cleardoublepage}}`Così le parti iniziano tutte in una pagina dispari, prima non avevo fatto delle prove più articolate.
Hai provato a stampare l’indice? Con questo codice non funziona molto bene, perché dando
`\mypart{Ciao}`
nell’indice non comparirà il titolo. Infatti quando si specifica
`\part[]{Ciao}`
il titolo abbreviato, che va anche nell’indice, è vuoto.
Soluzioni? Se non si ha la necessità di specificare titoli abbreviati per l’indice, basta eliminare gli argomenti opzionali dalla definizione:
`\newcommand{\mypart}[1]{%
\clearpage
\ifthenelse{\isodd{\value{page}}}{}{\cleardoublepage}%
\part{#1}\cleardoublepage}`
Sei la necessità c’è, occorre qualcosa di più complicato per riconoscere se l’argomento opzionale è vuoto oppure no:
`\newcommand{\mypart}[2][]{%
\clearpage
\ifthenelse{\isodd{\value{page}}}{}{\cleardoublepage}%
\part[\if!#1!#2\else#1\fi]{#2}\cleardoublepage}`
Funziona a patto che il titolo abbreviato non cominci con un punto esclamativo.
Nota anche la semplificazione del codice: non occorre ripetere certe cose.
Ciao
Enrico