On 2020-08-11 2:15 am, Werner LEMBERG wrote:
Folks,
look at this example:
{ <e' c''>2\glissando <d' bes'> }
Due to the flat, the lower glissando line is far too short. I
consider this a bug.
LilyPond already provides the `end-on-accidental` property (which is
set to #t by default). For chords, however, this should be only
applied to glissando lines that actually have accidentals.
I think a fix should be added to the C++ code; unfortunately, this is
beyond my capabilities right now. Is there a solution to circumvent
this temporarily?
%%%%
\version "2.20.0"
{
\override Glissando.before-line-breaking =
#(lambda (grob)
(let* ((nh (ly:spanner-bound grob RIGHT))
(acc (ly:grob-object nh 'accidental-grob)))
(ly:grob-set-nested-property!
grob
'(bound-details right end-on-accidental)
(ly:grob? acc))))
<e' c''>2\glissando <d' bes'>
}
%%%%
-- Aaron Hill