From: Michael Eidenbenz <eidenbenz@arch.ethz.ch>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: hbox after \page[disable]
Date: Tue, 6 Dec 2016 11:28:30 +0100 [thread overview]
Message-ID: <2F78FEC4-F22C-4C22-96CE-960733AB4EE4@arch.ethz.ch> (raw)
In-Reply-To: <73949d3b-9374-b713-e564-554b7da88687@wxs.nl>
> Am 05.12.2016 um 22:21 schrieb Hans Hagen <pragma@wxs.nl>:
>
> On 12/5/2016 9:32 PM, Michael Eidenbenz wrote:
>> 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.
>
> isn't that just
>
> \definepagebreak[mypagebreak][yes,odd,reset]
>
> and then
>
> \page[mypagebreak]
hmm.
I can't see that [yes, odd, reset] implements the conditional I need to override page[odd]. (see code comments below)
but I guess the real problem occurs because I have to inject this in \everyafteroutput.
\newtoks \EvenPage
\appendtoks
\the\EvenPage
\global\EvenPage\emptytoks
\page[odd] % will be overridden by page[disable]
\to\everyafteroutput
\unexpanded\def\Figure#1{%
\appendtoks
\page[even]
#1
\page
\page[disable] %disable the next \page[odd] because else it will insert
\to\EvenPage}
>
>> 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@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@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@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@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@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@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@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@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
___________________________________________________________________________________
prev parent reply other threads:[~2016-12-06 10:28 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-04 13:12 Michael Eidenbenz
2016-12-04 17:13 ` Hans Hagen
2016-12-04 20:14 ` Michael Eidenbenz
2016-12-05 20:32 ` Michael Eidenbenz
2016-12-05 21:21 ` Hans Hagen
2016-12-06 10:28 ` Michael Eidenbenz [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2F78FEC4-F22C-4C22-96CE-960733AB4EE4@arch.ethz.ch \
--to=eidenbenz@arch.ethz.ch \
--cc=ntg-context@ntg.nl \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).