Comment #20 on issue 34 by [email protected]: Grace synchronization
http://code.google.com/p/lilypond/issues/detail?id=34

I've had another musing. My proposal of using -inf as normal grace timing basically shifts just one problem class to another since some things need to happen before graces in other contexts, some after.

So I thought about this: we have a start-of-timestep callback in engravers, and event callbacks and end-of-timestep. Now what we actually want when a grace is in a parallel context but not in ours, is to have our start-of-timestep callback called before the grace in the other context starts its event callbacks, and our end-of-timestep called afterwards. And actually, if there is a preceding event in our own graceless context, its end-of-timestep is to be called _afterwards_ as well.

So with a grace, I tend to consider it reasonable to have a start-of-timestep for the next event in sequence called before the end-of-timestep of the preceding event in the same context is called when a grace occurs in a parallel context. Possibly (but less sure about that) even when the grace occurs in one's own context. The context-moment should likely reflect the grace timing, as if one had had a spacer grace in one's own voice.

That way typical start-of-timestep actions like creating a new context or establishing a new clef or setting context properties or so will happen before graces in parallel voices.


_______________________________________________
bug-lilypond mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-lilypond

Reply via email to