I'm trying to prevent ugly breaks of the items inside a \startcolumns...\stopcolumns
environment:
\setuppapersize[letter]
\setuplayout
[ topspace=0.5in
, height=10in
, backspace=0.75in
, width=7in
]
\setupcolumns[n=3,separator=rule,balance=yes,distance=0.5in]
\define\eachtestpar{\EveryPar{%
%\clubpenalties 5 10000 10000 10000 100 0%
%\widowpenalties 5 10000 10000 10000 100 0%
\keeplinestogether{20}%
}}
\defineitemgroup[test]
[inner=\eachtestpar]
\starttext
\startcolumns
\startitemize
\item One
\item Two
\item Three
\item Four
\item Five\blank[medium]
Thus, I came to the conclusion that the designer of a new system must not only be the...
\item Six
\item Seven
\stopitemize
\stopcolumns
\blank[5*big]
\startcolumns
\startitemize
\item One
\item Two
\item Three
\item Four
\item Five\blank[medium]
Thus, I came to the conclusion that the designer of a new system must not only be the...
\startitemize
\item One
\item Two
\item Three
\stopitemize
\item Six
\item Seven
\stopitemize
\stopcolumns
\stoptext
I don't want to completely prevent breaks, but I do want my penalties to take precedence over column balancing. Unfortunately \EveryPar
with \clubpenalties
, \widowpenalties
and \keeplinestogether
does nothing but reduce the space between the paragraph and nested list (i.e. uglier).
Specifically: a break less than 5 lines or 5 nested items should not happen; instead the columns should be unbalanced.
\setupwhatever[foo=bar ,hello=world]
is not the same as\setupwhatever[foo=bar,hello=world]
. You are lucky that things in\setuplayout
is parsed as dimensions. – Henri Menke Feb 13 '20 at 20:27