0% found this document useful (0 votes)
367 views19 pages

Fonts - ArchWiki

A computer font is a digital data file containing glyphs designed for screens or printing, with common formats being bitmap or outline. Installation methods for fonts include using package managers like pacman, creating packages, or manual installation, with specific directory structures recommended for organization. Various font packages are available in repositories, including bitmap and Latin script families, with considerations for compatibility and updates for applications like Pango.

Uploaded by

frreg
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
367 views19 pages

Fonts - ArchWiki

A computer font is a digital data file containing glyphs designed for screens or printing, with common formats being bitmap or outline. Installation methods for fonts include using package managers like pacman, creating packages, or manual installation, with specific directory structures recommended for organization. Various font packages are available in repositories, including bitmap and Latin script families, with considerations for compatibility and updates for applications like Pango.

Uploaded by

frreg
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Fonts

From Wikipedia:Computer font: Related articles

A computer font is implemented as a digital data file containing a set Font configuration
of graphically related glyphs. A computer font is designed and created
List of applications/
using a font editor. A computer font specifically designed for the Utilities#Font viewers
computer screen, and not for printing, is a screen font.
List of applications/
Multimedia#Font
Note that certain font licenses may impose some legal limitations. editors
Java Runtime
1 Font formats Environment fonts
Most computer fonts used today are in either bitmap or outline data Linux console#Fonts
formats. Metric-compatible
fonts
Bitmap fonts
Microsoft fonts
Consist of a matrix of dots or pixels representing the image of each
glyph in each face and size.
Outline or vector fonts
Use Bézier curves, drawing instructions and mathematical formulae to describe each glyph,
which make the character outlines scalable to any size.

1.1 Bitmap formats


▪ Bitmap Distribution Format (BDF) by Adobe
▪ OpenType Bitmap Fonts (OTB)
▪ PC Screen Font (PSF) used by the Kernel for console fonts, not supported by Xorg (for Unicode PSF
files the extension is psfu )
▪ Portable Compiled Format (PCF) by Xorg
These formats can also be gzipped. See #Bitmap for the available bitmap fonts.

1.2 Outline formats


▪ PostScript fonts by Adobe – has various formats, e.g: Printer Font ASCII (PFA) and Printer Font
Binary (PFB)
▪ TrueType by Apple and Microsoft (file extension: ttf )
▪ OpenType by Microsoft, built on TrueType (file extensions: otf , ttf )
For most purposes, the technical differences between TrueType and OpenType can be ignored.

1.3 Other formats


The font editing application FontForge (https://fontforge.github.io/en-US/) (fontforge (https://
archlinux.org/packages/?name=fontforge)) can store fonts in its native text-based format—
Spline Font Database ( .sfd ).

The typesetting application TeX Live and its companion font software Metafont traditionally
renders characters using its own methods. Some file extensions used for fonts from these two
programs are *pk , *gf , mf and vf . Modern versions can also use TrueType and OpenType fonts.

