lilypond-user
[Top][All Lists]
Advanced

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

Re: A Voice with Lyrics interspersed with non-lyric melody


From: Aaron Hill
Subject: Re: A Voice with Lyrics interspersed with non-lyric melody
Date: Fri, 04 Oct 2019 10:39:07 -0700
User-agent: Roundcube Webmail/1.3.8

On 2019-10-04 7:32 am, Mike iLL Kilmer wrote:
I want to be able to have

* Voice with Lyrics
* Just Melody
* Voice with Lyrics again

Where the lyrics can be a single lyricmode entity.

I thought that this could be achieved with context, but this isn’t working:

[ . . . ]

Know that what you provided was not a complete minimal working example, as it did not show how you were assembling the variables into a \score. This leaves folks on the list having to guess the remainder, and it might be possible the error is not in the code that you show. Also, a \version statement is crucial as we need to know which version you are using. In the future, please ensure the MWE provide compiles on its own.

The issue you are facing is most likely that LilyPond is not able to keep the original "verse" context alive for the duration of the intervening notes. Please review the following section [1] in the Notation Reference for more information.

[1]: http://lilypond.org/doc/v2.19/Documentation/notation/keeping-contexts-alive.en.html

Here is an example of a few techniques that ensure a named Voice context remains alive:

%%%%
\version "2.19.83"

\score {
  <<
    \new Staff {
      \time 3/4
      \new Voice = "a" { a'2. }
      % Sequential:
      \new Voice = "b" { b'4 \new Voice { g'8[ 8] } b'4 }
      % Parallel:
      <<
        \new Voice = "c" { c''4 s c'' }
        \new Voice { s4 g'8 8 s }
      >>
      % Parallel within Sequential:
      {
        \new Voice = "d" { d''4 }
        <<
          \context Voice = "d" { s4 }
          \new Voice { g'8[ 8] }
        >>
        \context Voice = "d" { d''4 }
      }
      % Sequential within Parallel:
      <<
        \new Voice = "e" { s2. }
        {
          \context Voice = "e" { e''4 }
          \new Voice { g'8[ 8] }
          \context Voice = "e" { e''4 }
        }
      >>
    }
    \new Lyrics <<
      \lyricsto "a" { a }
      \lyricsto "b" { b b }
      \lyricsto "c" { c c }
      \lyricsto "d" { d d }
      \lyricsto "e" { e e }
    >>
  >>
}
%%%%


-- Aaron Hill



reply via email to

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