ranges.json
ranges.json provides information about the way glyphs are presented in discrete ranges in this specification. Here is an excerpt of this file:
{
...
"analytics": {
"description": "Analytics",
"glyphs": [
"analyticsHauptstimme",
"analyticsNebenstimme",
"analyticsStartStimme",
"analyticsEndStimme",
"analyticsTheme",
"analyticsThemeRetrograde",
"analyticsThemeRetrogradeInversion",
"analyticsThemeInversion",
"analyticsTheme1",
"analyticsInversion1"
],
"range_end": "U+E86F",
"range_start": "U+E860"
}
...
}
This file uses a unique identifier for each range as the primary key, and within each structure the “description” specifies the human-readable range name (as it appears in this specification), “glyphs” is an array listing the canonical names of the glyphs contained within the range, and the “range_start” and “range_end” key/value pairs specify the first and last code point allocated to this range respectively.
The current versions of glyphnames.json, classes.json and ranges.json are available for download at www.smufl.org/download.
It is further recommended that SMuFL-compliant fonts also contain font-specific metadata JSON files, which are described below.