I have a code like this:
\documentclass{beamer}
\usepackage{multicol}
\newcommand{\bm}{\begin{multicols*}{2}}
\newcommand{\em}{\end{multicols}}
\begin{document}
\begin{frame}
\bm
First sentence. \pause
Second sentence. \pause
Third sentence. \pause
Fourth sentence.
\em
\end{frame}
\end{document}
Although in regular documents \begin{multicols*} fills the first column, then fills the second column, it does not work when I insert pauses.
I understand why it doesn't work, because there is nothing else to fill yet. I also know some workarounds such as using \only<2-> or \uncover<2-> etc.
However, the codes are already written by many people, and I would love to add something to the preamble instead of manually changing every line, or perhaps changing something in the newcommands. Thank you for any help.
multicolenvironment it will always break your layout. Where should the exceeding content be placed? Beamer doesn't know the concept of page breaks. – user1146332 Apr 04 '20 at 17:49