I have two-column slides where there is a tikz figure on the left, and itemization on the right. There is >10 overlays due to pauses in the itemization, and some pieces of the tikz picture are added/removed/modified accordingly (with \only<>
) as are the items uncovered.
It is easy to break the code by adding one \pause
, because all numbers have to be rewritten.
Is there a way (no hint in Beamer Manual, chap. 9) to assign the value of beamerpause
counter to symbolic names, at the point when that part gets uncovered for the first time, something like (needs multiple passes to be resolved) the following?
\begin{column}{..}
\only</bar->{...} % <2-> (use e.g. / to reference labels)
\only<-/baz>{...} % <-3>
\end{column}
\begin{column{..}
\begin{itemize}
\item foo \pause
\item bar \firstUncoveredLabel{bar}\pause % assign 2 to label /bar
\item baz \pause[baz] % nicer syntax; assign 3 to label /baz
\item end
\end{itemize}
\end{column}
EDIT: minimal working example:
\documentclass{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}
\begin{columns}
\begin{column}{.5\textwidth}
\tikz{
\draw< -3> (0,0) grid (3,3);
\draw<2-3>[red] (0,0) -- (3,1);
\draw<3- >[green] (0,0) -- (3,2);
\draw<4 >[blue] (0,0) -- (3,3);
}
\end{column}
\begin{column}{.5\textwidth}
\begin{itemize}
%%%% uncomment this item and all numbers above have to be shifted :-(
% \item important remark at the beginning \pause
\item grid \pause
\item grid, red \pause
\item grid, red, green \pause
\item green, blue
\end{itemize}
\end{column}
\end{columns}
\end{frame}
\end{document}
and this is what I dream of (does not compile):
\documentclass{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}
\begin{columns}
\begin{column}{.5\textwidth}
\tikz{
%% use symbolic names for overlay specificaiton
\draw<-/gridRedGreen> (0,0) grid (3,3);
\draw</gridRed-/gridRedGreen>[red] (0,0) -- (3,1);
\draw</gridRedGreen-> [green] (0,0) -- (3,2);
\draw</last> [blue] (0,0) -- (3,3);
}
\end{column}
\begin{column}{.5\textwidth}
\begin{itemize}
%%%% uncomment and overlays are still correct :-)
% \item important remark at the beginning \pause
\item grid \pause[grid]
\item grid, red \pause[gridRed]
\item grid, red, green \pause[gridRedGreen]
\item green, blue
\end{itemize}
\end{column}
\end{columns}
\end{frame}
\end{document}