Am Sunday 14 August 2011, 17:31:11 schrieb David Kastrup:
> a) a revert will only cancel the last _matching_ override, and the match
>    includes the complete specified property path, _and_ the prospective
>    use of \once.  \revert will not cancel \once\override and vice versa.
> b) At the end of a timestep, all \once\override are reverted.  All
>    non-\once overrides remain in effect and on the stack as if none of
>    the \once\override had ever happened.

That makes sense. Isn't this how it should have worked so far, too?

> I have no clear view about \set yet.  It would seem to me that \unset
> should be equivalent to \revert, and \set should be equivalent to
> \revert+\override.

> This is a change of existing semantics and will likely require changes
> to some Lilypond scores.  

Which cases exactly do change?

BTW, about \once\revert: Urs Liska's tutorial brought up a nice use of it.

\voiceOne [notes...] \once \revert Stem #'direction [...]

I.e. \voiceOne sets the direction of several grobs. If there is one note where 
you want one of the grobs return to the default setting, \once\revert is the 
best solution. Otherwise one would have to look up the default value in the 
IR, explicitlly override it and hope that the default will never change in the 
future (because then this will break completely).

Cheers,
Reinhold
-- 
------------------------------------------------------------------
Reinhold Kainhofer, Vienna University of Technology, Austria
email: reinh...@kainhofer.com, http://reinhold.kainhofer.com/
 * Financial and Actuarial Mathematics, TU Wien, http://www.fam.tuwien.ac.at/
 * Edition Kainhofer Music Publishing, http://www.edition-kainhofer.com/
 * LilyPond music typesetting software, http://www.lilypond.org/

_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to