musescore / musescore/MuseScore

Lyrics: Hyphens get lost when navigating with arrow keys

Open
#25,908 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Issue type

File corruption

Description with steps to reproduce

This could be a "File corruption", since it silently destroys data when executing a supposedly read-only action. Or it could be a "UX/Interaction bug", because navigation with arrow keys feels like it should be read-only, but actually destroys hyphens.

Steps to reproduce:

  1. Write a melody of some sort
  2. Enter lyrics (click first note, press Ctrl+L, start typing), use hyphenation where a syllable spans more than one note and ends in another hyphen (e.g. "HE----LLO")
  3. (Optional) Do something else, then edit last syllable again
  4. Press "Arrow Left" on the keyboard repeatedly to navigate towards left

Expected behavior: Navigating towards left is a purely read-only action, and does not modify anything, especially not the lyrics.

Actual behavior: The hyphens immediately after multi-note-syllables are deleted.

Supporting files, videos and screenshots

Demo:

https://github.com/user-attachments/assets/6b305d46-4e28-4fbf-9e3f-bcfb7182c9ea

In case you want to play around with this exact file, here it is:

Supercalifragilisticexpialidocious.mcsz.renamed-to.zip

I don't think this little snippet reaches the threshold of originality, and is therefore in public domain. If I'm wrong about that, I hereby release it into public domain.

Or in other words: Have fun :)

What is the latest version of MuseScore Studio where this issue is present?

Arch.: x86_64, MuseScore Studio version (64-bit): 4.4.4-243461245, revision: github-musescore-musescore-2232670

Regression

No.

Operating system

Debian GNU/Linux trixie/sid

Additional context

This is distinct from older (fixed) bugs in the same area: #15406, #15407

The accidental loss of lyrics-hyphenation cannot be undone by pressing "Undo", so in some sense this is an instance of #19796, although I'd argue this loss of lyrics-hyphenation shouldn't happen in the first place, and therefore is a separate bug.

This is distinct from #24621, because this is not about differences between versions, but rather a UI action causing data loss.

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

Open Supercalifragilisticexpialidocious.mcsz.renamed-to.zip and reproduce the lyric-editing sequence, including repeated Arrow Left navigation after entering HE----LLO. Trace the lyrics editing and keyboard-navigation entry points to determine where the hyphens are removed. Done means navigating left leaves lyrics unchanged and the behavior is covered by a regression check.

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
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.