}
Context *voice = get_voice_to_lyrics (context ());
- if (last_text_ && voice &&
- to_boolean (voice->get_property ("melismaBusy")))
+ if (last_text_
+ && voice
+ && to_boolean (voice->get_property ("melismaBusy"))
+ && !to_boolean (context ()->get_property ("ignoreMelismata")))
last_text_->set_property ("self-alignment-X",
get_property ("lyricMelismaAlignment"));
}
Context *
get_voice_to_lyrics (Context *lyrics)
{
+ bool searchForVoice = to_boolean (lyrics->get_property ("searchForVoice"));
+
SCM avc = lyrics->get_property ("associatedVoiceContext");
if (Context *c = unsmob_context (avc))
return c;
if (scm_is_string (voice_name))
nm = ly_scm2string (voice_name);
- else if (nm == "")
+ else if (nm == "" || !searchForVoice)
return 0;
else
{
/* read */
"ignoreMelismata "
"includeGraceNotes "
- "lyricMelismaAlignment ",
+ "lyricMelismaAlignment "
+ "searchForVoice",
/* write */
""