Open felipesanches opened 8 months ago
Not precisely on-topic, but I'm gonna add an issue with this check here instead of opening a new one. Let me know if I should break it out into separate issue.
When Greek isn't fully supported by a font, this check should ignore case-swapping for Greek characters. Not sure how to determine Greek support, but checking for support of GF_Greek_Core
glyphset is a good start. Of course that would be GF-centric. I'm guessing the check is in the Universal profile (didn't check), so a better way should be found.
Proposal: Ignore Greek letters as soon as a font contains less Greek characters than the Greek lowercase and uppercase basic alphabet.
Bitter for example has these standard Greek characters and shouldn't FAIL.
Originally posted by @moyogo in https://github.com/fonttools/fontbakery/issues/3230#issuecomment-1970636519
@felipesanches @simoncozens This should be reopened. The exceptions are inconsistent or should raise a WARN.
There are roughly orthographic characters, phonetic characters and historical characters. The orthographic, phonetic and historical sometimes overlap, for example the lowercase is phonetic and the uppercase is historical, or the lowercase is phonetic and both lowercase and uppercase are orthographic.
For example:
The fontbakery check should likely check if a case-pair is orthographic (for example reported by shaperglot as such), then either FAIL or at least WARN. For the FAIL there could be some heuristic like whether the character is decomposable with
unicodedata.normalize("NFD", char)
.Originally posted by @moyogo in https://github.com/fonttools/fontbakery/issues/3230#issuecomment-1970636519