[NTG-context] How to avoid a page break?

Marcin Borkowski mbork at atos.wmid.amu.edu.pl
Tue Nov 4 22:39:08 CET 2008


Dnia Tue, Nov 04, 2008 at 10:17:51PM +0100, Wolfgang Schuster napisał(a):
> 
> Am 04.11.2008 um 21:21 schrieb Marcin Borkowski:
> 
> > Hi,
> >
> > I have the following in my code:
> >
> > \def\doPutTitle#1{%
> >  \startalignment[middle]
> >    \bfb
> >    \page[bigpreference]
> >    \blank[2*big]
> >    #1%
> >    \page[no]%
> >    \blank[big]%
> >    \page[no]%
> >  \stopalignment
> >  \page[no]%
> > }%
> >
> > Why is it still possible that I have a page break after, say,
> > \doPutTitle{some title} (in MkII, in MkIV page breaks fall in  
> > different
> > places).  Which percentage signs and \page[no]'s are unnecessary here?
> 
> \def\doPutTitle#1%
>    {\page[bigpreference]
>     \vbox\bgroup
>     \raggedcenter
>     #1%
>     \egroup
>     \nobreak\blank[big]}

OK, though this looks rather low-level.  I was thinking about something
more user-friendly;).

This raises a philosophical question: is it the "ConTeXt way" to use
low-level constructs in environments and high-level in documents?  Or is
it better to avoid low level whenever possible?  Also, your code mixes
low-level commands (\vbox, which is a TeX prmitive, \raggedcenter, which
is a ConTeXt low-level command, I guess) and high-level ones (\blank).
I understand that this ensures a uniform vertical spacing (\blank[big]
is obviously better than \vskip 10pt;)), but I thought that it is
against ConTeXt philosophy to use low-level stuff unless something
really non-standard is needed.

> 
> > Also, how to avoid a page break right before an itemization?  Adding
> > [intro] seems not to work.
> 
> Example!

Sorry, I haven't provided one.  Here you are.

\starttext
\dorecurse{12}{%
  This is some intro (\recurselevel).
  \startitemize[n,packed,joinedup,columns,two,intro]
  \dorecurse{8}{\item This is an item.}
  \stopitemize
}%
\stoptext

(strange things happen both in MkII and MkIV in the online ConTeXt!)

> 
> > And one more thing about pagebreaks: how to avoid a pagebreak right
> > before a \startformula ... \stopformula?  And what is the ConTeXt  
> > way of
> > setting stretchable vertical glue (e.g. for \blank's, below  
> > itemizations
> > etc.)?
> 
> \blank[ small | medium | big | ... ]

But how do I control the stretchability?

> Wolfgang

Greets

-- 
Marcin Borkowski (http://mbork.pl)

O ludzką twarz - walka trwa!  Już płoną ognie - chwyćmy za ostrze!
Naszym ogniem Moc Najwyższego,  ostrzem wierność obranej drodze...
Walka trwa!
                        (Izaiash)


More information about the ntg-context mailing list