
Security News
Deno 2.2 Improves Dependency Management and Expands Node.js Compatibility
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
This python module provides an API with data about languages/regions/scripts for use in the language-support categorization of the font families in the Google Fonts collection.
You can also directly access the raw textproto files on the Lib/gflanguages/data
directory:
Most of the code in this project was copied from the gftools
repository (https://github.com/googlefonts/gftools/) so that language/region/script data can be easily available to all our tools without having to also get the large dependency tree of gftools
. The most immediate user of this module is Font Bakery
, which needs to validate language support on font binaries being checked. (see https://github.com/googlefonts/fontbakery/issues/3605)
The second obvious user of this gflanguages
module is gftools
itself.
Language/region/script definitions and the gflanguages
modules are used as a subtree in the google/fonts
repo, on its lang/ directory (https://github.com/google/fonts/tree/main/lang).
This module is the main place to update these definitions, avoiding data duplication and guaranteeing uniformity across tools.
To learn more about how lang metadata affects downstream, see gf-guide/lang.
If there is a sample_text
field for a language, it should contain all of the following fields:
masthead_full
: show off four glyphsmasthead_partial
: show off two glyphsstyles
: a phrase of 40-60 characterstester
: a phrase of 60-90 charactersposter_sm
: a word or phrase of 10-17 charactersposter_md
: a word or phrase of 6-12 charactersposter_lg
: a word or phrase of 3-8 charactersspecimen_48
: a sentence of 50-80 charactersspecimen_36
: a paragraph of 100-120 charactersspecimen_32
: a paragraph of 140-180 charactersspecimen_21
: one or more paragraphs totalling 300-500 charactersspecimen_16
: one or more paragraphs totalling 550-750 charactersGenerally the sample text should be taken from the UN Declaration of Human Rights; if using Eric Muller's XML translations, snippets/lang_sample_text.py
will convert the XML into textproto.
If the UDHR is not available in the language, the sample text should be a "neutral" text (not political or religious) - folk tales are generally good sources. (We recognise that for some liturgical languages, religious texts may be the only extant samples.) In these cases, please add a note:
field with the source of the sample text.
FAQs
A python API for evaluating language support in the Google Fonts collection.
We found that gflanguages demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
Security News
React's CRA deprecation announcement sparked community criticism over framework recommendations, leading to quick updates acknowledging build tools like Vite as valid alternatives.
Security News
Ransomware payment rates hit an all-time low in 2024 as law enforcement crackdowns, stronger defenses, and shifting policies make attacks riskier and less profitable.