The SVG (https://www.w3.org/TR/SVG/fonts.html) format also has its own font description method.

2 Installation
There are various methods for installing fonts.

2.1 Pacman
Fonts and font collections in the enabled repositories can be installed using pacman.

Available fonts may be found by querying packages (e.g. for font or ttf ).

2.2 Creating a package


You should give pacman the ability to manage your fonts, which is done by creating an Arch
package. These can also be shared with the community in the AUR. The packages to install fonts are
particularly similar; see Font packaging guidelines.

The family name of a font file can be acquired with the use of fc-query for example:
fc-query -f '%{family[0]}\n' /path/to/file . The formatting is described in
FcPatternFormat(3) (https://man.archlinux.org/man/FcPatternFormat.3).

2.3 Manual installation


The recommended way of adding fonts that are not in the repositories of your system is described in
#Creating a package. This gives pacman the ability to remove or update them at a later time.

Alternatively, fonts can be installed manually:

▪ For a single user, install fonts to ~/.local/share/fonts/ .

▪ In many cases this suffices, unless you run graphical applications as other users.
▪ In the past ~/.fonts/ was used, but is now deprecated.
▪ For system-wide (all users) installation, place your fonts under /usr/local/share/fonts/ .

▪ You may need to create the directory first: mkdir -p /usr/local/share/fonts .


▪ /usr/share/fonts/ is under the purview of the package manager, and should not be
modified manually.
The creation of a subdirectory structure is up to the user, and varies among Linux distributions. For
clarity, it is good to keep each font in its own directory. Fontconfig will search its default paths
recursively, ensuring nested files get picked up.

An example structure might be:

/usr/local/share/fonts/
├── otf
│ └── SourceCodeVariable
│ ├── SourceCodeVariable-Italic.otf
│ └── SourceCodeVariable-Roman.otf
└── ttf
├── AnonymousPro
│ ├── Anonymous-Pro-B.ttf
│ ├── Anonymous-Pro-I.ttf
│ └── Anonymous-Pro.ttf
└── CascadiaCode
├── CascadiaCode-Bold.ttf
├── CascadiaCode-Light.ttf
└── CascadiaCode-Regular.ttf

The font files need to have sufficient read permissions for all users, i.e. at least chmod 444 for files,
and 555 for directories.

For the Xserver to load fonts directly (as opposed to the use of a font server), the directory for your
newly added font must be added with a FontPath entry. This entry is located in the Files section of
your Xorg configuration file (e.g. /etc/X11/xorg.conf or /etc/xorg.conf ). See #Older
applications for more detail.

Finally, update the Fontconfig cache (usually unnecessary as software using the Fontconfig library
does this):

$ fc-cache

2.4 Older applications


With older applications that do not support Fontconfig (e.g. GTK 1.x applications, and xfontsel ) the
index will need to be created in the font directory:

$ mkfontscale
$ mkfontdir

Or to include more than one folder with one command:

$ for dir in /font/dir1/ /font/dir2/; do xset +fp $dir; done && xset fp rehash

Or if fonts were installed in a different sub-folders under the e.g. /usr/share/fonts :

$ for dir in * ; do if [ -d "$dir" ]; then cd "$dir";xset +fp "$PWD" ;mkfontscale; mkfontdir;cd .. ;fi; done && xs
et fp rehash

At times the X server may fail to load the fonts directory and you will need to rescan all the
fonts.dir files:

# xset +fp /usr/share/fonts/misc # Inform the X server of new directories


# xset fp rehash # Forces a new rescan

To check that the font(s) is included:

$ xlsfonts | grep fontname

Note: Many packages will automatically configure Xorg to use the font upon installation. If that is
the case with your font, this step is not necessary.

This can also be set globally in /etc/X11/xorg.conf or /etc/X11/xorg.conf.d .

Here is an example of the section that must be added to /etc/X11/xorg.conf . Add or remove
paths based on your particular font requirements.

# Let X.Org know about the custom font directories


Section "Files"
FontPath "/usr/share/fonts/100dpi"
FontPath "/usr/share/fonts/75dpi"
FontPath "/usr/share/fonts/cantarell"
FontPath "/usr/share/fonts/cyrillic"
FontPath "/usr/share/fonts/encodings"
FontPath "/usr/share/fonts/misc"
FontPath "/usr/share/fonts/truetype"
FontPath "/usr/share/fonts/TTF"
FontPath "/usr/share/fonts/util"
EndSection

2.5 Pango warnings


When Pango (https://www.pango.org/) is in use on your system it will read from Fontconfig to sort
out where to source fonts.

(process:5741): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='c
ommon'
(process:5741): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='l
atin'

If you are seeing errors similar to this and/or seeing blocks instead of characters in your application
then you need to add fonts and update the font cache. This example uses the ttf-liberation (htt
ps://archlinux.org/packages/?name=ttf-liberation) fonts to illustrate the solution (after
successful installation of the package) and runs as root to enable them system-wide.

# fc-cache

/usr/share/fonts: caching, new cache contents: 0 fonts, 3 dirs


/usr/share/fonts/TTF: caching, new cache contents: 16 fonts, 0 dirs
/usr/share/fonts/encodings: caching, new cache contents: 0 fonts, 1 dirs
/usr/share/fonts/encodings/large: caching, new cache contents: 0 fonts, 0 dirs
/usr/share/fonts/util: caching, new cache contents: 0 fonts, 0 dirs
/var/cache/fontconfig: cleaning cache directory
fc-cache: succeeded

You can test for a default font being set like so:

$ fc-match

LiberationMono-Regular.ttf: "Liberation Mono" "Regular"

3 Font packages
This is a selective list that includes many font packages from the AUR along with those in the official
repositories.

Tip: Archfonts (https://github.com/ternstor/distrofonts) is a Python script that can be used to


generate an overview of all the TTF fonts found in the official repositories and in the AUR.

3.1 Bitmap
Note: pango (https://archlinux.org/packages/?name=pango) 1.44 dropped support for
FreeType in favor of HarfBuzz (https://blogs.gnome.org/mclasen/2019/05/25/pango-future-dire
ctions/) thus losing support for traditional BDF/PCF bitmap fonts (https://blogs.gnome.org/mcl
asen/2019/08/07/pango-1-44-wrap-up/), so some applications (e.g. gnome-terminal (https://ar
chlinux.org/packages/?name=gnome-terminal)) will not work with such fonts anymore,
showing rectangles instead of glyphs. See FS#63297 (https://bugs.archlinux.org/task/63297),
Pango issue #386 (https://gitlab.gnome.org/GNOME/pango/issues/386) and HarfBuzz issue
#1897 (https://github.com/harfbuzz/harfbuzz/issues/1897).

▪ Default 8×16
▪ Berry (https://github.com/seraxis/pcf-spectrum-berry) (pcf-spectrum-berry (https://au
r.archlinux.org/packages/pcf-spectrum-berry/)AUR) – 8px
▪ Dina (https://www.dcmembers.com/jibsen/download/61/) (dina-font (https://aur.archl
inux.org/packages/dina-font/)AUR) – 6pt, 8pt, 9pt, 10pt, monospaced, based on Proggy
▪ Efont (http://openlab.jp/efont/unicode/) (efont-unicode-bdf (https://aur.archlinux.or
g/packages/efont-unicode-bdf/)AUR) – 10px, 12px, 14px, 16px, 24px, normal, bold and italic
▪ GNU Unifont (https://unifoundry.com/unifont.html) (bdf-unifont (https://aur.archlinu
x.org/packages/bdf-unifont/)AUR) – 8×16, 16×16 (most extensive Unicode coverage of any
font)
▪ Gohu (https://font.gohu.org/) (gohufont (https://aur.archlinux.org/packages/gohufon
t/)AUR) – 11px, 14px, normal and bold
▪ Kissinger 2 (https://typedesign.replit.app/kissinger2.html) – 8×16, 16×16 (Unifont competitor)
▪ Lime (https://artwizaleczapka.sourceforge.net/) (artwiz-fonts (https://aur.archlinux.o
rg/packages/artwiz-fonts/)AUR)
▪ ProFont (https://tobiasjung.name/profont/) (ttf-profont-iix (https://aur.archlinux.o
rg/packages/ttf-profont-iix/)AUR) – 10px, 11px, 12px, 15px, 17px, 22px, 29px, normal
▪ Proggy (proggyfonts (https://aur.archlinux.org/packages/proggyfonts/)AUR) – Has
different variants
▪ Tamsyn (http://www.fial.com/~scott/tamsyn-font/) (tamsyn-font (https://aur.archlinu
x.org/packages/tamsyn-font/)AUR)
▪ Tewi (https://github.com/lucy/tewi-font) (bdf-tewi-git (https://aur.archlinux.org/pac
kages/bdf-tewi-git/)AUR)
Works with Pango 1.44 and later:

▪ Cozette (https://github.com/slavfox/Cozette/) (cozette-otb (https://aur.archlinux.org/


packages/cozette-otb/)AUR)
▪ Gohufont (https://font.gohu.org/) (gohufont-otb (https://aur.archlinux.org/package
s/gohufont-otb/)AUR)
▪ Misc Fixed (https://xorg.freedesktop.org/releases/individual/font/) (xorg-fonts-misc-otb
(https://aur.archlinux.org/packages/xorg-fonts-misc-otb/)AUR)
▪ ProFont (https://tobiasjung.name/profont/) (profont-otb (https://aur.archlinux.org/p
ackages/profont-otb/)AUR) – OpenType Bitmap (OTB) variant of ProFont
▪ Terminus (https://terminus-font.sourceforge.net/) (terminus-font (https://archlinux.or
g/packages/?name=terminus-font))
▪ More OTB (https://aur.archlinux.org/packages/?O=0&SeB=n&K=-otb&outdated=&SB=n&SO=a&
PP=50&do_Search=Go) fonts on the AUR
3.2 Latin script

3.2.1 Families
Packages providing a base font set:

