# Conditional overlay specification in beamer: \begin{frame}\ifDraft<1000>\fi?

I have some slides with a lot of overlays.

While still working on my slides (so to speak in "draft mode"), I would like to collapse them into a single frame; only when compiling the final version I'd like them to expand to overlays.

I can do this on a single frame by appending an overlay specification:

\begin{frame}<1000>


Now what I'd like to do is this:

\newif\ifDraft\Drafttrue

\begin{frame}\ifDraft<1000>\fi


but this does not work (and I didn't expect it to work, based on my understanding of LaTeX evaluation of parameters and overlays).

I don't want this for all overlays (I already use "handout" mode). Rather I want to be able to compress the expensive overlays (lots of images) with a simple toggle, while not hiding the frame completely (it would of course be easy to just wrap the entire frame in \ifDraft or substitute it with a dummy frame). So it's like selectively switching to handout mode for a few frames only (those that really slow down the build).

• Welcome to TeX.SX! Nov 21, 2017 at 18:29

This seems to do the trick:

\def\showoverlays{*} % By default, show all overlays
\ifDraft\def\showoverlays{1000}\fi % Show only overlay 1000 in draft mode.
\begin{frame}<\showoverlays>
... usual frame
\end{frame}


This variable expansion in <> works, but I first failed because I used an empty variable there rather than *, so the slide disappeared in default mode.

Maybe this (close to my first attempt) would also work - I have not verified:

\begin{frame}<\ifDraft 1000\else *\fi>
\end{frame}


I'm wondering if handout mode is what you want?

\documentclass[handout]{beamer}

• As commented on an earlier answer (that disappeared): no. I already use handout mode, too. But during drafting, I only want to disable "completed" overlays (which usually is some animation, i.e., several images, and thus slow). I want to be able to see where I put e.g. pauses to ask students; so I don't want to disable all overlays (and my handout mode is already nicely set up to produce the 'print' version, which I also need to repeated check during draft time). Nov 22, 2017 at 8:30