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: Thu, 7 Jun 2018 14:15:50 -0400
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0) Gecko/20100101 Thunderbird/52.8.0

On 6/7/18 4:41 AM, Thomas Morley wrote:
Hi,

I'll soon have to run for my regular job, so I limit my reply to
alignAbove/BelowContext.

2018-06-07 5:03 GMT+02:00 dfro <address@hidden>:

If I use the command - alignBelowContext = "Upper" - on the Lyrics to verse3
and verse4, then the texts switch place.
[...]
Why is this
happening?
In short, because you told LilyPond to do so ;)

More verbose (with pseudo code), look at what you did and how LilyPond
understands it:

(1) you typed:

Staff
Lyrics1
Lyrics2
Lyrics3
Lyrics4

(2) then you told to place Lyrics1 right above Staff:

Lyrics1 align-right-above-Staff
Staff
Lyrics2
Lyrics3
Lyrics4

(3) then you told to place Lyrics2 right above Staff:

Lyrics1
Lyrics2 align-right-above-Staff
Staff
Lyrics3
Lyrics4


(4) then you told to place Lyrics3 right below Staff (same output as before):

Lyrics1
Lyrics2
Staff
Lyrics3 align-right-below-Staff
Lyrics4

(5) then you told to place Lyrics4 right below Staff

Lyrics1
Lyrics2
Staff
Lyrics4 align-right-below-Staff
Lyrics3

All done as specified.


Maybe someone can step in for the spacing, I'll be back in the evening.


Cheers,
   Harm


Harm,

Thank you for your clear reply! This is starting to making more sense to me.

(5) then you told to place Lyrics4 right below Staff

Lyrics1
Lyrics2
Staff
Lyrics4 align-right-below-Staff
Lyrics3
Since the VerticalAxisGroup is still set to nonstaff-nonstaff-spacing for Verse4, any changes to the padding push Verse3 below it (a nonstaff object) up or down. Correct? And, if I then change the VerticalAxisGroup setting to nonstaff-relatedstaff-spacing for Verse4, then it moves up or down in relation to the staff.


I still don't understand the behavior of the padding variable for some of the lyric lines.

Changed code copied below:
If I delete all of the alignAbove/BelowContext settings so that the lyric lines are all below the staff, and reset Lyrics1 to nonstaff-relatedstaff-spacing and Lyrics2, 3, and 4 to nonstaff-nonstaff-spacing, then:

The padding for Verse1 pushes Verse1, and all the other verses, up or down in relation to the treble staff. The padding for Verse2 pushes Verse3 and Verse4 up or down. It does not move in relation to Verse1.
The padding for Verse3 pushes Verse4 up or down.
The padding for Verse4 has no effect.

It seems like Verses2, 3, and 4 are looking down when using the padding variable. How can I get them to look up to the verses and staff above? The command - \override VerticalAxisGroup.staff-affinity = #UP - does not change the looking down behavior for the padding variable.


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-relatedstaff-spacing =                         #'((basic-distance . 0) (minimum-distance . 0) (padding . 2) (stretchability . 0))
                        %\override VerticalAxisGroup.staff-affinity = #UP
                  } \lyricsto "Sop" { \VerseOne   }

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

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

                  \new Lyrics \with {
                        \override VerticalAxisGroup.nonstaff-nonstaff-spacing =                         #'((basic-distance . 0) (minimum-distance . 0) (padding . 2) (stretchability . 0))
                        %\override VerticalAxisGroup.staff-affinity = #UP
                  } \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]