Uso de minúsculas

Uso de minúsculas

Si escribo:

\documentclass[a4paper]{report}

\begin{document}
\lowercase{Norma}
\end{document}

Obtengo "norma" en el resultado, en minúsculas como quiero. Sin embargo, si escribo:

\documentclass[a4paper]{report}
\expandafter\def\csname mw@mu\endcsname{Norma}

\begin{document}
\lowercase{\csname mw@mu\endcsname}
\end{document}

Me sale "Norma", con mayúscula, que no quiero. Intenté poner \noexpandantes \lowercasey rodear \lowercasecon \expandafters, pero fue en vano: la letra mayúscula siempre está ahí. ¿Cómo puedo solucionar esto?

Respuesta1

Los comandos \lowercasey \uppercaseno amplían su contenido; simplemente convierten tokens de caracteres en su argumento y devuelven la lista de tokens al flujo de entrada.

En su código, lo que está sujeto a posibles cambios de caso es m w @ my u; de hecho, si lo intentas

\lowercase{\csname MW@MU\endcsname}

obtendrás el mismo resultado que

\lowercase{\csname mw@mu\endcsname}

Sólo para simplificar el ejemplo:

\def\Norma{Norma}
\lowercase{\Norma}

imprimirá

Norma

porque las fichas simbólicas no son tocadas por \lowercase. Si realmente quieres reducir la expansión de \Normatienes que decir

\lowercase\expandafter{\Norma}

pero solo se expandirá el primer token, no los demás tokens que le sigan. Para la macro proporcionada con \csnameusted necesita

\lowercase\expandafter\expandafter\expandafter{\csname mw@mu\endcsname}

información relacionada