Hi Hans,
the position to set the \usesamefloatnumber conditional has to be moved
up a few lines
to fix a bug demonstrated by the example below.
\def\tabl_split_loop_body
{\ifinsidecolumns
[...]
\else
% hack
\ifdim\pagegoal<\maxdimen
\pagegoal\dimexpr\pagegoal+\lineheight\relax % etex
\fi
% brrr
\ifdim\ht\tsplitresult>\zeropoint
\setbox\tsplitresult\vbox
{\unvbox\tsplitresult
\tsplitinbetween
\unvcopy\tsplittail}%
\page_split_float_process{\tsplitbeforeresult\box\tsplitresult\tsplitafterresult}%
\doifnotinsidesplitfloat\tsplitafter
\endgraf
+ \global\settrue\usesamefloatnumber
\fi
\ifinsidecolumns
\goodbreak % was \doifnotinsidesplitfloat\goodbreak
\else
\page % was \doifnotinsidesplitfloat\page
\fi
- \global\settrue\usesamefloatnumber % new, prevent next increment
\fi}
%% begin example
\setuplayout[lines=6]
\starttext
Text
\startplacetable[location=split]
\bTABLE \bTR \bTD \input tufte \eTD \eTR \eTABLE
\stopplacetable
\stoptext
%% end example
Wolfgang
_______________________________________________
dev-context mailing list
dev-context@ntg.nl
https://mailman.ntg.nl/mailman/listinfo/dev-context