Nopagebreak nopagebreak nopagebreak - why won't LaTeX listen to me?

You could use a minipage environment or a \parbox. They won't be broken accross pages.

Further, LaTeX provides the \samepage command, which may be used as environment: \begin{samepage}...\end{samepage}. But I would not use samepage because it relies on setting penalties.

Also, the needspace packages comes often handy in such cases.


If "- Head -" is a normal text line \\* should work. If not we need to know what it is. In a lot of case solutions with \@afterheading can be used, e.g.:

\makeatletter 
\def\mynobreakpar{\par\nobreak\@afterheading} 
\def\mynobreakline{\par\nobreak\vspace{-\parskip}\@afterheading\noindent} 
\makeatother

You could also do this with samepage:

*full page before here*
\begin{samepage}
Knowledge in the \\

- Head
\end{samepage}