bug-lilypond
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Lyrics bug (quite complicated)


From: Renato
Subject: Re: Lyrics bug (quite complicated)
Date: Mon, 18 Jun 2012 11:37:59 +0000 (UTC)
User-agent: Loom/3.14 (http://gmane.org/)

Phil Holmes <mail <at> philholmes.net> writes:

> 
> 
> "Renato" <renyhp <at> hotmail.it> wrote in message 
> news:loom.20120618T102211-108 <at> post.gmane.org...
> >> I'm not top posting.
> > I think this is quite important...
> > Explaining in theory is very complicated - an example should clarify.
> > This makes lilypond crash and make no output.
> >
> > <<
> > \new Voice = "a" {
> >  \new Voice = "b" {c2( d2)}
> >  r4 r4 c2
> > }
> > \new Lyrics \lyricsto "b" {
> >  \set associatedVoice = "a" Aaa __
> >  Bbb
> > }
> >>>
> >
> > If you change "r4 r4" with "r2", lilypond works - it crashes only with two
> > rests in that point.
> > It works also if you remove the melismata or the extender on the "Aaa".
> > Obviously if you add some music before the "b" Voice the Lyrics can be
> > associated with "a" and then switch to "b", but lilypond crashes when
> > trying to print "Bbb" in the "a" Voice.
> >
> > This seems to be fixed if you add another Voice context (and name it)
> > on the "r4 r4 c2" bar and switch to this Voice rather than the main.
> 
> I can confirm it crashes versions between 2.12.2 and 2.15.33 - I've not 
> tried wider.  It looks odd code to me - why are the voices nested like that? 
> Why have lyricsto a and then _immediately_ switch to b?  There's also the 
> note in the NR about associatedVoice: "\set associatedVoice = "two" % must 
> be set one syllable early" - it looks lie this attempts to change the 
> associated voice at the first syllable, which - by definition - can't be one 
> syllable early.
> 

Yes, you're right. Obviously I didn't use this in _this_ way.
My "original" code was something like this:

<<
 \new Voice = "piece" {
 ...
 <<
  \new Voice = "singer" {...}
  {}
 >>
 }
 \new Lyrics \lyricsto "piece" {
 ...
 \set associatedVoice = "singer"
 ...
 \set associatedVoice = "piece"
 }
>>

Anyway, I know the "must be one syllable early" note, and in fact in the
example the Aaa is expected to be under the c2( d2) - the "b" Voice! - because
_Bbb_ switches to the "a" Voice.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]