Okay, I think I'm getting close, but I'm not quite there yet. The pagecolumns source code is found in page-pcl.mkiv ( source.contextgarden.net/tex/context/base/mkiv/page-pcl.mkiv), and in that code, the \page_col_stop_yes macro seems to have something to do with the issue:
``` \unexpanded\def\page_col_stop_yes {\column % \page_otr_eject_page \page \endgroup % \setupoutputroutine[\s!singlecolumn]% \page_otr_command_set_vsize \page_otr_command_set_hsize \page \endgroup} ``` If I redefine this macro in my MWE as follows, I can remove the extra page that is added when the last page ends with text in the last column: ``` \unprotect \def\page_col_stop_yes {\column %\page_otr_eject_page %\page \endgroup % \setupoutputroutine[\s!singlecolumn]% \page_otr_command_set_vsize \page_otr_command_set_hsize %\page \endgroup} \protect ``` Commenting out the \page calls does the trick in this case, but now, if the last page ends with its text in a column before the last one, then the last page is not typeset at all, and a blank page takes its place. On Sun, May 10, 2020 at 8:34 PM Thangalin <thanga...@gmail.com> wrote: > Bump. > > See also: https://tex.stackexchange.com/q/542993/2148 > > On Mon, May 4, 2020 at 11:46 AM Joey McCollum > <jmccollum20140...@gmail.com> wrote: > > > > After continuing to look into this a bit, I noticed that a similar issue > involving the insertion of a blank page after a columnset environment has > been discussed on the mailing list in the thread "Blank page inserted when > text reaches column's end" (dated 08 Dec 2019). In that thread, a proposed > solution was to redefine the \page_grd_stop macro found in page-cst.mkiv as > follows: > > > > ``` > > \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 > > ``` > > > > Unfortunately, this approach was found to have potential issues in that > thread, and it does not fix the problem with pagecolumns in my MWE. Are > pagecolumns commands aliased to pagegrid commands like columnset commands > are, or are they defined somewhere else? I checked page-col.mkiv, but it > seems to be too short to be the file that defines pagecolumns behavior. > > > > Joey > > > > On Sat, May 2, 2020 at 11:46 AM Joey McCollum < > jmccollum20140...@gmail.com> wrote: > >> > >> I recently found the pagecolumns manual ( > http://www.pragma-ade.com/general/manuals/pagecolumns.pdf), and in > several of the examples (including those for side floats and footnotes), > the addition of a blank page after the end of the pagecolumns environment > also seems to occur. So when the manual says, "We always start at a new > page and end on a new one," does it mean that this is a feature of > pagecolumns? And if so, is there any way to disable it? I have no problem > with a page break after the end of the pagecolumns environment, but an > empty page added after the break seems unnecessary. I checked for a wiki > page on the \definepagecolumns command to get more information on its > accepted inputs, but there doesn't appear to be a page for this command. > >> > >> Joey > >> > >> On Tue, Apr 28, 2020 at 1:40 PM Joey McCollum < > jmccollum20140...@gmail.com> wrote: > >>> > >>> I am typesetting a document using pagecolumns to ensure that my > footnotes are set ragged-bottom in columns. I have observed some unexpected > behavior whenever the last column on a page is left incomplete: a blank > page is added at the end of the document. A minimal working example follows: > >>> > >>> ``` > >>> > >>> \starttext > >>> > >>> \startpagecolumns[n=2] > >>> > >>> \dorecurse{3}{\par\input zapf} > >>> > >>> \stoppagecolumns > >>> > >>> \stoptext > >>> > >>> ``` > >>> > >>> I typeset this using ConTeXt version 2020.03.10, as released with > TeXLive 2020. Notably, if \dorecurse{3} is changed to \dorecurse{2} or > \dorecurse{6} (so that the text ends in the first column of a page), then > there is no problem. I have tried to fix this by specifying page=no in the > \startpagecolumns arguments, but it did not change anything. Is there > something else I am missing? > >>> > >>> Thank you, > >>> > >>> Joey > > > > > ___________________________________________________________________________________ > > If your question is of interest to others as well, please add an entry > to the Wiki! > > > > maillist : ntg-context@ntg.nl / > http://www.ntg.nl/mailman/listinfo/ntg-context > > webpage : http://www.pragma-ade.nl / http://context.aanhet.net > > archive : https://bitbucket.org/phg/context-mirror/commits/ > > wiki : http://contextgarden.net > > > ___________________________________________________________________________________ > > ___________________________________________________________________________________ > If your question is of interest to others as well, please add an entry to > the Wiki! > > maillist : ntg-context@ntg.nl / > http://www.ntg.nl/mailman/listinfo/ntg-context > webpage : http://www.pragma-ade.nl / http://context.aanhet.net > archive : https://bitbucket.org/phg/context-mirror/commits/ > wiki : http://contextgarden.net > > ___________________________________________________________________________________ >
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net ___________________________________________________________________________________