If you think a check is flawed or have an idea for a check, please file an issue at https://github.com/fonttools/fontbakery/issues and remember to include a pointer to the repo and branch you're checking.
Summary
💥 ERROR | 🔥 FAIL | ⚠️ WARN | ⏩ SKIP | ℹ️ INFO | ✅ PASS |
---|---|---|---|---|---|
0 | 4 | 10 | 67 | 8 | 152 |
0% | 2% | 6% | 37% | 4% | 84% |
Note: The following loglevels were omitted in this report: SKIP, INFO, PASS, DEBUG
Meaning of check results:
- 💥 An ERROR is something wrong with FontBakery itself, possibly a bug.
- 🔥 A FAIL is a problem with the font that must be fixed.
- ⚠️ A WARN is something that you should consider addressing.
- ℹ️ An INFO result simply prints something useful. Typically stats.
- ✅ A PASS means the font looks good for the given checking routine.
- ⏩ And a SKIP happens when the check does not apply to the given font.
If you get ERRORs, please help us improve the tool by reporting them at our issue tracker.
(but other kinds of bug reports and/or feature requests are also always welcome, of course!)
FontBakery version: 0.9.2
Section: Google Fonts
🔥🔥⚠️⚠️⚠️⚠️⚠️⚠️⚠️⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩ℹ️ℹ️ℹ️ℹ️ℹ️ℹ️DESCRIPTION.en_us.html should end in a linebreak.
⚠️ Redacted-Regular.ttf
- ⚠️ WARN
The last characther on DESCRIPTION.en_us.html is not a line-break. Please add it. [code: missing-eof-linebreak]
Checking OS/2 achVendID.
⚠️ Redacted-Regular.ttf
- ⚠️ WARN
OS/2 VendorID value 'NONE' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx [code: unknown]
Check Google Fonts glyph coverage.
🔥 Redacted-Regular.ttf
- 🔥 FAIL
Missing required codepoints:
- 0x0308 (COMBINING DIAERESIS) - 0x0300 (COMBINING GRAVE ACCENT) - 0x0301 (COMBINING ACUTE ACCENT) - 0x030B (COMBINING DOUBLE ACUTE ACCENT) - 0x0304 (COMBINING MACRON) - 0x010A (LATIN CAPITAL LETTER C WITH DOT ABOVE) - 0x0120 (LATIN CAPITAL LETTER G WITH DOT ABOVE) - 0x0126 (LATIN CAPITAL LETTER H WITH STROKE) - 0x0132 (LATIN CAPITAL LIGATURE IJ) - 0x014A (LATIN CAPITAL LETTER ENG) - 0x1E9E (LATIN CAPITAL LETTER SHARP S) - 0x016C (LATIN CAPITAL LETTER U WITH BREVE) - 0x1E82 (LATIN CAPITAL LETTER W WITH ACUTE) - 0x0174 (LATIN CAPITAL LETTER W WITH CIRCUMFLEX) - 0x1E84 (LATIN CAPITAL LETTER W WITH DIAERESIS) - 0x1E80 (LATIN CAPITAL LETTER W WITH GRAVE) - 0x0176 (LATIN CAPITAL LETTER Y WITH CIRCUMFLEX) - 0x1EF2 (LATIN CAPITAL LETTER Y WITH GRAVE) - 0x010B (LATIN SMALL LETTER C WITH DOT ABOVE) - 0x0121 (LATIN SMALL LETTER G WITH DOT ABOVE) - 0x0127 (LATIN SMALL LETTER H WITH STROKE) - 0x0133 (LATIN SMALL LIGATURE IJ) - 0x0237 (LATIN SMALL LETTER DOTLESS J) - 0x014B (LATIN SMALL LETTER ENG) - 0x016D (LATIN SMALL LETTER U WITH BREVE) - 0x1E83 (LATIN SMALL LETTER W WITH ACUTE) - 0x0175 (LATIN SMALL LETTER W WITH CIRCUMFLEX) - 0x1E85 (LATIN SMALL LETTER W WITH DIAERESIS) - 0x1E81 (LATIN SMALL LETTER W WITH GRAVE) - 0x0177 (LATIN SMALL LETTER Y WITH CIRCUMFLEX) - 0x1EF3 (LATIN SMALL LETTER Y WITH GRAVE) - 0x0307 (COMBINING DOT ABOVE) - 0x0302 (COMBINING CIRCUMFLEX ACCENT) - 0x030C (COMBINING CARON) - 0x0306 (COMBINING BREVE) - 0x030A (COMBINING RING ABOVE) - 0x0303 (COMBINING TILDE) - 0x0312 (COMBINING TURNED COMMA ABOVE) - 0x0326 (COMBINING COMMA BELOW) - 0x0327 (COMBINING CEDILLA) - 0x0328 (COMBINING OGONEK)
[code: missing-codepoints]
Check for codepoints not covered by METADATA subsets.
⚠️ Redacted-Regular.ttf
- ⚠️ WARN
The following codepoints supported by the font are not covered by any subsets defined in the font's metadata file, and will never be served. You can solve this by either manually adding additional subset declarations to METADATA.pb, or by editing the glyphset definitions.
- U+02C7 CARON: try adding one of: canadian-aboriginal, tifinagh
- U+02C9 MODIFIER LETTER MACRON: not included in any glyphset definition
- U+02D8 BREVE: try adding canadian-aboriginal
- U+02D9 DOT ABOVE: try adding canadian-aboriginal
- U+02DB OGONEK: try adding canadian-aboriginal
- U+02DD DOUBLE ACUTE ACCENT: not included in any glyphset definition
- U+03C0 GREEK SMALL LETTER PI: try adding greek
- U+2021 DOUBLE DAGGER: not included in any glyphset definition
- U+2030 PER MILLE SIGN: not included in any glyphset definition
- U+2126 OHM SIGN: not included in any glyphset definition
- U+212E ESTIMATED SYMBOL: not included in any glyphset definition
- U+2202 PARTIAL DIFFERENTIAL: not included in any glyphset definition
- U+2206 INCREMENT: not included in any glyphset definition
- U+220F N-ARY PRODUCT: not included in any glyphset definition
- U+2211 N-ARY SUMMATION: not included in any glyphset definition
- U+2219 BULLET OPERATOR: try adding tai-tham
- U+221A SQUARE ROOT: not included in any glyphset definition
- U+221E INFINITY: not included in any glyphset definition
- U+222B INTEGRAL: not included in any glyphset definition
- U+2248 ALMOST EQUAL TO: not included in any glyphset definition
- U+2260 NOT EQUAL TO: not included in any glyphset definition
- U+2264 LESS-THAN OR EQUAL TO: not included in any glyphset definition
- U+2265 GREATER-THAN OR EQUAL TO: not included in any glyphset definition
- U+25CA LOZENGE: not included in any glyphset definition
- U+FB01 LATIN SMALL LIGATURE FI: not included in any glyphset definition
- U+FB02 LATIN SMALL LIGATURE FL: not included in any glyphset definition
Or you can add the above codepoints to one of the subsets supported by the font:
latin
,latin-ext
,menu
[code: unreachable-subsetting]
Font has old ttfautohint applied?
⚠️ Redacted-Regular.ttf
- ⚠️ WARN
ttfautohint used in font = 1.8.3; latest = 1.8.4; Need to re-run with the newer version! [code: old-ttfa]
METADATA.pb: Check URL on copyright string is the same as in repository_url field.
🔥 Redacted-Regular.ttf
- 🔥 FAIL
Value of repository_url field is
But font copyright string has: https://github.com/christiannaths/redacted-font [code: mismatch]
A static fonts directory with at least two fonts must accompany variable fonts
⚠️ Redacted-Regular.ttf
- ⚠️ WARN
Please consider adding a subdirectory called "static/" and including in it static font files. [code: missing]
On a family update, the DESCRIPTION.en_us.html file should ideally also be updated.
⚠️ Redacted-Regular.ttf
- ⚠️ WARN
The DESCRIPTION.en_us.html file in this family has not changed in comparison to the latest font release on the google/fonts github repo. Please consider mentioning note-worthy improvements made to the family recently. [code: description-not-updated]
Ensure fonts have ScriptLangTags declared on the 'meta' table.
⚠️ Redacted-Regular.ttf
- ⚠️ WARN
This font file does not have a 'meta' table. [code: lacks-meta-table]
Section: Universal
🔥⚠️⚠️⚠️⏩⏩⏩⏩⏩⏩ℹ️ℹ️Check if each glyph has the recommended amount of contours.
⚠️ Redacted-Regular.ttf
- ⚠️ WARN
This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.
The following glyphs do not have the recommended number of contours:
- Glyph name: exclam Contours detected: 1 Expected: 2 - Glyph name: quotedbl Contours detected: 1 Expected: 2 - Glyph name: numbersign Contours detected: 1 Expected: 2 - Glyph name: percent Contours detected: 1 Expected: 5 - Glyph name: zero Contours detected: 1 Expected: 2 or 3 - Glyph name: eight Contours detected: 1 Expected: 3 - Glyph name: colon Contours detected: 1 Expected: 2 - Glyph name: semicolon Contours detected: 1 Expected: 2 - Glyph name: equal Contours detected: 1 Expected: 2 - Glyph name: question Contours detected: 1 Expected: 2 - Glyph name: at Contours detected: 1 Expected: 2 - Glyph name: A Contours detected: 1 Expected: 2 - Glyph name: B Contours detected: 1 Expected: 2 or 3 - Glyph name: D Contours detected: 1 Expected: 2 - Glyph name: O Contours detected: 1 Expected: 2 - Glyph name: Q Contours detected: 1 Expected: 2 - Glyph name: a Contours detected: 1 Expected: 2 - Glyph name: b Contours detected: 1 Expected: 2 - Glyph name: d Contours detected: 1 Expected: 2 - Glyph name: e Contours detected: 1 Expected: 2 - Glyph name: g Contours detected: 1 Expected: 2 or 3 - Glyph name: i Contours detected: 1 Expected: 2 - Glyph name: j Contours detected: 1 Expected: 2 - Glyph name: o Contours detected: 1 Expected: 2 - Glyph name: p Contours detected: 1 Expected: 2 - Glyph name: q Contours detected: 1 Expected: 2 - Glyph name: exclamdown Contours detected: 1 Expected: 2 - Glyph name: currency Contours detected: 1 Expected: 2 - Glyph name: brokenbar Contours detected: 1 Expected: 2 - Glyph name: section Contours detected: 1 Expected: 2 - Glyph name: dieresis Contours detected: 1 Expected: 2 - Glyph name: copyright Contours detected: 1 Expected: 3 - Glyph name: ordfeminine Contours detected: 1 Expected: 2 or 3 - Glyph name: guillemotleft Contours detected: 1 Expected: 2 - Glyph name: uni00AD Contours detected: 1 Expected: 0 - Glyph name: registered Contours detected: 1 Expected: 3 or 4 - Glyph name: degree Contours detected: 1 Expected: 2 - Glyph name: ordmasculine Contours detected: 1 Expected: 2 or 3 - Glyph name: guillemotright Contours detected: 1 Expected: 2 - Glyph name: onequarter Contours detected: 1 Expected: 3 or 4 - Glyph name: onehalf Contours detected: 1 Expected: 3 - Glyph name: threequarters Contours detected: 1 Expected: 3 or 4 - Glyph name: questiondown Contours detected: 1 Expected: 2 - Glyph name: Agrave Contours detected: 1 Expected: 3 - Glyph name: Aacute Contours detected: 1 Expected: 3 - Glyph name: Acircumflex Contours detected: 1 Expected: 3 - Glyph name: Atilde Contours detected: 1 Expected: 3 - Glyph name: Adieresis Contours detected: 1 Expected: 4 - Glyph name: Aring Contours detected: 1 Expected: 3 or 4 - Glyph name: AE Contours detected: 1 Expected: 2 - Glyph name: Egrave Contours detected: 1 Expected: 2 - Glyph name: Eacute Contours detected: 1 Expected: 2 - Glyph name: Ecircumflex Contours detected: 1 Expected: 2 - Glyph name: Edieresis Contours detected: 1 Expected: 3 - Glyph name: Igrave Contours detected: 1 Expected: 2 - Glyph name: Iacute Contours detected: 1 Expected: 2 - Glyph name: Icircumflex Contours detected: 1 Expected: 2 - Glyph name: Idieresis Contours detected: 1 Expected: 3 - Glyph name: Eth Contours detected: 1 Expected: 2 - Glyph name: Ntilde Contours detected: 1 Expected: 2 - Glyph name: Ograve Contours detected: 1 Expected: 3 - Glyph name: Oacute Contours detected: 1 Expected: 3 - Glyph name: Ocircumflex Contours detected: 1 Expected: 3 - Glyph name: Otilde Contours detected: 1 Expected: 3 - Glyph name: Odieresis Contours detected: 1 Expected: 4 - Glyph name: Oslash Contours detected: 1 Expected: 2 or 3 - Glyph name: Ugrave Contours detected: 1 Expected: 2 - Glyph name: Uacute Contours detected: 1 Expected: 2 - Glyph name: Ucircumflex Contours detected: 1 Expected: 2 - Glyph name: Udieresis Contours detected: 1 Expected: 3 - Glyph name: Yacute Contours detected: 1 Expected: 2 - Glyph name: agrave Contours detected: 1 Expected: 3 - Glyph name: aacute Contours detected: 1 Expected: 3 - Glyph name: acircumflex Contours detected: 1 Expected: 3 - Glyph name: atilde Contours detected: 1 Expected: 3 - Glyph name: adieresis Contours detected: 1 Expected: 4 - Glyph name: aring Contours detected: 1 Expected: 4 - Glyph name: ae Contours detected: 1 Expected: 3 - Glyph name: egrave Contours detected: 1 Expected: 3 - Glyph name: eacute Contours detected: 1 Expected: 3 - Glyph name: ecircumflex Contours detected: 1 Expected: 3 - Glyph name: edieresis Contours detected: 1 Expected: 4 - Glyph name: igrave Contours detected: 1 Expected: 2 - Glyph name: iacute Contours detected: 1 Expected: 2 - Glyph name: icircumflex Contours detected: 1 Expected: 2 - Glyph name: idieresis Contours detected: 1 Expected: 3 - Glyph name: eth Contours detected: 1 Expected: 2 - Glyph name: ntilde Contours detected: 1 Expected: 2 - Glyph name: ograve Contours detected: 1 Expected: 3 - Glyph name: oacute Contours detected: 1 Expected: 3 - Glyph name: ocircumflex Contours detected: 1 Expected: 3 - Glyph name: otilde Contours detected: 1 Expected: 3 - Glyph name: odieresis Contours detected: 1 Expected: 4 - Glyph name: divide Contours detected: 1 Expected: 3 - Glyph name: oslash Contours detected: 1 Expected: 3 - Glyph name: ugrave Contours detected: 1 Expected: 2 - Glyph name: uacute Contours detected: 1 Expected: 2 - Glyph name: ucircumflex Contours detected: 1 Expected: 2 - Glyph name: udieresis Contours detected: 1 Expected: 3 - Glyph name: yacute Contours detected: 1 Expected: 2 - Glyph name: thorn Contours detected: 1 Expected: 2 - Glyph name: ydieresis Contours detected: 1 Expected: 3 - Glyph name: Amacron Contours detected: 1 Expected: 3 - Glyph name: amacron Contours detected: 1 Expected: 3 - Glyph name: Abreve Contours detected: 1 Expected: 3 - Glyph name: abreve Contours detected: 1 Expected: 3 - Glyph name: Aogonek Contours detected: 1 Expected: 2 or 3 - Glyph name: aogonek Contours detected: 1 Expected: 2 - Glyph name: Cacute Contours detected: 1 Expected: 2 - Glyph name: cacute Contours detected: 1 Expected: 2 - Glyph name: Ccaron Contours detected: 1 Expected: 2 - Glyph name: ccaron Contours detected: 1 Expected: 2 - Glyph name: Dcaron Contours detected: 1 Expected: 3 - Glyph name: dcaron Contours detected: 1 Expected: 3 - Glyph name: Dcroat Contours detected: 1 Expected: 2 - Glyph name: dcroat Contours detected: 1 Expected: 2 - Glyph name: Emacron Contours detected: 1 Expected: 2 - Glyph name: emacron Contours detected: 1 Expected: 3 - Glyph name: Edotaccent Contours detected: 1 Expected: 2 - Glyph name: edotaccent Contours detected: 1 Expected: 3 - Glyph name: eogonek Contours detected: 1 Expected: 2 - Glyph name: Ecaron Contours detected: 1 Expected: 2 - Glyph name: ecaron Contours detected: 1 Expected: 3 - Glyph name: Gbreve Contours detected: 1 Expected: 2 - Glyph name: gbreve Contours detected: 1 Expected: 3 or 4 - Glyph name: uni0122 Contours detected: 1 Expected: 2 - Glyph name: uni0123 Contours detected: 1 Expected: 3 or 4 - Glyph name: Imacron Contours detected: 1 Expected: 2 - Glyph name: imacron Contours detected: 1 Expected: 2 - Glyph name: iogonek Contours detected: 1 Expected: 2 or 3 - Glyph name: Idotaccent Contours detected: 1 Expected: 2 - Glyph name: uni0136 Contours detected: 1 Expected: 2 or 3 - Glyph name: uni0137 Contours detected: 1 Expected: 2 or 3 - Glyph name: Lacute Contours detected: 1 Expected: 2 - Glyph name: lacute Contours detected: 1 Expected: 2 - Glyph name: uni013B Contours detected: 1 Expected: 2 - Glyph name: uni013C Contours detected: 1 Expected: 2 - Glyph name: Lcaron Contours detected: 1 Expected: 2 - Glyph name: lcaron Contours detected: 1 Expected: 2 - Glyph name: Nacute Contours detected: 1 Expected: 2 - Glyph name: nacute Contours detected: 1 Expected: 2 - Glyph name: uni0145 Contours detected: 1 Expected: 2 - Glyph name: uni0146 Contours detected: 1 Expected: 2 - Glyph name: Ncaron Contours detected: 1 Expected: 2 - Glyph name: ncaron Contours detected: 1 Expected: 2 - Glyph name: Omacron Contours detected: 1 Expected: 3 - Glyph name: omacron Contours detected: 1 Expected: 3 - Glyph name: Ohungarumlaut Contours detected: 1 Expected: 4 - Glyph name: ohungarumlaut Contours detected: 1 Expected: 4 - Glyph name: OE Contours detected: 1 Expected: 2 - Glyph name: oe Contours detected: 1 Expected: 3 - Glyph name: Racute Contours detected: 1 Expected: 3 - Glyph name: racute Contours detected: 1 Expected: 2 - Glyph name: uni0156 Contours detected: 1 Expected: 3 - Glyph name: uni0157 Contours detected: 1 Expected: 2 - Glyph name: Rcaron Contours detected: 1 Expected: 3 - Glyph name: rcaron Contours detected: 1 Expected: 2 - Glyph name: Sacute Contours detected: 1 Expected: 2 - Glyph name: sacute Contours detected: 1 Expected: 2 - Glyph name: Scaron Contours detected: 1 Expected: 2 - Glyph name: scaron Contours detected: 1 Expected: 2 - Glyph name: Tcaron Contours detected: 1 Expected: 2 - Glyph name: tcaron Contours detected: 1 Expected: 2 - Glyph name: Umacron Contours detected: 1 Expected: 2 - Glyph name: umacron Contours detected: 1 Expected: 2 - Glyph name: Uring Contours detected: 1 Expected: 3 - Glyph name: uring Contours detected: 1 Expected: 3 - Glyph name: Uhungarumlaut Contours detected: 1 Expected: 3 - Glyph name: uhungarumlaut Contours detected: 1 Expected: 3 - Glyph name: Ydieresis Contours detected: 1 Expected: 3 - Glyph name: Zacute Contours detected: 1 Expected: 2 - Glyph name: zacute Contours detected: 1 Expected: 2 - Glyph name: Zdotaccent Contours detected: 1 Expected: 2 - Glyph name: zdotaccent Contours detected: 1 Expected: 2 - Glyph name: Zcaron Contours detected: 1 Expected: 2 - Glyph name: zcaron Contours detected: 1 Expected: 2 - Glyph name: uni0218 Contours detected: 1 Expected: 2 - Glyph name: uni0219 Contours detected: 1 Expected: 2 - Glyph name: uni021A.1 Contours detected: 1 Expected: 2 - Glyph name: uni021B.1 Contours detected: 1 Expected: 2 - Glyph name: ring Contours detected: 1 Expected: 2 - Glyph name: hungarumlaut Contours detected: 1 Expected: 2 - Glyph name: quotedblleft Contours detected: 1 Expected: 2 - Glyph name: quotedblright Contours detected: 1 Expected: 2 - Glyph name: quotedblbase Contours detected: 1 Expected: 2 - Glyph name: ellipsis Contours detected: 1 Expected: 3 - Glyph name: perthousand Contours detected: 1 Expected: 6 or 7 - Glyph name: uni2113 Contours detected: 1 Expected: 2 - Glyph name: trademark Contours detected: 1 Expected: 2 - Glyph name: estimated Contours detected: 1 Expected: 2 - Glyph name: partialdiff Contours detected: 1 Expected: 2 - Glyph name: uni2206 Contours detected: 1 Expected: 2 - Glyph name: infinity Contours detected: 1 Expected: 3 - Glyph name: approxequal Contours detected: 1 Expected: 2 - Glyph name: lessequal Contours detected: 1 Expected: 2 - Glyph name: greaterequal Contours detected: 1 Expected: 2 - Glyph name: lozenge Contours detected: 1 Expected: 2 - Glyph name: A Contours detected: 1 Expected: 2 - Glyph name: AE Contours detected: 1 Expected: 2 - Glyph name: Aacute Contours detected: 1 Expected: 3 - Glyph name: Abreve Contours detected: 1 Expected: 3 - Glyph name: Acircumflex Contours detected: 1 Expected: 3 - Glyph name: Adieresis Contours detected: 1 Expected: 4 - Glyph name: Agrave Contours detected: 1 Expected: 3 - Glyph name: Amacron Contours detected: 1 Expected: 3 - Glyph name: Aogonek Contours detected: 1 Expected: 2 or 3 - Glyph name: Aring Contours detected: 1 Expected: 3 or 4 - Glyph name: Atilde Contours detected: 1 Expected: 3 - Glyph name: B Contours detected: 1 Expected: 2 or 3 - Glyph name: Cacute Contours detected: 1 Expected: 2 - Glyph name: Ccaron Contours detected: 1 Expected: 2 - Glyph name: D Contours detected: 1 Expected: 2 - Glyph name: Dcaron Contours detected: 1 Expected: 3 - Glyph name: Dcroat Contours detected: 1 Expected: 2 - Glyph name: Eacute Contours detected: 1 Expected: 2 - Glyph name: Ecaron Contours detected: 1 Expected: 2 - Glyph name: Ecircumflex Contours detected: 1 Expected: 2 - Glyph name: Edieresis Contours detected: 1 Expected: 3 - Glyph name: Edotaccent Contours detected: 1 Expected: 2 - Glyph name: Egrave Contours detected: 1 Expected: 2 - Glyph name: Emacron Contours detected: 1 Expected: 2 - Glyph name: Eth Contours detected: 1 Expected: 2 - Glyph name: Gbreve Contours detected: 1 Expected: 2 - Glyph name: Iacute Contours detected: 1 Expected: 2 - Glyph name: Icircumflex Contours detected: 1 Expected: 2 - Glyph name: Idieresis Contours detected: 1 Expected: 3 - Glyph name: Idotaccent Contours detected: 1 Expected: 2 - Glyph name: Igrave Contours detected: 1 Expected: 2 - Glyph name: Imacron Contours detected: 1 Expected: 2 - Glyph name: Lacute Contours detected: 1 Expected: 2 - Glyph name: Lcaron Contours detected: 1 Expected: 2 - Glyph name: Nacute Contours detected: 1 Expected: 2 - Glyph name: Ncaron Contours detected: 1 Expected: 2 - Glyph name: Ntilde Contours detected: 1 Expected: 2 - Glyph name: O Contours detected: 1 Expected: 2 - Glyph name: OE Contours detected: 1 Expected: 2 - Glyph name: Oacute Contours detected: 1 Expected: 3 - Glyph name: Ocircumflex Contours detected: 1 Expected: 3 - Glyph name: Odieresis Contours detected: 1 Expected: 4 - Glyph name: Ograve Contours detected: 1 Expected: 3 - Glyph name: Ohungarumlaut Contours detected: 1 Expected: 4 - Glyph name: Omacron Contours detected: 1 Expected: 3 - Glyph name: Oslash Contours detected: 1 Expected: 2 or 3 - Glyph name: Otilde Contours detected: 1 Expected: 3 - Glyph name: Q Contours detected: 1 Expected: 2 - Glyph name: Racute Contours detected: 1 Expected: 3 - Glyph name: Rcaron Contours detected: 1 Expected: 3 - Glyph name: Sacute Contours detected: 1 Expected: 2 - Glyph name: Scaron Contours detected: 1 Expected: 2 - Glyph name: Tcaron Contours detected: 1 Expected: 2 - Glyph name: Uacute Contours detected: 1 Expected: 2 - Glyph name: Ucircumflex Contours detected: 1 Expected: 2 - Glyph name: Udieresis Contours detected: 1 Expected: 3 - Glyph name: Ugrave Contours detected: 1 Expected: 2 - Glyph name: Uhungarumlaut Contours detected: 1 Expected: 3 - Glyph name: Umacron Contours detected: 1 Expected: 2 - Glyph name: Uring Contours detected: 1 Expected: 3 - Glyph name: Yacute Contours detected: 1 Expected: 2 - Glyph name: Ydieresis Contours detected: 1 Expected: 3 - Glyph name: Zacute Contours detected: 1 Expected: 2 - Glyph name: Zcaron Contours detected: 1 Expected: 2 - Glyph name: Zdotaccent Contours detected: 1 Expected: 2 - Glyph name: a Contours detected: 1 Expected: 2 - Glyph name: aacute Contours detected: 1 Expected: 3 - Glyph name: abreve Contours detected: 1 Expected: 3 - Glyph name: acircumflex Contours detected: 1 Expected: 3 - Glyph name: adieresis Contours detected: 1 Expected: 4 - Glyph name: ae Contours detected: 1 Expected: 3 - Glyph name: agrave Contours detected: 1 Expected: 3 - Glyph name: amacron Contours detected: 1 Expected: 3 - Glyph name: aogonek Contours detected: 1 Expected: 2 - Glyph name: approxequal Contours detected: 1 Expected: 2 - Glyph name: aring Contours detected: 1 Expected: 4 - Glyph name: at Contours detected: 1 Expected: 2 - Glyph name: atilde Contours detected: 1 Expected: 3 - Glyph name: b Contours detected: 1 Expected: 2 - Glyph name: brokenbar Contours detected: 1 Expected: 2 - Glyph name: cacute Contours detected: 1 Expected: 2 - Glyph name: ccaron Contours detected: 1 Expected: 2 - Glyph name: colon Contours detected: 1 Expected: 2 - Glyph name: copyright Contours detected: 1 Expected: 3 - Glyph name: currency Contours detected: 1 Expected: 2 - Glyph name: d Contours detected: 1 Expected: 2 - Glyph name: dcaron Contours detected: 1 Expected: 3 - Glyph name: dcroat Contours detected: 1 Expected: 2 - Glyph name: degree Contours detected: 1 Expected: 2 - Glyph name: dieresis Contours detected: 1 Expected: 2 - Glyph name: divide Contours detected: 1 Expected: 3 - Glyph name: e Contours detected: 1 Expected: 2 - Glyph name: eacute Contours detected: 1 Expected: 3 - Glyph name: ecaron Contours detected: 1 Expected: 3 - Glyph name: ecircumflex Contours detected: 1 Expected: 3 - Glyph name: edieresis Contours detected: 1 Expected: 4 - Glyph name: edotaccent Contours detected: 1 Expected: 3 - Glyph name: egrave Contours detected: 1 Expected: 3 - Glyph name: eight Contours detected: 1 Expected: 3 - Glyph name: ellipsis Contours detected: 1 Expected: 3 - Glyph name: emacron Contours detected: 1 Expected: 3 - Glyph name: eogonek Contours detected: 1 Expected: 2 - Glyph name: equal Contours detected: 1 Expected: 2 - Glyph name: estimated Contours detected: 1 Expected: 2 - Glyph name: eth Contours detected: 1 Expected: 2 - Glyph name: exclam Contours detected: 1 Expected: 2 - Glyph name: exclamdown Contours detected: 1 Expected: 2 - Glyph name: fi Contours detected: 1 Expected: 3 - Glyph name: fl Contours detected: 1 Expected: 2 - Glyph name: g Contours detected: 1 Expected: 2 or 3 - Glyph name: gbreve Contours detected: 1 Expected: 3 or 4 - Glyph name: greaterequal Contours detected: 1 Expected: 2 - Glyph name: guillemotleft Contours detected: 1 Expected: 2 - Glyph name: guillemotright Contours detected: 1 Expected: 2 - Glyph name: hungarumlaut Contours detected: 1 Expected: 2 - Glyph name: i Contours detected: 1 Expected: 2 - Glyph name: iacute Contours detected: 1 Expected: 2 - Glyph name: icircumflex Contours detected: 1 Expected: 2 - Glyph name: idieresis Contours detected: 1 Expected: 3 - Glyph name: igrave Contours detected: 1 Expected: 2 - Glyph name: imacron Contours detected: 1 Expected: 2 - Glyph name: infinity Contours detected: 1 Expected: 3 - Glyph name: iogonek Contours detected: 1 Expected: 2 or 3 - Glyph name: j Contours detected: 1 Expected: 2 - Glyph name: lacute Contours detected: 1 Expected: 2 - Glyph name: lcaron Contours detected: 1 Expected: 2 - Glyph name: lessequal Contours detected: 1 Expected: 2 - Glyph name: lozenge Contours detected: 1 Expected: 2 - Glyph name: nacute Contours detected: 1 Expected: 2 - Glyph name: ncaron Contours detected: 1 Expected: 2 - Glyph name: ntilde Contours detected: 1 Expected: 2 - Glyph name: numbersign Contours detected: 1 Expected: 2 - Glyph name: o Contours detected: 1 Expected: 2 - Glyph name: oacute Contours detected: 1 Expected: 3 - Glyph name: ocircumflex Contours detected: 1 Expected: 3 - Glyph name: odieresis Contours detected: 1 Expected: 4 - Glyph name: oe Contours detected: 1 Expected: 3 - Glyph name: ograve Contours detected: 1 Expected: 3 - Glyph name: ohungarumlaut Contours detected: 1 Expected: 4 - Glyph name: omacron Contours detected: 1 Expected: 3 - Glyph name: onehalf Contours detected: 1 Expected: 3 - Glyph name: onequarter Contours detected: 1 Expected: 3 or 4 - Glyph name: ordfeminine Contours detected: 1 Expected: 2 or 3 - Glyph name: ordmasculine Contours detected: 1 Expected: 2 or 3 - Glyph name: oslash Contours detected: 1 Expected: 3 - Glyph name: otilde Contours detected: 1 Expected: 3 - Glyph name: p Contours detected: 1 Expected: 2 - Glyph name: partialdiff Contours detected: 1 Expected: 2 - Glyph name: percent Contours detected: 1 Expected: 5 - Glyph name: perthousand Contours detected: 1 Expected: 6 or 7 - Glyph name: q Contours detected: 1 Expected: 2 - Glyph name: question Contours detected: 1 Expected: 2 - Glyph name: questiondown Contours detected: 1 Expected: 2 - Glyph name: quotedbl Contours detected: 1 Expected: 2 - Glyph name: quotedblbase Contours detected: 1 Expected: 2 - Glyph name: quotedblleft Contours detected: 1 Expected: 2 - Glyph name: quotedblright Contours detected: 1 Expected: 2 - Glyph name: racute Contours detected: 1 Expected: 2 - Glyph name: rcaron Contours detected: 1 Expected: 2 - Glyph name: registered Contours detected: 1 Expected: 3 or 4 - Glyph name: ring Contours detected: 1 Expected: 2 - Glyph name: sacute Contours detected: 1 Expected: 2 - Glyph name: scaron Contours detected: 1 Expected: 2 - Glyph name: section Contours detected: 1 Expected: 2 - Glyph name: semicolon Contours detected: 1 Expected: 2 - Glyph name: tcaron Contours detected: 1 Expected: 2 - Glyph name: thorn Contours detected: 1 Expected: 2 - Glyph name: threequarters Contours detected: 1 Expected: 3 or 4 - Glyph name: trademark Contours detected: 1 Expected: 2 - Glyph name: uacute Contours detected: 1 Expected: 2 - Glyph name: ucircumflex Contours detected: 1 Expected: 2 - Glyph name: udieresis Contours detected: 1 Expected: 3 - Glyph name: ugrave Contours detected: 1 Expected: 2 - Glyph name: uhungarumlaut Contours detected: 1 Expected: 3 - Glyph name: umacron Contours detected: 1 Expected: 2 - Glyph name: uni00AD Contours detected: 1 Expected: 0 - Glyph name: uni0122 Contours detected: 1 Expected: 2 - Glyph name: uni0123 Contours detected: 1 Expected: 3 or 4 - Glyph name: uni0136 Contours detected: 1 Expected: 2 or 3 - Glyph name: uni0137 Contours detected: 1 Expected: 2 or 3 - Glyph name: uni013B Contours detected: 1 Expected: 2 - Glyph name: uni013C Contours detected: 1 Expected: 2 - Glyph name: uni0145 Contours detected: 1 Expected: 2 - Glyph name: uni0146 Contours detected: 1 Expected: 2 - Glyph name: uni0156 Contours detected: 1 Expected: 3 - Glyph name: uni0157 Contours detected: 1 Expected: 2 - Glyph name: uni0218 Contours detected: 1 Expected: 2 - Glyph name: uni0219 Contours detected: 1 Expected: 2 - Glyph name: uni021A Contours detected: 1 Expected: 2 - Glyph name: uni021B Contours detected: 1 Expected: 2 - Glyph name: uni2113 Contours detected: 1 Expected: 2 - Glyph name: uni2206 Contours detected: 1 Expected: 2 - Glyph name: uring Contours detected: 1 Expected: 3 - Glyph name: yacute Contours detected: 1 Expected: 2 - Glyph name: ydieresis Contours detected: 1 Expected: 3 - Glyph name: zacute Contours detected: 1 Expected: 2 - Glyph name: zcaron Contours detected: 1 Expected: 2 - Glyph name: zdotaccent Contours detected: 1 Expected: 2 - Glyph name: zero Contours detected: 1 Expected: 2 or 3
[code: contour-count]
Does the font contain a soft hyphen?
⚠️ Redacted-Regular.ttf
- ⚠️ WARN
This font has a 'Soft Hyphen' character. [code: softhyphen]
Space and non-breaking space have the same width?
🔥 Redacted-Regular.ttf
- 🔥 FAIL
Space and non-breaking space have differing width: The space glyph named space is 0 font units wide, non-breaking space named (uni00A0) is 0 font units wide, and both should be positive and the same. GlyphsApp has "Sidebearing arithmetic" (https://glyphsapp.com/tutorials/spacing) which allows you to set the non-breaking space width to always equal the space width. [code: different-widths]
Check accent of Lcaron, dcaron, lcaron, tcaron (derived from com.google.fonts/check/alt_caron)
⚠️ Redacted-Regular.ttf
- ⚠️ WARN
Lcaron is composed of a single component and therefore could not be checked. Please check manually. [code: single-component]
- ⚠️ WARN
dcaron is composed of a single component and therefore could not be checked. Please check manually. [code: single-component]
- ⚠️ WARN
lcaron is composed of a single component and therefore could not be checked. Please check manually. [code: single-component]
- ⚠️ WARN
tcaron is composed of a single component and therefore could not be checked. Please check manually. [code: single-component]
Section: fontbakery.profiles.name
🔥⏩⏩Checking correctness of monospaced metadata.
🔥 Redacted-Regular.ttf
- 🔥 FAIL
The PANOSE numbers are incorrect for a monospaced font. Note: Family Type is set to 0, which does not seem right. [code: mono-bad-panose]
- ⚠️ WARN
The OpenType spec recomments at https://learn.microsoft.com/en-us/typography/opentype/spec/recom#hhea-table that hhea.numberOfHMetrics be set to 3 but this font has 332 instead. Please read https://github.com/fonttools/fonttools/issues/3014 to decide whether this makes sense for your font. [code: bad-numberOfHMetrics]