Hi Dorico team,
I would like to suggest an extension to the SMuFL font metadata JSON used by Dorico and other notation applications.
At the moment, SMuFL includes engravingDefaults.textFontFamily, which allows a SMuFL music font to specify the preferred text font family that should be paired with it. This is very useful, but it only defines the text font family, not the actual default text faces/styles that should be used for Regular, Bold, Italic, and Bold Italic.
For third-party SMuFL fonts that include a matching Music Text font, this creates an incomplete workflow. The application can know the preferred text family, but it cannot reliably know which exact font face should be used for each style.
I would like to propose adding an optional JSON structure such as:
{
"engravingDefaults": {
"textFontFamily": ["Example Text", "serif"],
"textFontStyles": {
"regular": {
"family": "Example Text",
"style": "Regular",
"weight": 400,
"italic": false
},
"bold": {
"family": "Example Text",
"style": "Bold",
"weight": 700,
"italic": false
},
"italic": {
"family": "Example Text",
"style": "Italic",
"weight": 400,
"italic": true
},
"boldItalic": {
"family": "Example Text",
"style": "Bold Italic",
"weight": 700,
"italic": true
}
}
}
}
This would allow SMuFL font designers to define the intended default Music Text font styles directly in the metadata file. Dorico could then automatically set the correct Default Music Text Font and related styles when a third-party SMuFL music font is selected, instead of requiring the user to set them manually.
This would make third-party SMuFL fonts behave more consistently with bundled fonts, and it would make the SMuFL JSON metadata more complete for real-world font families that include separate music-text companions.
The new field could be optional, so existing SMuFL fonts would remain fully compatible.
Suggested field name: textFontStyles, textFontFaces, or textFontStyleMap.
Thank you for considering this improvement.
—Nordine.
@Philip_R @Chase43078 @FredGUnn @dspreadbury