Hi Joram! Ok, I misunderstood your problem.
What I do is shown here [like 1]: \new ChoirStaff << \new Staff \soprano \addlyrics \text \new Staff \alto \addlyrics \text \new Staff { \clef "treble_8" \tenor } \addlyrics \text \new Staff { \clef "bass" \bass } \addlyrics \text >> Or the same with \new Staff \new Voice = "soprano" \soprano \new Lyrics \lyricsto "soprano" \text etc. So each staff has its own lyrics context but the content is the same variable. That works.
The attached patch should solve your problem. But it changes the c++ sources and requires recompilation. Probably it will not be accepted as it is possible to reimplement a Lyric_extender::print() with the desired changes in scheme and to include it in any lilypond source that needs it ;-)
In principle, the information about where to put extender lines is already given by the number of notes per syllable.
You don't want extenders and hyphens at the same time ... cu, Knut
>From 62bfdf5eba38e4ff09830b81a17ac6eeed798785 Mon Sep 17 00:00:00 2001 From: Knut Petersen <knut_peter...@t-online.de> Date: Sun, 11 Dec 2016 07:54:34 +0100 Subject: [PATCH] Kill lyric extenders if number of heads < 2 This allows to reuse lyric definitions if they only differ by some extenders. Signed-off-by: Knut Petersen <knut_peter...@t-online.de> --- lily/lyric-extender.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lily/lyric-extender.cc b/lily/lyric-extender.cc index 8afe2c5569..441ceea34f 100644 --- a/lily/lyric-extender.cc +++ b/lily/lyric-extender.cc @@ -48,7 +48,7 @@ Lyric_extender::print (SCM smob) extract_grob_set (me, "heads", heads); - if (!heads.size ()) + if (heads.size () < 2) return SCM_EOL; common = common_refpoint_of_array (heads, common, X_AXIS); -- 2.11.0
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user