lilypond-user
[Top][All Lists]
Advanced

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

Re: outside-staff-priority with slur and hairpin


From: Trevor Daniels
Subject: Re: outside-staff-priority with slur and hairpin
Date: Fri, 18 Sep 2009 09:22:53 +0100


Jonathan Wilkes wrote Friday, September 18, 2009 6:51 AM

--- On Thu, 9/17/09, Trevor Daniels <address@hidden> wrote:

Have you not read the Learning Manual? The
Notation Reference assumes you have. This is
explained in considerable detail in section 4.4.3.

Sorry, I wasn't very clear.  I wanted to know why I can't just set
Hairpin to #1 and the Slur to #2 for 'outside-staff-priority. And I
forgot to search the LM before posting.

Yes, I've read (but not memorized) the LM, and I see that overriding the 'outside-staff-priority for DynamicLineSpanner works > while using the same override for Hairpin does not. Yet nothing in the section you refer to states that DynamicLineSpanner is the *only* way to change
'outside-staff-priority for a dynamic.

You make a valid point here.  One one hand it should be obvious that
you have to change the property in the correct object, but OTOH it is
not obvious what the correct object is when spanners are involved.
This is mentioned in the LM, but at some distance from the section on
grobs and interfaces.  At the end of 4.5.1 there's a table of object
names that need to be tweaked to move various objects, including
dynamics.  I'll add a forward reference to that.

Perhaps there should also be a gentle introduction to spanners in the LM. These are discussed in the Notation Reference (section 5.4.6), but that
is a little fierce for starters.  I'll think about that.

There's a paragraph in LM 4.3.1 that says [regarding properties of
objects]:

"Before we tackle this, let us remember that object properties are grouped in what are called interfaces – see Properties found in interfaces. This is simply to group together those properties that may be used together to tweak a graphical object > – if one of them is allowed for an object, so are the others. Some objects then use the properties in some interfaces, others > use them from other interfaces. The interfaces which contain the properties used by a particular grob are listed in the IR at the bottom of the page describing that grob, and those properties may be viewed by looking at those interfaces."

So when it says properties are "allowed" for an object, what exactly does that mean? Also, what does it mean to say "the properties used by a
particular grob?"

I'm not a programmer, so some of this is a little difficult to grasp, but
by the logic of that paragraph what I'm getting is that
'outside-staff-priority is a property that is allowed for Hairpin objects (because I know 'transparent works on Hairpins and is part of the grob interface), is used by Hairpin objects (because grob-interface is listed
at the bottom of the IR for Hairpin), but still cannot be used to
make the Hairpin go below the Slur in my example.

This is not easily explained. An object has -access- to all the properties listed in the interfaces it supports, but it does not necessarily honor them.

The difficulty is that there is no general rule that can be used to discover which properties have an effect on a particular grob and which do not. In this case one has to know that hairpins are spanners (because they start and end at different musical moments), and spanners are positioned
by the appropriate spanner object.

Thanks for your comments - they are what I need to help me to understand
how the LM might be improved.

Trevor





reply via email to

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