The visual tests are using the MScore font, which is based on LilyPond's Emmentaler font. The symbol for the breath mark in Emmentaler has a unique appearance, and it is intended to be positioned such that it intersects the top staff line. Other fonts have a symbol that more closely resembles the comma in the palette, and this symbol is intended to be positioned above the staff.
Commit f09f554 was meant to fix this issue, but it repositioned all of the non-caesura breath marks for all of the fonts, rather than just the one breath mark in the MScore font. Breath::layout() should probably instead look like this:
This also fixes the problem of the symbols not being centered vertically in the palette.
I thought about adjusting the symbol's position in the MScore font itself, but we are already repositioning all of the breath marks anyway during layout. After giving the matter much thought, I have decided that the solution I showed above makes more sense.
Seem instad of just moving Emmentaler breath down 0.5sp onto the top staff line, now all other fonts have it 0.5. sp above staff rather than touching the top staff line like in MuseScore 2?
It doesn't work with Leland, I noticed it from: https://musescore.org/en/node/286304. If it isn't a bug and there's no consensus about the correct vertical position, it should be possible at least to adjust it inside the inspector and/or via format->style...
For the record, (and for those of us away from the computer right now), could you please post a screenshot of how breath marks in Leland look right now?
But as far I can see, all other fonts (Bravura, MuseJazz, Gonville, Petaluma) except Emmentaler (the default font before Leland) seems to follow the placement like Leland.
So it is correct then. Since this issue is about vertical placement, and the other thread is more about horizontal positioning, I am changing the status back to ‘closed’.
Maybe I miss something, but what is vour reason, that the behavior of other music fonts than Emmentaler should be correct - at least shouldn't it be have a discussion in general? If needed, I'll find a lot of scores to attache them, where the breath mark are placed onto the upper note line and not above.
I don't have strong opinions about the defaults, but FWIW, Gould says "above". Would be worth checking with Simon.
But independently of the question of defaults, we should have an easy way to set your own preference. Most sensible is to have a style setting for default height, and let different fonts have their own defaults for that, similar to how we do for some other font-specific style defaults. I could imagine also each font defining its own attachment point for the symbol, on the assumption it will be attached starting right on the top line, fonts wanting to be placed above the line would define their attachment to be before the body of the glyphy, and fonts wanting to be placed on the line could define it mid-glyph. But we'd probably still want a style override.
But I definitely don't favor special-casing fonts by name in the code; in general that seems like a last resort to me and a sign that we've failed somewhere else.
But setting all of that aside, I agree that this should be handled via style settings. I can see having separate PosAbove and PosBelow style settings for each of the four breath symbols (the comma certainly should be able to be styled differently from the others), but shared style settings for most of the caesuras should suffice. If we don't care about altering the positioning of breath marks with adjusted Y-offsets in existing scores, adding these styles with carefully calculated defaults would allow us to really trim down the Breath::layout() code. But if we want to preserve the positioning of adjusted breath marks in existing scores, we should probably leave Breath::layout() alone and add all of these new styles with a default offset of (0.0, 0.0). https://github.com/mattmcclinch/MuseScore/commit/a38be4a takes this second approach. This allows the user to set the style settings for the various breaths and caesuras via the inspector. It would not be too difficult to then add these settings to the style dialog in a new "Breaths" page.
Letting each font specify its own defaults for breath mark offset is an interesting idea. I guess this means adding entries in each font's metadata.json file. It is certainly an elegant way to handle this situation, as long as the metadata.json files are there for us to modify as we see fit, with entries that are not necessarily taken from the SMUFL standard.
Sorry for late reply - my finger are out of order since a little while (or with other words: the actual result differ to the expected result ;-).
I'm not sure, but maybe we're discussing here a mismatch between a breath mark symbol and caesura signs?
With MuseScore 3.5.2 (Emmentaler) the breath mark is placed in this way:
With MuseScore 3.6.2 (Leland):
I think, here it's the correct position.
But Leland also includes a "single" caesura in the master palette (the last symbol there):
Here I think it should be available in the advanced workspace by default. Also I'm not sure if it's the correct position of the "single" caesura compared with a "double" caesura; shouldn't it be probably also placed onto the note line?:
I don't know that I've ever seen the single stroke caesura used in published music, and being at least somewhat commonly used would be a criterion for inclusion in the palette. Is there some specific genre or some particular publisher you are thinking of that would justify this?
Before being late once again, here a quick example with a bad quality from a choral book. How would you interpret and transcribe these signs in measure three and five with MuseScore and Leland?
That small caesura is already in the palette in the "More" section under "Breaths & Pauses". You can easily drag it into the main section if you want. But perhaps you already knew this. Personally, I don't understand the point of having to click "More" in order to get the last caesura to appear, but I guess that's why I'm not head of design.
It is already possible to adjust the y-position of breath marks and caesurae using the inspector, but having better defaults would be a good thing, and allowing this to be customized via style settings would probably be good as well. The patch I shared above takes into account the fact that this one caesura is smaller than the others, and so it has its own separate style setting to allow it to be positioned differently from the other caesurae.
I don't using self-builds, so I can't check your patch. My concern/confusion is with my example above, or one of several examples exemplary like the attachment of this user: https://musescore.org/en/node/286304#comment-905298, what should be the right behavior about the right position of this sign by default without to have adjusting the offset with the inspector; and if it should be available by default in the advanced workspace without it's necessary to use the master palette to insert it?
But as mentioned, I'm not sure about the correct behavior.
Comments
See also #138466: Breathmarks in scores imported from 1.x are placed 1sp too high , probably duplicates of one another
Is the actual result really wrong (see the position of breath mark in difference to caesura https://archive.org/stream/EssentialDictionaryOfMusicNotation_201303/Es…)?
(came up from:https://musescore.org/en/node/273018)
Um, lilypond is using the "expecting result", see: http://lilypond.org/doc/v2.18/Documentation/notation/expressive-marks-a…
Not sure about the opinion of Elaine Gould ;-).
The visual tests are using the MScore font, which is based on LilyPond's Emmentaler font. The symbol for the breath mark in Emmentaler has a unique appearance, and it is intended to be positioned such that it intersects the top staff line. Other fonts have a symbol that more closely resembles the comma in the palette, and this symbol is intended to be positioned above the staff.
Commit f09f554 was meant to fix this issue, but it repositioned all of the non-caesura breath marks for all of the fonts, rather than just the one breath mark in the MScore font. Breath::layout() should probably instead look like this:
This also fixes the problem of the symbols not being centered vertically in the palette.
I thought about adjusting the symbol's position in the MScore font itself, but we are already repositioning all of the breath marks anyway during layout. After giving the matter much thought, I have decided that the solution I showed above makes more sense.
See https://github.com/musescore/MuseScore/pull/4598
Looks like the issue wasn't closed automatically after the merging of the pull request?
fixed in 773439d160143107d3d2c3e79e7de15fd5f62028
Fixed in branch master, commit 83e9008164
fix #268123: Wrong vertical position of breath mark
Fixed in branch master, commit 773439d160
_Merge pull request #4598 from mattmcclinch/268123-breath-position
fix #268123: Wrong vertical position of breath mark_
Came up in http://notensatz.forumprofi.de/index.php?topic=1961.0
Seem instad of just moving Emmentaler breath down 0.5sp onto the top staff line, now all other fonts have it 0.5. sp above staff rather than touching the top staff line like in MuseScore 2?
I asked the same question in the pull request. According to mattmcclinch this is per design
Automatically closed -- issue fixed for 2 weeks with no activity.
It doesn't work with Leland, I noticed it from: https://musescore.org/en/node/286304. If it isn't a bug and there's no consensus about the correct vertical position, it should be possible at least to adjust it inside the inspector and/or via format->style...
In reply to It doesn't work with Leland,… by kuwitt
For the record, (and for those of us away from the computer right now), could you please post a screenshot of how breath marks in Leland look right now?
With pleasure :-).
With Leland:
After switching for example to Emmentaler in format->style...(without adding the breath mark once again):
But as far I can see, all other fonts (Bravura, MuseJazz, Gonville, Petaluma) except Emmentaler (the default font before Leland) seems to follow the placement like Leland.
So it is correct then. Since this issue is about vertical placement, and the other thread is more about horizontal positioning, I am changing the status back to ‘closed’.
Maybe I miss something, but what is vour reason, that the behavior of other music fonts than Emmentaler should be correct - at least shouldn't it be have a discussion in general? If needed, I'll find a lot of scores to attache them, where the breath mark are placed onto the upper note line and not above.
I don't have strong opinions about the defaults, but FWIW, Gould says "above". Would be worth checking with Simon.
But independently of the question of defaults, we should have an easy way to set your own preference. Most sensible is to have a style setting for default height, and let different fonts have their own defaults for that, similar to how we do for some other font-specific style defaults. I could imagine also each font defining its own attachment point for the symbol, on the assumption it will be attached starting right on the top line, fonts wanting to be placed above the line would define their attachment to be before the body of the glyphy, and fonts wanting to be placed on the line could define it mid-glyph. But we'd probably still want a style override.
But I definitely don't favor special-casing fonts by name in the code; in general that seems like a last resort to me and a sign that we've failed somewhere else.
@kuwitt, my idea of what is correct is based on Elaine Gould, as well as the links that you yourself have provided (https://archive.org/stream/EssentialDictionaryOfMusicNotation_201303/Es… and http://lilypond.org/doc/v2.18/Documentation/notation/expressive-marks-a…). Given all of that, and considering what I wrote here two years ago, I am not sure how you can now say that it does not work, since your screenshots clearly demonstrate otherwise.
But setting all of that aside, I agree that this should be handled via style settings. I can see having separate
PosAbove
andPosBelow
style settings for each of the four breath symbols (the comma certainly should be able to be styled differently from the others), but shared style settings for most of the caesuras should suffice. If we don't care about altering the positioning of breath marks with adjusted Y-offsets in existing scores, adding these styles with carefully calculated defaults would allow us to really trim down theBreath::layout()
code. But if we want to preserve the positioning of adjusted breath marks in existing scores, we should probably leaveBreath::layout()
alone and add all of these new styles with a default offset of(0.0, 0.0)
. https://github.com/mattmcclinch/MuseScore/commit/a38be4a takes this second approach. This allows the user to set the style settings for the various breaths and caesuras via the inspector. It would not be too difficult to then add these settings to the style dialog in a new "Breaths" page.Letting each font specify its own defaults for breath mark offset is an interesting idea. I guess this means adding entries in each font's
metadata.json
file. It is certainly an elegant way to handle this situation, as long as themetadata.json
files are there for us to modify as we see fit, with entries that are not necessarily taken from the SMUFL standard.Sorry for late reply - my finger are out of order since a little while (or with other words: the actual result differ to the expected result ;-).
I'm not sure, but maybe we're discussing here a mismatch between a breath mark symbol and caesura signs?
With MuseScore 3.5.2 (Emmentaler) the breath mark is placed in this way:
With MuseScore 3.6.2 (Leland):
I think, here it's the correct position.
But Leland also includes a "single" caesura in the master palette (the last symbol there):
Here I think it should be available in the advanced workspace by default. Also I'm not sure if it's the correct position of the "single" caesura compared with a "double" caesura; shouldn't it be probably also placed onto the note line?:
and:
.
I don't know that I've ever seen the single stroke caesura used in published music, and being at least somewhat commonly used would be a criterion for inclusion in the palette. Is there some specific genre or some particular publisher you are thinking of that would justify this?
Before being late once again, here a quick example with a bad quality from a choral book. How would you interpret and transcribe these signs in measure three and five with MuseScore and Leland?
That small caesura is already in the palette in the "More" section under "Breaths & Pauses". You can easily drag it into the main section if you want. But perhaps you already knew this. Personally, I don't understand the point of having to click "More" in order to get the last caesura to appear, but I guess that's why I'm not head of design.
It is already possible to adjust the y-position of breath marks and caesurae using the inspector, but having better defaults would be a good thing, and allowing this to be customized via style settings would probably be good as well. The patch I shared above takes into account the fact that this one caesura is smaller than the others, and so it has its own separate style setting to allow it to be positioned differently from the other caesurae.
I don't using self-builds, so I can't check your patch. My concern/confusion is with my example above, or one of several examples exemplary like the attachment of this user: https://musescore.org/en/node/286304#comment-905298, what should be the right behavior about the right position of this sign by default without to have adjusting the offset with the inspector; and if it should be available by default in the advanced workspace without it's necessary to use the master palette to insert it?
But as mentioned, I'm not sure about the correct behavior.