lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Lyric line's vertical position is shifting from one staff system to


From: dfro
Subject: Re: Lyric line's vertical position is shifting from one staff system to the next.
Date: Wed, 6 Jun 2018 23:03:09 -0400
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0) Gecko/20100101 Thunderbird/52.8.0

I am still trying to work out why the lyric lines are shifting from one staff system to the next in my manuscripts.

In studying the documentation and experimenting with code snippets, I have noticed some curious lyric line behavior when using the VerticalAxisGroup spacing properties. I took the code for the four verse hymn from the Learning Manual 3.2.3 and tried playing with it to manipulate the vertical position of the lyric lines using VerticalAxisGroup overrides.

I think that I have set the correct propertyName's  - nonstaff-relatedstaff-spacing vs. nonstaff-nonstaff-spacing - going with each lyric line.

When I put verse1 and verse2 above the treble staff using the command - alignAboveContext = "Upper" - then I can change their vertical position with each other and the staff using the padding variable. I can make them collide with the staff and each other, if I want to. Setting staff affinity DOWN does not seem to be necessary.

I have left Verse3 and Verse4 lyric lines below the staff. If I try to change the position of verse3 with the padding variable, it works. I can move the lyric line up into the staff, if I want. But, verse4 does not respond to any changes (+ or -) in its padding variable. Why is this so?

If I use the command - alignBelowContext = "Upper" - on the Lyrics to verse3 and verse4, then the texts switch place. (Uncomment these lines in the code to see this behavior.) Also,  the third lyric line (which now has VerseFour text in it) does not respond to padding changes, and the fourth lyric line (which now has VerseThree text in it) responds to the padding variable down and up (to the limit of the third lyric line's position). Why is this happening?

Thank you for any help in understanding this.

Peace,
David


%Start of code

\version "2.18.2"

keyTime = { \key c \major \time 4/4 \partial 4 }

SopMusic   = \relative c' { c4 | e4. e8 g4  g    | a4   a   g  }
AltoMusic  = \relative c' { c4 | c4. c8 e4  e    | f4   f   e  }
TenorMusic = \relative c  { e4 | g4. g8 c4.   b8 | a8 b c d e4 }
BassMusic  = \relative c  { c4 | c4. c8 c4  c    | f8 g a b c4 }

VerseOne =
\lyricmode { E -- | ter -- nal fa -- ther, | strong to save, }
VerseTwo   =
\lyricmode { O | Christ, whose voice the | wa -- ters heard, }
VerseThree =
\lyricmode { O | Ho -- ly Spi -- rit, | who didst brood }
VerseFour  =
\lyricmode { O | Tri -- ni -- ty of | love and pow'r }

\score {
      \new ChoirStaff <<
            \new Staff = "Upper" <<
                  \clef "treble"
                  \new Voice = "Sop"  { \voiceOne \keyTime \SopMusic }
                  \new Voice = "Alto" { \voiceTwo \AltoMusic }
                  \new Lyrics \with {
                        \override VerticalAxisGroup.nonstaff-nonstaff-spacing =                         #'((basic-distance . 0) (minimum-distance . 0) (padding . 2) (stretchability . 0))
                        alignAboveContext = "Upper"
                  } \lyricsto "Sop" { \VerseOne   }

                  \new Lyrics \with {
                        \override VerticalAxisGroup.nonstaff-relatedstaff-spacing =                         #'((basic-distance . 0) (minimum-distance . 0) (padding . 2) (stretchability . 0))
                        alignAboveContext = "Upper"
                  } \lyricsto "Sop" { \VerseTwo   }

                  \new Lyrics \with {
                        \override VerticalAxisGroup.nonstaff-relatedstaff-spacing =                         #'((basic-distance . 0) (minimum-distance . 0) (padding . 2) (stretchability . 0))
                        %alignBelowContext = "Upper"
                  } \lyricsto "Sop" { \VerseThree }

                  \new Lyrics \with {
                        \override VerticalAxisGroup.nonstaff-nonstaff-spacing =                         #'((basic-distance . 0) (minimum-distance . 0) (padding . 2) (stretchability . 0))
                        %alignBelowContext = "Upper"
                  } \lyricsto "Sop" { \VerseFour  }

            >>
            \new Staff = "Lower" <<
                  \clef "bass"
                  \new Voice = "Tenor" { \voiceOne \keyTime \TenorMusic }
                  \new Voice = "Bass"  { \voiceTwo \BassMusic }
            >>
      >>
}

%End of code




reply via email to

[Prev in Thread] Current Thread [Next in Thread]