musescore / musescore/MuseScore

Inconsistent behavior in adding and removing modifiers to notes

Open
#22,494 5 comments 1 reaction 1 assignee View on GitHub

@bkunda is already working on this.

Since Apr 23, 2024.

needs review UX/interaction
Dominant language
C++
Stars
15.1k
Forks
3.3k
Avg merge
2d 2h
Merged PRs (30d)
91

Description

Issue type

UX/Interaction bug (incorrect behaviour)

Bug description

Shortcuts, the buttons in the top menu bar, and the buttons in the palettes all work differently when adding note modifiers (accidentals, articulations, bowings, tremolos, ornaments, etc).

note: . indicates a note without any modifiers added

Shortcuts

Shortcuts to add accidentals (sharp, flat, natural, double sharp, double flat) toggle the accidental individually for every note in a selection

# # # . # -> . . . # .

Shortcuts to add/remove bowing also toggle the bowing individually for each note in a selection

v v v . v -> . . . v .

Shortcuts to add articulations (Marcato, Staccato, Accent, Tenuto) first add the articulation to every note in a selection. If all the selected notes have an articulation, it removes the articulation from all the notes.

˙ ˙ ˙ . ˙ -> ˙ ˙ ˙ ˙ ˙ -> . . . . .

Top Menu Bar/Toolbar

Clicking on the button for any accidental toggles the accidental individually for every note in a selection

# # # . # -> . . . # .

Clicking on the button for any articulation adds the articulation to every note, them removes it

˙ ˙ ˙ . ˙ -> ˙ ˙ ˙ ˙ ˙ -> . . . . .

Side Palette:

Clicking on a accidental button will only add the accidental, and will not remove or toggle any notes in a selection.

# # # . # -> # # # # #

Clicking on an articulation button (including bowings) will only add the articulation

v v v . v -> . . . v .

Clicking on any one-note tremolo will toggle the tremolo individually for every note in a selection

= = = . = -> . . . = .

However, clicking on any measured tremolo will only add

Tremolos between notes will toggle, but seemingly only on the last two notes of the same value it can find within a measure

Single-note ornaments (mordent, turn, etc.) only add.

Multi-note/line ornaments only add (trill with line), but can be added more than once

currently, being able to add dynamics more than once is a good thing because it allows for hidden dynamics to affect playback however, the same dynamic can be added to a note more than once (select note, add 'p', select again, add 'p': two pianos). Crescendos and Diminuendos, like the multi-note ornaments, can be added more than once.

Keyboard pedal markings can be added more than once to the same note range

rit, allarg., and other multi-note tempo changes can be added more than once to same set of notes

Multiple arcos and pizzs can be added on same note.

Change instrument can only be added to a note once

Multiple rehearsal marks can be added on same note

Pitch changes can be added more than once

Breaths and pauses only be added

Grace notes add more than one (expected), however, adding an appogiatura to a group of acciatura notes will turn everything into an appogiatura

This list is not exhaustive; they are just all of the behavior inconsistencies I managed to find

Steps to reproduce
  1. apply any modifier to a single note in a range
  2. select a range of notes including that note (make sure they don't also have the modifier)
  3. use the toolbar/shortcut/palette to add the modifier to an entire group
  4. behavior varies between staff text, articulations, dynamics, tremolos, etc.
Screenshots/Screen recordings

Note: adding some modifiers clears your selection automatically, which is why some images have different selection ranges

Individual toggle from using top menu bar and shortcut for accidentals

image
image

Group add, group toggle in common articulations (marcato, tenuto, staccato, accent)

image
image
image

Side palette buttons that only add modifiers and do not toggle

image
image
image
image

Side palette individual toggle for single-note tremolos

image
image

Multi-note/line ornaments only add, but can be added more than once (I clicked add 4 times, second image shows all 4 dragged out)

image
image

The same tempo marking can be added more than once

image

Same rehearsal mark can be added more than once

image

Adding an appogiatura to a group of acciatura notes will turn everything into an appogiatura

image
image

MuseScore Version

MuseScore version (64-bit): 4.2.1-240230937, revision: github-musescore-musescore-d757433

Regression

I don't know

Operating system

OS: macOS 14.0, Arch.: x86_64

Additional context

Per a conversation on the MU Discord, here are a set of possible suggested changes:

  • all single-note, non-dynamic modifications should be a group toggle like staccato is currently, regardless of if the operation comes from the toolbar, the pallet, or a shortcut (also change labels to "add/remove" to all tooltips and shortcut descriptions)
  • things that cannot exist at the same time (i.e up-bows and down-bows, arco and pizz) should replace the other if added
  • multi-note things, text, tempo markings, tempo changes should stack vertically so that people know that they've added more than one. The same multi-note modifier should not be applicable to the same range (like how slurs work right now)
  • individual dynamics like p and f should stack, with the latest, playback affecting changes added towards the bottom. The same dynamic shouldn't be able to be added more than once to the same note
  • after adding anything from the pallet or toolbar, the selection should stay selected. Right now, some actions deselect your selection and some keep your selection. This is okay as a temporary solution to prevent people from adding things more than once, but it gets annoying for repeated operations like adding tremolos
  • copy pasting articulations while testing, I found that Musescore currently allows for things like duplicate staccatos and up+down bow on same note when copy/pasting. In the future, pasting should check for duplicates & impossibilities (i.e pasting up bows onto down bows)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.