musescore / MuseScore

MuseScore is an open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests!
https://musescore.org
Other
12.29k stars 2.66k forks source link

Implement UI for controlling position of system objects #24100

Open oktophonie opened 2 months ago

oktophonie commented 2 months ago

Though there has been code to facilitate duplicated system markings in scores since 4.0, we do not have a UI for the user to control this yet. (So far, the only way to use this feature has to been to use the Orchestra or Choral templates which have it 'baked in', or to figure out how to edit an .mscx file manually.)

This will enable specifying which position(s) in the score where all different types of system markings will appear. These include, but are not limited to, tempo markings, rehearsal marks, voltas, bar numbers (yes, including putting them below the system), time signatures (when large time signatures are used), etc.

There is an extant design for this which is subject to revision.

wizofaus commented 2 months ago

BTW I went back and re-read through some of the old discussions that we had about this 3 years ago. I think the current solution satisfies all the main requirements - it doesn't really need to be "bracket" based provided there's a way to easily adjust which staves tempo markings/rehearsal marks/other "system objects" are duplicated above. Perhaps the worst case scenario might be if you've prepared a large score with many such markings duplicated above the Vln I staff, then need, for some reason, to add another violin staff above that for a solo violin line (*). You'd then want the tempo & rehearsal markings etc. to appear above that instead, but that's fine if there's an easy way to move all existing items - when the Vln solo staff is hidden they'll continue to appear above the regular Vln I staff.
It's definitely true there are scores out there that do all sorts of weird unconventional (and inconsistent) things but they'll still be possible via various workarounds (e.g. choosing to have system objects duplicated onto all the possible staves they might ever appear, then hiding all the ones you don't want). The one thing I'd definitely like though is the ability to easily choose "below bottom staff" (not sure it's useful for below any other staff?). The current system does support them being displayed like that, but you have to manually flip them to be "below staff" as you add each one. It also won't automatically move them to any new bottom staff that is added below the current one, but that seems relatively straightforward to support.

(*) this is actually surprisingly rare, but a good example is here: https://ks15.imslp.org/files/imglnks/usimg/a/af/IMSLP524674-PMLP179425-PMLUS00725-complete1.pdf#page=89. This extra staff only appears quite late in the piece.

rpatters1 commented 1 month ago

Since this issue apparently covers measure numbers positioning, I would like to share some of the requirements I have encountered specifically in the musical theater arena that currently do not appear to be possible. (I admit I am still just getting my feet wet with this, so pardon me if I missed something that is already there.)

Note that these are positioning requirements. I'm guessing the requirement to preserve existing measure numbers when measures are inserted or deleted is out of scope for this issue.

I don't doubt that many of these might not be in scope for 4.5. But I am putting them out there so that whatever design takes place can account for these in the future if they are not added at first.

iainhallam commented 1 month ago

@rpatters1 that last requirement is already tracked as #20046, "Hide bar numbers/measure numbers at rehearsal marks".

rpatters1 commented 1 month ago

Another feature for measure number positioning I missed in my list above is: