Error al utilizar \newcommand dentro de un marco de proyector

Error al utilizar \newcommand dentro de un marco de proyector

Por alguna razón mibeamerLa presentación no se compila cuando \newcommandse coloca dentro del frameentorno. Aquí hay un ejemplo de trabajo mínimo:

\documentclass{beamer}

\begin{document}

\begin{frame}{First slide}
  \newcommand{\asdf}[1]{What is the #1 problem?}
\end{frame}

\end{document}

Obtuve el siguiente error:

Número de parámetro ilegal en la definición de \test.

Tenga en cuenta que la \asdfmacro ni siquiera se utiliza una vez definida. Curiosamente, cuando coloco la definición fuera del frameentorno, todo funciona bien. ¿A qué se debe este extraño comportamiento?

Respuesta1

Agregar fragiledebería resolver el problema:

\documentclass{beamer}

\begin{document}

\begin{frame}[fragile]{First slide}
  \newcommand{\asdf}[1]{What is the #1 problem?}
\end{frame}

\end{document}

información relacionada