[NTG-context] linebreak in part title

Michael Murphy michael.murphy at uni-ulm.de
Tue Nov 9 01:01:29 CET 2010


On 09/11/2010 00:30, Michael Goerz wrote:
> Hi everyone,
>
> I want part titles to appear on the own (empty) page, centered
> horizontally and vertically, and in small caps. To this end, I've set
> up the \part command as
>
>      \def\Partcommand#1#2{\centerline{\smcp #2}}
>      \setuphead[part][
>          placehead=yes,
>          number=no,
>          page=mychapterpagebreak,
>          header=high,
>          footer=high,
>          before={\hbox{}\vfill},
>          command=\Partcommand,
>          after={\vfill},
>          prefix=no,
>      ]
>

The problem is that \centerline puts things in a hbox, which won't break 
across lines. The solution below might not be the most ConTeXt-y way, 
but is perhaps the TeX way:

\def\raggedcenter{%
	\hyphenpenalty=10000 % no hyphenation
   \parindent=0pt \rightskip0pt plus1em % add stretchy glue to left
  \leftskip0pt plus1em                  % and right
   \spaceskip.3333em \xspaceskip.5em \parfillskip=0pt % reg. word spacing
   \hbadness=10000 % Last line will usually be underfull, so turn off
                   % badness reporting.
}

\def\Partcommand#1#2{{\raggedcenter\smcp #2}}
   \setuphead[part][
       placehead=yes,
       number=no,
       page=mychapterpagebreak,
       header=high,
       footer=high,
       before={\hbox{}\vfill},
       command=\Partcommand,
       after={\vfill},
       prefix=no,
   ]

-- 
Michael Murphy


More information about the ntg-context mailing list