Re: \textmu e \@ifundefined

#42533
Up
0
Down
::

Ciao a tutti,

cerco di tenere il mio database BibTeX il più libero possibile da comandi LaTeX,
ma a volte capita di non poter fare altrimenti.
Ho alcuni record contenenti nel titolo il simbolo micro, reso con \textmu
(comando del pacchetto textcomp).

Per mantenere il database compatibile con “qualsiasi” preambolo ho provato a
definire nella direttiva @PREAMBLE il comando \textmu in questo modo:
\makeatletter
\@ifundefined{textmu}{\newcommand{\textmu}{\ensuremath{\mu}}}{}
\makeatother

Purtroppo però il comando \textmu, sebbene dia errore (Command \textmu unavailable in
encoding . . .), sembra essere definito anche senza caricare textcomp!
Per questo motivo il comando \@ifundefined viene ignorato.

L’unico modo che mi viene in mente per aggirare il problema è definire \textmu
solo quando textcomp non è caricato, ma non so come si fa 🙁
In generale mi piacerebbe capire perché si ha questo comportamento e non
un semplice command undefined.

[edit]
Aggiungo un EMC:
`\documentclass[a4paper]{article}

\makeatletter
\@ifundefined{textmu}{\newcommand{\textmu}{pippo}}{}
\makeatother

\begin{document}

\textmu

\end{document}
`[/edit]

Naturalmente ti sarai reso conto che l’EMC non dà alcun errore.

Ciao
Enrico

Go to top