diff options
author | Hans Hagen <pragma@wxs.nl> | 2020-01-26 19:35:43 +0100 |
---|---|---|
committer | Context Git Mirror Bot <phg@phi-gamma.net> | 2020-01-26 19:35:43 +0100 |
commit | 43fc66771a0c9d27cc0b7fe7a69392ea313bd0ca (patch) | |
tree | 9b339c63cd28528e5062fe980e964808df619374 /tex/context/base/mkiv/page-ffl.mkiv | |
parent | 5189b2143a30a39cd3533569cbef3f06422cc1d9 (diff) | |
download | context-43fc66771a0c9d27cc0b7fe7a69392ea313bd0ca.tar.gz |
2020-01-26 18:37:00
Diffstat (limited to 'tex/context/base/mkiv/page-ffl.mkiv')
-rw-r--r-- | tex/context/base/mkiv/page-ffl.mkiv | 58 |
1 files changed, 33 insertions, 25 deletions
diff --git a/tex/context/base/mkiv/page-ffl.mkiv b/tex/context/base/mkiv/page-ffl.mkiv index 306c19790..176c4a185 100644 --- a/tex/context/base/mkiv/page-ffl.mkiv +++ b/tex/context/base/mkiv/page-ffl.mkiv @@ -65,7 +65,7 @@ \c!inbetween={\blank[\v!big]}, %\c!style, %\c!color, - \c!page=\v!yes] + \c!page=\v!left] \appendtoks \ifx\currentfacingfloatparent\empty @@ -74,8 +74,8 @@ \fi \to \everydefinefacingfloat -\newcount\c_strc_floats_saved -\newcount\c_strc_floats_flushed +\newcount\c_strc_floats_facing_saved +\newcount\c_strc_floats_facing_flushed \newbox\b_strc_floats_facing_l \newbox\b_strc_floats_facing_r @@ -83,12 +83,24 @@ \let\m_strc_floats_state\relax \def\strc_floats_facing_flush - {\ifnum\c_strc_floats_flushed<\c_strc_floats_saved - \strc_floats_facing_flush_indeed % less tracing + {\ifnum\c_strc_floats_facing_flushed<\c_strc_floats_facing_saved + \ifodd\c_strc_floats_facing_flushed + \ifodd\realpageno + \strc_floats_facing_flush_indeed + \doifelsependingpagecontent\relax{\null\page}% + \else + \fi + \else + \ifodd\realpageno + \else + \strc_floats_facing_flush_indeed + \doifelsependingpagecontent\relax{\null\page}% + \fi + \fi \fi} \def\strc_floats_facing_flush_indeed - {\global\advance\c_strc_floats_flushed\plusone + {\global\advance\c_strc_floats_facing_flushed\plusone \floatingpenalty\zerocount \insert\namedinsertionnumber\s!topfloat\bgroup \forgetall @@ -100,12 +112,12 @@ \prevdepth\maxdimen \fi \fi - \directboxfromcache{\currentfacingfloat}{\number\c_strc_floats_flushed}% + \directboxfromcache{\currentfacingfloat}{\number\c_strc_floats_facing_flushed}% \vkern\s_page_one_between_top_insert \egroup - \ifnum\c_strc_floats_saved=\c_strc_floats_flushed - \global\c_strc_floats_saved \zerocount - \global\c_strc_floats_flushed\zerocount + \ifnum\c_strc_floats_facing_saved=\c_strc_floats_facing_flushed + \global\c_strc_floats_facing_saved \zerocount + \global\c_strc_floats_facing_flushed\zerocount \resetboxesincache{\currentfacingfloat}% \fi} @@ -145,34 +157,34 @@ \fi\fi} \unexpanded\def\strc_floats_facing_handle - {\strc_floats_facing_collect - \doifnextbgroupelse + {\doifnextbgroupelse \strc_floats_facing_handle_indeed - \strc_floats_wrap_up} + \strc_floats_facing_wrap_up} \unexpanded\def\strc_floats_facing_handle_indeed {\dowithnextboxcontent \strc_floats_facing_setup - \strc_floats_facing_handle + {\strc_floats_facing_collect\strc_floats_facing_handle} \vbox} \unexpanded\def\startfacingfloat[#1]% {\begingroup % todo: \usepageparameter - \edef\p_page{\facingfloatparameter\c!page}% - \ifx\p_page\empty - \page[\p_page]% - \fi +% \edef\p_page{\facingfloatparameter\c!page}% +% \ifx\p_page\empty\else +% \page[\p_page]% +% \fi % \let\startcontent\bgroup \let\stopcontent\egroup \def\currentfacingfloat{#1}% + \let\m_strc_floats_state\v!left \strc_floats_facing_handle} \unexpanded\def\stopfacingfloat {\endgroup} -\unexpanded\def\strc_floats_wrap_up +\unexpanded\def\strc_floats_facing_wrap_up {\edef\p_spaceinbetween{\facingfloatparameter\c!spaceinbetween}% \ifx\p_spaceinbetween\empty \scratchdimen\zeropoint @@ -208,13 +220,9 @@ \else \setbox\scratchbox\vbox to \textheight{\box\scratchbox\vss}% \fi - \global\advance\c_strc_floats_saved\plusone - \putboxincache{\currentfacingfloat}{\number\c_strc_floats_saved}\scratchbox + \global\advance\c_strc_floats_facing_saved\plusone + \putboxincache{\currentfacingfloat}{\number\c_strc_floats_facing_saved}\scratchbox \endgroup \fi} -\appendtoks - \strc_floats_facing_flush -\to \everyafteroutput - \protect \endinput |