Gap between small staves is too large

• Feb 18, 2019 - 01:01
Reported version
3.x-dev
Priority
P0 - Critical
Type
Functional
Frequency
Once
Severity
S4 - Minor
Reproducibility
Always
Status
closed
Regression
No
Workaround
Yes
Project

The default grand staff distance of 6.5 sp is not scaled appropriately when both staves are set as "small" in right-click Staff Properties.

small-staff-distance.png

The workaround is to use the "staff spacer fixed" to reduce the distance between the staves, but this is obviously far from ideal since it must be done on every system, and will break if the music reflows.

When it comes to staves that are not part of a grand staff:

  • Large staves should be separated from other large staves by 6.5 "large" sp (currently true).
  • Large staves should be separated from small staves by 6.5 "large" sp (currently true).
  • Small staves should be separated from other small staves by ???.

So I'm not sure whether the staff distance should be scaled for adjacent small staves that are not part of a grand staff. Any thoughts on this?


Comments

First, a note that a better workaround could be to use the "Extra distance above staff", if that works for the particular purpose at hand.

As for the default spacing, my sense that in the case of mixed sizes, the upper staff should control the scaling of the space. Maybe that's not always what would be wanted, but it's what would make sense for consistency in the algorithm itself. But definitely worth thinking through to decide what is best for the various different cases.

Interesting. I didn't realise "Extra distance above staff" would accept a negative number. This is indeed a much better solution than using spacers, but still not ideal since the spacing is no longer controlled by the style.

Regarding mixed sizes, the most important thing is to avoid a situation where a small ossia/cue staff that belongs to a larger staff is closer to an unrelated staff than it is to the staff it actually belongs to. These small staves are usually placed above the staff they belong to, so using the upper staff for spacing should be acceptable in most cases, but I'm not sure that this always the case. I could imagine an ossia for piano left hand being placed below the grand staff, for example.

However, when a small staff is sandwiched between two unrelated larger staves, I think we should put it right in the middle. This can occur in piano-vocal score, when it is sometimes necessary to shows additional instruments on cue-sized staves between the large vocal and piano staves. We want to avoid having it closer to one staff or the other to avoid giving the impression of a relationship between unrelated staves.

Indeed, we aren't going to be able to read minds about spacing, so I'm not sure there is a good answer here. One possibility to consider is to scale grand staff distance but not scale staff distance, so small staves for different instruments remain the full distance away. no doubt this too is correct sometimes, not other times.

BTW, right now grand staff distance is broken in general for anything but the simplest cases, see #281127: Grand staff distance excludes tablature and organ pedal staff. Probably best to address these issues together.

Having experimented with different combinations, I think the ideal solution would be to replace "stave distance" with "space above" and "space below", both of which would scale. This means small staves would be separated by less than large staves, and mixed staves would be somewhere in the middle. This seems to look best, and it corresponds to giving the space that is actually required in each case.

However, the simplest solution would probably just be to scale grand staff distance.

I'm not ready to add new style settings here and deal with the impact on compatibility and documentation etc, although I agree it makes sense down the road. But I'd like to deal with the scaling for now. I see that 2.3.2 did not scale any of these distances either, so I do have some concern about compatibility and whether people were relying on the old behavior. But I will propose this:

  • continue to always ignore staff scaling for when applying staff distance
  • for the first time (?), start taking scaling to account when applying grand staff distance

BTW, currently, staff distance is not defined as "space between instruments" as it was in 2.3.2 - it's defined as "space between staves not connected by a curly brace". Conversely, grand staff distance is no longer defined as "space between staves within an instrument" but instead as "space between staves connected by a curly brace". There are complaints about this change, so I'm preparing to change it back, and want to deal with scaling while I am at it. See #281127: Grand staff distance excludes tablature and organ pedal staff and weigh in there if you have concerns.

Thanks for pointing out the other issue. BTW, it just occurred to me that implementing "space above" and "space below" doesn't necessarily require a new style property: you could just use "staff distance" and divide it by 2. This would enable you to get the effect of "space above" and "space below" being scaled separately, as simulated in the attached image and score. I also provided an image with fixed distance for comparison (the horns have a small staff distance to simulate grand staff which we both agree should always be scaled).