¿Alcance o anulación de \pause?

¿Alcance o anulación de \pause?

Tengo algunas diapositivas de conferencias con problemas de varias partes. Me gustaría que los estudiantes pudieran ver el problema completo y luego completar las respuestas paso a paso. Esto es factible siempre y cuando el material que se está rellenando se pueda dividir en pequeños trozos agradables:

\documentclass{beamer}
\begin{document}

\begin{frame}\onslide<+->{}
This problem has three parts.
  \begin{enumerate}
    \item What is the answer to part 1?\\
      \onslide<+->{First interpret the question.}\onslide<+->{ Then do some work.}\onslide<+->{ Now we can answer the question, and the answer is} \onslide<+->{ 42.}
    \item What is the answer to part 2?\\
      \onslide<+->{This problem is easy, and the answer is }\onslide<+->{0.}
    \item What is the answer to part 3?\\
      \onslide<+->{You'll have to figure this one out for yourself.}
  \end{enumerate}
\end{frame}
\end{document}

Esta solución es bastante elegante (excepto por la inicial \onslide<+->para incrementar el contador). Desafortunadamente, se estropea (o al menos se vuelve muy complicado) si quiero hacer una pausa en medio de un entorno, como una alineación:

\documentclass{beamer}
\usepackage{amsmath}
\begin{document}
%% Standard (?) fix to make \pause work at all in align environment
\mode<presentation>{\setbeamercovered{transparent=0}}
\makeatletter
\def\beamerorig@set@color{%
  \pdfliteral{\current@color}%
  \aftergroup\reset@color
}
\def\beamerorig@reset@color{\pdfliteral{\current@color}}
\makeatother
%%

\begin{frame}
This problem has three parts.
  \begin{enumerate}
    \item What is the answer to part 1?\\\pause
      First interpret the question. Then calculate
      \begin{align*}
        \Pr[X\in A] &=\pause \frac{1}{2^n} \sum_{i=0}^n \binom{n}{i} \\ 
        &=\pause 1
      \end{align*}
    \item What is the answer to part 2?\\\pause
      More answers, \pause with more parts.
    \item What is the answer to part 3?\\\pause
      ...
  \end{enumerate}
\end{frame}
\end{document}

Por supuesto, si lo hago de esta manera, las últimas partes del problema no aparecen hasta que hayamos terminado la primera parte.

Probablemente podría hacer que el primer enfoque funcione dividiendo la respuesta en partes aún más pequeñas y luego asegurándome de que el texto anterior y la primera parte de la alignrespuesta se muestren simultáneamente, pero eso parece que sería un montón de manipulación manual caso por caso. -base del caso. Creo que la solución correcta sería restringir el efecto de \pausea algún alcance dentro de la respuesta misma o anularlo forzando que el material posterior que quiero visible al principio sea opaco (creo que la solución alignya lo hace). para que el texto esté siempre ahí, simplemente transparente).

¿Existe una forma correcta de hacer esto?

Respuesta1

Terminé usando la siguiente solución usando el \alwayscomando (ciertamente muy hack) que restablece el contador de diapositivas para su contenido:

\documentclass{beamer}
\usepackage{amsmath}
%% Standard (?) fix to make \pause work at all in align environment
\mode<presentation>{\setbeamercovered{transparent=0}}
\makeatletter
\def\beamerorig@set@color{%
  \pdfliteral{\current@color}%
  \aftergroup\reset@color
}
\def\beamerorig@reset@color{\pdfliteral{\current@color}}
\makeatother
%%

%% \always{} command ensures that its contents are visible on all slides of the frame.
\newcounter{beamerpausessave}
\newcommand{\always}[1]{\setcounter{beamerpausessave}{\value{beamerpauses}}
    \setcounter{beamerpauses}{0}\pause #1 
    \setcounter{beamerpauses}{\value{beamerpausessave}}\addtocounter{beamerpauses}{-1}\pause}

\begin{document}
\begin{frame}
This problem has three parts.
  \begin{enumerate}
    \always{\item What is the answer to part 1?\\}\pause
      First interpret the question. Then calculate
      \begin{align*}
        \Pr[X\in A] &=\pause \frac{1}{2^n} \sum_{i=0}^n \binom{n}{i} \\ 
        &=\pause 1
      \end{align*}
    \always{\item What is the answer to part 2?\\}\pause
      More answers, \pause with more parts.
    \always{\item What is the answer to part 3?\\}\pause
      ...
  \end{enumerate}
\end{frame}

\end{document}

Todavía no entiendo realmente por qué esa combinación particular de configuración beamerpausesy uso \pausefuncionó cuando nada más simple lo hizo.

información relacionada