summaryrefslogtreecommitdiff
path: root/tex/context/base/mkiv/page-set.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/mkiv/page-set.mkiv')
-rw-r--r--tex/context/base/mkiv/page-set.mkiv26
1 files changed, 16 insertions, 10 deletions
diff --git a/tex/context/base/mkiv/page-set.mkiv b/tex/context/base/mkiv/page-set.mkiv
index 2cea31e1c..fb6f607a1 100644
--- a/tex/context/base/mkiv/page-set.mkiv
+++ b/tex/context/base/mkiv/page-set.mkiv
@@ -14,6 +14,8 @@
% not yet mkiv! probably namespace issues with localframed (only one left)
%
% getnoflines vs getrawnoflines
+%
+% can have some vpack and hpack
% This is a rather old mechanism and we can best keep it as it is. If it gets
% replaced by a more modern solution, it will be an extra mechanism. So, we
@@ -410,7 +412,7 @@
\letcolumnsetparameter\c!height\!!heighta
\letcolumnsetparameter\c!lines \empty
\letcolumnsetparameter\c!region\currentcolumnset
- \setbox\scratchbox\hbox\inheritedcolumnsetframed{}% maybe \fastlocalframed
+ \setbox\scratchbox\hpack\inheritedcolumnsetframed{}% maybe \fastlocalframed
\wd\scratchbox\d_page_set_local_hsize
\ht\scratchbox\!!heighta
\ifcase\columndirection
@@ -558,14 +560,14 @@
{\ifdim\ht\OTRfinalpagebox=\textheight
\bgroup
\ifcase\OTRSETbalancemethod
- \page_otr_construct_and_shipout\box\OTRfinalpagebox
+ \page_otr_construct_and_shipout\box\OTRfinalpagebox\zerocount % three arguments
\else\ifdim\OTRSETbalht>\zeropoint
% catch a bordercase
\scratchdimen\OTRSETbalht
\advance\scratchdimen\lineheight\relax
\ifdim\scratchdimen>\textheight
% full page
- \page_otr_construct_and_shipout\box\OTRfinalpagebox
+ \page_otr_construct_and_shipout\box\OTRfinalpagebox\zerocount % three arguments
\else
% same page
\global\setbox\OTRfinalpagebox \iftracecolumnset\ruledvbox\else\vbox\fi to \OTRSETbalht
@@ -574,7 +576,7 @@
\snaptogrid\vbox{\vskip\OTRSETbalht}% hack
\fi
\else
- \page_otr_construct_and_shipout\box\OTRfinalpagebox
+ \page_otr_construct_and_shipout\box\OTRfinalpagebox\zerocount % three arguments
\fi \fi
\globallet\OTRSETbalht\zeropoint
\egroup
@@ -612,7 +614,7 @@
\ifinotr % else problems with floats, see extreme
\pagegoal\vsize % niet nodig, tenzij binnen otr
\fi
- \synchronizeoutput % fails on example
+ \synchronizeoutput % fails on example, try \triggerpagebuilder instead
% \allowbreak % hm
\fi
\synchronizenotes
@@ -659,7 +661,7 @@
\installcolumnbreakmethod \s!columnset \v!local
{\OTRSETcolumnhbreak
- \page_otr_flush_all_floats
+ \page_set_command_flush_all_floats
\page_otr_eject_page
% no \page_set_command_set_hsize, can be mid smaller (like tabulate)
% also, this one should be executed at the outer level
@@ -2596,27 +2598,31 @@
\fi
\fi}
+\unexpanded\def\page_set_command_flush_all_floats
+ {\page_one_command_flush_all_floats}
+
\defineoutputroutine
[\s!columnset]
[\s!page_otr_command_routine =\page_set_command_routine,
\s!page_otr_command_package_contents =\page_set_command_package_contents,
\s!page_otr_command_set_vsize =\page_set_command_set_vsize,
% \s!page_otr_command_set_hsize =\page_one_command_set_hsize, % tricky, goes wrong
+ \s!page_otr_command_synchronize_hsize =\page_set_command_synchronize_hsize,
\s!page_otr_command_next_page =\page_set_command_next_page,
\s!page_otr_command_next_page_and_inserts =\page_set_command_next_page_and_inserts,
- \s!page_otr_command_synchronize_hsize =\page_set_command_synchronize_hsize,
\s!page_otr_command_set_top_insertions =\page_set_command_set_top_insertions,
\s!page_otr_command_set_bottom_insertions =\page_set_command_set_bottom_insertions,
\s!page_otr_command_flush_top_insertions =\page_set_command_flush_top_insertions,
\s!page_otr_command_flush_bottom_insertions =\page_set_command_flush_bottom_insertions,
- \s!page_otr_command_set_float_hsize =\page_set_command_set_float_hsize,
\s!page_otr_command_check_if_float_fits =\page_set_command_check_if_float_fits,
+ \s!page_otr_command_set_float_hsize =\page_set_command_set_float_hsize,
\s!page_otr_command_flush_float_box =\page_set_command_flush_float_box,
- \s!page_otr_command_synchronize_side_floats =\page_set_command_synchronize_side_floats,
\s!page_otr_command_side_float_output =\page_set_command_side_float_output,
+ \s!page_otr_command_synchronize_side_floats =\page_set_command_synchronize_side_floats,
\s!page_otr_command_flush_floats =\page_set_command_flush_floats,
\s!page_otr_command_flush_side_floats =\page_set_command_flush_side_floats,
- \s!page_otr_command_flush_saved_floats =\page_set_command_flush_saved_floats
+ \s!page_otr_command_flush_saved_floats =\page_set_command_flush_saved_floats,
+ \s!page_otr_command_flush_all_floats =\page_set_command_flush_all_floats,
% \s!page_otr_command_flush_margin_blocks =\page_set_command_flush_margin_blocks, % not used
]