Releases: googlefonts/glyphsets
v1.0.0
- Removed all remaining old code after diffenator2 got refactored
- Pulled in 3 additional African language definitions from
gflanguages v0.6.0
. GF_Latin_African glyphset didn’t change as a result of that, only its "Character Sequences" definitions increased from 722 to 746 (commit 8b93034).
v0.6.20
- Added
language_code
definition for GF_Latin_PriAfrican to allow shaping tests - Added
glyphsets coverage
CLI command that prints a font's glyphset coverages - Reworked glyphset coverage calculation in
get_glyphsets_fulfilled()
; now based on characters per glyphset that are unique when compared to GF_Latin_Core.
Coverage Calculation Changes in Detail:
Previously, the coverage percentage as returned by get_glyphsets_fulfilled()
would calculate all the font’s characters as a percentage of a glyphset’s total characters. Fontbakery (among others) would then treat a glyphset as covered as soon as 80% of characters are present.
This generally worked, but created unwelcome overlaps as soon as glyphsets were too similar to each other. The newly redefined GF_Latin_PriAfrican glyphset, for example, has only 34 additional characters compared to GF_Latin_Core, as revealed by the command glyphsets compare GF_Latin_Core GF_Latin_PriAfrican
.
GF_Latin_Core on the other hand currently has 324 glyphs, and so a font that covers GF_Latin_Core also covers 90% of GF_Latin_PriAfrican and would therefore be counted as supporting GF_Latin_PriAfrican by accident, without actually supporting it, resulting in loads of unwelcome reports by Fontbakery’s shape_languages
check.
The new calculation is based solely on additional characters when compared to GF_Latin_Core. Similar to the compare
command, additional characters are calculated in a first step (Ŋ ŋ Ɓ Ɔ Ɗ Ɛ Ƙ ƙ Ɲ Ƴ ƴ Ǹ ǹ ɓ ɔ ɗ ɛ ɲ Ḿ ḿ Ṅ ṅ Ṣ ṣ Ẹ ẹ Ị ị Ọ ọ Ụ ụ
for GF_Latin_PriAfrican vs GF_Latin_Core), and then it is calculated how many of those characters a font supports, which is a significantly more accurate calculation.
Since get_glyphsets_fulfilled()
is hosted here inside glyphsets
, no changes to external implementations are required as the API didn't change, only the calculation of the percentage. Fontbakery still uses 80% as the threshold, but now based on a more accurate calculation.
v0.6.19
- Removed unnecessary
glyphsLib
import that caused trouble on fontbakery.com
v0.6.18
v0.6.17
Reinstate GFTestData
v0.6.15
- Excluded colonizer languages from African glyphset via new
exclude_language_codes
to prevent unnecessary glyphs (e.g. "ß") from appearing in the African Latin glyphset - Reintroduced
glyphsets filter-list
command to generate custom filter lists
v0.6.14
Added language codes for additional glyphsets that can be now covered in Fontbakery's shape_languages check.
In total, these glyphsets are now covered:
- Latin African+Core
- Cyrillic Core
- Greek Core
- Arabic Core+Plus
v0.6.13
- Made human-readable description available in /GLYPHSETS.md
- Changed API, consequently updated Fontbakery's usage of the API
- Includes the new GF African Latin glyphset
v0.6.11
v0.6.8
Removed Guarani and Quechua from GF_Latin_Core