▪ Bitstream Vera (ttf-bitstream-vera (https://archlinux.org/packages/?name=ttf-bit


stream-vera)) – Includes sans-serif, serif, and monospaced fonts. Bitstream Vera Sans is
metrically compatible with Verdana.
▪ Croscore fonts (ttf-croscore (https://archlinux.org/packages/?name=ttf-croscore))
– Metric-compatible fonts for Helvetica, Times, Courier and Georgia — named Arimo, Tinos,
Cousine and Gelasio respectively, shipped with Chrome OS
▪ DejaVu fonts (ttf-dejavu (https://archlinux.org/packages/?name=ttf-dejavu)) –
Bitstream Vera modified for greater Unicode coverage
▪ Droid (ttf-droid (https://archlinux.org/packages/?name=ttf-droid)) – Default font for
older Android versions with wide Unicode coverage including CJK but not symbols and emojis
▪ GNU FreeFont (gnu-free-fonts (https://archlinux.org/packages/?name=gnu-free-fon
ts)) – Includes three fonts — FreeSans, FreeSerif and FreeMono — that are clones of Helvetica,
Times, and Courier respectively. Most Latin characters are from URW Ghostscript fonts (e.g.,
Nimbus Roman, Nimbus Sans), non-Latin characters come from many sources with good Unicode
coverage, but do not include CJK.
▪ IBM Plex (ttf-ibm-plex (https://archlinux.org/packages/?name=ttf-ibm-plex)) –
Serif, sans-serif, condensed sans-serif and monospace with true italics
▪ Input (https://input.djr.com/info/) (ttf-input (https://archlinux.org/packages/?name=
ttf-input)) – Fonts for code from DJR & Font Bureau
▪ ttf-input-nerd (https://archlinux.org/packages/?name=ttf-input-nerd) – Patched
font Input containing nerd font symbols
▪ Liberation fonts (ttf-liberation (https://archlinux.org/packages/?name=ttf-libera
tion)) – Metric-compatible fonts for Helvetica, Times, and Courier, but are visually different
▪ Microsoft fonts (ttf-ms-win11 (https://aur.archlinux.org/packages/ttf-ms-win11/)
AUR) – Windows 11 fonts (Windows 11 installation or installation medium needed)

▪ Noto fonts (noto-fonts (https://archlinux.org/packages/?name=noto-fonts)) – Google


font family with full Unicode coverage if installed with its emoji and CJK optional dependencies
▪ Roboto (ttf-roboto (https://archlinux.org/packages/?name=ttf-roboto)) – Default
font for newer Android versions where it is complemented by Noto fonts for languages not
supported like CJK
Packages not providing a base font set:

▪ B612 (https://github.com/polarsys/b612/) (ttf-b612 (https://aur.archlinux.org/packag


es/ttf-b612/)AUR) – Open-source font family (sans and mono) sponsored by Airbus, designed for
comfort of reading on aircraft cockpit screens
▪ Ghostscript (gsfonts (https://archlinux.org/packages/?name=gsfonts)) – The
Ghostscript fonts donated by URW, includes clones of Helvetica, Times, Courier, and others. GNU
FreeFont (gnu-free-fonts (https://archlinux.org/packages/?name=gnu-free-fonts))
and TeX Gyre fonts (tex-gyre-fonts (https://archlinux.org/packages/?name=tex-gyre-
fonts)) are both partially based on the Ghostscript fonts
▪ Libertinus Fonts (https://github.com/alerque/libertinus) (otf-libertinus (https://archli
nux.org/packages/?name=otf-libertinus)) – Forks of Linux Libertine and Linux Biolinum,
with extended math support, see #Math
▪ Luxi fonts (font-bh-ttf (https://aur.archlinux.org/packages/font-bh-ttf/)AUR) –
X.Org font family similar to Lucida
▪ TeX Gyre fonts (https://www.gust.org.pl/projects/e-foundry/tex-gyre/index_html) (tex-gyre-
fonts (https://archlinux.org/packages/?name=tex-gyre-fonts)) – Created by the Polish
GUST association of TeX users, mostly based on URW Ghostscript fonts, includes clones of
Helvetica, Times, Courier, and others. Some have their own math companion fonts, see #Math.
▪ Ubuntu font family (ttf-ubuntu-font-family (https://archlinux.org/packages/?name=
ttf-ubuntu-font-family))
Legacy Microsoft font packages:

▪ Microsoft fonts (https://corefonts.sourceforge.net/) (ttf-ms-fonts (https://aur.archlinu


x.org/packages/ttf-ms-fonts/)AUR) – Andalé Mono, Courier New, Arial, Arial Black, Comic
Sans, Impact, Lucida Sans, Microsoft Sans Serif, Trebuchet, Verdana, Georgia, Times New Roman
▪ Vista fonts (ttf-vista-fonts (https://aur.archlinux.org/packages/ttf-vista-font
s/)AUR) – Consolas, Calibri, Candara, Corbel, Cambria, Constantia

3.2.2 Monospaced
Fonts supporting "programming ligatures" (e.g., the display of the "->" sequence as a double-width
"⟶" glyph) are identified below with a ⟶ sign. For more monospaced fonts, also see #Bitmap and
#Families.

▪ Anonymous Pro (https://www.marksimonson.com/fonts/view/anonymous-pro) (ttf-


anonymous-pro (https://archlinux.org/packages/?name=ttf-anonymous-pro), included
in ttf-google-fonts-git (https://aur.archlinux.org/packages/ttf-google-fonts-g
it/)AUR)
▪ Cascadia Code (https://github.com/microsoft/cascadia-code) (ttf-cascadia-code (http
s://archlinux.org/packages/?name=ttf-cascadia-code)) ⟶ – Designed to enhance the
look of the Windows Terminal, with programming ligatures, released by Microsoft under the Open
Font License
▪ Courier Prime (https://quoteunquoteapps.com/courierprime/) (ttf-courier-prime (http
s://aur.archlinux.org/packages/ttf-courier-prime/)AUR) – Courier alternative which has
been supplemented by a sans serif font and a version optimized for programming, released under
the Open Font License
▪ Envy Code R (https://damieng.com/envy-code-r) (ttf-envy-code-r (https://aur.archlinu
x.org/packages/ttf-envy-code-r/)AUR) – Font designed for programmers
▪ Fantasque Sans Mono (ttf-fantasque-sans-mono (https://archlinux.org/packages/?na
me=ttf-fantasque-sans-mono), otf-fantasque-sans-mono (https://archlinux.org/pac
kages/?name=otf-fantasque-sans-mono))
▪ Fira Mono (ttf-fira-mono (https://archlinux.org/packages/?name=ttf-fira-mono),
otf-fira-mono (https://archlinux.org/packages/?name=otf-fira-mono)) – Font
optimized for small screens and adopted by Mozilla for the Firefox OS
▪ Fira Code (ttf-fira-code (https://archlinux.org/packages/?name=ttf-fira-code)) ⟶
– Extension of Fira Mono with programming ligatures for common programming multi-character
combinations
▪ Hack (https://sourcefoundry.org/hack/) (ttf-hack (https://archlinux.org/packages/?na
me=ttf-hack)) - Open-source monospaced font, used as the default in KDE Plasma
▪ Hasklig (https://github.com/i-tu/Hasklig) (otf-hasklig (https://aur.archlinux.org/pac
kages/otf-hasklig/)AUR) - A code font with monospaced ligatures
▪ Hermit (https://pcaro.es/p/hermit/) (otf-hermit (https://archlinux.org/packages/?nam
e=otf-hermit)) - A font for programmers, by a programmer
▪ Inconsolata (ttf-inconsolata (https://archlinux.org/packages/?name=ttf-inconsola
ta), included in ttf-google-fonts-git (https://aur.archlinux.org/packages/ttf-goo
gle-fonts-git/)AUR) – Designed for source code listing, inspired by Consolas and Letter Gothic
▪ Inconsolata-g (https://leonardo-m.livejournal.com/77079.html) (ttf-inconsolata-g (http
s://aur.archlinux.org/packages/ttf-inconsolata-g/)AUR) – Adds some programmer-
friendly modifications
▪ Iosevka (https://be5invis.github.io/Iosevka/) (ttc-iosevka (https://archlinux.org/pack
ages/?name=ttc-iosevka)) ⟶ – Slender sans-serif and slab-serif typeface inspired by Pragmata
Pro, M+ and PF DIN Mono, designed to be the ideal font for programming; it supports
programming ligatures and over 2000 latin, greek, cyrillic, phonetic and PowerLine glyphs
▪ JetBrains Mono (https://www.jetbrains.com/lp/mono/) (ttf-jetbrains-mono (https://arc
hlinux.org/packages/?name=ttf-jetbrains-mono)) ⟶ – Free and open-source font
developed by JetBrains
▪ Lilex (https://mishamyrt.github.io/Lilex/) (ttf-lilex (https://aur.archlinux.org/packa
ges/ttf-lilex/)AUR) ⟶ – Free and open-source modern programming font containing a set of
ligatures for common programming multi-character combinations
▪ Lucida Typewriter (included in package jre (https://aur.archlinux.org/packages/jre/)
AUR)

▪ Menlo (ttf-meslo (https://aur.archlinux.org/packages/ttf-meslo/)AUR) – Customized


version of Apple's Menlo Regular font for OS X with larger vertical gap spacing
▪ Monaco (ttf-monaco (https://aur.archlinux.org/packages/ttf-monaco/)AUR) –
Proprietary font designed by Apple for OS X
▪ Monofur (ttf-monofur (https://archlinux.org/packages/?name=ttf-monofur))
▪ Mononoki (https://madmalik.github.io/mononoki) (ttf-mononoki (https://aur.archlinu
x.org/packages/ttf-mononoki/)AUR) – A font for programming and code review
▪ Roboto Mono (ttf-roboto-mono (https://archlinux.org/packages/?name=ttf-roboto-
mono)) – Based on Roboto (ttf-roboto (https://archlinux.org/packages/?name=ttf-rob
oto))
▪ Source Code Pro (adobe-source-code-pro-fonts (https://archlinux.org/packages/?na
me=adobe-source-code-pro-fonts), included in ttf-google-fonts-git (https://aur.ar
chlinux.org/packages/ttf-google-fonts-git/)AUR)
▪ Comic Mono (https://dtinth.github.io/comic-mono-font/) (ttf-comic-mono-git (https://a
ur.archlinux.org/packages/ttf-comic-mono-git/)AUR) A legible monospace font… the very
typeface you’ve been trained to recognize since childhood, ergo Comic Sans
Relevant websites:

▪ Trevor Lowing's font list (https://www.lowing.org/fonts/)


▪ Slant: What are the best programming fonts? (https://www.slant.co/topics/67/~what-are-the-
best-programming-fonts)
▪ Stack Overflow: Recommended fonts for programming (https://stackoverflow.com/question
s/4689/recommended-fonts-for-programming)
▪ Programming Fonts - Test Drive (https://www.programmingfonts.org)
▪ Programming Fonts Compare (http://s9w.io/font_compare)
▪ Coding Font by Typogram (https://www.codingfont.com/)

3.2.3 Sans-serif
▪ Andika (https://software.sil.org/andika/) (ttf-andika (https://aur.archlinux.org/packa
ges/ttf-andika/)AUR)
▪ Cantarell (cantarell-fonts (https://archlinux.org/packages/?name=cantarell-font
s)) – Default font supplied with GNOME, it is required by the GNOME and GTK 3 related packages
▪ DMCA Sans Serif (https://typedesign.replit.app/dmcasansserif.html) (ttf-dmcasansserif (h
ttps://aur.archlinux.org/packages/ttf-dmcasansserif/)AUR) – General purpose sans
serif font metric-compatible with Microsoft Consolas
▪ Fira Sans (ttf-fira-sans (https://archlinux.org/packages/?name=ttf-fira-sans),
otf-fira-sans (https://archlinux.org/packages/?name=otf-fira-sans)) – Sans serif
font designed by Erik Spiekermann for Mozilla and the Firefox OS. Fira Mono and Fira Code are
monospaced companions of Fira Sans (see #Monospaced).
▪ FreeSans (gnu-free-fonts (https://archlinux.org/packages/?name=gnu-free-fonts))
– Visually similar to Helvetica but metrically different, see #Families
▪ Inter (https://github.com/rsms/inter) (inter-font (https://archlinux.org/packages/?n
ame=inter-font)) – A geometric neo-grotesque font designed for user interfaces
▪ Jost* (https://indestructibletype.com/Jost.html) (otf-jost (https://aur.archlinux.org/p
ackages/otf-jost/)AUR) – An open-source typeface based on Futura
▪ Liberation Sans (ttf-liberation (https://archlinux.org/packages/?name=ttf-liberat
ion)) – Metric-compatible with Helvetica but visually distinct, see #Families
▪ Montserrat (https://fonts.google.com/specimen/Montserrat) (otf-montserrat (https://ar
chlinux.org/packages/?name=otf-montserrat)) – An open-source font that shares
similarities with Gotham and Proxima Nova
▪ Nunito (https://fonts.google.com/specimen/Nunito) (ttf-nunito (https://archlinux.or
g/packages/?name=ttf-nunito)) – An open-source font with rounded terminal, hence shares
similarities with Gotham Rounded and Proxima Soft (https://fonts.adobe.com/fonts/proxima-s
oft)
▪ Open Sans (ttf-opensans (https://archlinux.org/packages/?name=ttf-opensans)) –
Sans serif font commissioned by Google, based on Droid sans but slightly wider
▪ PT Sans (ttf-google-fonts-git (https://aur.archlinux.org/packages/ttf-google-fo
nts-git/)AUR) – 3 major variations: normal, narrow, and caption - Unicode: Latin, Cyrillic
▪ Source Sans (adobe-source-sans-fonts (https://archlinux.org/packages/?name=adob
e-source-sans-fonts)) – Open-source sans serif font from Adobe with a design based on News
Gothic and Franklin Gothic
▪ Tahoma (Wine Replacement) (https://www.winehq.org/announce/0.9.47) (ttf-tahoma (http
s://aur.archlinux.org/packages/ttf-tahoma/)AUR) – Open-source substitute for Tahoma
developed by the Wine project. It was created because many Windows applications expected
Tahoma to be available.

3.2.4 Serif
▪ Bitstream Charter (ttf-bitstream-charter (https://aur.archlinux.org/packages/tt
f-bitstream-charter/)AUR, otf-bitstream-charter (https://aur.archlinux.org/pack
ages/otf-bitstream-charter/)AUR) – Originally a commercial font designed by Matthew
Carter. A version was released under a free license and later converted (https://practicaltypogra
phy.com/charter.html) to modern formats (provided as the aforementioned packages).
▪ Bodoni* (https://indestructibletype.com/Bodoni.html) (otf-bodoni (https://aur.archlin
ux.org/packages/otf-bodoni/)AUR) – An open-source Bodoni revival
▪ Crimson (https://github.com/skosch/Crimson) (otf-crimson (https://archlinux.org/pac
kages/?name=otf-crimson)) – An open-source font that shares similarities with Minion
▪ EB Garamond (ebgaramond-otf (https://aur.archlinux.org/packages/ebgaramond-ot
f/)AUR) – An open-source Garamond revival, the aforementioned package is the version developed
by Octavio Pardo (https://github.com/octaviopardo/EBGaramond12)
▪ FreeSerif (gnu-free-fonts (https://archlinux.org/packages/?name=gnu-free-fonts))
– Visually similar to Times New Roman but metrically different (https://askubuntu.com/questi
ons/346552/closest-alternative-to-times-new-roman/1148247#1148247), see #Families
▪ Gentium (ttf-gentium-plus (https://archlinux.org/packages/?name=ttf-gentium-pl
us)) – Unicode, comprehensive support for Latin, Greek, Cyrillic, International Phonetic Alphabet
(IPA) characters
▪ Heuristica (ttf-heuristica (https://aur.archlinux.org/packages/ttf-heuristica/)
AUR) – Based on a version of Utopia that was released under a free license

▪ Liberation Serif (ttf-liberation (https://archlinux.org/packages/?name=ttf-liberat


ion)) – Metric-compatible with Times New Roman but visually distinct, see #Families
▪ Libre Baskerville (https://fonts.google.com/specimen/Libre+Baskerville) (ttf-
librebaskerville (https://aur.archlinux.org/packages/ttf-librebaskerville/)AUR)
– An open-source Baskerville revival designed by Impallari Type
▪ BaskervilleF (https://ctan.org/pkg/baskervillef) (otf-baskervillef (https://aur.archlin
ux.org/packages/otf-baskervillef/)AUR) – A PDF-optimized serif font, fork of Libre
Baskerville, with added Bold Italic style
▪ Libre Caslon (https://fonts.google.com/specimen/Libre+Caslon+Text) (otf-libre-caslon (ht
tps://aur.archlinux.org/packages/otf-libre-caslon/)AUR) – An open-source Caslon
revival designed by Impallari Type
▪ Linux Libertine (ttf-linux-libertine (https://archlinux.org/packages/?name=ttf-li
nux-libertine)) – Developed as a substitute of Times New Roman, but different both visually and
metrically (the metric differences are more notable for italic and bold fonts). Its fork Libertinus
Fonts (otf-libertinus (https://archlinux.org/packages/?name=otf-libertinus)) is
the version that is under active development.
▪ TeX Gyre Termes (https://www.gust.org.pl/projects/e-foundry/tex-gyre/index_html) (tex-
gyre-fonts (https://archlinux.org/packages/?name=tex-gyre-fonts)) – Visually similar
to Times New Roman (but there are some minor metric differences), see #Families
▪ Tinos (ttf-croscore (https://archlinux.org/packages/?name=ttf-croscore)) – Metric-
compatible with Times New Roman but visually distinct (and looks similar to Liberation Serif), see
#Families

3.2.5 Handwriting
▪ ttf-nothingyoucoulddo (https://aur.archlinux.org/packages/ttf-nothingyoucould
do/)AUR – Handwriting of a photographer
▪ ttf-indieflower (https://aur.archlinux.org/packages/ttf-indieflower/)AUR –
Handwriting sans-serif font with bubbly and rounded edges
▪ ttf-pacifico (https://aur.archlinux.org/packages/ttf-pacifico/)AUR – Brush script
handwriting font which was inspired by the 1950s American surf culture and expanded to Cyrillic
▪ otf-londrina (https://aur.archlinux.org/packages/otf-londrina/)AUR – Handwriting
font inspired from the streets of Sao Paulo, Brazil
▪ otf-tesla (https://aur.archlinux.org/packages/otf-tesla/)AUR – Script font based on
a reconstruction of Nikola Tesla's handwriting
▪ ttf-architects-daughter (https://aur.archlinux.org/packages/ttf-architects-da
ughter/)AUR – Font incorporating the graphic, squared look of architectural writing and the natural
feel of daily handwriting

3.2.6 Unsorted
▪ all-repository-fonts (https://aur.archlinux.org/packages/all-repository-font
s/)AUR – Meta package for all fonts in the official repositories
▪ ttf-cheapskate (https://aur.archlinux.org/packages/ttf-cheapskate/)AUR – Font
collection from dustismo.com
▪ ttf-google-fonts-git (https://aur.archlinux.org/packages/ttf-google-fonts-gi
t/)AUR – A huge collection of free fonts (including Ubuntu, Inconsolata, Roboto, etc.)

Note: Your font dialog might get very long as more than 100 fonts will be added.

▪ ttf-junicode (https://archlinux.org/packages/?name=ttf-junicode) – Junius font


containing almost complete medieval Latin script glyphs
▪ ttf-mph-2b-damase (https://aur.archlinux.org/packages/ttf-mph-2b-damase/)AUR –
Covers full plane 1 and several scripts
▪ ttf-opendyslexic (https://aur.archlinux.org/packages/ttf-opendyslexic/)AUR –
OpenDyslexic font for readers with dyslexia
▪ xorg-fonts-type1 (https://archlinux.org/packages/?name=xorg-fonts-type1) – IBM
Courier and Adobe Utopia sets of PostScript fonts

3.3 Non-latin scripts

3.3.1 Ancient Scripts


▪ ttf-ancient-fonts (https://aur.archlinux.org/packages/ttf-ancient-fonts/)AUR –
Font containing Unicode symbols for Aegean, Egyptian, Cuneiform, Anatolian, Maya, and Analecta
scripts

3.3.2 Arabic
See Localization/Arabic#Fonts.

3.3.3 Bengali
Read Localization/Bengali#Fonts for details.

3.3.4 Braille
▪ ttf-ubraille (https://aur.archlinux.org/packages/ttf-ubraille/)AUR – Font
containing Unicode symbols for braille

3.3.5 Chinese, Japanese, Korean, Vietnamese


3.3.5.1 Pan-CJK
Adobe Source Han fonts and Noto CJK fonts have identical glyphs and metrics (https://github.com/
adobe-fonts/source-han-sans/issues/122), but with different branding since the project was
commissioned by both Adobe and Google.

Both collections comprehensively support Simplified Chinese, Traditional Chinese, Japanese, and
Korean, with a consistent design and look. Noto Sans CJK fonts lack localized menu names, that are
not required, but may make fonts more user-friendly for customers whose native language is that of
the target language of the font.

▪ Adobe Source Han fonts

▪ Source Han Sans (adobe-source-han-sans-otc-fonts (https://archlinux.org/packa


ges/?name=adobe-source-han-sans-otc-fonts))
▪ Source Han Serif (adobe-source-han-serif-otc-fonts (https://archlinux.org/pack
ages/?name=adobe-source-han-serif-otc-fonts))
▪ Noto CJK fonts (noto-fonts-cjk (https://archlinux.org/packages/?name=noto-fonts-
cjk)) – Includes both Noto Sans CJK and Noto Serif CJK

3.3.5.2 Chinese
See Localization/Chinese#Fonts.

3.3.5.3 Japanese
See Localization/Japanese#Fonts.

3.3.5.4 Korean
See Localization/Korean#Fonts.

3.3.5.5 Vietnamese
▪ ttf-hannom (https://archlinux.org/packages/?name=ttf-hannom) – Vietnamese
TrueType font for chữ Nôm characters

3.3.6 Cyrillic
See also #Latin script.

▪ ttf-paratype (https://aur.archlinux.org/packages/ttf-paratype/)AUR – Font family


by ParaType: sans, serif, mono, extended cyrillic and latin, OFL license
▪ otf-russkopis (https://aur.archlinux.org/packages/otf-russkopis/)AUR – A free
OpenType cursive font for Cyrillic script

3.3.7 Greek
Almost all Unicode fonts contain the Greek character set (polytonic included). Some additional font
packages, which might not contain the complete Unicode set but utilize high quality Greek (and
Latin, of course) typefaces are:

▪ otf-gfs (https://aur.archlinux.org/packages/otf-gfs/)AUR – Selection of OpenType


fonts from the Greek Font Society
▪ ttf-mgopen (https://aur.archlinux.org/packages/ttf-mgopen/)AUR – Professional
TrueType fonts from Magenta
▪ ttf-sbl-greek (https://aur.archlinux.org/packages/ttf-sbl-greek/)AUR – SBL Greek,
created by the Society of Biblical Literature (SBL)
▪ ttf-sbl-biblit (https://aur.archlinux.org/packages/ttf-sbl-biblit/)AUR – SBL
BibLit, includes characters from both SBL Greek and SBL Hebrew

3.3.8 Hebrew
▪ opensiddur-hebrew-fonts (https://aur.archlinux.org/packages/opensiddur-hebre
w-fonts/)AUR – Large collection of Open-source licensed Hebrew fonts. There are also few Latin,
Greek, Cyrillic, Arabic, and Amharic.
▪ culmus (https://aur.archlinux.org/packages/culmus/)AUR – Nice collection of free
Hebrew fonts
▪ alefbet (https://aur.archlinux.org/packages/alefbet/)AUR – 4 Hebrew fonts (at the
moment): the commonly used "David Libre", the handwriting font "Gveret Levin", "Varela Round"
and "open-sans"
▪ ttf-ms-fonts (https://aur.archlinux.org/packages/ttf-ms-fonts/)AUR – contains Arial
and other fonts
▪ ttf-sbl-hebrew (https://aur.archlinux.org/packages/ttf-sbl-hebrew/)AUR – SBL
Hebrew, created by the Society of Biblical Literature (SBL)
▪ ttf-sbl-biblit (https://aur.archlinux.org/packages/ttf-sbl-biblit/)AUR – SBL
BibLit, includes characters from both SBL Hebrew and SBL Greek

3.3.8.1 Monospaced
▪ Cousine (ttf-croscore (https://archlinux.org/packages/?name=ttf-croscore)) – part
of the Chrome OS Core Fonts
▪ Everson Mono (https://www.evertype.com/emono/) (ttf-everson-mono (https://aur.arch
linux.org/packages/ttf-everson-mono/)AUR) – is lighter and a bit looser than Courier, with
wide range of supported Unicode blocks
▪ FreeMono (gnu-free-fonts (https://archlinux.org/packages/?name=gnu-free-fonts))
– part of the GNU FreeFont

3.3.9 Indic
See Localization/Indic#Fonts.

3.3.10 Khmer
▪ ttf-khmer (https://archlinux.org/packages/?name=ttf-khmer) – Font covering glyphs
for Khmer language
▪ Hanuman (https://github.com/danhhong/Hanuman) (ttf-google-fonts-git (https://au
r.archlinux.org/packages/ttf-google-fonts-git/)AUR)

3.3.11 Mongolic and Tungusic


▪ ttf-abkai (https://aur.archlinux.org/packages/ttf-abkai/)AUR – Fonts for Sibe,
Manchu and Daur scripts (incomplete, currently in development)
3.3.12 Persian
Arabic fonts like ttf-scheherazade-new (https://archlinux.org/packages/?name=ttf-sche
herazade-new) also cover Persian letters. A list of Arabic fonts can be checked in Localization/
Arabic#Fonts.

▪ persian-fonts (https://aur.archlinux.org/packages/persian-fonts/)AUR – Meta


package for installing all Persian fonts in AUR
▪ borna-fonts (https://aur.archlinux.org/packages/borna-fonts/)AUR – Borna Rayaneh
Co. Persian B font series
▪ iran-nastaliq-fonts (https://aur.archlinux.org/packages/iran-nastaliq-fonts/)
AUR – A free Unicode calligraphic Persian font

▪ iranian-fonts (https://aur.archlinux.org/packages/iranian-fonts/)AUR – Iranian-


Sans and Iranian-Serif Persian font family
▪ ir-standard-fonts (https://aur.archlinux.org/packages/ir-standard-fonts/)AUR –
Iran Supreme Council of Information and Communication Technology (SCICT) standard Persian
fonts
▪ persian-hm-ftx-fonts (https://aur.archlinux.org/packages/persian-hm-ftx-font
s/)AUR – A Persian font series derived from X Series 2, Metafont and FarsiTeX fonts with Kashida
feature
▪ persian-hm-xs2-fonts (https://aur.archlinux.org/packages/persian-hm-xs2-font
s/)AUR – A Persian font series derived from X Series 2 fonts with Kashida feature
▪ gandom-fonts (https://aur.archlinux.org/packages/gandom-fonts/)AUR, parastoo-
fonts (https://aur.archlinux.org/packages/parastoo-fonts/)AUR, sahel-fonts (htt
ps://aur.archlinux.org/packages/sahel-fonts/)AUR, samim-fonts (https://aur.arch
linux.org/packages/samim-fonts/)AUR, shabnam-fonts (https://aur.archlinux.org/p
ackages/shabnam-fonts/)AUR, tanha-fonts (https://aur.archlinux.org/packages/tan
ha-fonts/)AUR, vazirmatn-fonts (https://aur.archlinux.org/packages/vazirmatn-fo
nts/)AUR, vazir-code-fonts (https://aur.archlinux.org/packages/vazir-code-font
s/)AUR – Beautiful Persian fonts made by Saber RastiKerdar
▪ ttf-yas (https://aur.archlinux.org/packages/ttf-yas/)AUR – The Yas Persian font series
(with hollow zero)
▪ ttf-x2 (https://aur.archlinux.org/packages/ttf-x2/)AUR – Free fonts with support for
Persian, Arabic, Urdu, Pashto, Dari, Uzbek, Kurdish, Uighur, old Turkish (Ottoman) and modern
Turkish (Roman)

3.3.13 Tai–Kadai
▪ fonts-tlwg (https://aur.archlinux.org/packages/fonts-tlwg/)AUR – Collection of
scalable Thai fonts
▪ ttf-google-thai (https://aur.archlinux.org/packages/ttf-google-thai/)AUR – High-
quality Thai fonts from Google and new improvement (https://cadsondemak.github.io/) for Thai
National Fonts
▪ ttf-lao (https://aur.archlinux.org/packages/ttf-lao/)AUR – Lao TTF font
(Phetsarath_OT)

3.3.14 Tibeto-Burman
▪ ttf-tibetan-machine (https://archlinux.org/packages/?name=ttf-tibetan-machin
e) – Tibetan Machine TTFont
▪ ttf-sil-padauk (https://aur.archlinux.org/packages/ttf-sil-padauk/)AUR – Unicode
font that supports the many diverse languages that use the Myanmar script

3.4 Emoji and symbols


A section of the Unicode standard is designated for pictographic characters called "emoji".

Emoji fonts come in different formats: CBDT/CBLC (Google), SBIX (Apple), COLR/CPAL (Microsoft),
SVG (Mozilla/Adobe).

Emojis should work out of the box once you have at least one emoji font installed of a supported
format. However, some of the emoji fonts encode their glyphs as large fixed-size bitmaps and thus,
for the purpose of displaying at the intended size, rely on bitmap font downscaling, which is
enabled by default.

Emoji font fallback according to the standard requires extra code to handle emoji (https://github.c
om/google/emoji-segmenter).

For the discovery and input of Emoji see List of applications/Utilities#Text input.

CBDT/ COLR/
Software SBIX SVG Emoji font fallback
CBLC CPAL

No (https://sav
annah.nongn
FreeType Yes Yes Yes –
u.org/bugs/?46
141)

Yes (https://chromium.googlesource.com/chromium/
Chromium FreeType – src.git/+/671511b00e2d6c374a3079c1c379d2d0dfad32f
e)

No (https://bugzilla.mozilla.org/show_bug.cgi?id=1509
Firefox FreeType Yes 988), see Firefox#Font troubleshooting for
workaround.

Yes (https://gitlab.gnome.org/GNOME/pango/-/issue
Pango FreeType –
s/298)

No [1] (https://bugreports.qt.io/browse/QTBUG-71568)
Qt FreeType – [2] (https://bugreports.qt.io/browse/QTBUG-85014) [3]
(https://bugreports.qt.io/browse/QTBUG-85744)

Yes (https://trac.webkit.org/changeset/239822/webki
WebKitGTK FreeType –
t)

Note: Qt can only use first 255 fonts at a time [4] (https://bugreports.qt.io/browse/QTBUG-80434).
Make sure you have an emoji font in your list of preferred fallback fonts.

▪ Font Awesome (ttf-font-awesome (https://archlinux.org/packages/?name=ttf-font-


awesome)) – the iconic SVG font
▪ JoyPixels (https://joypixels.com/emoji) (ttf-joypixels (https://aur.archlinux.org/pack
ages/ttf-joypixels/)AUR) – formerly EmojiOne, part of Emoji as a Service, proprietary
▪ Nerd Fonts (https://github.com/ryanoasis/nerd-fonts/?tab=readme-ov-file#--) (nerd-fonts
(https://archlinux.org/groups/x86_64/nerd-fonts/)) – developer targeted fonts patched
with a high number of icons
▪ Noto Color Emoji (https://fonts.google.com/noto/specimen/Noto+Color+Emoji/glyphs) (noto-
fonts-emoji (https://archlinux.org/packages/?name=noto-fonts-emoji)) – Google
open-source emoji font, color
▪ Noto Emoji (https://fonts.google.com/noto/specimen/Noto+Emoji/glyphs) (ttf-noto-emoji-
monochrome (https://aur.archlinux.org/packages/ttf-noto-emoji-monochrome/)AUR)
– Google open-source emoji font, black and white
▪ OpenMoji (https://openmoji.org/) (otf-openmoji (https://aur.archlinux.org/packages/
otf-openmoji/)AUR) – German University of Design in Schwäbisch Gmünd open-source emoji
▪ Symbola (https://dn-works.com/ufas/)[dead link 2025-03-15 ⓘ] (ttf-symbola-free (https://au
r.archlinux.org/packages/ttf-symbola-free/)AUR) – part of Unicode Fonts for Ancient
Scripts; version 9 was the last free version, current version is licensed as "pay for any use"
▪ Twemoji (Twitter Emoji) (https://github.com/jdecked/twemoji) (ttf-twemoji (https://au
r.archlinux.org/packages/ttf-twemoji/)AUR) – emoji for everyone, originally created by
Twitter
▪ Twitter Color Emoji (https://github.com/13rac1/twemoji-color-font) (ttf-twemoji-color (ht
tps://aur.archlinux.org/packages/ttf-twemoji-color/)AUR) – SVG-OpenType (SVGinOT)
font built from the Twemoji artwork; this font also contains black and white emoji, and the original
Twemoji font contains color emoji too
Kaomoji are sometimes referred to as "Japanese emoticons" and are composed of characters from
various character sets, including CJK and Indic fonts. The following set of packages covers most of
existing kaomoji:

▪ gnu-free-fonts (https://archlinux.org/packages/?name=gnu-free-fonts)
▪ ttf-arphic-uming (https://archlinux.org/packages/?name=ttf-arphic-uming)
▪ ttf-indic-otf (https://archlinux.org/packages/?name=ttf-indic-otf)
Teranoptia (https://www.tunera.xyz/fonts/teranoptia/) (ttf-teranoptia-furiae (https://au
r.archlinux.org/packages/ttf-teranoptia-furiae/)AUR) – is a typeface without letters (an
illustrative font), a peculiar contraption that allows you to imagine chimeric creatures just by typing
letters with your keyboard.

3.5 Math
▪ Computer Modern (ttf-cm-unicode (https://aur.archlinux.org/packages/ttf-cm-uni
code/)AUR, otf-cm-unicode (https://aur.archlinux.org/packages/otf-cm-unicode/)
AUR)

▪ Computer Modern (otf-latin-modern (https://archlinux.org/packages/?name=otf-lat


in-modern), otf-latinmodern-math (https://archlinux.org/packages/?name=otf-lati
nmodern-math)) – Improved version used in LaTeX
▪ Libertinus Math (otf-libertinus (https://archlinux.org/packages/?name=otf-libert
inus)) – A math font based on Libertinus Serif which is a fork of Linux Libertine (ttf-linux-
libertine (https://archlinux.org/packages/?name=ttf-linux-libertine))
▪ STIX fonts (otf-stix (https://aur.archlinux.org/packages/otf-stix/)AUR) – STIX is
designed to be a royalty-free alternative that resembles Times New Roman. The current version is
called STIX Two and includes a math companion named STIX Two Math.
▪ TeX Gyre math fonts (https://www.gust.org.pl/projects/e-foundry/tg-math) (tex-gyre-math-
fonts (https://aur.archlinux.org/packages/tex-gyre-math-fonts/)AUR) – Math
companions of TeX Gyre fonts (see #Families). Notably, TeX Gyre Termes Math is a math
companion of Times New Roman.
Additionally, texlive-basic (https://archlinux.org/packages/?name=texlive-basic) and
texlive-fontsextra (https://archlinux.org/packages/?name=texlive-fontsextra)
contain many math fonts such as Latin Modern Math and STIX fonts. See TeX Live#Making fonts
available to Fontconfig for configuration.

3.6 Other operating system fonts


▪ ttf-mac-fonts (https://aur.archlinux.org/packages/ttf-mac-fonts/)AUR - Apple
MacOS TrueType fonts

4 Font alias
There are several font aliases which represent other fonts in order that applications may use similar
fonts. The most common aliases are: serif for a font of the serif type (e.g. DejaVu Serif);
sans-serif for a font of the sans-serif type (e.g. DejaVu Sans); and monospace for a monospaced
font (e.g. DejaVu Sans Mono). However, the fonts which these aliases represent may vary and the
relationship is often not shown in font management tools, such as those found in KDE Plasma and
other desktop environments.

To reverse an alias and find which font it is representing, run:

$ fc-match monospace

DejaVuSansMono.ttf: "DejaVu Sans Mono" "Book"

In this case, DejaVuSansMono.ttf is the font represented by the monospace alias.

5 Fallback font order


Fontconfig automatically chooses a font that matches the current requirement. That is to say, if one is
looking at a window containing English and Chinese for example, it will switch to another font for
the Chinese text if the default one does not support it.

Fontconfig lets every user configure the order they want via
$XDG_CONFIG_HOME/fontconfig/fonts.conf . If you want a particular Chinese font to be selected
after your favorite Serif font, your file would look like this:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>serif</family>
<prefer>
<family>Your favorite Latin Serif font name</family>
<family>Your Chinese font name</family>
</prefer>
</alias>
</fontconfig>

Tip:

▪ If you use a Chinese locale, set LC_LANG to und to make this work. Otherwise both English and
Chinese text will be rendered in the Chinese font.
▪ If you want to see a list of fonts against ambiguous patterns (i.e. which might not match exactly)
such as a generic family names, you can use fc-match --sort or fc-match --all .
▪ fc-match --sort does not show a font if its Unicode coverage is provided by already shown
font, see fc-match(1) (https://man.archlinux.org/man/fc-match.1) and
FcFontSort(3) (https://man.archlinux.org/man/FcFontSort.3).
▪ After changing the configuration run fc-match --all serif | head to verify your fallback
font is set correctly.

You can add a section for sans-serif and monospace as well.

For more information, have a look at the Fontconfig manual. See also Font configuration#Set
default or fallback fonts.

6 Tips and tricks

6.1 List installed fonts for a particular language


Applications select and display fonts depending upon Fontconfig preferences and available font
glyphs for Unicode text. To list installed fonts for a particular language, issue a command
fc-list :lang="two letter language code" . For instance, to list installed Arabic fonts or
fonts supporting Arabic glyphs:

$ fc-list -f '%{file}\n' :lang=ar

/usr/share/fonts/TTF/FreeMono.ttf
/usr/share/fonts/TTF/DejaVuSansCondensed.ttf
/usr/share/fonts/truetype/custom/DroidKufi-Bold.ttf
/usr/share/fonts/TTF/DejaVuSansMono.ttf
/usr/share/fonts/TTF/FreeSerif.ttf

6.2 List installed fonts for a particular Unicode character


To list all fonts supporting a particular Unicode codepoint—black upwards equilateral arrowhead
(https://graphemica.com/%E2%AE%9D) (⮝) in this case:

$ fc-list :charset=2B9D

fc-list does not normalize requests, it is going to list fonts which exactly matches. It is not suitable for
generic family names (like monospace ) and other ambiguous patterns. To search for monospaced
fonts supporting a particular Unicode codepoint you could try the following:

$ fc-match --sort monospace:charset=2B9D | head

but you have to interpret the result on your own. fc-match by its nature does not guarantee that fonts
in the output list are monospaced, nor that they contain the codepoint in question at all.

6.3 Application-specific font cache


Matplotlib (python-matplotlib (https://archlinux.org/packages/?name=python-matplotl
ib)) uses its own font cache, so after updating fonts, be sure to remove
~/.matplotlib/fontList.cache , ~/.cache/matplotlib/fontList.cache ,
~/.sage/matplotlib-1.2.1/fontList.cache , etc. so it will regenerate its cache and find the
new fonts [5] (https://discourse.matplotlib.org/t/getting-matplotlib-to-recognize-a-new-font/1775
4).

6.4 Bidirectional text support


See Bidirectional text for troubleshooting problems related to RTL languages.
6.5 Braille font not displaying correctly inside terminals
If braille characters in terminals exhibit rendering issues (https://www.reddit.com/r/archlinux/co
mments/gf2vgb/the_braille_fonts_dont_show_properly_anywhere/), try installing a braille font
and uninstalling gnu-free-fonts (https://archlinux.org/packages/?name=gnu-free-font
s).

6.6 Application-specific font configuration tips

6.6.1 Emacs
Emacs calculates sizes differently than standard Linux desktop applications, and Emacs packages do
not all use the same config format, so if points or raw pixel size doesn't work, try using the other
value.

6.6.2 Visual Studio Code


Change the setting Editor: Experimental Whitespace Rendering from "svg" to "font" if your
monospace fonts have problems scaling certain characters correctly. This is known to help with
"Terminus (TTF)" and "IBM 3270" fonts.

7 See also
▪ State of Text Rendering (https://behdad.org/text/)
▪ Font Library (https://fontlibrary.org/en) — Fonts under free licenses

Retrieved from "https://wiki.archlinux.org/index.php?title=Fonts&oldid=832193"

You might also like