[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: cross-staff bug?
From: |
Mike Solomon |
Subject: |
Re: cross-staff bug? |
Date: |
Fri, 25 Jul 2014 18:32:11 +0300 |
On Jul 25, 2014, at 6:19 PM, David Nalesnik <address@hidden> wrote:
> Hi,
>
> Attempting to put dynamics above cross-staff notes using the code below leads
> to some awful collisions. I've recast my example in three ways, to no avail.
>
> In the first example, besides the collisions, the final stem is reversed and
> I get a number of programming errors: "Grob direction requested while
> calculation in progress." (See attached for image.)
>
> The second still has collisions and throws the programming error "My
> pure_y_common is a VerticalAlignment, which might contain several staves."
>
> The third throws no errors, but the collisions are still there.
>
> I could of course use overrides to move objects out of the way, but I'd much
> rather learn that I'm doing something wrong, recast the example, and let
> LilyPond handle placement for me.
>
> (To the suggestion that I simply put the dynamics below rather than above:
> this won't always work in the piece I'm engraving.)
>
> Thanks,
> David
>
> %%%%%%%%%%%%%%%%%%
> \version "2.19.10"
>
> up = \change Staff = "up"
> dn = \change Staff = "down"
>
> \new PianoStaff <<
> \new Staff = "up" {
> s8*7^\p^\< s8^\f
> }
> \new Staff = "down" {
> e'8[( \up b' \dn g' \up d'' \dn b' \up f'' \dn d'' \up
> a''\marcato\fermata])
> }
> >>
>
> \new PianoStaff <<
> \new Staff = "up" {
> s1
> }
> \new Staff = "down" {
> e'8[(^\p^\< \up b' \dn g' \up d'' \dn b' \up f'' \dn d'' \up
> a''\marcato\fermata^\f])
> }
> >>
>
> \new PianoStaff <<
> \new Dynamics {
> s8*7^\p^\< s8\f
> }
> \new Staff = "up" {
> s1
> }
> \new Staff = "down" {
> e'8[( \up b' \dn g' \up d'' \dn b' \up f'' \dn d'' \up
> a''\marcato\fermata])
> }
> >>
> %%%%%%%%%%%%%%%%%%%%%%%%
>
Unfortunately, I don’t think that there is anything you can do.
Cross-staff objects in LilyPond are a major area in need of improvement.
Several cases like this were fixed by a patch a couple years ago, but the patch
was reverted because it caused more problems than it fixed.
I don’t think there is a sane workaround yet for this sorta thing (meaning
something that doesn’t require extra-y-offset), although I’d be interested to
see if people have found workarounds.
Cheers,
MS
- cross-staff bug?, David Nalesnik, 2014/07/25
- Re: cross-staff bug?,
Mike Solomon <=