lilypond-auto
[Top][All Lists]
Advanced

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

Re: [Lilypond-auto] Issue 4098 in lilypond: Create a Syllable_translator


From: lilypond
Subject: Re: [Lilypond-auto] Issue 4098 in lilypond: Create a Syllable_translator
Date: Fri, 12 Sep 2014 15:37:55 +0000


Comment #2 on issue 4098 by address@hidden: Create a Syllable_translator
https://code.google.com/p/lilypond/issues/detail?id=4098

Yes. There are basically two possible approaches: send a SyllableEvent with a span-direction of START for syllable starts, of CENTER for melismata, and of STOP when a syllable ends (the latter is probably not needed currently). The advantage of using events would be that associating with some non-bottom context will still deliver suitable information. The disadvantage is that if you connect to such a context mid-syllable or if you do not actually want to connect at all, the information is not there.

Now the melisma information itself is stored in
melismaBusy slurMelismaBusy tieMelismaBusy beamMelismaBusy completionBusy
already which is an awful lot of properties to check for quite a few Lyric and which also take some time writing. It would be possible to add a "noteBusy" to it easily. However, it does not buy all that much since the lyric engravers still need access to the actual note grobs of an associated context for graphical alignment.

So for Lyric synchronization I'll need to use the same voice association mechanism used in Lyric_combine_music_iterator also in Lyric_engraver.

Which is somewhat sketchy since, say, in Lyric_engraver, there is an undocumented context property searchForVoice which will, when set, cause a Lyric context named "soprano-I-lyrics" to attach to a voice named "soprano-I" if associatedVoice is not set.

Who knows who relies on which historic interaction. It would also appear that the voice searching mechanism in the Lyric_engraver is in competition with the Lyric_combine_iterator since the Lyric_combine_iterator will use the Lyric_engraver for engraving its lyrics.

So at any rate figuring out which information should be where at which point of time is turning out to be a bit messy. Because the mess is already there.

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings



reply via email to

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