[dev-context] Keep extreme tables on the same page as previous content

Alan Braslau braslau.list at comcast.net
Sat Apr 4 18:44:01 CEST 2020


On 04/04/20 02:42, Wolfgang Schuster wrote:
> Hi,
> 
> when you use extreme tables without a float environment but repeat the 
> header the table always starts on a new page.
> 
> %%%% begin example
> \starttext
> 
> \samplefile{weisman}
> 
> \blank
> 
> \startxtable[header=repeat,split=repeat]
>      \startxtablehead
>          \startxrow \startxcell Table head \stopxcell \stopxrow
>      \stopxtablehead
>      \startxtablebody
>          \dorecurse{100}{\startxrow \startxcell Table body \stopxcell 
> \stopxrow}
>      \stopxtablebody
> \stopxtable
> 
> \stoptext
> %%%% end example


I use

\starttext

\startxtable [split=repeat,header=repeat,footer=repeat]

     \startbuffer [header]
        ...
     \stopbuffer

     \startxtablehead
         \getbuffer [header]
     \stopxtablehead

     \startxtablenext
         \getbuffer [header]
     \stopxtablenext

     \startxtablebody
         ...
     \stopxtablebody

     \startxtablefoot
         ...
     \stopxtablefoot

\stopxtable

\stoptext

without a float environment, and I do NOT get a spurious page break, so 
I do not understand what is happening in your sample above. Is it the 
\break (as you suggest)?

In your example above, why not simply use a float environment:

\startplacetable [location=force,number=no]
     \startxtable
         ...
     \stopxtable
\stopplacetable


Supplementary question. How might I produce/impose a page break at a 
certain point in a long table? Say that I may want to provoke a break 
before a certain \startxrow...\stopxrow

Thanks

-- 
Alan


More information about the dev-context mailing list