poner en mayúscula cada palabra en un acrónimo (comando \acl en el paquete acro)

poner en mayúscula cada palabra en un acrónimo (comando \acl en el paquete acro)

Me gustaría tener un comando que escriba en mayúscula cada palabra cuando uso un \aclcomando del paquete acro.

\DeclareAcronym{t}{short={t},long={this is a test}}
\capitalizingcommand{\acl{t}}

Mi resultado deseado sería:

Esto es una prueba

Hasta donde yo sé, el paquete acro solo admite el uso de mayúsculas en la primera palabra a través de \Acl{t}.

Hasta ahora probé el \ecapitalisewordscomando del mfirstucpaquete -, pero la expansión parece no funcionar y latex intenta poner en mayúscula el acceso directo, lo que genera un error.

Este es mi ejemplo que funciona o, más bien, que no funciona.

\documentclass{article}
\usepackage{mfirstuc}
\usepackage{acro}

\DeclareAcronym{t}{short={t},long={this is a test}}
\begin{document}

\acl{t}
%\ecapitalisewords{\acl{t}}

\end{document}

Muchas gracias por adelantado

Respuesta1

No puedes hacer esto directamente. Sin embargo, puede definir una macro que se establezca long-formaten \capitalisewordsun grupo:

\documentclass{article}
\usepackage{mfirstuc}
\usepackage{acro}

\DeclareAcronym{t}{short={t},long={this is a test}}

\newcommand*\accapitalizelong[1]{%
  \begingroup
    \acsetup{long-format=\capitalisewords}%
    #1%
  \endgroup  
}

\begin{document}

\acl{t}

\accapitalizelong{\acl{t}}

\acl{t}

\end{document}

ingrese la descripción de la imagen aquí

Si, en cambio, desea cambiar en general el comportamiento de mayúsculas de todas las \Ac... macros, puede configurar la opción uc-cmd:

\documentclass{article}
\usepackage{mfirstuc}
\usepackage{acro}

\DeclareAcronym{t}{short={t},long={this is a test}}

\acsetup{uc-cmd=\capitalisewords}

\begin{document}

\acl{t}

\Acl{t}

\end{document}

Por supuesto, también puedes definir un comando similar al de mi primera sugerencia para cambiar localmente las mayúsculas. O incluso definir un \ACL:

\documentclass{article}
\usepackage{mfirstuc}
\usepackage{acro}

\DeclareAcronym{t}{short={t},long={this is a test}}

\NewDocumentCommand\ACL{sm}{%
  \begingroup
    \acsetup{uc-cmd=\capitalisewords}%
    \IfBooleanTF{#1}{\Acl*{#2}}{\Acl{#2}}%
  \endgroup
}


\begin{document}

\acl{t}

\Acl{t}

\ACL{t}

\end{document}

información relacionada