musescore / musescore/MuseScore

Round beats to 2 decimal places in screen reader speech

Open
#34,401 4 comments 0 reactions 2 assignees View on GitHub

@avvvvve is already working on this.

Since Jul 31, 2026.

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

Description

Your idea

When navigating over a note in a tuplet, the screen reader currently might say:

Note G4 half, measure 1, beat 3.666667

To make navigation more snappy for blind users, we could truncate the beat to 2 decimal places.

Note G4 half, measure 1, beat 3.67

Alternatively, we could give it as a mixed fraction. such as one of these options:

Note G4 half, measure 1, beat 3 ²⁄₃

Note G4 half, measure 1, beat three and two thirds

Note G4 half, measure 1, beat 3 and 2 over 3

Problem to be solved

The status bar displays a beat number with many decimal places when the score contains:

  • Triplets or certain other tuplets.

    Image
  • Ordinary notes or rests of a 64th or smaller duration.

    Image

It's not really a problem for sighted users, who can look past those digits to get the information they need.

However, blind users have to listen to all of these digits as they move through the score, which makes navigation much slower than it needs to be.

Note: We can change what blind users listen to without changing what is shown in the status bar.

Prior art

No response

Additional context

If truncating to 2 decimal places, beats with fewer decimal places shouldn't be expanded.

  • A whole-number beat like 1 should be spoken as 1 and not 1.00.
  • A single decimal like 1.5 should be spoken as 1.5 and not 1.50.

If using fractions, Unicode trickery like 2 ⁷⁄₂₃ might result in bad speech with some screen readers:

Beat 2, superscript 7, fraction slash, subscript 2, subscript 3.

Instead, we'd probably have to give the screen reader the exact words we want it to say, such as:

Beat two and seven twenty-thirds.

Technically it's difficult to give a string for every possible fraction, and it would be difficult to translate into other languages besides English, so something like this would be much easer:

Beat 2 and 7 over 23.

Checklist
  • This request follows the guidelines for reporting issues
  • I have verified that this feature request has not been logged before, by searching the issue tracker for similar requests

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.