musescore / musescore/MuseScore

Detect single-voice chords and unis. regions on shared staves

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

Nobody has claimed this yet.

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

Description

Your idea

Currently, as soon as we have determined which instruments will fit on any given two-voice shared staff system, the voices remain fixed for the whole system.

We should automatically detect if there are regions where the instruments could be combined into a single voice (chords and/or unis.), despite the presence of two-voice regions on the system.

Problem to be solved
Image Image

The same applies when more than two instruments share a single staff:

Image Image
Prior art

No response

Additional context

We will want a Style > Shared staves option to set a threshold for when we consider combining notes into a single voice, to allow avoiding situations like this:

Image

This and other options should be locally overridable via stave sharing changes.


Note that there will be cases where reducing the number of voices could allow more instruments to fit on the system than was first determined, by instruments moving in and out of shared voices. For now we can probably allow these more complex cases to be dealt with manually via Stave sharing changes.

An example that could fit on a single staff:

Image
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.