musescore / musescore/MuseScore
No more hidden and uneditable variables
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 15.1k
- Forks
- 3.3k
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 91
Description
Your idea
Click & drag is fine and all, but what it isn't is precise and consistent. I see no reason to keep these variables locked away from the user:
Lines (basically anything in the lines palette, including hairpins, voltas, etc.):
- “off2” x and y (end point offset)
Maybe y only if “allow diagonal” is actually enabled (and a valid variable for the line in question in the first place).
Slurs & ties:
- “o1” x and y (start point offset)
- “o2” x and y (start vector)
- “o3” x and y (end vector)
- “o4” x and y (end point offset)
The variables exist, just let the user actually access them. There's room in Properties.
Problem to be solved
One of:
- having to locate and edit the numerical values in the .mscx file
- having to do a final pass with a vector graphics editor
- that'll-do attitude
Currently it's pretty much impossible or very, very, very tedious to e.g. keep parallel passages consistent, align slanted hairpins with each other, etc., etc. There's so many use cases, all easily satisfied by just including the variables in Properties.
The only readily available workaround right now is editing via arrow keys, but the step of 0.5 is rarely precise enough when precision is actually required.
Prior art
No response
Additional context
No response
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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue points to the Properties UI, the lines palette, slurs and ties, and .mscx variables; start by tracing how those objects expose editable properties and how their values are serialized. Done means the listed offsets and vectors are available with the stated diagonal-validity behavior and can be edited precisely in Properties.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- desktop-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100