Skip to content

Libertinus Keyboard: Version 7.051;RELEASE added #9301

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

yanone
Copy link
Collaborator

@yanone yanone commented Apr 3, 2025

Taken from the upstream repo https://github.com/googlefonts/libertinus at commit googlefonts/libertinus@88dfbb0.

Resolves #12

PR Checklist:

  • minisite_url definition in the METADATA.pb file for commissioned projects
  • tags are added for NEW FONTS
  • primary_script definition in the METADATA.pb file for all projects that have a primary non-Latin based language support target
  • subsets definitions in the METADATA.pb reflect the actual subsets and languages present in the font files (in alphabetic order). For CJK fonts, only include one of the following subsets chinese-hongkong, chinese-simplified, chinese-traditional, korean, japanese.
  • Fontbakery checks are reviewed and failing checks are resolved in collaboration with the upstream font development team
  • Diffenator2 regression checks for revisions on all projects that are currently in production
  • Designers bio info have to be present in the designer catalog (at least an issue should be opened for tracking this, if they are not)
  • Check designers order in metadata.pb, since the first one of the list appears as “principal designer”
  • Social media formatted visual assets for all new commissioned projects in the Drive directory, communicate with the repository Maintainer so that they can push this content to the Social Media tracker spreadsheet
  • Social media content draft for all new commissioned projects in the Drive directory and Social Media tracker spreadsheet, communicate with the repository Maintainer so that they can push this content to the Social Media tracker spreadsheet

@yanone yanone added I New Font -- fontforge/fontlab/fontcreator sources that are not UFO/Glyphs natively II Accepted Non-commissioned projects that are accepted for onboarding labels Apr 3, 2025
Copy link

github-actions bot commented Apr 3, 2025

FontBakery report

fontbakery version: 0.13.2

Check results

[29] LibertinusKeyboard-Regular.ttf
🔥 FAIL Ensure the font supports case swapping for all its glyphs. case_mapping
  • 🔥 FAIL

    The following glyphs lack their case-swapping counterparts:

Glyph present in the font Missing case-swapping counterpart
U+00E6: LATIN SMALL LETTER AE U+00C6: LATIN CAPITAL LETTER AE
[code: missing-case-counterparts]
🔥 FAIL Font contains glyphs for whitespace characters? whitespace_glyphs
  • 🔥 FAIL

    Whitespace glyph missing for codepoint 0x00A0.


    [code: missing-whitespace-glyph-0x00A0]
🔥 FAIL Shapes languages in all GF glyphsets. googlefonts/glyphsets/shape_languages
  • 🔥 FAIL

    GF_TransLatin_Arabic glyphset:

