Skip to content

fedora-i18n/fontquery

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

269 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fontquery

pip version badge tag badge license badge

fontquery is a tool to query fonts in the certain Fedora release.

How to install

$ pip3 install fontquery

Or in Fedora,

# dnf install fontquery

How to install from git

$ pip3 install --user build wheel
$ python3 -m build
$ pip3 install --user dist/fontquery*.whl

Or in Fedora,

# dnf install python3-build python3-wheel
$ python3 -m build
$ pip3 install --user dist/fontquery*.whl

Usage

usage: fontquery [-h] [-C] [--disable-cache] [-f FILENAME_FORMAT] [-r RELEASE] [-l LANG]
                 [-m {fcmatch,fclist,json,html}] [-O OUTPUT_DIR] [-t {minimal,extra,all}] [-T TITLE] [-v] [-V]
                 [args ...]

Query fonts

positional arguments:
  args                  Queries (default: None)

options:
  -h, --help            show this help message and exit
  -C, --clean-cache     Clean caches before processing (default: False)
  --disable-cache       Enforce processing everything even if not updating (default: False)
  -f FILENAME_FORMAT, --filename-format FILENAME_FORMAT
                        Output filename format. only take effects with --mode=html (default:
                        {platform}-{release}-{target}.{mode})
  -r RELEASE, --release RELEASE
                        Release number such as "rawhide" and "39". "local" to query from current environment
                        instead of images (default: ['local'])
  -l LANG, --lang LANG  Language list to dump fonts data into JSON (default: None)
  -m {fcmatch,fclist,json,html}, --mode {fcmatch,fclist,json,html}
                        Action to perform for query (default: fcmatch)
  -O OUTPUT_DIR, --output-dir OUTPUT_DIR
                        Output directory (default: .)
  -t {minimal,extra,all}, --target {minimal,extra,all}
                        Query fonts from (default: minimal)
  -T TITLE, --title TITLE
                        Page title format. only take effects with --mode=html (default: {platform} {release}:
                        {target})
  -v, --verbose         Show more detailed logs (default: 0)
  -V, --version         Show version (default: False)
usage: fontquery-diff [-h] [-C] [--disable-cache] [--disable-update] [-l LANG] [--loose-comparison] [-o OUTPUT] [-P {fedora,centos}]
                      [-R {html,text}] [-t {minimal,extra,all}] [-v] [-V]
                      [compare_a] [compare_b]

Show difference between releases

positional arguments:
  compare_a             Release to compare (default: rawhide)
  compare_b             Release to compare (default: local)

options:
  -h, --help            show this help message and exit
  -C, --clean-cache     Clean up caches before processing (default: False)
  --diff-only           Show diff only (default: False)
  --disable-cache       Enforce processing everything even if not updating (default: False)
  --disable-update      Do not update the container image (default: False)
  -l, --lang LANG       Language list to dump fonts data into JSON (default: None)
  --loose-comparison    Do not compare results accurately (default: False)
  -o, --output OUTPUT   Output file (default: -)
  -P, --product {fedora,centos}
                        Product name to operate (default: fedora)
  -R, --render {html,text}
  -t, --target {minimal,extra,all}
                        Query fonts from (default: minimal)
  -v, --verbose         Show more detailed logs (default: 0)
  -V, --version         Show version (default: False)
usage: fontquery-pkgdiff [-h] [-C] [--disable-cache] [--disable-update] [-r RELEASE] [-l LANG] [--loose-comparison] [-o OUTPUT]
                         [-P {fedora,centos}] [-R {html,text}] [-t {minimal,extra,all}] [-v] [-V]
                         package [package ...]

Check if a given package makes any difference

positional arguments:
  package               Test package to see difference

options:
  -h, --help            show this help message and exit
  -C, --clean-cache     Clean up caches before processing (default: False)
  --diff-only           Show diff only (default: False)
  --disable-cache       Enforce processing everything even if not updating (default: False)
  --disable-update      Do not update the container image (default: False)
  -r, --release RELEASE
                        Target release to check (default: rawhide)
  -l, --lang LANG       Language list to dump fonts data into JSON (default: None)
  --loose-comparison    Do not compare results accurately (default: False)
  -o, --output OUTPUT   Output file (default: -)
  -P, --product {fedora,centos}
                        Product name to operate (default: fedora)
  -R, --render {html,text}
  -t, --target {minimal,extra,all}
                        Query fonts from (default: minimal)
  -v, --verbose         Show more detailed logs (default: 0)
  -V, --version         Show version (default: False)

To query sans-serif for Hindi on Fedora 36,

$ fontquery -r 36 sans-serif:lang=hi
Lohit-Devanagari.ttf: "Lohit Devanagari" "Regular"

To generate JSON from default-fonts installed environment:

$ fontquery -m json -t minimal
...

To generate html table:

$ fontquery -m json -t minimal | fq2html -o minimal.html -

Or simply

$ fontquery -m html -t minimal -r 40

To check difference between local and reference:

$ fontquery-diff -R text rawhide local

To check difference but ignore insignificant changes such as filename:

$ fontquery-diff --loose-comparison -R text

To check difference with certain packages:

$ fontquery-pkgdiff /path/to/package ...

For developers

Before committing something into git repository, you may want to do:

$ git config core.hooksPath hooks

to make sure our hook scripts works.

About

Tools to create containers and query fonts on certain Fedora release

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors