Hello list,

I want to place lyrics above and below a certain staff which works
perfectly as long as I do not change the size of staff and lyrics,
see the attached file and its resulting pdf.

Interestingly, it seems that tin example 2, the upper lyrics are
farther away in the first line, whereas the lower lyrics are farther
away in the second line.

How can I achieve the narrower lyrics from example 1 with the smaller
lyrics and staves of example 2?

TIA,

Marc
\version "2.17.29"
\pointAndClickOff

staffSize = #(define-music-function (parser location new-size) (number?)
#{
  \set Staff.fontSize = #new-size
  \override Staff.StaffSymbol #'staff-space = #(magstep new-size)
  \override Staff.StaffSymbol #'thickness = #(magstep new-size)
#})

lyricSize = #(define-music-function (parser location new-size) (number?)
#{
  \override Score.LyricText.font-size = #new-size
#})

LyrUp = \lyricmode {
  \repeat unfold 8 { lyr -- ics on top }
}

LyrDown = \lyricmode {
  \repeat unfold 8 { bot -- tom lyr -- ics }
}

MelUp = {
  \repeat unfold 8 { d''8 b' b' b' r2 }
}

MelDown = {
  \repeat unfold 8 { r2 g'8 b' b' b' }
}

\score {
  \new Staff = "test"
     \with { instrumentName = "TestStaff" }
  <<
     \new Voice = "up" { \voiceOne \MelUp }
     \new Voice = "down" { \voiceTwo \MelDown }
     \new Lyrics
        \with { alignAboveContext = #"test" }
        \lyricsto "up" \LyrUp
    \new Lyrics \lyricsto "down" \LyrDown
  >>
}

\score {
  \new Staff = "test"
     \with { \staffSize #-4 instrumentName = "TestStaff" }
  <<
     \new Voice = "up" { \voiceOne \MelUp }
     \new Voice = "down" { \voiceTwo \MelDown }
     \new Lyrics
        \with { \lyricSize #-4 alignAboveContext = #"test" }
        \lyricsto "up" \LyrUp
     \new Lyrics
        \with { \lyricSize #-4 }
        \lyricsto "down" \LyrDown
  >>
}

Attachment: lyric-problem.pdf
Description: Adobe PDF document

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to