At the end of below minimum working example there is a funny \startdelimitedtext[endtext] which should be printed at the bottom of the last page without being split over a page break. How do I render [endtext] indivisible?

\setuppapersize [A4][A4]
\setuplayout    [width=middle,  backspace=1.5in, cutspace=1.5in,
                 height=middle, topspace=0.75in, bottomspace=0.75in]


\setuptolerance[horizontal, tolerant, stretch]

\setupexternalfigures [location=default]


  \input douglas.tex

  \input douglas.tex

One line

A second line

And another line

Written in Hasselt, Belgium!\crlf
This work is licensed under a Creative Cows\crlf Attribution-NonCowmercial-MilkAlike 3.0 Unported License.\crlf
Other licensing available on request. Typesetting by \ConTeXt\ \contextmark.


1 Answer 1


Boxes can't be broken across pages, so it makes sense to use a box here. The \framed command and the \startframedtext environment are examples of boxes.

Since you used \vfill I assume the text should be placed at the bottom of the page. This does not work as expected, since TeX removes the vertical space. This is a side effect of how page breaking works in TeX. Usually it's not desired to start a page with vertical space followed by a paragraph, so TeX removes it. That's what the \null is for. It's an empty box, so the page does start with a box instead of vertical space. The penalty prevents a page break between this box and the vertical space. Otherwise the vertical space would again end up at the top of the page and removed by TeX.

Furthermore, \placefloats ensures that all floats are printed before typesetting endtext.

Finally, I replaced your \crlf with the lines environment which does respect new lines.



    \startlines [align=middle]
      Written in Hasselt, Belgium!
      This work is licensed under a Creative Cows
      Attribution-NonCowmercial-MilkAlike 3.0 Unported License.
      Other licensing available on request. Typesetting by \ConTeXt\ \contextmark.

  \dorecurse{9}{\input ward\par}

  \dorecurse{5}{\input ward\par}

  \dorecurse{9}{\input ward\par}


  • The first box is at the top of the page! Maybe add a after=\page to ensure a pagebreak after the box.
    – Aditya
    Sep 10, 2013 at 2:04
  • @Aditya Yes, Marco was a bit eager to show examples by cramming them all in one file. Your remark would indeed correct this. Nonetheless, Marco's answer is correct for this use case. Sep 10, 2013 at 7:11
  • @Marco I have added a \placefloats at the start of the begin= statement. Sep 11, 2013 at 12:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .