lilypond-devel
[Top][All Lists]
Advanced

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

Re: Combining \layout variables


From: David Kastrup
Subject: Re: Combining \layout variables
Date: Tue, 05 May 2015 18:22:24 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux)

"Trevor Daniels" <address@hidden> writes:

> David, you wrote Tuesday, May 05, 2015 3:57 PM
>
>
>> "Trevor Daniels" <address@hidden> writes:
>> 
>>> Multiple layout blocks can be combined in sensible ways, with later
>>> definitions taking precedence over earlier ones on an item by item
>>> basis, but the same is not true when layout blocks are assigned to
>>> variables.  See
>>> http://www.lilypond.org/doc/v2.19/Documentation/notation/the-layout-block
>>>
>>> What I would like to do is to combine two layout blocks contained in
>>> variables in the same way as layout blocks at top level are combined,
>>> item by item, but it seems this is not possible, at least I haven't
>>> been able to achieve it.  Is this indeed not possible?
>> 
>> \layout blocks at the top level are not combined.  You can only modify
>> an existing layout block by putting new definitions inside.  But those
>> definitions are never in a layout block of their own but always added to
>> an existing layout block.
>
> Well, yes, I knew that, but the effect is that existing definitions
> are overridden iff they appear later, while new definitions are added,
> so definitions assigned early can act as defaults.

And why wouldn't that work in your use scenario?

> I want to set some default layout definitions in the satb.ly template,
> so that they may be overridden by the user if they appear in the
> user's layout variable.

What do you mean by "the user's layout variable"?  The user does not
usually define a layout variable but rather adds stuff to the existing
one.

What is wrong with setting a layout definition in the satb.ly template
that then gets amended by the user?

> But the way it works is the user's layout variable is taken as a new
> base, so all the default definitions are lost, including ones the user
> has not redefined.  It looks like there is no way of doing this at
> present, unless I've missed something.

I don't get the problem.

-- 
David Kastrup



reply via email to

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