Where can I change the codepoint used for “small natural for chords”?
As you can see in the screenshot, the sharps use U-ED62 (csymAccidentalSharp) and U-F4DE (csymAccidentalSharpSmall), the flats use U-ED60 (csymAccidentalFlat) and U-F4DC (csymAccidentalFlatSmall), but the small natural shows U-ED61 (csymAccidentalNatural) instead of the expected U-F4DD (csymAccidentalNaturalSmall).
That U-ED60 glyph is obviously not Bravura, so what font are you using? Not all fonts contain the small variants in the location where Dorico is looking for them as they are stylistic alternates. The hardwired split point to invoke the small variant is 75%, so 76% and up in Chord Symbols / Design will not use that glyph. It’s also hard to know what’s been edited without seeing a cutdown version of the file.
If you really just want to change the codepoint with a doricolib file, here are the relevant entries in the factory glyphs.xml file:
A codepoint change via a doricolib file will only affect future projects started from File / New. If you need to bring it into a current project, you’ll need to use the Library Manager.
Actually, I just looked closer at this and that natural is defined as glyph.csac.smufl.glyph.alteration.prefix.natural.modal.
So this is the glyph codepoint you’ll need to change:
I’ve been working on a new SMuFL font, and I wanted to test the accidentals for chords. I didn’t change anything in Dorico default chord setting. From your explanation, it would seem that there is no practical way of supporting this symbol, since the coding would need to be changed by the end user through glyphs.xml. Is this correct?
I think this is the code you’ll need to edit with all the modal natural options:
<?xml version="1.0" encoding="utf-8"?>
<kScoreLibrary>
<glyphDefinitions>
<entities array="true">
<GlyphPrimitiveEntityDefinition>
<name>smufl.glyph.alteration.prefix.natural.modal</name>
<entityID>glyph.csac.smufl.glyph.alteration.prefix.natural.modal</entityID>
<parentEntityID/>
<inheritanceMask>0</inheritanceMask>
<codePoint>0xED61</codePoint>
<isSmufl>true</isSmufl>
<alternateForGlyph/>
<fontStyle>font.chordsymbolsmusictext</fontStyle>
<pointSize>1</pointSize>
<rotation>0</rotation>
<colour>kDefault</colour>
</GlyphPrimitiveEntityDefinition>
<GlyphPrimitiveEntityDefinition>
<name>smufl.glyph.alteration.prefix.natural.modal.accAfterInterval</name>
<entityID>glyph.csac.smufl.glyph.alteration.prefix.natural.modal.accAfterInterval</entityID>
<parentEntityID/>
<inheritanceMask>0</inheritanceMask>
<codePoint>0xED61</codePoint>
<isSmufl>true</isSmufl>
<alternateForGlyph/>
<fontStyle>font.chordsymbolsmusictext</fontStyle>
<pointSize>1</pointSize>
<rotation>0</rotation>
<colour>kDefault</colour>
</GlyphPrimitiveEntityDefinition>
<GlyphPrimitiveEntityDefinition>
<name>smufl.glyph.alteration.prefix.naturalsmall.modal</name>
<entityID>glyph.csac.smufl.glyph.alteration.prefix.naturalsmall.modal</entityID>
<parentEntityID/>
<inheritanceMask>0</inheritanceMask>
<codePoint>0xF4DD</codePoint>
<isSmufl>false</isSmufl>
<alternateForGlyph/>
<fontStyle>font.chordsymbolsmusictext</fontStyle>
<pointSize>1</pointSize>
<rotation>0</rotation>
<colour>kDefault</colour>
</GlyphPrimitiveEntityDefinition>
<GlyphPrimitiveEntityDefinition>
<name>smufl.glyph.alteration.prefix.naturalsmall.modal.accAfterInterval</name>
<entityID>glyph.csac.smufl.glyph.alteration.prefix.naturalsmall.modal.accAfterInterval</entityID>
<parentEntityID/>
<inheritanceMask>0</inheritanceMask>
<codePoint>0xF4DD</codePoint>
<isSmufl>false</isSmufl>
<alternateForGlyph/>
<fontStyle>font.chordsymbolsmusictext</fontStyle>
<pointSize>1</pointSize>
<rotation>0</rotation>
<colour>kDefault</colour>
</GlyphPrimitiveEntityDefinition>
</entities>
</glyphDefinitions>
</kScoreLibrary>
ModalNaturals.doricolib.zip (950 Bytes)
After changing the code points, save the doricolib file in your DefaultLibraryAdditions folder. It should be at should be at Users\[username]\AppData\Roaming\Steinberg\Dorico 6\DefaultLibraryAdditions on Windows or Users/[username]/Library/Application Support/Steinberg/Dorico 6/DefaultLibraryAdditions on Mac. If it doesn’t exist already, you can go ahead and create it.
Restart Dorico and open the file you want to bring the settings into. In Library Manager should be able to sync Collections / Glyph Primitives to bring it in to the existing file. Maybe Music Symbols will need to be selected too.
1 Like
Thanks so much. These codepoints in glyphs.xml are correct, and it looks like Dorico doesn’t use “glyph.csac.smufl.glyph.alteration.prefix.naturalsmall.modal” where it’s supposed to.
1 Like
Are you sure you edited the doricolib correctly and placed it in the correct DefaultLibraryAdditions folder? If I change that glyph to something ridiculous and use this code for it …
<?xml version="1.0" encoding="utf-8"?>
<kScoreLibrary>
<glyphDefinitions>
<entities array="true">
<GlyphPrimitiveEntityDefinition>
<name>smufl.glyph.alteration.prefix.natural.modal</name>
<entityID>glyph.csac.smufl.glyph.alteration.prefix.natural.modal</entityID>
<parentEntityID/>
<inheritanceMask>0</inheritanceMask>
<codePoint>0xEC62</codePoint>
<isSmufl>true</isSmufl>
<alternateForGlyph/>
<fontStyle>font.chordsymbolsmusictext</fontStyle>
<pointSize>1</pointSize>
<rotation>0</rotation>
<colour>kDefault</colour>
</GlyphPrimitiveEntityDefinition>
</entities>
</glyphDefinitions>
</kScoreLibrary>
… then I get this in the score with the glyph codepoint that I specified:
EDIT: Oh, wait, maybe Dorico is only using the glyph.csac.smufl.glyph.alteration.prefix.natural.modal glyph regardless of the Chord Symbols / Design percentage and isn’t using glyph.csac.smufl.glyph.alteration.prefix.naturalsmall.modal ever at all. Is that what you mean? You might be right about that.
It looks like the composites are set up and designed to use that glyph, but it doesn’t seem to ever appear for me regardless of Engraving Options settings. Tagging @Richard_Lanyon who might know what’s going on. What is the trigger for Dorico to invoke the smufl.glyph.alteration.prefix.naturalsmall.modal glyph? It doesn’t seem to be the 75/76 changeover point that it is for other suffix accidentals.
Yes, this is what I meant.