Le 08/10/2021 à 09:24, Werner LEMBERG a écrit :
Looking at the current output of regtest `unpure-pure-container.ly` I
have the feeling that the description text doesn't fit the code at
all: It always talks about the second note of each group, while the
code modifies the first note.

To answer the second part of your question: the regtest
overrides the pure Y offset of the first note's flag,
which allows the second note to move closer to the first
note. Horizontal spacing springs and rods are computed
before line breaking because they are needed for line breakers
to find the optimal configuration. So they are only based
on pure height estimates and not real values. This is
required for stems with beams, since their length depends
on the slope of the beam, which in turn depends on horizontal
spacing. The test fools the pure estimation of the flag's
offset, causing it to appear much higher than it actually is,
and in particular not overlapping with the second note, in
the pure skylines used to determine the rod between the two
columns. As a result, the flag does not appear to collide with
the second note, which is consequently allowed to get closer to
the first note. Adding the following might be an aid to
understanding:

#(ly:set-option 'debug-skylines)
\layout {
  \override Score.PaperColumn.stencil = #ly:separation-item::print
}

Best,
Jean

Reply via email to