With the REAL beamer.cls (the default when the class file resolves), a frame
holding a columns environment with two or more \columns loses a page
break: the frames that follow merge onto one page. With material after
\end{columns} the pages also come out in the wrong order.
Reproduction
\documentclass{beamer}
\begin{document}
\begin{frame}{Un}
\begin{columns}
\column{0.5\textwidth}
gauche
\column{0.5\textwidth}
droite
\end{columns}
\end{frame}
\begin{frame}{Deux}beta\end{frame}
\begin{frame}{Trois}gamma\end{frame}
\end{document}
- expected 3 pages; 2 come out, the last two frames sharing one:
"Un gauche droite" / "Deux beta Trois gamma".
- with one
\column (or none) the same deck gives 3 pages, so it is the
second column that costs the break.
- add
APRESCOLUMNS after \end{columns} and the order breaks too: page 1 is
APRESCOLUMNS, page 2 the frame's own content.
- the built-in emulation (
GOTEX_BEAMER=0) is correct; only the real class is
affected.
What is already right
collectEnvBody's two beamer cases both fire, in order (traced):
collect(minipage): \column ferme la colonne
collect(minipage d=0): \end{columns} colclose->end=true endMacroLeads=true
collect(minipage d=0): \end{minipage} colclose->end=true endMacroLeads=false
So the first column ends at the second \column, the second ends through
\endcolumns → \beamer@colclose → \end{minipage}. The body capture is not
where it goes wrong; what \endcolumns pushes back and runs after that is.
Weight
9 of the 200 corpus talks use two or more \column; among the 79 with a
reference, 3 do, 2 of them inexact, 3 pages of the 40-page beamer gap. Small
in pages — but a mis-ordered page is worse than a mis-counted one, and the same
machinery is what shredded a 17-page talk to 1 before #176.
With the REAL
beamer.cls(the default when the class file resolves), a frameholding a
columnsenvironment with two or more\columns loses a pagebreak: the frames that follow merge onto one page. With material after
\end{columns}the pages also come out in the wrong order.Reproduction
"Un gauche droite"/"Deux beta Trois gamma".\column(or none) the same deck gives 3 pages, so it is thesecond column that costs the break.
APRESCOLUMNSafter\end{columns}and the order breaks too: page 1 isAPRESCOLUMNS, page 2 the frame's own content.GOTEX_BEAMER=0) is correct; only the real class isaffected.
What is already right
collectEnvBody's two beamer cases both fire, in order (traced):So the first column ends at the second
\column, the second ends through\endcolumns→\beamer@colclose→\end{minipage}. The body capture is notwhere it goes wrong; what
\endcolumnspushes back and runs after that is.Weight
9 of the 200 corpus talks use two or more
\column; among the 79 with areference, 3 do, 2 of them inexact, 3 pages of the 40-page beamer gap. Small
in pages — but a mis-ordered page is worse than a mis-counted one, and the same
machinery is what shredded a 17-page talk to 1 before #176.