lilypond-devel
[Top][All Lists]
Advanced

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

Re: Issue 5740: Add \post to defer context actions to end of time step (


From: hanwenn
Subject: Re: Issue 5740: Add \post to defer context actions to end of time step (issue 581600043 by address@hidden)
Date: Fri, 07 Feb 2020 01:19:03 -0800

On 2020/02/06 14:29:55, Dan Eble wrote:
> The reviewers are turning the first question I asked around and asking
it back
> to me.  I don't know if this is useful without other stuff I've been
working on.
>  That's why I've posted it for review.  I thought that you (well,
mainly I
> thought that David K.) might know of some corner of LilyPond where
delaying a
> \set (or similar thing) until the end of the current time step would
be useful.

Sorry for turning the question back, but I would really like the problem
defined before we try solving it.  More code means more maintenance
liability, so unless it either solves a problem, or it simplifies the
existing system, it would be a net negative. 

The description says: change something at the end of the timestep. For
almost all properties (and in particular for the fingeringOrientations
which your example uses), changing it at the end of the current timestep
is equivalent to changing it at the start of the next, which is
functionality we already have.

Also, if you really wanted this, couldn't you embed the property in a
Music expression, and then have an engraver catch that expression, and
then execute the property assignment at its stop_translation_timestep()
? You could even do that in a scheme engraver.

David mentions \cadenzaOff in the issue tracker. I think you could fix
the behavior inside the Timing_engraver without requiring a new
construct (although, if we did this, we'd probably upset bar numbering
across existing scores.)

I hope I am not demoralizing you; by getting this working, you show
mastery of advanced LilyPond internals, which is a great achievement!

https://codereview.appspot.com/581600043/



reply via email to

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