musescore / musescore/MuseScore

Enharmonic transposition by interval does not work correctly

Open
#33,598 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Issue type

Engraving bug (incorrect score rendering)

Description with steps to reproduce

Enharmonic transposition by key (e.g. F# major to Gb major) works as expected, but by interval (diminished second) does not work correctly. See video below (00:13) - the notes are transposed, but not the key signature, nor the chord symbol.

Supporting files, videos and screenshots

https://github.com/user-attachments/assets/259a2e56-27d2-41d9-bced-f6cd81d6703c

In which versions of MuseScore Studio is this issue present?

4.6.5 - latest main

Regression

No.

Operating system

Ubuntu 24.04.4 LTS

Additional context

No response

Checklist
  • This report follows the guidelines for reporting bugs and issues
  • I have verified that this issue has not been logged before, by searching the issue tracker for similar issues
  • I have attached all requested files and information to this report
  • I have attempted to identify the root problem as concisely as possible, and have used minimal reproducible examples where possible

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.

Research direction

Start by reproducing the interval-based enharmonic transposition shown in the linked video, comparing it with transposition by key. Trace the code path responsible for interval transposition and inspect how it updates notes, key signatures, and chord symbols. Done means all three elements are rendered consistently after a diminished-second enharmonic transposition.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.