FAIL messages Languages
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̧, ́, ̀, ̈ ca_Latn (Catalan)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̌, ́, ̊ cs_Latn (Czech)
Mandatory orthography codepoints:
The following base characters are missing from the font: Ẁ, Ẅ, Ỳ, ẁ, ỳ, ẃ, ẅ, Ẃ
The following mark characters are missing from the font: ̈, ̀, ̂, ́ cy_Latn (Welsh)
Mandatory orthography codepoints:
The following base characters are missing from the font: Æ
The following mark characters are missing from the font: ́, ̊ da_Latn (Danish)
Mandatory orthography codepoints:
The following base characters are missing from the font: ẞ
The following mark characters are missing from the font: ̈, ̀, ́ de_Latn (German)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̈, ̂, ̧, ̀, ́, ̃ en_Latn (English)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̃, ́, ̈ es_Latn (Spanish)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̊, ̃, ̌, ̈ fi_Latn (Finnish)
Mandatory orthography codepoints:
The following base characters are missing from the font: Œ, œ, Æ
The following mark characters are missing from the font: ́, ̂, ̧, ̈, ̀ fr_Latn (French)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ́, ̌ hr_Latn (Croatian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̈, ́, ̋ hu_Latn (Hungarian)
Mandatory orthography codepoints:
The following base characters are missing from the font: Æ
The following mark characters are missing from the font: ́, ̈, ̨ is_Latn (Icelandic)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̈, ̀, ̂, ́ it_Latn (Italian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̌, ̇, ̄, ̨ lt_Latn (Lithuanian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̌, ̧, ̄ lv_Latn (Latvian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̇, ̀, ̂ mt_Latn (Maltese)
Mandatory orthography codepoints:
The following base characters are missing from the font: Æ
The following mark characters are missing from the font: ́, ̀, ̈, ̊, ̂ nb_Latn (Norwegian Bokmål)
Mandatory orthography codepoints:
The following base characters are missing from the font: íj́, ÍJ́
The following mark characters are missing from the font: ̀, ́, ̈, ̂ nl_Latn (Dutch)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̇, ̨, ́ pl_Latn (Polish)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ́, ̈, ̃, ̧, ̀, ̂ pt_Latn (Portuguese)
Mandatory orthography codepoints:
The following base characters are missing from the font: Ț, ț, ș, Ș
The following mark characters are missing from the font: ̧, ̂, ̆, ̦ ro_Latn (Romanian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̈, ́, ̌, ̂ sk_Latn (Slovak)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̈, ̧ sq_Latn (Albanian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̊, ̀, ́, ̈ sv_Latn (Swedish)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̈, ̂, ̇, ̦, ̆, ̧ tr_Latn (Turkish)
[code: failed-language-shaping]
  • ⚠️ WARN

    GF_TransLatin_Arabic glyphset:

WARN messages Languages
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: º
The following auxiliary characters are missing from the font: œ ca_Latn (Catalan)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: œ cs_Latn (Czech), cy_Latn (Welsh), hu_Latn (Hungarian), nl_Latn (Dutch) and sk_Latn (Slovak)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: Ǿ
The following auxiliary characters are missing from the font: œ
The following auxiliary characters are missing from the font: ǿ da_Latn (Danish)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: œ
The following auxiliary characters are missing from the font: ſ de_Latn (German)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: œ
The following auxiliary characters are missing from the font: ʻ en_Latn (English)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: ª
The following auxiliary characters are missing from the font: º
The following auxiliary characters are missing from the font: œ es_Latn (Spanish) and pt_Latn (Portuguese)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Ǧ
The following auxiliary characters are missing from the font: Ǥ
The following auxiliary characters are missing from the font: Ȟ
The following auxiliary characters are missing from the font: Ǩ
The following auxiliary characters are missing from the font: Ŋ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: Ș
The following auxiliary characters are missing from the font: ẞ
The following auxiliary characters are missing from the font: Ț
The following auxiliary characters are missing from the font: Ʒ
The following auxiliary characters are missing from the font: Ǯ
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: ǧ
The following auxiliary characters are missing from the font: ǥ
The following auxiliary characters are missing from the font: ȟ
The following auxiliary characters are missing from the font: ǩ
The following auxiliary characters are missing from the font: ŋ
The following auxiliary characters are missing from the font: œ
The following auxiliary characters are missing from the font: ș
The following auxiliary characters are missing from the font: ț
The following auxiliary characters are missing from the font: ʒ
The following auxiliary characters are missing from the font: ǯ fi_Latn (Finnish)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: ẞ
The following auxiliary characters are missing from the font: Ǔ
The following auxiliary characters are missing from the font: ſ
The following auxiliary characters are missing from the font: ǔ fr_Latn (French)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: ª
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: ẞ
The following auxiliary characters are missing from the font: º
The following auxiliary characters are missing from the font: œ it_Latn (Italian)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Ą́
The following auxiliary characters are missing from the font: Ą̃
The following auxiliary characters are missing from the font: Ẽ
The following auxiliary characters are missing from the font: Ę́
The following auxiliary characters are missing from the font: Ę̃
The following auxiliary characters are missing from the font: Ė́
The following auxiliary characters are missing from the font: Ė̃
The following auxiliary characters are missing from the font: İ́
The following auxiliary characters are missing from the font: İ́
The following auxiliary characters are missing from the font: İ̀
The following auxiliary characters are missing from the font: İ̀
The following auxiliary characters are missing from the font: İ̃
The following auxiliary characters are missing from the font: İ̃
The following auxiliary characters are missing from the font: Į́
The following auxiliary characters are missing from the font: Į̇́
The following auxiliary characters are missing from the font: Į̃
The following auxiliary characters are missing from the font: Į̇̃
The following auxiliary characters are missing from the font: J̃
The following auxiliary characters are missing from the font: J̇̃
The following auxiliary characters are missing from the font: L̃
The following auxiliary characters are missing from the font: M̃
The following auxiliary characters are missing from the font: R̃
The following auxiliary characters are missing from the font: Ų́
The following auxiliary characters are missing from the font: Ų̃
The following auxiliary characters are missing from the font: Ū́
The following auxiliary characters are missing from the font: Ū̃
The following auxiliary characters are missing from the font: ą́
The following auxiliary characters are missing from the font: ą̃
The following auxiliary characters are missing from the font: ẽ
The following auxiliary characters are missing from the font: ę́
The following auxiliary characters are missing from the font: ę̃
The following auxiliary characters are missing from the font: ė́
The following auxiliary characters are missing from the font: ė̃
The following auxiliary characters are missing from the font: i̇́
The following auxiliary characters are missing from the font: i̇̀
The following auxiliary characters are missing from the font: i̇̃
The following auxiliary characters are missing from the font: į́
The following auxiliary characters are missing from the font: į̇́
The following auxiliary characters are missing from the font: į̃
The following auxiliary characters are missing from the font: į̇̃
The following auxiliary characters are missing from the font: j̃
The following auxiliary characters are missing from the font: j̇̃
The following auxiliary characters are missing from the font: l̃
The following auxiliary characters are missing from the font: m̃
The following auxiliary characters are missing from the font: r̃
The following auxiliary characters are missing from the font: ų́
The following auxiliary characters are missing from the font: ų̃
The following auxiliary characters are missing from the font: ū́
The following auxiliary characters are missing from the font: ū̃ lt_Latn (Lithuanian)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Ǎ
The following auxiliary characters are missing from the font: Ŋ
The following auxiliary characters are missing from the font: ǎ
The following auxiliary characters are missing from the font: ŋ nb_Latn (Norwegian Bokmål)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: ẞ
The following auxiliary characters are missing from the font: œ pl_Latn (Polish) and tr_Latn (Turkish)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ sv_Latn (Swedish)
[code: warning-language-shaping]
🔥 FAIL Copyright notices match canonical pattern in fonts googlefonts/font_copyright
  • 🔥 FAIL

    METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"???."

[code: bad-notice-format]
🔥 FAIL Check Google Fonts glyph coverage. googlefonts/glyph_coverage
  • 🔥 FAIL

    Missing required codepoints:

- 0x00A0 (NO-BREAK SPACE)


- 0x00A9 (COPYRIGHT SIGN)


- 0x00AA (FEMININE ORDINAL INDICATOR)


- 0x00AE (REGISTERED SIGN)


- 0x00AF (MACRON)


- 0x00B6 (PILCROW SIGN)


- 0x00BA (MASCULINE ORDINAL INDICATOR)


- 0x00BF (INVERTED QUESTION MARK)


- 0x00C6 (LATIN CAPITAL LETTER AE)


- 0x0152 (LATIN CAPITAL LIGATURE OE)


- 51 more.

Use -F or --full-lists to disable shortening of long lists.

[code: missing-codepoints]
🔥 FAIL Check font follows the Google Fonts vertical metric schema googlefonts/vertical_metrics
  • 🔥 FAIL

    The sum of hhea.ascender + abs(hhea.descender) + hhea.lineGap is 1140 when it should be at least 1200


    [code: bad-hhea-range]
⚠️ WARN Checking correctness of monospaced metadata. opentype/monospace
  • ⚠️ WARN

    The OpenType spec recommends at https://learn.microsoft.com/en-us/typography/opentype/spec/recom#hhea-table that hhea.numberOfHMetrics be set to 3 but this font has 421 instead.
    Please read hhea.numberOfHMetrics not correct for monospace fonttools/fonttools#3014 to decide whether this makes sense for your font.


    [code: bad-numberOfHMetrics]

  • ⚠️ WARN

    Font is monospaced but 123 glyphs (29.22%) have a different width. You should check the widths of: ['space', 'igrave', 'iacute', 'icircumflex', 'idieresis', 'divide', 'thorn', 'itilde', 'imacron', 'ibreve', 'dotlessi', 'uni05C3', 'uni05C6', 'uni05D0', 'uni05D1', 'uni05D2', 'uni05D3', 'uni05D4', 'uni05D5', 'uni05D6', 'uni05D7', 'uni05D8', 'uni05D9', 'uni05DA', 'uni05DB', 'uni05DC', 'uni05DD', 'uni05DE', 'uni05DF', 'uni05E0', 'uni05E1', 'uni05E2', 'uni05E3', 'uni05E4', 'uni05E5', 'uni05E6', 'uni05E7', 'uni05E8', 'uni05E9', 'uni05EA', 'uni05F0', 'uni05F1', 'uni05F2', 'arrowleft', 'arrowup', 'arrowright', 'arrowdown', 'uni21A5', 'uni21A7', 'uni2325', 'uni2326', 'uni2327', 'uni232B', 'uniE104', 'uniE130', 'S_t_r_g', 'A_l_t', 'A_l_t_G_r', 'F_one', 'F_two', 'F_three', 'F_four', 'F_five', 'F_six', 'F_seven', 'F_eight', 'F_nine', 'F_one_zero', 'F_one_one', 'F_one_two', 'F_one_three', 'F_one_four', 'F_one_five', 'F_one_six', 'C_t_r_l', 'S_h_i_f_t', 'T_a_b', 'E_n_t_e_r', 'G_N_U', 'P_o_s_one', 'E_n_t_f', 'E_i_n_f', 'L_e_e_r', 'E_s_c', 'E_n_d_e', 'C_a_p_s_l_o_c_k', 'B_a_c_k', 'H_o_m_e', 'D_e_l', 'I_n_s', 'E_n_d', 'S_p_a_c_e', 'P_a_d_zero', 'P_a_d_one', 'P_a_d_two', 'P_a_d_three', 'P_a_d_four', 'P_a_d_five', 'P_a_d_six', 'P_a_d_seven', 'P_a_d_eight', 'P_a_d_nine', 'P_a_d_divide', 'P_a_d_plus', 'P_a_d_hyphen', 'P_a_d_multiply', 'F_n', 'uniE131', 'uniE132', 'uniE133', 'uniE134', 'uniE135', 'P_a_d_e_n_t_e_r', 'B_i_l_d_u_p', 'B_i_l_d_d_o_w_n', 'P_a_g_e_u_p', 'P_a_g_e_d_o_w_n', 'uniE138', 'uniE139', 'uniE13A', 'uniE13C', 'uniE13D', 'W_i_n_d_o_w_s']


    [code: mono-outliers]

⚠️ WARN Check accent of Lcaron, dcaron, lcaron, tcaron alt_caron
  • ⚠️ WARN

    dcaron is decomposed and therefore could not be checked. Please check manually.


    [code: decomposed-outline]

  • ⚠️ WARN

    Lcaron is decomposed and therefore could not be checked. Please check manually.


    [code: decomposed-outline]

  • ⚠️ WARN

    lcaron is decomposed and therefore could not be checked. Please check manually.


    [code: decomposed-outline]

  • ⚠️ WARN

    tcaron is decomposed and therefore could not be checked. Please check manually.


    [code: decomposed-outline]

⚠️ WARN Check if each glyph has the recommended amount of contours. contour_count
  • ⚠️ 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: 4	Expected: 2
  • Glyph name: quotedbl Contours detected: 4 Expected: 2

  • Glyph name: numbersign Contours detected: 4 Expected: 2

  • Glyph name: percent Contours detected: 6 Expected: 4 or 5

  • Glyph name: ampersand Contours detected: 5 Expected: 1, 2 or 3

  • Glyph name: quotesingle Contours detected: 3 Expected: 1

  • Glyph name: parenleft Contours detected: 3 Expected: 1

  • Glyph name: parenright Contours detected: 3 Expected: 1

  • Glyph name: asterisk Contours detected: 3 Expected: 1 or 4

  • Glyph name: plus Contours detected: 3 Expected: 1

  • 589 more.

Use -F or --full-lists to disable shortening of long lists.

[code: contour-count]
⚠️ WARN Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value gpos_kerning_info
  • ⚠️ WARN

    GPOS table lacks kerning information.


    [code: lacks-kern-info]
⚠️ WARN Are there caret positions declared for every ligature? ligature_carets
  • ⚠️ WARN

    This font lacks caret positioning values for these ligature glyphs:

  • A_l_t

- A_l_t_G_r

- B_a_c_k

- B_i_l_d_d_o_w_n

- B_i_l_d_u_p

- C_a_p_s_l_o_c_k

- C_t_r_l

- D_e_l

- E_i_n_f

- E_n_d

- 48 more.

Use -F or --full-lists to disable shortening of long lists.

[code: incomplete-caret-pos-data]
⚠️ WARN Check math signs have the same width. math_signs_width
  • ⚠️ WARN

    The most common width is 1100 among a set of 7 math glyphs.
    The following math glyphs have a different width, though:

Width = 527: divide

[code: width-outliers]
⚠️ WARN Check there are no overlapping path segments overlapping_path_segments
  • ⚠️ WARN

    The following glyphs have overlapping path segments:

* g (U+0067): B<<478.0,55.0>-<478.0,55.0>-<477.0,55.0>> has the same coordinates as a previous segment.

* gcircumflex (U+011D): B<<478.0,55.0>-<478.0,55.0>-<477.0,55.0>> has the same coordinates as a previous segment.

* gbreve (U+011F): B<<478.0,55.0>-<478.0,55.0>-<477.0,55.0>> has the same coordinates as a previous segment.

* gdotaccent (U+0121): B<<478.0,55.0>-<478.0,55.0>-<477.0,55.0>> has the same coordinates as a previous segment.

* uni0123 (U+0123): B<<478.0,55.0>-<478.0,55.0>-<477.0,55.0>> has the same coordinates as a previous segment.

* S_t_r_g: B<<1368.0,56.0>-<1368.0,56.0>-<1367.0,56.0>> has the same coordinates as a previous segment.

* G_N_U: B<<628.0,361.0>-<628.0,361.0>-<628.0,361.0>> has the same coordinates as a previous segment.

* G_N_U: B<<628.0,361.0>-<628.0,361.0>-<628.0,361.0>> has the same coordinates as a previous segment.

* G_N_U: B<<606.0,305.0>-<607.0,306.0>-<607.0,304.0>> has the same coordinates as a previous segment.

* G_N_U: B<<608.0,302.0>-<607.0,301.0>-<607.0,304.0>> has the same coordinates as a previous segment.

* P_a_g_e_u_p: B<<1192.0,55.0>-<1192.0,55.0>-<1191.0,55.0>> has the same coordinates as a previous segment.

* P_a_g_e_d_o_w_n: B<<1192.0,55.0>-<1192.0,55.0>-<1191.0,55.0>> has the same coordinates as a previous segment.

[code: overlapping-path-segments]

⚠️ WARN Does the font contain a soft hyphen? soft_hyphen
  • ⚠️ WARN

    This font has a 'Soft Hyphen' character.


    [code: softhyphen]
⚠️ WARN Check font contains no unreachable glyphs unreachable_glyphs
  • ⚠️ WARN

    The following glyphs could not be reached by codepoint or substitution rules:

- _key

- uniE104

- uniE130

- uniE131

- uniE132

- uniE133

- uniE134

- uniE135

- uniE138

- uniE139

- 3 more.

Use -F or --full-lists to disable shortening of long lists.

[code: unreachable-glyphs]
⚠️ WARN METADATA.pb: Designers are listed correctly on the Google Fonts catalog? googlefonts/metadata/designer_profiles
  • ⚠️ WARN

    It seems that Philipp H. Poll is still not listed on the designers catalog. Please submit a photo and a link to a webpage where people can learn more about the work of this designer/typefoundry.


    [code: profile-not-found]
⚠️ WARN Check for codepoints not covered by METADATA subsets. googlefonts/metadata/unreachable_subsetting
  • ⚠️ 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+05C3 HEBREW PUNCTUATION SOF PASUQ: try adding hebrew
  • U+05C6 HEBREW PUNCTUATION NUN HAFUKHA: try adding hebrew
  • U+05D0 HEBREW LETTER ALEF: try adding hebrew
  • U+05D1 HEBREW LETTER BET: try adding hebrew
  • U+05D2 HEBREW LETTER GIMEL: try adding hebrew
  • U+05D3 HEBREW LETTER DALET: try adding hebrew
  • U+05D4 HEBREW LETTER HE: try adding hebrew
  • U+05D5 HEBREW LETTER VAV: try adding hebrew
  • U+05D6 HEBREW LETTER ZAYIN: try adding hebrew
  • U+05D7 HEBREW LETTER HET: try adding hebrew 38 more.

Use -F or --full-lists to disable shortening of long lists.

Or you can add the above codepoints to one of the subsets supported by the font: latin, latin-ext, menu

[code: unreachable-subsetting]
⚠️ WARN Check OFL body text is correct. googlefonts/license/OFL_body_text

Lines changed:

+ Copyright 2025 The Libertinus Math Project Authors (https://github.com/googlefonts/libertinus)\n

+ Copyright 2025 The Libertinus Mono Project Authors (https://github.com/googlefonts/libertinus)\n

+ Copyright 2025 The Libertinus Sans Project Authors (https://github.com/googlefonts/libertinus)\n

+ Copyright 2025 The Libertinus Serif Project Authors (https://github.com/googlefonts/libertinus)\n

+ Copyright 2025 The Libertinus Serif Display Project Authors (https://github.com/googlefonts/libertinus)\n

+ Copyright 2025 The Libertinus Serif Initials Project Authors (https://github.com/googlefonts/libertinus)\n

[code: incorrect-ofl-body-text]
⚠️ WARN Are there any misaligned on-curve points? outline_alignment_miss
  • ⚠️ WARN

    The following glyphs have on-curve points which have potentially incorrect y coordinates:

* at (U+0040): X=442.0,Y=2.0 (should be at baseline 0?)

* Q (U+0051): X=706.0,Y=-2.0 (should be at baseline 0?)

* g (U+0067): X=630.0,Y=1.0 (should be at baseline 0?)

* ccedilla (U+00E7): X=526.0,Y=1.0 (should be at baseline 0?)

* Aogonek (U+0104): X=594.5,Y=1.0 (should be at baseline 0?)

* gcircumflex (U+011D): X=630.0,Y=1.0 (should be at baseline 0?)

* gbreve (U+011F): X=630.0,Y=1.0 (should be at baseline 0?)

* gdotaccent (U+0121): X=630.0,Y=1.0 (should be at baseline 0?)

* uni0122 (U+0122): X=521.0,Y=-0.5 (should be at baseline 0?)

* uni0123 (U+0123): X=630.0,Y=1.0 (should be at baseline 0?)

* 30 more.

Use -F or --full-lists to disable shortening of long lists.

[code: found-misalignments]
⚠️ WARN Do any segments have colinear vectors? outline_colinear_vectors
  • ⚠️ WARN

    The following glyphs have colinear vectors:

* thorn (U+00FE): L<<207.0,433.0>--<207.0,352.0>> -> L<<207.0,352.0>--<206.0,327.0>>

* uni05D0 (U+05D0): L<<427.0,432.0>--<566.0,278.0>> -> L<<566.0,278.0>--<567.0,277.0>>

* uni05E5 (U+05E5): L<<428.0,-106.0>--<420.0,220.0>> -> L<<420.0,220.0>--<420.0,221.0>>

* x (U+0078): L<<349.0,38.0>--<472.0,196.0>> -> L<<472.0,196.0>--<474.0,199.0>>

[code: found-colinear-vectors]

⚠️ WARN Do outlines contain any jaggy segments? outline_jaggy_segments
  • ⚠️ WARN

    The following glyphs have jaggy segments:

* G_N_U: B<<443.5,62.0>-<463.0,39.0>-<489.0,12.0>>/B<<489.0,12.0>-<454.0,38.0>-<435.5,61.0>> = 9.473849374053176

* G_N_U: B<<489.0,288.5>-<498.0,301.0>-<502.0,315.0>>/B<<502.0,315.0>-<501.0,308.0>-<496.5,299.5>> = 7.815293546766825

* G_N_U: B<<571.0,312.0>-<578.0,310.0>-<586.0,312.0>>/B<<586.0,312.0>-<585.0,312.0>-<584.0,310.0>> = 14.036243467926484

* G_N_U: B<<625.0,364.5>-<626.0,364.0>-<628.0,361.0>>/B<<628.0,361.0>-<627.0,362.0>-<624.0,362.5>> = 11.309932474020195

* G_N_U: B<<653.5,465.0>-<642.0,472.0>-<634.0,476.0>>/B<<634.0,476.0>-<637.0,474.0>-<639.5,469.0>> = 7.125016348901757

* G_N_U: B<<664.5,30.5>-<667.0,31.0>-<667.0,32.0>>/B<<667.0,32.0>-<668.0,28.0>-<666.0,22.0>> = 14.036243467926484

* G_N_U: B<<693.0,-51.0>-<694.0,-54.0>-<695.0,-54.0>>/B<<695.0,-54.0>-<686.0,-55.0>-<675.0,-52.0>> = 6.340191745909908

[code: found-jaggy-segments]

⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines? outline_semi_vertical
  • ⚠️ WARN

    The following glyphs have semi-vertical/semi-horizontal lines:

* uniE131: L<<595.0,227.0>--<594.0,570.0>>

* uniE132: L<<595.0,227.0>--<594.0,570.0>>

* uniE133: L<<595.0,227.0>--<594.0,570.0>>

* uniE134: L<<595.0,227.0>--<594.0,570.0>>

* uniE135: L<<595.0,227.0>--<594.0,570.0>>

* uniE139: L<<415.0,232.0>--<414.0,575.0>>

* uniE13A: L<<415.0,232.0>--<414.0,575.0>>

* uniE13C: L<<415.0,232.0>--<414.0,575.0>>

* uniE13D: L<<415.0,232.0>--<414.0,575.0>>

[code: found-semi-vertical]

⚠️ WARN Ensure fonts have ScriptLangTags declared on the 'meta' table. googlefonts/meta/script_lang_tags
  • ⚠️ WARN

    This font file does not have a 'meta' table.


    [code: lacks-meta-table]
ℹ️ INFO List all superfamily filepaths superfamily/list
  • ℹ️ INFO

    ofl/libertinuskeyboard


    [code: family-path]
ℹ️ INFO Show hinting filesize impact. hinting_impact
  • ℹ️ INFO

    Hinting filesize impact:

ofl/libertinuskeyboard/LibertinusKeyboard-Regular.ttf
Dehinted Size 125.0kb
Hinted Size 199.7kb
Increase 74.7kb
Change 59.7 %
[code: size-impact]
ℹ️ INFO Font contains all required tables? required_tables
  • ℹ️ INFO

    This font contains the following optional tables:

- cvt 

- fpgm

- loca

- prep

- GSUB

- gasp

[code: optional-tables]

ℹ️ INFO METADATA.pb: Validate family.minisite_url field. googlefonts/metadata/minisite_url
  • ℹ️ INFO

    Please consider adding a family.minisite_url entry.


    [code: lacks-minisite-url]
ℹ️ INFO Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? googlefonts/gasp
  • ℹ️ INFO

    These are the ppm ranges declared on the gasp table:

PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®

[code: ranges]
ℹ️ INFO Font has old ttfautohint applied? googlefonts/old_ttfautohint
  • ℹ️ INFO

    Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 7.051;RELEASE']


    [code: version-not-detected]
[1] Family checks
ℹ️ INFO Check axis ordering on the STAT table. googlefonts/STAT/axis_order
  • ℹ️ INFO

    All of the fonts lack a STAT table.


    [code: summary]

Summary

💥 ERROR ☠ FATAL 🔥 FAIL ⚠️ WARN ⏩ SKIP ℹ️ INFO ✅ PASS 🔎 DEBUG
0 0 6 17 62 7 144 0
0% 0% 3% 7% 26% 3% 61% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.13.2

Check results

[29] LibertinusKeyboard-Regular.ttf
🔥 FAIL Ensure the font supports case swapping for all its glyphs. case_mapping
  • 🔥 FAIL

    The following glyphs lack their case-swapping counterparts:

Glyph present in the font Missing case-swapping counterpart
U+00E6: LATIN SMALL LETTER AE U+00C6: LATIN CAPITAL LETTER AE
[code: missing-case-counterparts]
🔥 FAIL Font contains glyphs for whitespace characters? whitespace_glyphs
  • 🔥 FAIL

    Whitespace glyph missing for codepoint 0x00A0.


    [code: missing-whitespace-glyph-0x00A0]
🔥 FAIL Shapes languages in all GF glyphsets. googlefonts/glyphsets/shape_languages
  • 🔥 FAIL

    GF_TransLatin_Arabic glyphset:

FAIL messages Languages
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̈, ̀, ́, ̧ ca_Latn (Catalan)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̌, ̊, ́ cs_Latn (Czech)
Mandatory orthography codepoints:
The following base characters are missing from the font: ỳ, Ẁ, Ẅ, ẅ, Ỳ, ẁ, ẃ, Ẃ
The following mark characters are missing from the font: ̈, ́, ̂, ̀ cy_Latn (Welsh)
Mandatory orthography codepoints:
The following base characters are missing from the font: Æ
The following mark characters are missing from the font: ̊, ́ da_Latn (Danish)
Mandatory orthography codepoints:
The following base characters are missing from the font: ẞ
The following mark characters are missing from the font: ̈, ̀, ́ de_Latn (German)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ́, ̀, ̃, ̂, ̧, ̈ en_Latn (English)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ́, ̈, ̃ es_Latn (Spanish)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̌, ̃, ̊, ̈ fi_Latn (Finnish)
Mandatory orthography codepoints:
The following base characters are missing from the font: œ, Œ, Æ
The following mark characters are missing from the font: ̀, ̈, ̂, ̧, ́ fr_Latn (French)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̌, ́ hr_Latn (Croatian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̋, ̈, ́ hu_Latn (Hungarian)
Mandatory orthography codepoints:
The following base characters are missing from the font: Æ
The following mark characters are missing from the font: ̨, ́, ̈ is_Latn (Icelandic)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̀, ̈, ́, ̂ it_Latn (Italian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̌, ̄, ̨, ̇ lt_Latn (Lithuanian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̌, ̧, ̄ lv_Latn (Latvian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̇, ̂, ̀ mt_Latn (Maltese)
Mandatory orthography codepoints:
The following base characters are missing from the font: Æ
The following mark characters are missing from the font: ́, ̊, ̂, ̀, ̈ nb_Latn (Norwegian Bokmål)
Mandatory orthography codepoints:
The following base characters are missing from the font: íj́, ÍJ́
The following mark characters are missing from the font: ̂, ̀, ̈, ́ nl_Latn (Dutch)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ́, ̇, ̨ pl_Latn (Polish)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ́, ̀, ̧, ̃, ̂, ̈ pt_Latn (Portuguese)
Mandatory orthography codepoints:
The following base characters are missing from the font: Ș, Ț, ș, ț
The following mark characters are missing from the font: ̦, ̧, ̆, ̂ ro_Latn (Romanian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̈, ́, ̌, ̂ sk_Latn (Slovak)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̈, ̧ sq_Latn (Albanian)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̈, ̀, ́, ̊ sv_Latn (Swedish)
Mandatory orthography codepoints:
The following mark characters are missing from the font: ̆, ̇, ̧, ̂, ̦, ̈ tr_Latn (Turkish)
[code: failed-language-shaping]
  • ⚠️ WARN

    GF_TransLatin_Arabic glyphset:

WARN messages Languages
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: º
The following auxiliary characters are missing from the font: œ ca_Latn (Catalan)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: œ cs_Latn (Czech), cy_Latn (Welsh), hu_Latn (Hungarian), nl_Latn (Dutch) and sk_Latn (Slovak)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: Ǿ
The following auxiliary characters are missing from the font: œ
The following auxiliary characters are missing from the font: ǿ da_Latn (Danish)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: œ
The following auxiliary characters are missing from the font: ſ de_Latn (German)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: œ
The following auxiliary characters are missing from the font: ʻ en_Latn (English)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: ª
The following auxiliary characters are missing from the font: º
The following auxiliary characters are missing from the font: œ es_Latn (Spanish) and pt_Latn (Portuguese)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Ǧ
The following auxiliary characters are missing from the font: Ǥ
The following auxiliary characters are missing from the font: Ȟ
The following auxiliary characters are missing from the font: Ǩ
The following auxiliary characters are missing from the font: Ŋ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: Ș
The following auxiliary characters are missing from the font: ẞ
The following auxiliary characters are missing from the font: Ț
The following auxiliary characters are missing from the font: Ʒ
The following auxiliary characters are missing from the font: Ǯ
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: ǧ
The following auxiliary characters are missing from the font: ǥ
The following auxiliary characters are missing from the font: ȟ
The following auxiliary characters are missing from the font: ǩ
The following auxiliary characters are missing from the font: ŋ
The following auxiliary characters are missing from the font: œ
The following auxiliary characters are missing from the font: ș
The following auxiliary characters are missing from the font: ț
The following auxiliary characters are missing from the font: ʒ
The following auxiliary characters are missing from the font: ǯ fi_Latn (Finnish)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: ẞ
The following auxiliary characters are missing from the font: Ǔ
The following auxiliary characters are missing from the font: ſ
The following auxiliary characters are missing from the font: ǔ fr_Latn (French)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: ª
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: ẞ
The following auxiliary characters are missing from the font: º
The following auxiliary characters are missing from the font: œ it_Latn (Italian)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Ą́
The following auxiliary characters are missing from the font: Ą̃
The following auxiliary characters are missing from the font: Ẽ
The following auxiliary characters are missing from the font: Ę́
The following auxiliary characters are missing from the font: Ę̃
The following auxiliary characters are missing from the font: Ė́
The following auxiliary characters are missing from the font: Ė̃
The following auxiliary characters are missing from the font: İ́
The following auxiliary characters are missing from the font: İ́
The following auxiliary characters are missing from the font: İ̀
The following auxiliary characters are missing from the font: İ̀
The following auxiliary characters are missing from the font: İ̃
The following auxiliary characters are missing from the font: İ̃
The following auxiliary characters are missing from the font: Į́
The following auxiliary characters are missing from the font: Į̇́
The following auxiliary characters are missing from the font: Į̃
The following auxiliary characters are missing from the font: Į̇̃
The following auxiliary characters are missing from the font: J̃
The following auxiliary characters are missing from the font: J̇̃
The following auxiliary characters are missing from the font: L̃
The following auxiliary characters are missing from the font: M̃
The following auxiliary characters are missing from the font: R̃
The following auxiliary characters are missing from the font: Ų́
The following auxiliary characters are missing from the font: Ų̃
The following auxiliary characters are missing from the font: Ū́
The following auxiliary characters are missing from the font: Ū̃
The following auxiliary characters are missing from the font: ą́
The following auxiliary characters are missing from the font: ą̃
The following auxiliary characters are missing from the font: ẽ
The following auxiliary characters are missing from the font: ę́
The following auxiliary characters are missing from the font: ę̃
The following auxiliary characters are missing from the font: ė́
The following auxiliary characters are missing from the font: ė̃
The following auxiliary characters are missing from the font: i̇́
The following auxiliary characters are missing from the font: i̇̀
The following auxiliary characters are missing from the font: i̇̃
The following auxiliary characters are missing from the font: į́
The following auxiliary characters are missing from the font: į̇́
The following auxiliary characters are missing from the font: į̃
The following auxiliary characters are missing from the font: į̇̃
The following auxiliary characters are missing from the font: j̃
The following auxiliary characters are missing from the font: j̇̃
The following auxiliary characters are missing from the font: l̃
The following auxiliary characters are missing from the font: m̃
The following auxiliary characters are missing from the font: r̃
The following auxiliary characters are missing from the font: ų́
The following auxiliary characters are missing from the font: ų̃
The following auxiliary characters are missing from the font: ū́
The following auxiliary characters are missing from the font: ū̃ lt_Latn (Lithuanian)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Ǎ
The following auxiliary characters are missing from the font: Ŋ
The following auxiliary characters are missing from the font: ǎ
The following auxiliary characters are missing from the font: ŋ nb_Latn (Norwegian Bokmål)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ
The following auxiliary characters are missing from the font: Œ
The following auxiliary characters are missing from the font: ẞ
The following auxiliary characters are missing from the font: œ pl_Latn (Polish) and tr_Latn (Turkish)
Auxiliary orthography codepoints:
The following auxiliary characters are missing from the font: Æ sv_Latn (Swedish)
[code: warning-language-shaping]
🔥 FAIL Copyright notices match canonical pattern in fonts googlefonts/font_copyright
  • 🔥 FAIL

    METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"???."

[code: bad-notice-format]
🔥 FAIL Check Google Fonts glyph coverage. googlefonts/glyph_coverage
  • 🔥 FAIL

    Missing required codepoints:

- 0x00A0 (NO-BREAK SPACE)


- 0x00A9 (COPYRIGHT SIGN)


- 0x00AA (FEMININE ORDINAL INDICATOR)


- 0x00AE (REGISTERED SIGN)


- 0x00AF (MACRON)


- 0x00B6 (PILCROW SIGN)


- 0x00BA (MASCULINE ORDINAL INDICATOR)


- 0x00BF (INVERTED QUESTION MARK)


- 0x00C6 (LATIN CAPITAL LETTER AE)


- 0x0152 (LATIN CAPITAL LIGATURE OE)


- 51 more.

Use -F or --full-lists to disable shortening of long lists.

[code: missing-codepoints]
🔥 FAIL Check font follows the Google Fonts vertical metric schema googlefonts/vertical_metrics
  • 🔥 FAIL

    The sum of hhea.ascender + abs(hhea.descender) + hhea.lineGap is 1140 when it should be at least 1200


    [code: bad-hhea-range]
⚠️ WARN Checking correctness of monospaced metadata. opentype/monospace
  • ⚠️ WARN

    The OpenType spec recommends at https://learn.microsoft.com/en-us/typography/opentype/spec/recom#hhea-table that hhea.numberOfHMetrics be set to 3 but this font has 421 instead.
    Please read hhea.numberOfHMetrics not correct for monospace fonttools/fonttools#3014 to decide whether this makes sense for your font.


    [code: bad-numberOfHMetrics]

  • ⚠️ WARN

    Font is monospaced but 123 glyphs (29.22%) have a different width. You should check the widths of: ['space', 'igrave', 'iacute', 'icircumflex', 'idieresis', 'divide', 'thorn', 'itilde', 'imacron', 'ibreve', 'dotlessi', 'uni05C3', 'uni05C6', 'uni05D0', 'uni05D1', 'uni05D2', 'uni05D3', 'uni05D4', 'uni05D5', 'uni05D6', 'uni05D7', 'uni05D8', 'uni05D9', 'uni05DA', 'uni05DB', 'uni05DC', 'uni05DD', 'uni05DE', 'uni05DF', 'uni05E0', 'uni05E1', 'uni05E2', 'uni05E3', 'uni05E4', 'uni05E5', 'uni05E6', 'uni05E7', 'uni05E8', 'uni05E9', 'uni05EA', 'uni05F0', 'uni05F1', 'uni05F2', 'arrowleft', 'arrowup', 'arrowright', 'arrowdown', 'uni21A5', 'uni21A7', 'uni2325', 'uni2326', 'uni2327', 'uni232B', 'uniE104', 'uniE130', 'S_t_r_g', 'A_l_t', 'A_l_t_G_r', 'F_one', 'F_two', 'F_three', 'F_four', 'F_five', 'F_six', 'F_seven', 'F_eight', 'F_nine', 'F_one_zero', 'F_one_one', 'F_one_two', 'F_one_three', 'F_one_four', 'F_one_five', 'F_one_six', 'C_t_r_l', 'S_h_i_f_t', 'T_a_b', 'E_n_t_e_r', 'G_N_U', 'P_o_s_one', 'E_n_t_f', 'E_i_n_f', 'L_e_e_r', 'E_s_c', 'E_n_d_e', 'C_a_p_s_l_o_c_k', 'B_a_c_k', 'H_o_m_e', 'D_e_l', 'I_n_s', 'E_n_d', 'S_p_a_c_e', 'P_a_d_zero', 'P_a_d_one', 'P_a_d_two', 'P_a_d_three', 'P_a_d_four', 'P_a_d_five', 'P_a_d_six', 'P_a_d_seven', 'P_a_d_eight', 'P_a_d_nine', 'P_a_d_divide', 'P_a_d_plus', 'P_a_d_hyphen', 'P_a_d_multiply', 'F_n', 'uniE131', 'uniE132', 'uniE133', 'uniE134', 'uniE135', 'P_a_d_e_n_t_e_r', 'B_i_l_d_u_p', 'B_i_l_d_d_o_w_n', 'P_a_g_e_u_p', 'P_a_g_e_d_o_w_n', 'uniE138', 'uniE139', 'uniE13A', 'uniE13C', 'uniE13D', 'W_i_n_d_o_w_s']


    [code: mono-outliers]

⚠️ WARN Check accent of Lcaron, dcaron, lcaron, tcaron alt_caron
  • ⚠️ WARN

    dcaron is decomposed and therefore could not be checked. Please check manually.


    [code: decomposed-outline]

  • ⚠️ WARN

    Lcaron is decomposed and therefore could not be checked. Please check manually.


    [code: decomposed-outline]

  • ⚠️ WARN

    lcaron is decomposed and therefore could not be checked. Please check manually.


    [code: decomposed-outline]

  • ⚠️ WARN

    tcaron is decomposed and therefore could not be checked. Please check manually.


    [code: decomposed-outline]

⚠️ WARN Check if each glyph has the recommended amount of contours. contour_count
  • ⚠️ 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: 4	Expected: 2
  • Glyph name: quotedbl Contours detected: 4 Expected: 2

  • Glyph name: numbersign Contours detected: 4 Expected: 2

  • Glyph name: percent Contours detected: 6 Expected: 4 or 5

  • Glyph name: ampersand Contours detected: 5 Expected: 1, 2 or 3

  • Glyph name: quotesingle Contours detected: 3 Expected: 1

  • Glyph name: parenleft Contours detected: 3 Expected: 1

  • Glyph name: parenright Contours detected: 3 Expected: 1

  • Glyph name: asterisk Contours detected: 3 Expected: 1 or 4

  • Glyph name: plus Contours detected: 3 Expected: 1

  • 589 more.

Use -F or --full-lists to disable shortening of long lists.

[code: contour-count]
⚠️ WARN Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value gpos_kerning_info
  • ⚠️ WARN

    GPOS table lacks kerning information.


    [code: lacks-kern-info]
⚠️ WARN Are there caret positions declared for every ligature? ligature_carets
  • ⚠️ WARN

    This font lacks caret positioning values for these ligature glyphs:

  • A_l_t

- A_l_t_G_r

- B_a_c_k

- B_i_l_d_d_o_w_n

- B_i_l_d_u_p

- C_a_p_s_l_o_c_k

- C_t_r_l

- D_e_l

- E_i_n_f

- E_n_d

- 48 more.

Use -F or --full-lists to disable shortening of long lists.

[code: incomplete-caret-pos-data]
⚠️ WARN Check math signs have the same width. math_signs_width
  • ⚠️ WARN

    The most common width is 1100 among a set of 7 math glyphs.
    The following math glyphs have a different width, though:

Width = 527: divide

[code: width-outliers]
⚠️ WARN Check there are no overlapping path segments overlapping_path_segments
  • ⚠️ WARN

    The following glyphs have overlapping path segments:

* g (U+0067): B<<478.0,55.0>-<478.0,55.0>-<477.0,55.0>> has the same coordinates as a previous segment.

* gcircumflex (U+011D): B<<478.0,55.0>-<478.0,55.0>-<477.0,55.0>> has the same coordinates as a previous segment.

* gbreve (U+011F): B<<478.0,55.0>-<478.0,55.0>-<477.0,55.0>> has the same coordinates as a previous segment.

* gdotaccent (U+0121): B<<478.0,55.0>-<478.0,55.0>-<477.0,55.0>> has the same coordinates as a previous segment.

* uni0123 (U+0123): B<<478.0,55.0>-<478.0,55.0>-<477.0,55.0>> has the same coordinates as a previous segment.

* S_t_r_g: B<<1368.0,56.0>-<1368.0,56.0>-<1367.0,56.0>> has the same coordinates as a previous segment.

* G_N_U: B<<628.0,361.0>-<628.0,361.0>-<628.0,361.0>> has the same coordinates as a previous segment.

* G_N_U: B<<628.0,361.0>-<628.0,361.0>-<628.0,361.0>> has the same coordinates as a previous segment.

* G_N_U: B<<606.0,305.0>-<607.0,306.0>-<607.0,304.0>> has the same coordinates as a previous segment.

* G_N_U: B<<608.0,302.0>-<607.0,301.0>-<607.0,304.0>> has the same coordinates as a previous segment.

* P_a_g_e_u_p: B<<1192.0,55.0>-<1192.0,55.0>-<1191.0,55.0>> has the same coordinates as a previous segment.

* P_a_g_e_d_o_w_n: B<<1192.0,55.0>-<1192.0,55.0>-<1191.0,55.0>> has the same coordinates as a previous segment.

[code: overlapping-path-segments]

⚠️ WARN Does the font contain a soft hyphen? soft_hyphen
  • ⚠️ WARN

    This font has a 'Soft Hyphen' character.


    [code: softhyphen]
⚠️ WARN Check font contains no unreachable glyphs unreachable_glyphs
  • ⚠️ WARN

    The following glyphs could not be reached by codepoint or substitution rules:

- _key

- uniE104

- uniE130

- uniE131

- uniE132

- uniE133

- uniE134

- uniE135

- uniE138

- uniE139

- 3 more.

Use -F or --full-lists to disable shortening of long lists.

[code: unreachable-glyphs]
⚠️ WARN METADATA.pb: Designers are listed correctly on the Google Fonts catalog? googlefonts/metadata/designer_profiles
  • ⚠️ WARN

    It seems that Philipp H. Poll is still not listed on the designers catalog. Please submit a photo and a link to a webpage where people can learn more about the work of this designer/typefoundry.


    [code: profile-not-found]
⚠️ WARN Check for codepoints not covered by METADATA subsets. googlefonts/metadata/unreachable_subsetting
  • ⚠️ 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+05C3 HEBREW PUNCTUATION SOF PASUQ: try adding hebrew
  • U+05C6 HEBREW PUNCTUATION NUN HAFUKHA: try adding hebrew
  • U+05D0 HEBREW LETTER ALEF: try adding hebrew
  • U+05D1 HEBREW LETTER BET: try adding hebrew
  • U+05D2 HEBREW LETTER GIMEL: try adding hebrew
  • U+05D3 HEBREW LETTER DALET: try adding hebrew
  • U+05D4 HEBREW LETTER HE: try adding hebrew
  • U+05D5 HEBREW LETTER VAV: try adding hebrew
  • U+05D6 HEBREW LETTER ZAYIN: try adding hebrew
  • U+05D7 HEBREW LETTER HET: try adding hebrew 38 more.

Use -F or --full-lists to disable shortening of long lists.

Or you can add the above codepoints to one of the subsets supported by the font: latin, latin-ext, menu

[code: unreachable-subsetting]
⚠️ WARN Check OFL body text is correct. googlefonts/license/OFL_body_text

Lines changed:

+ Copyright 2025 The Libertinus Math Project Authors (https://github.com/googlefonts/libertinus)\n

+ Copyright 2025 The Libertinus Mono Project Authors (https://github.com/googlefonts/libertinus)\n

+ Copyright 2025 The Libertinus Sans Project Authors (https://github.com/googlefonts/libertinus)\n

+ Copyright 2025 The Libertinus Serif Project Authors (https://github.com/googlefonts/libertinus)\n

+ Copyright 2025 The Libertinus Serif Display Project Authors (https://github.com/googlefonts/libertinus)\n

+ Copyright 2025 The Libertinus Serif Initials Project Authors (https://github.com/googlefonts/libertinus)\n

[code: incorrect-ofl-body-text]
⚠️ WARN Are there any misaligned on-curve points? outline_alignment_miss
  • ⚠️ WARN

    The following glyphs have on-curve points which have potentially incorrect y coordinates:

* at (U+0040): X=442.0,Y=2.0 (should be at baseline 0?)

* Q (U+0051): X=706.0,Y=-2.0 (should be at baseline 0?)

* g (U+0067): X=630.0,Y=1.0 (should be at baseline 0?)

* ccedilla (U+00E7): X=526.0,Y=1.0 (should be at baseline 0?)

* Aogonek (U+0104): X=594.5,Y=1.0 (should be at baseline 0?)

* gcircumflex (U+011D): X=630.0,Y=1.0 (should be at baseline 0?)

* gbreve (U+011F): X=630.0,Y=1.0 (should be at baseline 0?)

* gdotaccent (U+0121): X=630.0,Y=1.0 (should be at baseline 0?)

* uni0122 (U+0122): X=521.0,Y=-0.5 (should be at baseline 0?)

* uni0123 (U+0123): X=630.0,Y=1.0 (should be at baseline 0?)

* 30 more.

Use -F or --full-lists to disable shortening of long lists.

[code: found-misalignments]
⚠️ WARN Do any segments have colinear vectors? outline_colinear_vectors
  • ⚠️ WARN

    The following glyphs have colinear vectors:

* thorn (U+00FE): L<<207.0,433.0>--<207.0,352.0>> -> L<<207.0,352.0>--<206.0,327.0>>

* uni05D0 (U+05D0): L<<427.0,432.0>--<566.0,278.0>> -> L<<566.0,278.0>--<567.0,277.0>>

* uni05E5 (U+05E5): L<<428.0,-106.0>--<420.0,220.0>> -> L<<420.0,220.0>--<420.0,221.0>>

* x (U+0078): L<<349.0,38.0>--<472.0,196.0>> -> L<<472.0,196.0>--<474.0,199.0>>

[code: found-colinear-vectors]

⚠️ WARN Do outlines contain any jaggy segments? outline_jaggy_segments
  • ⚠️ WARN

    The following glyphs have jaggy segments:

* G_N_U: B<<443.5,62.0>-<463.0,39.0>-<489.0,12.0>>/B<<489.0,12.0>-<454.0,38.0>-<435.5,61.0>> = 9.473849374053176

* G_N_U: B<<489.0,288.5>-<498.0,301.0>-<502.0,315.0>>/B<<502.0,315.0>-<501.0,308.0>-<496.5,299.5>> = 7.815293546766825

* G_N_U: B<<571.0,312.0>-<578.0,310.0>-<586.0,312.0>>/B<<586.0,312.0>-<585.0,312.0>-<584.0,310.0>> = 14.036243467926484

* G_N_U: B<<625.0,364.5>-<626.0,364.0>-<628.0,361.0>>/B<<628.0,361.0>-<627.0,362.0>-<624.0,362.5>> = 11.309932474020195

* G_N_U: B<<653.5,465.0>-<642.0,472.0>-<634.0,476.0>>/B<<634.0,476.0>-<637.0,474.0>-<639.5,469.0>> = 7.125016348901757

* G_N_U: B<<664.5,30.5>-<667.0,31.0>-<667.0,32.0>>/B<<667.0,32.0>-<668.0,28.0>-<666.0,22.0>> = 14.036243467926484

* G_N_U: B<<693.0,-51.0>-<694.0,-54.0>-<695.0,-54.0>>/B<<695.0,-54.0>-<686.0,-55.0>-<675.0,-52.0>> = 6.340191745909908

[code: found-jaggy-segments]

⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines? outline_semi_vertical
  • ⚠️ WARN

    The following glyphs have semi-vertical/semi-horizontal lines:

* uniE131: L<<595.0,227.0>--<594.0,570.0>>

* uniE132: L<<595.0,227.0>--<594.0,570.0>>

* uniE133: L<<595.0,227.0>--<594.0,570.0>>

* uniE134: L<<595.0,227.0>--<594.0,570.0>>

* uniE135: L<<595.0,227.0>--<594.0,570.0>>

* uniE139: L<<415.0,232.0>--<414.0,575.0>>

* uniE13A: L<<415.0,232.0>--<414.0,575.0>>

* uniE13C: L<<415.0,232.0>--<414.0,575.0>>

* uniE13D: L<<415.0,232.0>--<414.0,575.0>>

[code: found-semi-vertical]

⚠️ WARN Ensure fonts have ScriptLangTags declared on the 'meta' table. googlefonts/meta/script_lang_tags
  • ⚠️ WARN

    This font file does not have a 'meta' table.


    [code: lacks-meta-table]
ℹ️ INFO List all superfamily filepaths superfamily/list
  • ℹ️ INFO

    ofl/libertinuskeyboard


    [code: family-path]
ℹ️ INFO Show hinting filesize impact. hinting_impact
  • ℹ️ INFO

    Hinting filesize impact:

ofl/libertinuskeyboard/LibertinusKeyboard-Regular.ttf
Dehinted Size 125.0kb
Hinted Size 199.7kb
Increase 74.7kb
Change 59.7 %
[code: size-impact]
ℹ️ INFO Font contains all required tables? required_tables
  • ℹ️ INFO

    This font contains the following optional tables:

- cvt 

- fpgm

- loca

- prep

- GSUB

- gasp

[code: optional-tables]

ℹ️ INFO METADATA.pb: Validate family.minisite_url field. googlefonts/metadata/minisite_url
  • ℹ️ INFO

    Please consider adding a family.minisite_url entry.


    [code: lacks-minisite-url]
ℹ️ INFO Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? googlefonts/gasp
  • ℹ️ INFO

    These are the ppm ranges declared on the gasp table:

PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®

[code: ranges]
ℹ️ INFO Font has old ttfautohint applied? googlefonts/old_ttfautohint
  • ℹ️ INFO

    Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 7.051;RELEASE']


    [code: version-not-detected]
[1] Family checks
ℹ️ INFO Check axis ordering on the STAT table. googlefonts/STAT/axis_order
  • ℹ️ INFO

    All of the fonts lack a STAT table.


    [code: summary]

Summary

💥 ERROR ☠ FATAL 🔥 FAIL ⚠️ WARN ⏩ SKIP ℹ️ INFO ✅ PASS 🔎 DEBUG
0 0 6 17 62 7 144 0
0% 0% 3% 7% 26% 3% 61% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

@m4rc1e
Copy link
Collaborator

m4rc1e commented Apr 11, 2025

We should have a glyph for uni00A0 (nbspace). Since nbspace and space have the same adv width, you could always just double map the space.

@yanone
Copy link
Collaborator Author

yanone commented Apr 14, 2025

Note that I don't have access to the sources but only hotfixing binaries. Of course it can be achieved. Let me know how important this fix is to you given these circumstances.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-- fontforge/fontlab/fontcreator sources that are not UFO/Glyphs natively I New Font II Accepted Non-commissioned projects that are accepted for onboarding
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add Linux Libertine+Biolinum
2 participants