
¿Cómo puedo evitar un salto de página después de una lista interna cuando va inmediatamente seguido del final de una lista externa?
Se deben permitir saltos de página en otras partes de ambas listas.
MWE
\documentclass[twocolumn]{article}
\usepackage{lipsum}
\newenvironment{lista}{%
\list{}{}%
\item\relax
}{%
Prevent page break before here.
\endlist
}
\newenvironment{listb}{%
\list{}{}%
\item\relax
}{%
\endlist
}
\begin{document}
\vspace*{7.5cm plus 1cm}
\begin{lista}
\begin{listb}
\lipsum[4]
\end{listb}
Permit page break before here.
\begin{listb}
\lipsum[4]
\end{listb}
\end{lista}
\end{document}
Respuesta1
Para evitar un salto de página después de una lista interna cuando va inmediatamente seguida por el final de una lista externa, puede usar el \filbreak
comando después de la lista interna y antes del texto que la sigue. El \filbreak
comando fomenta un salto de página en ese punto, evitando un salto entre las listas interna y externa. Aquí hay una versión actualizada de su MWE:
\documentclass[twocolumn]{article}
\usepackage{lipsum}
\newenvironment{lista}{%
\list{}{}%
\item\relax
}{%
Prevent page break before here.
\endlist
}
\newenvironment{listb}{%
\list{}{}%
\item\relax
}{%
\endlist\filbreak % Use \filbreak to prevent a page break after the inner list
}
\begin{document}
\vspace*{7.5cm plus 1cm}
\begin{lista}
\begin{listb}
\lipsum[4]
\end{listb}
\lipsum[1-2] % This text follows the inner list
\end{lista}
\end{document}
En este ejemplo, agregué \filbreak
después del \endlist
comando en el listb
entorno. Esto ayudará a evitar un salto de página después de la lista interna cuando va inmediatamente seguido del final de la lista externa.