skevin93″ post=88315Grandissimo! 😀 La tua soluzione è perfetta e assolutamente elegante. Avevo pensato anch’io all’uso di [tt]\let[/tt], ma definivo un nuovo comando invece che “svuotare” [tt]\orbital[/tt]. Addiritura sono riuscito a salvare capra e cavoli usando il codice:
`
\usepackage{chemmacros}
\let\chemorbital\orbital
\let\orbital\relax
\usepackage{tikzorbital}
`
posso usarli tutti e due e il conflitto non c’è più.Posso solo chiederti una cosa: il comando [tt]\relax[/tt], che ho già notato in molte definizioni avanzate di macro, a cosa serve? So solo che è un comando di basso livello, sicuramente importante per definire le macro.
Con [tt]\let\orbital\relax[/tt] rendi il comando [tt]\orbital[/tt] indefinito, almeno per il criterio di LaTeX: la decisione se un comando è indefinito si basa su una costruzione che, nel caso un token sia indefinito lo rende equivalente a [tt]\relax[/tt].
Puoi fare di meglio:
`\usepackage{savesym}
\usepackage{chemmacros}
\savesymbol{orbital}
\usepackage{tikzorbital}
\restoresymbol{tikz}{orbital}
\restoresymbol{chem}{orbital}`
dopo di che avrai a disposizione [tt]\tikzorbital[/tt] e [tt]\chemorbital[/tt]. Anche [tt]\orbital[/tt] che sarà equivalente a [tt]\chemorbital[/tt] con questo ordine di caricamento; ma secondo me è meglio tenere ben distinti i due comandi. Se preferisci l’ordine inverso di caricamento, sarà
`\usepackage{savesym}
\usepackage{tikzorbital}
\savesymbol{orbital}
\usepackage{chemmacros}
\restoresymbol{chem}{orbital}
\restoresymbol{tikz}{orbital}`
e, in questo caso, [tt]\orbital[/tt] sarà equivalente a [tt]\tikzorbital[/tt]. Vedi bene perché suggerisco di non usare [tt]\orbital[/tt].
Ciao
Enrico