[Top][All Lists]

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

Re: Nested context properties -- an implementation sketch

From: Reinhold Kainhofer
Subject: Re: Nested context properties -- an implementation sketch
Date: Thu, 25 Aug 2011 03:55:49 +0200
User-agent: KMail/1.13.6 (Linux/2.6.38-11-generic; KDE/4.7.0; i686; ; )

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).

Reinhold Kainhofer, Vienna University of Technology, Austria
email: address@hidden,
 * Financial and Actuarial Mathematics, TU Wien,
 * Edition Kainhofer Music Publishing,
 * LilyPond music typesetting software,

reply via email to

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