[NTG-context] set headings in the margins

Wolfgang Schuster schuster.wolfgang at googlemail.com
Tue Oct 9 17:01:49 CEST 2007


2007/10/9, Aric Bills <aric.bills at gmail.com>:
> Hello all,
>
> I'm a total newbie Context user trying to do something that is apparently
> way beyond me.  I'm trying to set up a conceptual three-column design grid.
> The idea was to use the two columns on the right for body text, the column
> on the left for margin paragraphs, and the full three-column spread for
> headings.  The easiest way I could find to set such a thing up was this:
>
> \setuplayout[backspace=3.083in,
>     leftmargin=2.083in,
>     leftmargindistance=.25in,
>     width=4.417in,
>     rightmargin=1in]
>
> where "leftmargin" represents the leftmost column and "width" represents the
> other two columns (plus gutter).  So far so good.
>
> To get my heading to stretch across all three conceptual columns, I thought
> I'd use something along the lines of:
>
> \start
> \startlocal
> \setuplayout[...]
> \stoplocal
> \section{This heading was supposed to start at the left edge of the left
> margin and wrap at the right edge of the text area}
> \stop
>
> where [...] would eliminate the left margin and margindistance and
> re-allocate that space to the text width.
> However, I haven't yet found any [...] that does the trick.
>
> Whether my approach is basically right or totally wrong, I'd love to get
> guidance on the best way to typeset a heading across both the margin and the
> text area.  I'm aware that it's trivial to make section numbers appear in
> the margin; this is not the solution I'm looking for, though.
>
> Thanks for your help,
> Aric

Hi Aric,

you can start with my solution, sorry but I have at the moment no time
for a better one.

\setuplayout[backspace=6cm,width=fit]
\def\myheader#1#2%
  {\hbox to\makeupwidth
     {\hss\hbox
to\dimexpr\leftmarginwidth+\leftmargindistance+\makeupwidth\relax
        {\vbox{\hsize=\dimexpr\leftmarginwidth+\leftmargindistance+\makeupwidth\relax#1#2}}}}

\setuphead[section][command=\myheader]

\starttext

\dorecurse{5}
  {\section{\dorecurse{100}{text }}
   \dorecurse{5}{\input knuth\par}}

\stoptext


More information about the ntg-context mailing list