Make “Delete Selected Measures”/“Timewise Delete” more discoverable

• Apr 16, 2019 - 05:51

My story of the problem I had

I had finished writing music, but there were some empty measures left at the end of my score, so I wanted to delete them. I selected the rests on both staves for a range of measures (with Shift-Click) and then pressed Delete. But that just deselected the measures and selected the first note. “Okay,” I reasoned, “it only replaces notes with rests. I can understand that sometimes you would want that. But then how do I actually delete the measures?”

As I remember it, I looked for this functionality in these places, in this order:

  1. Pressed the Delete key
  2. Looked in the toolbar for some special Delete button
  3. Looked in the inspector of the selected measures
  4. Right-clicked one of the selected rests and chose Delete. It acted the same as typing Delete.
  5. Opened the Edit menu (on macOS) and saw only Delete (didn’t even try it; expected it would be the same as the other two Deletes I had tried)
  6. Returned to the right-click menu and chose “Measure Properties…”; nothing in the window was relevant
  7. Skimmed the Palettes for relevant buttons
  8. Looked in the Format menu
  9. Looked in the Add menu. I saw the Measures sub-menu, but none of the menu items were relevant, as I expected from the name “Add”.
  10. Looked in the Tools menu, saw the “Timewise Delete” menu item. Tried it – finally, success!

My suggested fixes for this UX problem

It would be better for my discovery to have happened at an earlier step. After looking at each step I tried and thinking whether it makes sense for the feature to be available there, these are my recommended solutions. I think all of these changes would improve MuseScore, but each one can be implemented independently, without waiting for the others.

Make Delete do what I wanted

Change the behavior of Delete to act like Timewise Delete when the selection consists of only completely empty measures (and their rests). After all, Delete currently does nothing when activated with that selection – it replaces the rests with rests – so if the user called Delete, they must have wanted to delete the measures, right? If any notes or markings are present in the selection, then Delete can keep its current behavior – replace them with rests without deleting the measure.

Ensure that “Delete Selected Measures” appears in the context menu

The best way to do this would be to make right-click act consistently no matter where I click (this would probably require a lot of changes to the parts of the code that define menus). I tried these steps again while writing this feature request, and I found that if I had right-clicked on an empty part of the selected measures – not the rests highlighted in blue, and not the barlines between those measures – the context menu would have shown a “Delete Selected Measures” menu item. But I actually right-clicked on the rest in my selection, because it was highlighted in blue, so I only saw the right-click menu for rests.

In all the apps I am used to, when something is selected (such as a range of measures), right-clicking on anything within that selection brings up the menu for the whole selection. For example, in my file browser, I don’t get different options for selected files if I right-click on the filename vs. if I click on the Size column – I get a menu with all options that deal with files, including both “Rename” and “Compress”. I think menus in MuseScore should behave the same way.

If you want to keep the behavior of changing what menu opens based on where you right-click in a selection, then right-clicking should also highlight (or even change the selection to) the elements the menu items would act on. That way I can check whether I right-clicked on the right element before I choose a menu item. I would have noticed that only the rests, not the bars themselves, were selected. (You would then need to change the visual styling of highlighting/selections to make this distinction clear.)

Whatever menu should open when I right-click inside selected measures, the “Delete Selected Measures” menu item should be present in it.

Relocate the “Timewise Delete” menu item

Move the “Timewise Delete” menu item from the Tools menu to below the “Delete” menu item in Edit menu. (I don’t know if the Edit > Delete menu item is specific to macOS; if so, this might be a macOS-only change.)


FWIW, I disagree with the sugegstion that delete should do something different depending on whether empty measures are in the selection or not. Inconsistent behavior is generally considered a no-no, especially if it changes something that has worked well and would come as a nasty surprise to existing users. But, thius would be a nice opportunity for a popup "tour" to advise you on the right way to accomplish what you may have meant.

For 3.1, the renamed "remove selected measures" command is already in the context menu. EDIT: but I seem your point about it not being present if you happen to be over the rest when you right-click. Good idea to add it, along with anything else that makes sense for the whole selection.

Moving the command from Tools back to Edit is not a bad idea, I never fully understood why t moved to begin with. For me, it wouldn't hurt to have it in both places, but probably someone would object.

In reply to by Marc Sabatella

To be honest, I often disagree with Marc Sabella, but on this issue I agree with him. For delete to anything besides clear the contents of the measure is not the expected behavior. You need a distinct command for this, which is the timewise delete command. The name is very obscure, but the function is what you want.

In reply to by mike320

So in summary, ALL the suggestions should be implemented except the proposed double behaviour of the delete key/command.
And once the "range delete" is in the pop up menu (I know it already is when right click is done on empty zone), if this pop up menu is correctly designed the shortcuts ctrl+del will appear next to it, and the difference del vs ctrl+del will become even more clear.

Do you still have an unanswered question? Please log in first to post your question.