Hello Erik, What you can do to solve this is to manually increase the space after the clef, e.g. doing
\once \override Staff.Clef.extra-spacing-width = #'(0 . 3)
This forces Lilypond to put some extra space after the clef, so there is enough
room for the arpeggio.
A more systematic solution would be to actually force Lilypond to align the
Arpeggios. E.g. this code here solves this problem by not solving positioning
for each arpeggio indiviually, but to position the individual invisible
Arpeggios (used for spacing) onto the span arpeggio.
%%%
#(define (span-arpeggio-align context)
(let ((arpeggios '()) (span-arpeggio #f))
(make-engraver
(acknowledgers
((arpeggio-interface engraver grob source)
(let* ((det (ly:grob-property grob 'details))
(staff-arp (assoc-get 'staff-arpeggio det #f)))
(if staff-arp
(set! arpeggios (cons grob arpeggios))
(set! span-arpeggio grob)))))
((stop-translation-timestep engraver)
(if span-arpeggio
(for-each
(lambda (g) (ly:grob-set-parent! g X span-arpeggio))
arpeggios))
(set! arpeggios '())
(set! span-arpeggio #f)))))
%%%
I suppose maybe this logic should be incorporated into the span-arpeggio
engraver, so adding devel for discussion.
Cheers,
Tina
signature.asc
Description: This is a digitally signed message part.
