On Thu, Oct 17, 2013 at 5:55 PM, Garrett McGilvray <
garrett.mcgilv...@gmail.com> wrote:

>
> On Oct 12, 2013, at 10:25 PM, Carl Peterson <carlopeter...@gmail.com>
> wrote:
>
> So this would be your basic setup:
>
> \score {
>    \new Staff = "top" {
>     << \new Voice = "sopVerse" { } % voice for verse melody and combined
> alto
>          \new Voice = "altoVerse" { } % voice for verse alto lines that
> require separate stem, such as "days" on line 2
>     >>
>     << \new Voice = "sopChorus" { } % voice for chorus melody and combined
> alto
>          \new Voice = "altoChorus" { } % voice for chorus alto lines that
> require separate stem, particularly "gently home" at end
>     >>
>   }
>   \new Staff = "bottom" {
>     << \new Voice = "tenVerse" { } % voice for verse tenor lines requiring
> separate stems
>          \new Voice = "bassVerse" { } % voice for verse bass and combined
> tenor stems
>     >>
>     << \new Voice = "tenChorus" { } % voice for chorus tenor lines
> requiring separate stems
>          \new Voice = "bassChorus" { } % voice for chorus bass and
> combined tenor stems
>     >>
>   }
> }
>
> You'll then associate your lyrics with the proper voices.
>
>
> Oh dear, I did some testing yesterday, and I thought I had it figured out
> following Carl's model above, but today I tried adding lyrics, and I get an
> error: " programming error: Moment is not increasing.  Aborting
> interpretation." I have tried to make a sample following the model above,
> and for simplicity's sake I have brought it down to a single clef. Try this
> and it will work beautifully (I'm on 2.16.2 and Mac OS 10.8.5) :
>
> \version "2.16.2"
>
> sopVerse = \relative c' {
>   \time 3/4
>   \voiceOne
>   c4^"Verses" <c d> <c e>
> }
>
> altoVerse = \relative c' {
>   \voiceTwo
>   c4 s2
> }
>
> sopChorus = \relative f' {
>   \voiceOne
>   f4^"Chorus" <f g> <f a>
> }
>
> altoChorus = \relative f' {
>   \voiceTwo
>   f4 s2
> }
>
> \score {
>   \new Staff = "top" \relative c' {
>     <<
>       \new Voice = "sopVerse" { \sopVerse }
>       \new Voice = "altoVerse" { \altoVerse }
>     % \new Lyrics \lyricsto "sopVerse" { one two three }
>     >>
>     <<
>       \new Voice = "sopChorus" { \sopChorus }
>       \new Voice = "altoChorus" { \altoChorus }
>     % \new Lyrics \lyricsto "sopChorus" { four five six }
>     >>
>   }
> }
>
> That works like you would expect, but uncomment the two "\new Lyrics"
> lines and it will cause the error. Is there something wrong with the way it
> is laid out? I tried really hard to mimic Carl's model, and I can't find
> that I'm missing anything.
>


Here is what one of the score blocks looks like from one of my
compositions. This includes the part combining and a custom Voice context
that I use to preserve the individual voices for lyrics, but hide them on
the staff. As a side note, I do not know how this will work if the chorus
starts on the same system as the verse ends. As a rule, I *always* start
the chorus on a new system. The "barCheck" variables are how I define my
key/time signatures, special bars, line breaks, etc. There are multiple
reasons I do it this way instead of integrating in one or all of the voices.

\score { <<
\new Staff = "top" <<
{ \clef treble \partcombine { \sNotes \sNotesChorus }
{ \aNotes \aNotesChorus } }
{ \new PartVoice = "sVoice" \sNotes
  \new PartVoice = "sVoiceChorus" \sNotesChorus }
{ \new PartVoice = "aVoice" \aNotes
  \new PartVoice = "aVoiceChorus" \aNotesChorus }

  \new Voice { \barCheckVerse \barCheckChorus }
>>
 \new Lyrics \lyricsto "sVoice" { \set stanza = "1. " \verseA }
\new Lyrics \lyricsto "sVoice" { \set stanza = "2. " \verseB }
\new Lyrics \lyricsto "sVoice" { \set stanza = "3. " \verseC }
\new Lyrics \lyricsto "sVoiceChorus" { \chorus }

\new Staff = "bottom" <<
{ \clef bass \partcombine { \tNotes \tNotesChorus }
      { \bNotes \bNotesChorus } }
{ \new PartVoice = "tVoice" \tNotes
  \new PartVoice = "tVoiceChorus" \tNotesChorus }
{ \new PartVoice = "bVoice" \bNotes
  \new PartVoice = "bVoiceChorus" \bNotesChorus }

  \new Voice { \barCheckVerse \barCheckChorus }
>>
 >>
\layout {
\context {
\Staff
printPartCombineTexts = ##f
\accepts PartVoice
}

\context {
\Voice
\name PartVoice
\alias Voice

\remove Dots_engraver
\remove Script_engraver
\remove Drum_notes_engraver
\remove New_fingering_engraver
\remove Rest_engraver
\remove Multi_measure_rest_engraver
\override Slur #'transparent = ##t
\override Tie #'transparent = ##t
\override NoteColumn #'ignore-collision = ##t
\hideNotes
\remove Dynamic_engraver
\remove New_dynamic_engraver
 }
}
}

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

Reply via email to