On Mon, Nov 23, 2009 at 11:10 PM, David Kastrup <d...@gnu.org> wrote:

>>
>> * \override and \revert manipulate the defaults stored in said context
>> property, pushing and popping values off the alist.
>
> This concise "hint" is wagonloads clearer than what is in the "\set vs
> \override" documentation node.  The documentation can be strictly
> improved by throwing out what is there and putting this hint in.
>
> But while the hint addresses the difference and relation between those
> properties much much clearer than the manual, it still does not mention
> why one set of properties should only be manipulated with \set, and the
> other only with \override/\revert.  It does not appear that there is an
> actual technical necessity for this, but rather it would appear that the
> basic nature of the different properties makes one or the other
> typically more feasible.

\set  overwrites the value of the context property.

\override by its nature takes the value of the context property (an
alist) and prepends a (symbol . value) pair.  Since something
different happens at runtime, it needs a different syntax.

At some point we had \set Foo.Bar \override #'x = #y syntax for this,
but it was deemed to confusing, so we gave it a different syntax.

-- 
Han-Wen Nienhuys - han...@xs4all.nl - http://www.xs4all.nl/~hanwen


_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to