Re: treble clef spacing

Tina Petzel <[email protected]> Thu, 25 Jun 2026 10:11:37 +0200
Newsgroups gmane.comp.gnu.lilypond.devel,gmane.comp.gnu.lilypond.general
Message-ID <[email protected]>
--nextPartQANtWxazQ96i_moxUUcLxQ
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="utf-8"; protected-headers="v1"
From: Tina Petzel <[email protected]>
To: Lilypond <[email protected]>
Cc: Erik Appeldoorn <[email protected]>, [email protected]
Subject: Re: treble clef spacing
Date: Thu, 25 Jun 2026 10:11:37 +0200
Message-ID: <[email protected]>
MIME-Version: 1.0

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
--nextPartQANtWxazQ96i_moxUUcLxQ
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part.
Content-Transfer-Encoding: 7Bit

-----BEGIN PGP SIGNATURE-----

iHUEABYKAB0WIQS0sdUK2Lu8of48K2+FHhaCPe7BywUCajziuQAKCRCFHhaCPe7B
y79OAP918vevX/Vp7ZCw5+z/wWyfjrkMYnyoBwnN3RXnI2FZIwEArTpMFjiycN0C
nvLvV5xYIps1bOAJXMYNRp8D1aV3mw8=
=W1K2
-----END PGP SIGNATURE-----

--nextPartQANtWxazQ96i_moxUUcLxQ--