Invisible breath shouldn't impact layout
Reported version
3.5
Type
Functional
Frequency
Once
Severity
S3 - Major
Reproducibility
Always
Status
closed
Regression
No
Workaround
Yes
Project
Add invisible items: layout is changed. Sometimes a full measure is sent to next line by pasting an invisible "Breath mark (comma)"
Invisible items shouldn't change layout
Fix version
3.6.2
Comments
Generally invisible elements do not infuence the layout.
A list of elements that do have this issue is needed. I guess breath mark is just one of them?
I can confirm for breaths. That might be the only one? I guess if you insert a mid-measure barline, then that too. That would seem an odd thing to do though.
key signature before line break is another one
You mean courtesy key signature? Make that invisible is pretty superfluos, as you can avoid it completly
In reply to You mean courtesy key… by Jojo-Schmitz
See attached score, I can't get rid of it, only make it invisible. Any help is welcome.
Take this then (the trick it to manage to somehow select the C-Major keysig: select the clef, press Alt+right, then in Inspector remove the tick for show courtesy signature. Would be much nicer if that would be possible on the courtesy sig itself too, but there it is just greyed out)
But making it invisible works too, I don't see it eating space. At least not when using that double barline.
In reply to Take this then by Jojo-Schmitz
Thanks Jojo, your trick does the job for me.
My problem is in my score with about 100 incipits (2 or 3 by line with a small horizontal spacer between them).
Courtesy key signature doesn't make sens there, and the double line space that an invisible courtesy key signature is taking is still a bug as I don't want any additional space at all at the end of the 2 measures incipits.
Anyway "Select all similar element" + change at once for all of them in inspector is a blessing in MuseScore.
I have used that to uncheck "Show courtesy" for all key signatures, and all time signatures.
Only problem left without workaround is the breath mark.
I'm using invisible breath marks to have a pause of 1 sec between each incipit in the playback.
I have played with all available numbers in the inspector, with or without automatic placement, I can move the breath mark but not change the space it is taking in the score.
Any suggestion?
Sometimes invisible items do the opposite, and that is not better :-(
Why should it? The key sig is invisible, so should not take space. That score srtems from 3.5.0.
Why are you using a breath and make it invisible? Knowing the reason might help in finding a workaound
In reply to Why should it? The key sig… by Jojo-Schmitz
Don't you see the problem with the invisible key sig ? It doesn't take no space, it takes LESS space than no key sig at all! The notes are moved to the left!
For the invisible breath, like I wrote only goal is to introduce a 1 sec pause in the playback
Hmm, a section break might serve as a workaround, but it'd cause a system break too.
Anyway, your (3.5.0) sample score reg. keysig looks like this in 3.6.1:
Looks OK to me, so seems fixed, right?
So the invisible breath taking space is still the only remaining issue here?
In reply to Hmm, a section break might… by Jojo-Schmitz
If fixed in 3.6.1 that's good news indeed!
In reply to Hmm, a section break might… by Jojo-Schmitz
Well invisible courtesy key sig still takes space, and shouldn't as invisible items.
But that one is indeed very minor as the workaround is quite obvious, just don't use courtesy in the first place.
Nevertheless making them invisible is possible, and you see that MuseScore does "something" with space when you make them invisible, but not enough. So saying that there is no bug at all there would be lying. But as said, for that specific point a very minor bug.
Right, I fogot those
Try out 3.6.1, for that other issue
In the original test file attached for a courtesy key at the end of a system (test.mscz), for me, making it invisible does reclaim the space completely. That's true in both 3.5.6 and 3.6.1. Also 3.4.2 FWIW. But, it's true there was extra space in 3.0. So, something was fixed at least a year ago.
For the second example (test_ks.mscz) with the invisibe key signature right after the clef, that was a long-standing issue fixed in 3.6.
So as far as I can see, there is no issue with invisible key signatures of any kind - that is, there truly is no bug at all, not just a minor one. I am thus removing it from the issue title here. If someone finds a case that still presents issues in 3.6.1, please attach a new sample and precise steps to reproduce the problem so we can investigate.
For breaths, yes, that is confirmed. Partial workaround is add negative leading space to the barline (or other) segment afterwards. If you add a wider caesrua, you'll see that making it invisible actually does reclaim the space - most of it, anyhow. This leads to to assume the space isn't due to the symbol itself but to its segment and the margin added before and after.
True in 3.6.1 invisible accidental looks OK. It did in 3.5.2 too, but not with a single barline:
In reply to True in 3.6.1 invisible… by Jojo-Schmitz
Tested with 3.6.1:
-problems with courtesy are indeed completely solved
-adding leading space = -1 to the barline following the breath works as workaround.
A bit tedious as I have (currently, score isn't finished yet) 179 incipits but the result is there.
Note the leading space adjustment is only a partial workaround - I find you can get either the measure width to be the same as without the breath, or the distance from last note to barline, but not both. Also, if/when we figure out a fix for the issue itself, that adjustment will then become counterproductive. So to some extent you need to decide if playback or layout is more important.
Meanwhile, to fix the issue for real, I think we need to completely skip the segment when computing the measure width. See my comments in https://github.com/musescore/MuseScore/pull/7328 and the TODO's I left in the code to suggest a more complete solution to #315636: No space between barline and note if invisible key signature present. Realistically, this is the sort of thing that will probably need to wait until more significant re-design of the spacing algorithm, hopefully for MuseScore 4.
Believe it or not, this appears to be by design, since https://github.com/mattmcclinch/MuseScore/commit/66c0fe1 would resolve this issue. I feel like I must be missing something, but I have no idea what that could be.
Looks more like something that got forgotten rather than ommited on purpose
@Jojo-Schmitz, I think you are reading the diff backwards. Removing the check for
SegmentType::Breath
allows this function to returntrue
if all of the elements in the breath segment are invisible.Outch, sorry
In reply to Believe it or not, this… by mattmcclinch
When writing this method, the
SegmentType::Breath
was just added to make sure invisible breath's wouldn't change existing code. But if this what should happen it can be removed.See https://github.com/musescore/MuseScore/pull/7412.
Fixed in branch 3.x, commit 50823630b4
_Fix #316555: Invisible breath shouldn't impact layout.
Resolves: https://musescore.org/en/node/316555.
Allows Segment::allElementsInvisible() to return true for breath segments if all elements in the segment are invisible._
Fixed in branch master, commit 3a0861a352
_Fix #316555: Invisible breath shouldn't impact layout.
Resolves: https://musescore.org/en/node/316555.
Allows Segment::allElementsInvisible() to return true for breath segments if all elements in the segment are invisible._
Automatically closed -- issue fixed for 2 weeks with no activity.