I use LilyPond for barbershop quartet music. The barbershop style is mostly
homophonic, but there are frequent spots where one or more parts will need
their own lyrics for a measure or two. I use the split voice approach
mentioned above to handle those spots and it works well. For example

\version "2.19.82"
\language  english

global = {
  \key bf \major
  \time 4/4
  \accidentalStyle modern-voice-cautionary
  \partial 4
}

tenorMusic = \relative c'' {
  af4 | \tuplet 3/2 {g4 g g} g4 g8 a | bf f4 d8 f2 |r4 e e e |
}
tenorMusicb = \relative c'' {
  g8 f g f~f4 g | bf1 ~ bf2. r4
}
tenorMusicc = \relative c'' {
  g4 gf2. | bf1 \bar "|."
}
tenorWords = \lyricmode {
  af- ter you've gone __ a- way, __
}

leadMusic = \relative c' {
  d4 | \tuplet 3/2 {c4 c c} cs4 cs8 cs | d d4 c8 b2 | r4 d c d| ef2. ef4 |
ff2 (~ ff8 ef ff4 f2.) r4 | ef4 ff2. | f1 \bar "|."
}
leadWords = \lyricmode {
  You told me good- bye now it's your turn to cry, af- ter you've gone a-
way __ gone a- way.
}

bariMusic = \relative c' {
  bf4 | \tuplet 3/2 {bf4 bf bf} a4 a8 g | f bf4 af8 g2 | r4 bf bf bf|
}
barimusicb = \relative c' {
  bf8 a bf a ~ a4 a | df2 (~df8 c df4 d2.) r4 |
}
bariMusicc = \relative c' {
  c4 df2. | df1 \bar "|."
}
bariWords = \lyricmode {
  af- ter you've gone __ a- way, __
}

bassMusic = \relative c {
  f4 | \tuplet 3/2 {ef4 ef ef} e4 e8 e | bf bf4 f'8 d2 | r4 g g g |
}
bassMusicb = \relative c {
  c2. c4 | gf'1 ( bf1 ~bf ~ bf) \bar "|."
}
bassWords = \lyricmode {
  gone a- way. __
}

\score {
  \new ChoirStaff <<
    \new Lyrics = "tenors" \with {
      % this is needed for lyrics above a staff
      \override VerticalAxisGroup.staff-affinity = #DOWN
    }
    \new Staff = "high" <<
      \clef "treble_8" {
      \new Voice = "tenors" {\voiceOne \global \tenorMusic }
      \new Voice = "tenb" {\voiceOne \tenorMusicb }
      \new Voice = "tenc" {\voiceOne \tenorMusicc }
      }
      {
      \new Voice = "leads" {\voiceTwo \global \leadMusic }
      }
    >>
    \new Lyrics = "leads"
    \new Lyrics = "baris" \with {
      % this is needed for lyrics above a staff
      \override VerticalAxisGroup.staff-affinity = #DOWN
    }
    \new Staff = "lo" <<
      \clef bass {
      \new Voice = "baris" { \voiceOne \global \bariMusic }
      \new Voice = "barib" { \voiceOne \barimusicb }
      \new Voice = "baric" { \voiceOne \bariMusicc }
       }
      {
      \new Voice = "basses" {\voiceTwo \global \bassMusic }
      \new Voice = "bsb" {\voiceTwo \bassMusicb }
      }
    >>
    \new Lyrics = "basses"
    \context Lyrics = "tenors" \lyricsto "tenb" \tenorWords
    \context Lyrics = "leads" \lyricsto "leads" \leadWords
    \context Lyrics = "baris" \lyricsto "barib" \bariWords
    \context Lyrics = "basses" \lyricsto "bsb" \bassWords
  >>
}

David Bowen

On Mon, Aug 26, 2019 at 8:13 PM Aaron Hill <lilyp...@hillvisions.com> wrote:

> On 2019-08-26 3:34 pm, Michael Wagner wrote:
> > When I am entering music into lilypond, I come across situations where
> > a measure or two of a repeated bit of music has a slight melodic
> > variation and I wold like to associate the appropriate lyrics with
> > that measure.
> > [ . . . ]
> > I might be able to a align the lyrics with the appropriate voice using
> > skips, etc., but it seems as though using \lyricsto would be more
> > elegant.
> > The examples in the manual that use \lyricsto seem to be assigning the
> > equivalent of a whole verse to a voice. Can I align a part of a verse
> > to a voice?
>
> As far as I can tell, \lyricsto does not have a direct way to specify a
> limited scope, since you only get to provide the name of the context.
> To restrict alignment to only a particular subset of notes within a
> Voice, you would need to explicitly separate out those notes into their
> own named context to use with \lyricsto.
>
> LilyPond provides a NullVoice context that makes it easy to include such
> an extraction of notes to be used just for timing but not display.  I
> use this feature quite a bit, mainly because I also use \partcombine
> which is not compatible with \lyricsto; but that is another story.
>
>
> -- Aaron Hill
>
> _______________________________________________
> lilypond-user mailing list
> lilypond-user@gnu.org
> https://lists.gnu.org/mailman/listinfo/lilypond-user
>
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to