
Следуя рекомендации вВ бимере, как зачеркнуть элемент после отображения, я написал это:
\documentclass[14pt,aspectratio=1610]{beamer}
\usepackage[normalem]{ulem}
\renewcommand{\ULthickness}{1pt}
\newcommand{\myonly}[3]{\only<+>{\item #1#2}\only<+->{\item #3{#1}#2}}
\newcommand{\strike}[1]{\myonly{#1}{?}{\sout}}
\begin{document}
\begin{frame}\frametitle{test}
Well...
\onslide<+-> %%% THIS IS THE PROBLEM!
So...
\begin{itemize}
\strike{foo}
\strike{bar}
\strike{baz}
\myonly{zot}{!}{\emph}
\end{itemize}
\end{frame}
\end{document}
Это дает более-менее правильный выводкроме
- Произошла ошибка
LaTeX Error: Something's wrong--perhaps a missing \item
. - Первый
\onslide
игнорируется: обаwell
появляютсяso
на 1-м слайде.
Удаление 1-го \onslide<+->
делаетнетизменяет вывод, но удаляет сообщение об ошибке.
Добавление \item
перед первым \strike
также удаляет сообщение об ошибке.
Мне нужно, чтобы это so
появилось на втором слайде, и, очевидно, мне не нужно сообщение об ошибке.
P.S. Добавление опции handout
, конечно, убирает сообщение об ошибке.