Guy,
When you want help on the list, the best thing to do is to set up a compilable
tiny example: http://lilypond.org/tiny-examples.html
If you do that, then we can just make the needed changes.
Pseudocode like you wrote in your email is hard to give good answers about.
But I’ll show you a pseudocode example for your pseudocode example. You need
some special music to be put into NullVoice contexts to space the lyrics. They
won’t show up in the staffs, but the lyrics will be aligned to them.
%% CODE
\new ChoirStaff <<
\new Staff = “upper”
\new Voice = "soprano" { S }
\new Voice = "alto" { A }
\new NullVoice = “mainlyrics” { M } % M needs only the rhythms,
pitches don’t matter – should
% have the rhythms only for the main voices.
\new NullVoice = “soplyrics” {SL} % Mostly s or \skip; rhythms at
some pitch whenever special soprano words are present
>>
\new Lyrics \with { AlignAboveContext = “upper”} \lyricsto
“soplyrics” \sopSpecial
\new Lyrics \lyricsto "mainlyrics" \verseOne
\new Lyrics \lyricsto "mainlyrics" \verseTwo
\new Lyrics \lyricsto "mainlyrics" \verseThree
\new Lyrics \lyricsto "mainlyrics" \verseFour
<<
\new Staff
\new Voice = "tenor" { T }
\new Voice = "bass" { B }
>>
>>
%% CODE
I could share with you some examples of this, but they aren’t anywhere close to
tiny examples,so I don’t want to post them to the list.
HTH,
Carl