antonio.macrì” post=65753
Ciao, Claudio, grazie.Sì, ho visto il comando \DisemulatePackage, ma preferirei usare i comandi “nativi” di memoir, per avere maggiore coerenza (sempre che, lo verificherò, il risultato sia effettivamente lo stesso).
Dipenda da come imposti la scelta della classe di supporto; se il test \ifcth@memoir è definito prima di caricare la classe di supporto, allora nella parte “true” dove carichi memoir, puoi aggiungere anche il comando \DisemulatePackage e poi dopo la chiusura del test puoi caricare tocloft vhe verrà usato da entrambe le classi, memoir e quall’altra.
antonio.macrì” post=65753
Cosa mi consigli sul liberare la memoria? (La richiesta deriva anche da una mia “deformazione professionale” che mi suggerisce il principio dell’information hiding: nascondere (cancellare) i comandi usati internamente, principio che il LaTeX è piuttosto blando.)
LaTeX è blando sulla liberazione della memoria che non serve più, è vero; certo fare un po’ di housekeeping e di pulizia non guasta, ma data la capacità di memoria interna delle versioni moderne del sistema TeX (non lavoriamo più su vecchi IBM AT con 20MiB di disco e 2MiB di RAM come avevo io negli anni ’80) la necessità di liberare memoria si è fortemente ridotta; certo non guasta; non solo, ma vista la mancanza di una regola condivisa per gli spacename, direi che la pulizia è opportuna anche per minimizzare conflitti con altri pacchetti e con \newcommand che affermano non potersi eseguire perché il comando esiste già.
Una alternativa sarebbe quella di usare variabili locali dentro gruppi e buttare fuori dal gruppo solo le cose che servono permanentemente; chiudendo il gruppo tutte le variabili locali vengono ripristinate a quel che erano prima, magari vengono ripristinate a \undefined se prima non erano definite; solo che così la programmazione diventa un po’ pesante.
Ciao
Claudio