\version "2.11.44" #(set-default-paper-size "a4") #(set-global-staff-size 16) #(ly:set-option 'point-and-click #f) \header { title = "Using line-break-system-details with lyrics" } \paper { #(define page-breaking ly:minimal-breaking) } \paper { ragged-bottom = ##f ragged-last-bottom = ##f } \layout { \context { \Score \override NonMusicalPaperColumn #'line-break-system-details = #'((alignment-offsets . ( 0 -5.5 ; S + lyrics -9.5 -15 ; A + lyrics -19 -24.5 ; T + lyrics -28.5 -34 ; B + lyrics -41 -49 ; OI R+L -59 -67 -75 ; OII R+L+Bass ))) } } musicI = \relative c' {c4 d e f |\break R1 | \break c'4 b a g |\break f e d c\bar"|."} musicIb = \relative c' {c4 d e f |\break g a b c | \break R1 |\break f,4 e d c\bar"|."} musicII = \relative c {c4 d e f |\break g4 a b c | \break c b a g |\break R1 \bar"|."} lyr = \lyrics { a b c d e f g h i j k l m n o p q } #(define-markup-list-command (paragraph layout props args) (markup-list?) (let ((indent (chain-assoc-get 'par-indent props 2))) (interpret-markup-list layout props (make-justified-lines-markup-list (cons (make-hspace-markup indent) args))))) \markuplines { \paragraph { When you use line-break-system-details to force a fixed spacing of all the staves, this fatally breaks with lyrics: If one staff line does not have any lyrics attached, the lyrics position is used for the next staff, which is thus placed far too close to the previous staff!} } \score { << \context ChoirStaff="ChSt" << \context Staff="SSt" << \new Voice=SV \musicI >> \lyricsto "SV" \lyr \context Staff="ASt" << \new Voice=AV \musicIb >> \lyricsto "AV" \lyr \context Staff="TSt" << \new Voice=TV {\clef "treble_8" \musicII} >> \lyricsto "TV" \lyr \context Staff="BSt" << \new Voice=BV {\clef "bass" \musicII} >> \lyricsto "BV" \lyr >> \context PianoStaff="OISt" << \context Staff="OIRSt" \musicI \context Staff="OILSt" {\clef "bass" \musicII} >> %{ << \context PianoStaff="OIISt" << \context Staff="OIIaSt" \musicI \context Staff="OIIbSt" {\clef "bass" \musicII} >> \context Staff="OIIBSt" {\clef "bass" \musicII} >>%} >> }