Add a method for placing system text below bottom staff rather than below top staff

• Nov 29, 2018 - 09:34
Reported version
P2 - Medium
S5 - Suggestion


Repro steps:

  1. Add a system text
  2. In the inspector set Placement > Below

Expected: System text is placed below system
Actual: System text is placed below stave

Workaround: Disable Automatic placement and set Y-Offset

Attachment Size
system-text-below.mscz 3.4 KB


Severity S4 - Minor S5 - Suggestion

This is more by design, while being a reasonable request, getting this changed would rather be a feature request

I agree the current behavior is probably intended and is more consistent with the current meaning of those terms.

Having system text associated with (whether displayed above or below) any but the first staff is definitely an important feature request. See #176361: Allow system text objects to be repeated on lower staves for such request. I half suspect this could be trivial to implement - add a staff property "display system text", check that staff property at the point where we decide about laying out the system text. Although a really clever solution would also take hide empty staves into account and display it on the first visible staff at that point or below. I am pretty sure that's exactly what the current code does, but I couldn't find in a few minutes of searching...

In reply to by Marc Sabatella

It would be very nice to see the feature Marc referred to implemented, but it doesn't directly relate to this issue.

I think, if by design, it is an oversight. I can't think of a situation where I would want system text to appear under the first visible staff. It would make sense to put it under the last visible staff though. This would make it much easier to insert a footnote on a system as I've seen several times in scores. I usually resort to putting them in as a staff text on the last staff and moving them below, but this often seems nonsense when parts are extracted. Don't tell me to use text frames, I know all about them.

The difference between staf text and system text is the system flag, that takes care of propagating it to all parts (or not), other than that it is just normal text and as such attached to a staff, not to a system and so responds to the above/below settings (which are brand new in 3.0). This is what I mean 'by design'.
But yes, I agree the change proposed here makes perfect sense. It isn't a bug though, that's all I'm saying

The way I would put it, the "placement" field is relevant to lots of elements and has nothing to do with deciding which staff to attach an element to - only whether it physically appears above or below the staff it is attached to. A way to control which staff a system element is attached to - top, bottom, or other selected staves - would be a fantastic feature indeed, but it's not the point of this particular feature.

My idea of a staff property to say "show system elements" doens't quite address the proposed use case either. Well, you could set that property on the last staff, but this doesn't work well with hide empty staves enabled. So there should probably also be a style option to control whether system text is repeated below last visible staff.

Another possible solution would be to make this a property of the brackets. These already do reasonable things (in theory at least) with respect to hide empty staves. So for any given bracket, you can say whether you want system text to appear above the top staff of the group, below the bottom staff, or both.

BTW, regarding the proposed use case of footnotes, I don't think that making system text appear below the staff would actually work well. Consider: do you want that text to appear in the parts? If not, thn too bad, it will because it's system text. If so, then great, it appears - but not right below the measure in question, not at the bottom of the page. I guess the one case that is handled is if you do actually want the text to appear in parts below the measure in question. I wonder the real world use case for this, though? Normally, anything so important would appear at the top of the score, otherwise the conductor will surely miss it.

I guess I'm still struggling to understand the real world use case. What kind of footnote are we talking about that one would want at the bottom of a score and in some parts but not others? Hiding it in all parts is possible of course, but to me this seems much more effort than simply adding it as staff text in the score, and then only needing to hide in one that one part.

System chord symbols are totally different issue, discussed elsewhere, the main trick remains figuring out how to handle transposition.

In reply to by Marc Sabatella

I can't find it right now, but I recently saw a score that had


above some of the staves (which I entered as staff text) with a footnote like

*) - Play these notes in this manner

As I said, it was applicable to several of the staves. This isn't the only score I've seen a situation like this, but this is the only logical results you can get if you have system text and set the location to below. As I said previously, there is no sensible case where system text is expected to be displayed below only the first staff of a score, so the current results make no sense.

As far as system text being staff text with a check mark in a box, MuseScore knows the difference between staff and system text. In version 2, if you check the box, the staff text type it is reported in the status bar as and treated like system text. I don't see a way to do this in version 3.

I realize that the code to move system text below the last visible staff will not be one line fix, but it should be fixed.

Even if you add a system text to the second staff, it will be displayed above the first staff, that is above the system. Hence it seams reasonable to move it below the system not below the staff.

@Marc: For a use case - I recognized this entering a score with additional instructions below as "After last verse, repeat the first line and then goto coda." I tried to enter it as right aligned system text below the last measure.

Re: the "Play these notes in this manner" example - on the parts, are you saying the "footnote" appeared just below the measure in question" Seems really weird and unlikely to me - I'd assume it would actually be a footnote in the parts too. And as mentioned, this wouldn't accomplish that anyhow. And you'd still have to mark the text invisible int he parts that don't have it. Whereas if you do want the text below each measure in the parts, then just making it staff text still seems the obvious way to do it. You could always hide it in the score if you really want, and that's easier (since the staves are all there right on top of each other) than hiding it individually in a bunch of parts.

The "after last verse" example strikes me as more convincing since there isn't the question of things not actually appearing below the measure they are attached to or not appearing on all parts. But here, I just don't get why you'd deliberately hide important information like that below the system where the conductor will surely miss it rather than above where is expecting it. I would say it belongs above the system in the score, and if you want to put it below in the parts, that's fine.

Anyhow, again, I still don't see how it could possibly be considered a bug that the below setting for system text works exactly like it does for every other element in MuseScore - causing it to display below the staff it is actually displaying on, not below some other staff entirely. So there is nothing to "fix". There is just a new feature to implement, one that allows system text to be displayed on a staff other than the top one in the first place. I would certainly love that feature as well, for totally different reasons: repeating tempo markings etc above each section of an orchestral score as is extremely common and desirable from a conductor standpoint as well). While that use case in itself doesn't provide a mechanism for display system text below the system, it certainly provides the necessary framework in the code. I actually think it might not be that hard and thus not unlikely we'd see this relatively soon, but we'll see.

Title System text Placement Below should place below system rathen then below staff Add a method for placing system text below bottom staff rather than above top staff

Another way to look at why the current behavior should be left alone and instead a new feature added: if we did make system text act differently from every other element and have "below" move it to a new staff, how would you accomplish actually getting system text below the top staff should you want it (surely there are corner cases for this as well)?

In reply to by Marc Sabatella

_I'd assume it would actually be a footnote in the parts too. _ No kidding. Putting a system text into the score would propagate to the parts. That's where it would be necessary to make it invisible for some of the instruments because they don't play those notes in that manner or simply don't have them.

Title Add a method for placing system text below bottom staff rather than above top staff Add a method for placing system text below bottom staff rather than below top staff


FWIW, the point in my wording is the current default is above top staff, a request is made to have an alternate method of below bottom staff. But I think the intent is clear by now in any case.