ivan” post=83730
Se vuoi eliminarle tutte, basta dire
`\def\XKV@classoptionslist{}`Si può passare l’opzione [tt]draft[/tt] alla classe e tutti i pacchetti che la capiscono la usano. Questo è il motivo che ha fatto scegliere questa strategia. Giusta o sbagliata che sia, è quella. Altro esempio: invece di passare l’opzione [tt]italian[/tt] a tutti i pacchetti che se ne servono, la metti una volta sola.
Quindi, ammesso che la classe non definisca alcuna opzione (tramite xkeyval) che si vuole
sia passata a qualche pacchetto, non ha alcun senso mantenere quella lista.
Mi pare che questo sia il caso di suftesi.
Eventualmente posso specificare nella doc che le opzioni dei pacchetti
devono essere date nei pacchetti e non nella classe.
Ma credo siano pochi quelli che mettono le opzioni dei pacchetti nella classe.
Il vantaggio c’è in pochissimo casi e comunque si risparmia poco.
Infatti anche se svuoto \@XKVclassooptionslist mi rimane comunque \@classoptionslist,
quindi quel meccanismo dovrebbe rimanere intatto per quasi tutti i casi.
Rimangono escluse le opzioni definite con xkeyval da qualche pacchetto. Svuotando
la lista verrebbero ignorate. Ma sono ben pochi i pacchetti che usano xkeyval. E credo di sapere il motivo 😀
Mi pare sensato. In effetti xkeyval sembra occuparsi di togliere da [tt]\@classoptionlist[/tt] le opzioni del tipo “chiave=valore”. Se chiedo [tt]\show\@classoptionslist[/tt] prima di [tt]\RequirePackage{xkeyval}[/tt] vengono elencate tutte. Subito dopo invece rimangono quelle senza [tt]=[/tt].
Ciao
Enrico