[NTG-context] hbox after \page[disable]

Michael Eidenbenz eidenbenz at arch.ethz.ch
Mon Dec 5 21:32:56 CET 2016


Ok I got it.

page[disable] is not taken into account by page[odd] so I changed it in
page-brk.mkiv: 

  \installpagebreakmethod \v!odd
  {\relax\ifconditional\c_page_breaks_enabled
   \page
   \doifelseoddpage\donothing\page_reset_marks_and_insert_dummy
   \else 
   \resetpagebreak
   \fi}

with this my MWE works perfectly. 
But will this break other things?
I dont really know what I'm doing.... just hacking.

Michael

-----

\enabletrackers 
[visualizers.hbox]

\useMPlibrary[dum]

\setuppagenumbering
[alternative=doublesided]

\definelayout[odd][width=10cm]
\definelayout[even][width=15cm]

\newtoks \EvenPage

\appendtoks
\the\EvenPage
\global\EvenPage\emptytoks
\page[odd]
\to\everyafteroutput

\unexpanded\def\Figure#1{%
 \appendtoks
 \page[even]
 #1
 \page
 \page[disable] %disable the next \page[odd]
 \to\EvenPage}

\showframe

\starttext

\dorecurse{4}{\input{tufte}\par}

\Figure{\externalfigure[dummy][factor=fit]}
\dorecurse{4}{\input{knuth}\par}
\Figure{\externalfigure[dummy][height=\textheight]}  %
\dorecurse{8}{\input{ward}\par}
\stoptext


> Am 04.12.2016 um 21:14 schrieb Michael Eidenbenz <eidenbenz at arch.ethz.ch>:
> 
> Dear Hans,
> 
> thank you for your answer, but it doesnt solve the issue. 
> (or I dont understand what you mean)
> 
> the argument in the macro is acually (not in the MWE) a xtable filled with \externalfigures.
> so I would like to avoid floats as it makes things more complicated and slower.
> 
> I tried finding the \page[disable] definition in the code but could not find it. 
> 
> any further suggestions how I can solve this issue?
> 
> thanks Michael
> 
> 
> 
>> Am 04.12.2016 um 18:13 schrieb Hans Hagen <pragma at wxs.nl>:
>> 
>> On 12/4/2016 2:12 PM, Michael Eidenbenz wrote:
>>> I have a doublesided layout.
>>> On the right side i place the text, figures (if i have any) go on the left side.
>>> the MWE below works quite nice.
>>> 
>>> But if i want the figure to be full height, two pages are skipped.
>>> This is becaus the hbox right below of the figure.
>>> I think it is placed during the \page[disable] pass.
>>> 
>>> What can I do to avoid this hbox?
>> 
>> \def\Figure#1{\placefigure[location={page,none}]{}{#1}}
>> 
>> 
>>> Thanks Michael
>>> 
>>> 
>>> \enabletrackers
>>> [visualizers.hbox]
>>> 
>>> \useMPlibrary[dum]
>>> 
>>> \setuppagenumbering
>>> [alternative=doublesided]
>>> 
>>> \definelayout[odd][width=10cm]
>>> \definelayout[even][width=15cm]
>>> 
>>> \newtoks \EvenPage
>>> 
>>> \appendtoks
>>> \the\EvenPage
>>> \global\EvenPage\emptytoks
>>> \page[odd]
>>> \to\everyafteroutput
>>> 
>>> \unexpanded\def\Figure#1{%
>>> \appendtoks
>>> \page[even]
>>> #1
>>> \page[disable]
>>> \to\EvenPage}
>>> 
>>> \showframe
>>> 
>>> \starttext
>>> 
>>> \dorecurse{4}{\input{tufte}\par}\page
>>> \Figure{\externalfigure[dummy][factor=fit]}
>>> \dorecurse{4}{\input{knuth}\par}\page
>>> \Figure{\externalfigure[dummy][height=\textheight]}  %
>>> \dorecurse{8}{\input{ward}\par}
>>> \stoptext
>>> 
>>> ___________________________________________________________________________________
>>> If your question is of interest to others as well, please add an entry to the Wiki!
>>> 
>>> maillist : ntg-context at 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
>>> ___________________________________________________________________________________
>>> 
>> 
>> 
>> -- 
>> 
>> -----------------------------------------------------------------
>>                                         Hans Hagen | PRAGMA ADE
>>             Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
>>      tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
>> -----------------------------------------------------------------
>> ___________________________________________________________________________________
>> If your question is of interest to others as well, please add an entry to the Wiki!
>> 
>> maillist : ntg-context at 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 at 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
> ___________________________________________________________________________________



More information about the ntg-context mailing list