Next: Printing stanzas at the end, Previous: Adding singers' names to stanzas, Up: Stanzas
One possibility is that the text has a melisma in one stanza, but
multiple syllables in another one. One solution is to make the faster
voice ignore the melisma. This is done by setting
ignoreMelismata
in the Lyrics context.
<< \relative c' \new Voice = "lahlah" { \set Staff.autoBeaming = ##f c4 \slurDotted f8.[( g16]) a4 } \new Lyrics \lyricsto "lahlah" { more slow -- ly } \new Lyrics \lyricsto "lahlah" { go \set ignoreMelismata = ##t fas -- ter \unset ignoreMelismata still } >>
Unlike most \set
commands, \set ignoreMelismata
does
not work if prefixed with \once
. It is necessary to use
\set
and \unset
to bracket the lyrics where melismata
are to be ignored.
More complex variations in text underlay are possible. It is possible
to switch the melody for a line of lyrics during the text. This is
done by setting the associatedVoice
property. In the example
the text for the first stanza is set to a melody called ‘lahlah’,
\new Lyrics \lyricsto "lahlah" { Ju -- ras -- sic Park }
The second stanza initially is set to the lahlah
context, but
for the syllable ‘ran’, it switches to a different melody.
This is achieved with
\set associatedVoice = alternative
Here, alternative
is the name of the Voice
context
containing the triplet.
This command must be one syllable too early, before ‘Ty’ in this case. In other words, changing the associatedVoice happens one step later than expected. This is for technical reasons, and it is not a bug.
\new Lyrics \lyricsto "lahlah" { \set associatedVoice = alternative % applies to "ran" Ty -- ran -- no -- \set associatedVoice = lahlah % applies to "rus" sau -- rus Rex }
The underlay is switched back to the starting situation by assigning
lahlah
to associatedVoice
.