I noticed some erroneous alto lyrics invading recent CPDL editions of Farmer's Fair Phyllis. I think the cause was some overenthusiastic factoring of the lyrics using tagging. So I thought I'd run up a copy myself, producing folded/unfolded scores from one source file.
However I found, like others, that repeat barlines and voltas popped up all over the place as soon as I entered the lyrics into the correct structure. The Notation reference manual is not much help because none of its examples involves either rests or more than one vocal line. While none of the workarounds I've found on the web does the job satisfactorily, I think it's unduly pessimistic to say, "Unfortunately there is no clear recipe for entering lyrics and repeats which will work in all circumstances, as all the suggestions are work-arounds due to there being no well-defined interface in LilyPond for handling repeats in lyrics." http://lists.gnu.org/archive/html/lilypond-user/2015-03/msg00866.html The problem lies with \lyricsto and \addlyrics, which are wonderful shortcuts most of the time, but fall down badly here. By in effect throwing away the rests, they lose track of where the lyrics are (structurally, not which syllable they're attached to). However, \new Lyrics \lyricmode (which tracks rests as well as notes) works perfectly. It's just more laborious entering the durations and skips. The documentation ought to point out this method and its advantages somewhere. But I think the most efficient (least laborious)fix for the problem might be to enact comment #1 in Issue 3149 and prevent (perhaps controlled with a switch) the repeat structure in a lyrics context from putting repeat marks into the stave. (I haven't yet thought up a case where such marks are useful, and I assume they're being added because of the structure being "collected to the Score context".) https://code.google.com/p/lilypond/issues/detail?id=3149 Here's a snippet to illustrate the wrong and right methods. Does it cover all the bases? Would it be suitable for inclusion in the LSR? (after stripping out the wrong way). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \version "2.18.2" \header { tagline = ##f } notesi = \relative { c'4 e g c | \repeat volta 2 { r4 c, d e | f( g) a f | } \alternative { { r4 c'2 r4 | } { c1 | } } \bar "|." } notesii = \relative { c'4 c c e | \repeat volta 2 { R1 | d4( e) f d | } \alternative { { r2 e4 r | } { e1 | } } \bar "|." } wrongi = \lyricmode { This does not work. \repeat volta 2 { I’m on -- ly right in one } \alternative { { case. } { case. } } } wrongii = \lyricmode { This does not work. \repeat volta 2 { right in one } \alternative { { case. } { case. } } } righti = \lyricmode { This4 is the way. \repeat volta 2 { \skip4 Now4 -- I can un -- _ fold re -- } \alternative { { \skip4 peats.2 \skip4 } { peats.1 } } } rightii = \lyricmode { This4 is the way. \repeat volta 2 { \skip1 un4 -- _ fold re -- } \alternative { { \skip2 peats.4 \skip4 } { peats.1 } } } music = { << \new Staff << \new Voice \notesi \addlyrics { \wrongi } >> \new Staff << \new Voice \notesii \addlyrics { \wrongii } >> >> } \score { \music } \score { \unfoldRepeats \music } music = { << \new Staff << \new Voice = "voxi" \notesi \new Lyrics \lyricmode { \set associatedVoice = "voxi" \righti } >> \new Staff << \new Voice = "voxii" \notesii \new Lyrics \lyricmode { \set associatedVoice = "voxii" \rightii } >> >> } \score { \music } \score { \unfoldRepeats \music } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Cheers, David. _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user