On 2014-06-01 07:51, Hans Hagen wrote: > Hi Pablo, > > The section breaks are a bit of a headache. In the old mechanism (also > mkii) we used penalties between different section levels (different > values so that there is some hierarchy). > > In mkiv we have a weighted penalty/glue mechanism which has advantages > but can also create side effects. The method of a few weeks ago coul > deal with > > \section followed by 100 \subsections > > i.e. no text between this. In a strict mechanism you end up with one > long page fur to all the penalties. So, there was some precaution for > this. However that didn't work well with content following sections > that prefers breaks (read: section head followed by e.g. itemize or > tabulate). > > So, the newer mechanism tries to analyze the page stream which > (currently) is somewhat tricky. That's why we need to iterate to an > acceptable solution. > > Some of these mkiv mechanisms are already a bit old and could be done > better using some newer luatex trickery (but i need tome to do that). > > It would be nice to have a large test case for this (sort of hard to > make one as some trial and error is involved). As you already have > some, best collect them for future reference. > > A new beta ... > > Hans > Hans, Is this also the cause of problems I noted with heading placed into the margin, as in the example below? % Extra whitespace after some marginal section headings % % When section heads are set in the margin, the following body % text should start on the same line as the heading. This is % the case with plain text, but not always the case with other % features (floats and enumerations). Wolfgang suggested adding % insidesection={blank[overlay]} to the section heading setup, but % that only helps with enumerations and with tabulate tables that do % not start with an HL (it fails with natural tables as well). And % that success only comes with start/stop sectioning. With traditional % sectioning, there are more failures. % % \setupexternalfigures[location=default] \setuphead [section] [alternative=text, command=\SectionCommand, distance=0pt, insidesection={\blank[overlay]}, ] \define[2]\SectionCommand {\inmargin{#1 -- #2}} \setuplayout[backspace=4cm] \starttext \startchapter[title={Start/Stop sectioning}] \startsection[title={Okay with text first}] Text here \starttabulate \FL \NC Knuth \NC \input{knuth} \NC\NR \stoptabulate \stopsection \startsection[title={Okay with itemize}] \startitemize \item One \item Two \item Three \stopitemize \stopsection \startsection[title={Okay with tabulate no HL}] \starttabulate \NC Knuth \NC \input{knuth} \NC\NR \stoptabulate \page \stopsection \startsection[title={Fail with tabulate HL}] \starttabulate \FL \NC Knuth \NC \input{knuth} \NC\NR \stoptabulate \stopsection \startsection[title={Fail with TABLE frame}] \bTABLE \bTR \bTD Knuth \eTD\bTD \input{knuth} \eTD\eTR \eTABLE \stopsection \startsection[title={Fail with TABLE no frame}] \bTABLE[frame=off] \bTR \bTD Knuth \eTD\bTD \input{knuth} \eTD\eTR \eTABLE \page \stopsection \startsection[title={Fails with figures}] \startplacefigure[location=right,reference={fig:2},title={Caption}] \externalfigure[cow.pdf][width=2cm] \stopplacefigure \input{tufte} \stopsection \stopchapter \chapter{Traditional sectioning} \section{Okay with text first} Text here \starttabulate \FL \NC Knuth \NC \input{knuth} \NC\NR \stoptabulate \section{Fail with itemize} \startitemize \item One \item Two \item Three \stopitemize \page \section{Fail with tabulate no HL} \starttabulate \NC Knuth \NC \input{knuth} \NC\NR \stoptabulate \section{Fail with tabulate HL} \starttabulate \FL \NC Knuth \NC \input{knuth} \NC\NR \stoptabulate \section{Fail with TABLE frame} \bTABLE \bTR \bTD Knuth \eTD\bTD \input{knuth} \eTD\eTR \eTABLE \section{Fail with TABLE no frame} \bTABLE[frame=off] \bTR \bTD Knuth \eTD\bTD \input{knuth} \eTD\eTR \eTABLE \page \section[title={Fails with figures startstop}] \startplacefigure[location=right,reference={fig:2},title={Caption}] \externalfigure[cow.pdf][width=2cm] \stopplacefigure \input{tufte} \section[title={Fails with figures traditional}] \placefigure[right][fig:2]{Caption} {\externalfigure[cow.pdf][width=2cm]} \input{tufte} \stoptext -- Rik Kabel