musescore / musescore/MuseScore

Add style option to use text font for dynamics

Open
#23,090 12 comments 0 reactions 1 assignee View on GitHub

Nobody has claimed this yet.

accessibility engraving P2
Dominant language
C++
Stars
15.1k
Forks
3.3k
Avg merge
2d 2h
Merged PRs (30d)
91

Description

Add an option in Format > Style > Dynamics & hairpins to use the text font instead of the music font to render dynamic symbols like p, f, mp, etc.

This option would be disabled by default. When enabled, dynamic symbols would be treated as Expression text for styling purposes.

Use text font for dynamics: disabled Use text font for dynamics: enabled

Internally, MuseScore would still recognise the 'p's as special musical characters, which would be rendered in the music font again if the style option were subsequently disabled.

Note: It would not be possible for the user to type these special characters by double-clicking on the dynamic and pressing P on their keyboard. The special characters must be entered from the palette like ordinary dynamics.

Why is this option needed?

RNIB require all text in modified stave notation (MSN) must be rendered in a bold, roman (i.e. non-italic) typeface.

After they have enabled "Use text font for dynamics" and modified the Expression style in Format > Style > Text styles, the final appearance of the dynamic would be:

Of course, they could do this manually by deleting the special characters and typing ordinary 'p' characters, and indeed that is what they are doing right now. However, this has to be done for each dynamic individually, and it cannot be easily reverted. Furthermore, typed 'p's are not recognised as dynamics during MusicXML export, which means RNIB has to maintain a separate copy of the score for braille conversion.

Using the style system will provide a one-click solution to change the appearance of every dynamic at once. It will enable RNIB to use a single score as the source for both their MSN and braille transcriptions.

This setting will also be used in the MSN styles for the future Accessibility section in the Properties panel.

Design

In Format > Style > Dynamics & hairpins...

  • Change "Override score font" to "Override musical font"
  • Make the existing "Font:" option one radio button, and the new "Use expression text style" another
  • Change "Font:" to "Choose font:"

Prototype demo (ignore the red annotations on the left):

https://github.com/musescore/MuseScore/assets/20806406/ed4b4f28-446e-4733-b083-2342210c626e

UI details:
image

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.