musescore / musescore/MuseScore

Revamp tuplet offset settings

Open
#16,973 2 comments 0 reactions 1 assignee View on GitHub

Nobody has claimed this yet.

engraving feature request needs design
Dominant language
C++
Stars
15.1k
Forks
3.3k
Avg merge
2d 2h
Merged PRs (30d)
91

Description

It was recently brought to my attention that we cannot achieve this (fairly normal) style of tuplets in MuseScore:
image
image

With the current settings we can achieve either one of those but not both, since it is assumed you always want to offset relative to the stem when the end(s) of the tuplet are at the stem side.

I'd propose that we solve this quite simply by adding one new toggle:

  • our 'starting point' is that the tuplet starts at the left of the bounding box of the primary note (or rest) on the left, and ends at the right side of the bounding box of the primary note (or rest) on the right - as pictured above;
  • we have two offset fields, for the left and right sides of the tuplet (which would default to 0 and 0; these correspond to the current 'Distance before head of first note' and 'Distance after head of last note', though just "Left offset" and "Right offset", or something, may be less confusing)
  • we add a switch for "Offset relative to stems" (which could default to true, since that's the current behaviour); when this is on, it enables two more options for 'stem side offsets', left and right (which could default to -0.5 and +0.5, to match current behaviour; these correspond to the current 'Distance before stem of first note' and 'Distance after stem of last note'; the difference is that, by adding the switch, the user can now specify whether they want the stems to be relevant to the calculations or not). These offsets will only apply when a stem is present and the end of the tuplet is at the stem side.

If possible, while here, if we can add a toggle for 'extend bracket to last unit of tuplet' (someone else can think of a snazzier name for this), to enable the following, that would be delightful:
image
(This now also requested as https://github.com/musescore/MuseScore/issues/19851)

Note this is similar to the solution I'm suggesting for hairpins here.

Thoughts?

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.