¿Se puede modificar \includeonlyframes para que admita un comodín?

¿Se puede modificar \includeonlyframes para que admita un comodín?

Cuando se trabaja con un documento de gran tamaño, es conveniente utilizarlo \includeonlyframes{foo, bar, baz}para centrarse en algunas diapositivas específicas a la vez. Sin embargo, también es necesario cambiarlo cada vez para incluir las etiquetas de las diapositivas que desee.

En cambio, ¿es posible utilizar un comodín para seleccionar las diapositivas? Por ejemplo, prefijo las etiquetas de todas mis diapositivas con "SectionName", que es la sección en la que se encuentra la diapositiva. Por lo tanto, un marco típico se vería así:

\section{Introduction}
\begin{frame}[label=IntroSlide1]
...
\end{frame}

Me gustaría poder seleccionar todos los fotogramas en la sección de introducción haciendo algo como \includeonlyframes{Intro*}(la sintaxis se puede cambiar para facilitar la programación, siempre que la funcionalidad sea posible). ¿Es esto posible y, de ser así, cómo debo implementarlo?

Respuesta1

Modifiqué un poco la sintaxis para hacerlo más fácil, -*denota el comodín y las etiquetas individuales que coinciden con el comodín deben tener -en su nombre.

\documentclass{beamer}
\includeonlyframes{Intro-*,Sss-Slide2}

\makeatletter
\def\beamer@checkifinlist#1,#2\relax{%
\def\beamer@temp{#1}%
\let\b@name\beamer@againname
\b@star@test#1\relax-*!\relax\count@
\ifx\beamer@temp\b@name
\else
  \def \beamer@temp {#2}%
  \ifx\beamer@temp\@empty
    \gdef\beamer@whichframes{all:0}%
  \else
    \beamer@checkifinlist#2\relax
  \fi
\fi }

\def\b@star@test#1-*#2\relax#3\count@{%
\ifx\\#2\\%
\def\beamer@temp{#1}%
\expandafter\b@dash@test\beamer@againname-\valign\relax
\fi}

\def\b@dash@test#1-#2#3\relax{%
\ifx\valign#2%
\else
\def\b@name{#1}%
\fi}
\makeatother
\begin{document}
\begin{frame}[label=Intro-Slide1]
AAA
\end{frame}

\begin{frame}[label=Intro-Slide2]
BBB
\end{frame}

\begin{frame}[label=Sss-Slide1]
CCC
\end{frame}
\begin{frame}[label=Sss-Slide2]
DDD
\end{frame}

\end{document}

produce diapositivas AAA BBB y DDD, las dos primeras del Intro-*comodín.

información relacionada