Mi spiace che l’errore principale nonn è in toptesi, ma è nella definizione del pacchetto di descrizione della lingua italiana italian.ldf. In realtà il file di descrizione della lingua italiana funziona bene anche con \unit, e il suo patch per non interferire con la definizione dell’omonimo commento del vecchio pacchetto SIunits. Toptesi usa quel che c’è e la riparazione indicata da Enrico funziona perfettamente con l’inglese, ma se poi si volesse fare la tesi in francese, la cosa non funzionerebbe più. ora vedo di mettere un riparo a toptesi, ma mi civorrà un po’ di tempo.
e|E nel frattempo aggiungi quelle tre righe di Enrico se stati scrivendo al tesi in inglese; se la stati scrivendo in un’altra lingua, aggiungi altre tre righe sostituendo “english” senza virgolette con il nome che babel usa per invocare quell’altra lingua.
Io da parte mia spero di poter realizzare una correzione che vada bene per tutte le lingue. Non mi sembra complicato, ma mi sembra delicato.
Scusami
Claudio
[edit] La correzione è stata più semplice del previsto; il pacchetto, ora alla versione 5.60 è già stato caricato su CTAN, a giorni sarà disponibile nella distribuzione di TeX Live.
Nel frattempo copiati texcoman.sty nella cartella dove stai lavorando il documento della tua tesi; apriloe cerca la definizione di \textormath; dovrebbe essere alla riga 49. Ora sostituisci `\providecommand{\textormath}{\ifmmode\expandafter\@secondoftwo\else
\expandafter\@firstoftwo\fi`
con`
\providecommand\textormath{}
\renewcommand{\textormath}{\ifmmode\expandafter\@secondoftwo\else
\expandafter\@firstoftwo\fi}`
È il \providecommand che non permette di ridefinire il comando \textormath se esiste già; e siccome esiste già, definito da babel, è chiaro che la definizione mia non può avere luogo. Invece usando prima un \providecommand che inserisce nell’elenco delle macro anche \textormath, nel caso che non ci fosse ancora, ma poi lo ridefinisce subito (che ci fosse già stato o che sia stato aggiunto or ora) nel modo corretto che non fa riferimento ai comandi di babel che sono fragili in certe circostanze.
Le tre righe di Enrico, benché efficaci per l’inglese, non sono più necessarie.
Poi apportare la modifica suddetta al file topcoman sul tuo disco, ma non cambiare quella che si trova nelle cartelle di sistema; al prossimo aggiornamento le cartelle di sistema verranno regolarmente aggiornate e potrai cancellare dalla tua cartella la copia che ti sei fatto.