indents for verse lines

This commit is contained in:
tux 2025-05-10 15:13:47 +02:00
parent 616034baca
commit cb4b74d4f7

View File

@ -221,14 +221,27 @@
(cons (car x) (+ (cdr x) amount)) (cons (car x) (+ (cdr x) amount))
y))) y)))
#(define-markup-command (score-equal-height layout props reference-height lines) #(define-markup-command (score-equal-height-with-indents layout props reference-height lines)
(number? markup-list?) (number? markup-list?)
#:category music #:category music
#:properties ((baseline-skip)) #:properties ((baseline-skip)
(stack-stencils Y DOWN baseline-skip (line-indents '()))
(map (let ((indents-max-index (- (length line-indents) 1)))
(lambda (line) (ly:make-stencil (ly:stencil-expr line) (ly:stencil-extent line X) `(,(/ reference-height -2.0) . ,(/ reference-height 2.0)))) (stack-stencils Y DOWN baseline-skip
(interpret-markup-list layout props lines)))) (index-map
(lambda (index line)
(let ((stil
(ly:make-stencil
(ly:stencil-expr line)
(ly:stencil-extent line X)
`(,(/ reference-height -2.0) . ,(/ reference-height 2.0)))))
(if (<= index indents-max-index)
(ly:stencil-translate-axis
stil
(list-ref line-indents index)
X)
stil)))
(interpret-markup-list layout props lines)))))
#(define-public (custom-lyric-text::print grob) #(define-public (custom-lyric-text::print grob)
"Allow interpretation of tildes as lyric tieing marks." "Allow interpretation of tildes as lyric tieing marks."
@ -253,7 +266,7 @@
#{ #{
\markup { \markup {
\override #`(baseline-skip . ,intraverse-vspace) \override #`(baseline-skip . ,intraverse-vspace)
\score-equal-height #verse-line-height \score-lines { \score-equal-height-with-indents #verse-line-height \score-lines {
<< <<
\new Devnull { #verse-break-voice } \new Devnull { #verse-break-voice }
\new NullVoice = "dummyvoice" { #verse-reference-voice } \new NullVoice = "dummyvoice" { #verse-reference-voice }