Blank page inserted when text reaches column's end
When text reaches the end of a column, it appears to trigger inserting a blank page. In the following code, \dorecurse{3} causes a blank page to appear but \dorecurse{2} does not. The only difference is that when set to 3, the additional text is written on the last line of the last column. This scenario results in a blank page. Any ideas how the blank page can be suppressed? \showgrid \setuplayout[grid=yes] \starttext \startcolumnset[n=2] \input knuth \input lorem \input lorem \input knuth \dorecurse{3}{No TV and no beer make Homer something something.} \stopcolumnset \stoptext Version: $ context --version mtx-context | ConTeXt Process Management 1.03 mtx-context | mtx-context | main context file: /opt/context/tex/texmf-context/tex/context/base/mkiv/context.mkiv mtx-context | current version: 2019.06.11 19:20 Thank you!
Am 09.12.2019 um 00:44 schrieb Thangalin:
When text reaches the end of a column, it appears to trigger inserting a blank page. In the following code, \dorecurse{3} causes a blank page to appear but \dorecurse{2} does not. The only difference is that when set to 3, the additional text is written on the last line of the last column. This scenario results in a blank page.
Any ideas how the blank page can be suppressed?
\showgrid \setuplayout[grid=yes]
\starttext \startcolumnset[n=2] \input knuth \input lorem \input lorem \input knuth \dorecurse{3}{No TV and no beer make Homer something something.} \stopcolumnset \stoptext
Version:
$ context --version mtx-context | ConTeXt Process Management 1.03 mtx-context | mtx-context | main context file: /opt/context/tex/texmf-context/tex/context/base/mkiv/context.mkiv mtx-context | current version: 2019.06.11 19:20
Thank you!
What about: \installpagebreakhandler{last}{} (I have this in most of my documents, but I'm not sure it works with columnsets.) Best, Denis
Denis Maier schrieb am 09.12.2019 um 09:41:
Am 09.12.2019 um 00:44 schrieb Thangalin:
When text reaches the end of a column, it appears to trigger inserting a blank page. In the following code, \dorecurse{3} causes a blank page to appear but \dorecurse{2} does not. The only difference is that when set to 3, the additional text is written on the last line of the last column. This scenario results in a blank page.
Any ideas how the blank page can be suppressed?
\showgrid \setuplayout[grid=yes]
\starttext \startcolumnset[n=2] \input knuth \input lorem \input lorem \input knuth \dorecurse{3}{No TV and no beer make Homer something something.} \stopcolumnset \stoptext
Version:
$ context --version mtx-context | ConTeXt Process Management 1.03 mtx-context | mtx-context | main context file: /opt/context/tex/texmf-context/tex/context/base/mkiv/context.mkiv mtx-context | current version: 2019.06.11 19:20
Thank you!
What about: \installpagebreakhandler{last}{}
(I have this in most of my documents, but I'm not sure it works with columnsets.)
Better use this setup to get rid of the extra page in a doublesided document. \setuppagenumbering[page=no] Wolfgang
Thank you both. Neither approach removes the blank page with either version 2019.06.11 or 2019.12.06 on Linux. Is there a specific version of ConTeXt required? The code to generate the document resembles: \setuppagenumbering[alternative=doublesided,page=no] \installpagebreakhandler{last}{} \setuplayout[grid=yes] \starttext \startcolumnset[n=2] \input knuth \input lorem \input lorem \input knuth \dorecurse{3}{No TV and no beer make Homer something something.} \stopcolumnset \stoptext The second page remains, regardless of doublesided/singlesided or pagebreakhandler. Henri Menke pointed out that "page-cst.mkiv" contains an explicit line break associated with stoppagegrid: https://github.com/contextgarden/context-mirror/blob/f74c4055713ab52a11d1243... Could this be grid itself be problematic? Cheers!
Commenting out the \page_grd_command_flush_page macro seems to have reversed the effect. Any pages having columnar text that does not extend to the last line are now suppressed. How would I go about adding a conditional that checks to see whether the column is filled before deciding if a page break is necessary? \unprotect \def\page_grd_stop{% \endgraf % needed, else wrong vsize in one par case \vfill % otherwise weird \placenotes[endnotes] \page_grd_command_set_vsize % needed \penalty\c_page_otr_eject_penalty %\page_grd_command_flush_page \page_otr_fill_and_eject_page \page_grd_command_set_vsize % why here \egroup \page_otr_command_set_vsize \page_otr_command_set_hsize} \protect Thank you!
Thangalin schrieb am 11.12.2019 um 02:51:
Commenting out the \page_grd_command_flush_page macro seems to have reversed the effect. Any pages having columnar text that does not extend to the last line are now suppressed. How would I go about adding a conditional that checks to see whether the column is filled before deciding if a page break is necessary?
\unprotect \def\page_grd_stop{% \endgraf % needed, else wrong vsize in one par case \vfill % otherwise weird \placenotes[endnotes] \page_grd_command_set_vsize % needed \penalty\c_page_otr_eject_penalty %\page_grd_command_flush_page \page_otr_fill_and_eject_page \page_grd_command_set_vsize % why here \egroup \page_otr_command_set_vsize \page_otr_command_set_hsize} \protect
Fails for the next example (the first page appears twice in the PDF and the second page is missing): \setuplayout[grid=yes] \starttext \startcolumnset[n=2] \dorecurse{100}{Line #1\par} \stopcolumnset \stoptext Wolfgang
participants (3)
-
Denis Maier
-
Thangalin
-
Wolfgang Schuster