1 Commits

Author SHA1 Message Date
tux
0339efcfea new engraver for spacing in chordlyrics 2025-06-12 21:32:25 +02:00

View File

@ -264,8 +264,7 @@ Chord_lyrics_spacing_engraver =
(remaining-chord-width 0) (remaining-chord-width 0)
(last-rest #f) (last-rest #f)
(rest-count 0) (rest-count 0)
(multi-measure-rest-count 0) (multi-measure-rest-count 0))
(stanza-shift 0))
(make-engraver (make-engraver
(listeners (listeners
((multi-measure-rest-event engraver event) ((multi-measure-rest-event engraver event)
@ -282,15 +281,11 @@ Chord_lyrics_spacing_engraver =
(set! last-rest #f) (set! last-rest #f)
(set! rest-count 0) (set! rest-count 0)
(set! multi-measure-rest-count 0) (set! multi-measure-rest-count 0)
(set! stanza-shift 0)
)) ))
(acknowledgers (acknowledgers
((note-head-interface this-engraver grob source-engraver) ((note-head-interface this-engraver grob source-engraver)
(if (and (> rest-count 0) (not last-note-head)) (if (and (> rest-count 0) (not last-note-head))
(let ((rest-spacing-on-line-start 1.2)) (ly:grob-set-property! grob 'minimum-X-extent (cons -1.2 0)))
(ly:grob-set-property! grob 'minimum-X-extent (cons (- rest-spacing-on-line-start) 0))
(set! stanza-shift rest-spacing-on-line-start)
))
(set! notes-on-syllable-count (+ 1 notes-on-syllable-count)) (set! notes-on-syllable-count (+ 1 notes-on-syllable-count))
(set! last-note-head grob) (set! last-note-head grob)
(set! note-head-extended #f) (set! note-head-extended #f)
@ -354,8 +349,6 @@ Chord_lyrics_spacing_engraver =
(set! last-rest grob) (set! last-rest grob)
(set! multi-measure-rest-count 0) (set! multi-measure-rest-count 0)
) )
((stanza-number-interface this-engraver grob source-engraver)
(ly:grob-set-property! grob 'padding stanza-shift))
)))) ))))
%#(ly:set-option 'debug-skylines #t) %#(ly:set-option 'debug-skylines #t)