Fonts (Українська)
З Вікіпедії: Комп'ю́терні шрифти́ — це сукупність графічних символів, що зберігаються в пам'яті комп'ютера у вигляді растрових точок чи векторних зображень.
Майте на увазі, що деякі шрифти можуть бути захищені авторським прввом, а їх використання — обмеженим законом.
Види шрифтів
Зараз, більшість комп'ютерних шрифтів це або растрові, або векторні шрифти.
- Растрові шрифти
- Зберігаються в пам'яті комп'ютера як масив з точок. Таким чином зберігається кожнен розмір кожного гліфа. Кількість можливих розмірів шрифта обмежена.
- Векторні шрифти
- Всі гліфи задаються як набір кривих Безьє та математичних формул. Таким чином шрифт можна розтягувати до будь-якого розміру.
Формати файлів растрових шрифтів
- Bitmap Distribution Format (BDF) від Adobe
- Portable Compiled Format (PCF) від Xorg
-
PC Screen Font (PSF) використовується ядром в консолі, Xorg не підтримує цей формат (Unicode PSF шрифти мають розширення
psfu
)
These formats can also be gzipped. See #Bitmap for the available bitmap fonts.
Формати файлів растрових шрифтів
- PostScript fonts від Adobe: буває в різних варіянтах, як от Printer Font ASCII (PFA) або Printer Font Binary (PFB)
-
TrueType від Apple та Microsoft (розширення:
ttf
) -
OpenType від Microsoft, створений на основі TrueType (розширення:
otf
,ttf
)
В більшості випадків різницею між TrueType та OpenType можна знехтувати.
Інші формати
Так повелося, що TeX та його супутня програма Metafont, вакористовують власний спосіб відображення тексту. Серед ферматів, які використовують ці дві програми є: *pk
, *gf
, mf
та vf
. Сучасні версії можуть працювати й з TrueType та OpenType.
FontForge (fontforge) — це програма для створення шрифтів. Вона може зберігати їх у своєму внутрішньому форматі — sfd
, spline font database.
SVG зображення мають спеціальний формат опису шрифтів.
Встановлення
There are various methods for installing fonts. Встановлювати шрифти можна різними способами.
Pacman
Через pacman можна встановлювати як шрифти, так і цілі шрифтові набори.
Знайти наявні шрифти можна якщо надіслати запит до бази даних (шукати слова font
або ttf
).
Створення пакунків
Ви можете керувати шрифтами за допомогою pacman. Для цього потрібно створити пакунок Arch Linux. Потім ним можна поділитися із загалом в AUR. Щоби дізнатися, як правильно оформити пакунок зі шрифтами, прочитайте поради щодо створення пакунків шрифтів..
Дізнатися назву сімейства шрифту, можна за допомогою команди fc-query
. Наприклад: fc-query -f '%{family[0]}\n' /шлях/до/файлу
. Інструкцію до її використання можна почитати в FcPatternFormat(3).
Встановлення вручну
Найкращий спосіб керування сторонніми шрифтами описаний в розділі #Створення пакунків. Таким чином ви матимете змогу прибирати чи оновлювати їх через pacman.
Або ж, ви можете встановлювати шрифти власноруч:
- Щоби встановити лише для себе, помістіть їх у теку
~/.local/share/fonts/
.- Здебільшого, цього буде достатньо. Хіба що ви будете запускати графічні програми від імені інших користувачів.
- Раніше використовувалась тека
~/.fonts/
— більше ні.
- Щоб установити шрифт для всіх користувачів, помістіть його у теку
/usr/local/share/fonts/
.- Якщо теки немає, створіть її;
mkdir -p /usr/local/share/fonts
. - У теці
/usr/share/fonts/
знаходяться шрифти, встановлені через pacman. Краще туди не лізти.
- Якщо теки немає, створіть її;
Ви можете впорядковувати теку так, як вам заманеться. Наприклад, можна тримати кожен шрифт в окремій теці. Теки зі шрифтами переглядаються рекурсивно, тому вкладені файли не будуть пропущені.
Ось приклад того, як можна впорядкувати теку зі шрифтами:
/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
Також, необхідно, щоб усі користувачі мали доступ до читання цих файлів. Файли повинні мати принаймні chmod 444
а теки — 555
.
Якщо ви хочете, щоб Xserver завантажував шрифти напряму (а не з допомогою font server), новостворені теки зі шрифтами потрібно додати до списку FontPath. Цей список знаходиться у розділі Files вашого файлу налаштувань Xorg (/etc/X11/xorg.conf
або /etc/xorg.conf
). Дізнайтеся більше в розділі #Застарілі програми.
Зрештою, потрібно оновити кеш fontconfig-у (зазвичай цього робити не потрібно адже програми, що використовують бібліотеку fontconfig роблять це самі):
$ fc-cache
Застарілі програми
Якщо ваша програма не використовує fontconfig (як от програми GTK 1.x та xfontsel
), то вам потрібно створити покажчик тек зі шрифтами:
$ mkfontscale $ mkfontdir
Щоби включити до списку більше однієї теки водночас:
$ for dir in /тека/перша/ /тека/друга/; do xset +fp $dir; done && xset fp rehash
Якщо ж шрифти були встановлені в інші теки всередині, наприклад, /usr/share/fonts
, то:
$ for dir in * ; do if [ -d "$dir" ]; then cd "$dir";xset +fp "$PWD" ;mkfontscale; mkfontdir;cd .. ;fi; done && xset fp rehash
Якщо, раптом, X сервер не зміг завантажити всіх шрифтів, то вам потрібно пересканувати всі файли з fonts.dir
:
# xset +fp /usr/share/fonts/misc # Повідомити серверу X про нові теки # xset fp rehash # Перепросканувати їх
Щоб перевірити, чи певний шрифт був включений до списку:
$ xlsfonts | grep назва-шрифту
Все це можна зробити на загально-системному рівні у файлах /etc/X11/xorg.conf
або /etc/X11/xorg.conf.d
.
Нижче наведений приклад розділу з файлу /etc/X11/xorg.conf
. Можете скласти власний список шляхів.
# Цим, ви повідомите X.Org про теки зі шрифтами 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
Попередження від Pango
Якщо ваша системи використовує Pango то вона спробує читати з fontconfig щоб зрозуміти, звідки брати файли шрифтів.
(process:5741): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='common' (process:5741): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='latin'
Якщо ви отримали схожу помилку та/або бачите прямокутнички замість символів у програмах то значить, вам потрібно оновити кеш шрифтів. У наведеному прикладі використовується шрифт ttf-liberation, для наочності. Його потрібно установити як пакунок та запустити команду як root:
# 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
Щоб перевірити, чи шрифт встановлений:
$ fc-match
LiberationMono-Regular.ttf: "Liberation Mono" "Regular"
Пакунки шрифтів
У цьому списку наведені пакунки як із офіційних сховищ, так і з AUR. Шрифти, які підтримують Unicode мають позначку „Unicode“.
Растрові
- Стандартний 8x16
- Berry (pcf-spectrum-berryAUR) – 8px
- Dina (dina-font) – 6pt, 8pt, 9pt, 10pt, моноширинний, створений на основі Proggy
- Efont (efont-unicode-bdfAUR) – 10px, 12px, 14px, 16px, 24px, є в нормальному, жирному та курсивному варіянтах
- Gohu (gohufontAUR) – 11px, 14px, нормальний та жирний
- Lime (artwiz-fontsAUR)
- ProFont (ttf-profont-iixAUR) – 10px, 11px, 12px, 15px, 17px, 22px, 29px, лише нормальний
- Proggy (proggyfontsAUR) – має різні варіянти
- Tamsyn (tamsyn-font)
- Terminus (terminus-font)
- Tewi (bdf-tewi-gitAUR)
- Unifont (має найбільше покриття Unicode-у серед усіх шрифтів) (bdf-unifontAUR)
Ті, що працюють з Pango 1.44:
- ProFont (profont-otbAUR) – OpenType Bitmap (OTB) варіянт шрифту ProFont
- Misc Fixed xorg-fonts-misc-otbAUR
- Gohufont (gohufont-otbAUR)
- Cozette (cozette-otbAUR)
- Terminus (terminus-font)
- Більше OTB шрифтів є на AUR
Латинка
Набори шрифтів
Пакунки, із базовим набором шрифтів:
- Bitstream Vera (ttf-bitstream-vera) – містить моноширинні шрифти а також шрифти з та без зарубок. Шрифт Bitstream Vera Sans може заміняти Verdana.
- Croscore fonts (ttf-croscore) – шрифти-замінники для Helvetica, Times, і Courier. Використовуються в Chrome OS
- DejaVu fonts (ttf-dejavu) – Bitstream Vera зі збільшеним покриттям Unicode
- Droid (ttf-droid) – стандартний шрифт у старих версіях Android. Містить багато символів Unicode. В тому числі азійські ієрогліфи. Проте не містить емоджі та графічні символи
- GNU FreeFont (gnu-free-fonts) – містить моноширинні шрифти а також шрифти з та без зарубок. більшість символів латинки знаходяться в шрифтах URW (серед них: Nimbus Roman, Nimbus Sans), має непогане покриття Unicode але без азійських ієрогліфів
- IBM Plex (ttf-ibm-plex) – з засічками, без засічок, стиснуті, та моноширинні із курсивом
- Liberation fonts (ttf-liberation) – шрифти-замінники для Helvetica, Times, і Courier
- Linux Libertine (ttf-linux-libertine) – шрифти з засічками (Libertine) та без них (Biolinum) що мають велике покриття Unicode
- Microsoft fonts (ttf-ms-win11AUR) – шрифти з Windows 11 (потрібен інсталятор Windows 11)
- Noto fonts (noto-fonts) – шрифти від Google з повним покриттям Unicode. (Якщо встановити ще й окремі залежні пакунки з емоджі та азійськими ієрогліфами)
Пакунки без базового набору:
- B612 (ttf-b612AUR) – сімейство вільних шрифтів (без засічок та моноширинних) від Airbus, створені для зручності читання на авіаційних панелях
- Luxi fonts (font-bh-ttfAUR) – шрифт для X.Org. Схожі на Lucida
- Roboto (ttf-roboto) – стандартний шрифт у новіших версіях Android
- TeX Gyre fonts (tex-gyre-fonts) – шрифти-замінники для Helvetica, Times, і Courier від польської асоціації GUST користувачів TeX. Вони також мають власні шрифти для математичних формул. Див. #Math.
- Ubuntu font family (ttf-ubuntu-font-family)
Старі пакунки зі шрифтами від Microsoft:
- Microsoft fonts (ttf-ms-fontsAUR) – 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-fontsAUR) – Consolas, Calibri, Candara, Corbel, Cambria, Constantia
Моноширинні
Шрифти з лігатурами для програмування позначені символом ⟶ . Інші моноширинні шрифти можна знайти в розділах Растрові і Набори шрифтів.
- Anonymous Pro (ttf-anonymous-pro, є в пакунку ttf-google-fonts-gitAUR)
- Cascadia Code (ttf-cascadia-code) ⟶ – створений спеціально для Windows Terminal. Microsoft випустили шрифт під ліцензією Open Font License.
- Courier Prime (ttf-courier-primeAUR) – шрифт-замінник Courier. Має вільну ліцензію
- Envy Code R (ttf-envy-code-rAUR) – шрифт для програмістів
- Fantasque Sans Mono (ttf-fantasque-sans-mono, otf-fantasque-sans-mono)
- Fira Mono (ttf-fira-mono, otf-fira-mono) – шрифт для маленьких екранів. Розроблений Mozilla для Firefox OS
- Fira Code (ttf-fira-code) ⟶ – Fira Mono але з лігатурами
- Hack (ttf-hack) - вільний моноширинний шрифт. Це шрифт за замовчуванням в KDE Plasma
- Hasklig (otf-haskligAUR) - шрифт для коду, з лігатурами
- Hermit (otf-hermit) - від програміста для програмістів
- Inconsolata (ttf-inconsolata, з пакунку ttf-google-fonts-gitAUR) – шрифт для програмного коду. Творці надихались Consolas та Letter Gothic
- Inconsolata-g (ttf-inconsolata-gAUR) – змінений для комфорту кодерів
- Iosevka (ttc-iosevka) ⟶ – легкий шрифт з- та без засічок розроблений на основі Pragmata Pro, M+ і PF DIN Mono. Його основне призначення — відображення програмного коду. Шрифт підтримує лігатури та понад 2000 латинських, грецьких, кириличних та псевдографічних символів
- JetBrains Mono (ttf-jetbrains-mono) ⟶ – вільний шрифт від JetBrains
- Lucida Typewriter (included in package jreAUR)
- Menlo (ttf-mesloAUR) – покращена версія шрифту Menlo Regular, розробленого Apple для OS X, зі збільшеним проміжком між рядками
- Monaco (ttf-monacoAUR) – пропрієтарний шрифт, розроблений Apple для OS X
- Monofur (ttf-monofur)
- Mononoki (ttf-mononokiAUR) – шрифт для програмування
- Source Code Pro (adobe-source-code-pro-fonts, міститься в ttf-google-fonts-gitAUR)
Корисні сайти:
- список шрифтів Тревора Ловінґа
- Slant: Який шрифт найкращий для програмування?
- Stack Overflow: рекомендовані шрифти для програмістів
- програмні шрифти - перевірка
- порівняння шрифтів для програмування
- шрифт від Typogram
Sans-serif
- Andika (ttf-andikaAUR)
- Cantarell (cantarell-fonts) – Default font supplied with GNOME, it is required by the GNOME and GTK 3 related packages
- DMCA Sans Serif (ttf-dmcasansserifAUR) – General purpose sans serif font metric-compatible with Microsoft Consolas
- Fira Sans (ttf-fira-sans, 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) – A common substitute for Helvetica and Arial, see #Families
- Inter UI (inter-font) – Designed for user interfaces
- Jost* (otf-jostAUR) – An open-source typeface based on Futura
- Liberation Sans (ttf-liberation) – A common substitute for Helvetica and Arial, see #Families
- Montserrat (montserrat-otfAUR) – An open source font that shares similarities with Gotham and Proxima Nova
- Nunito (ttf-nunitoAUR) – An open source font with rounded terminal, hence shares similarities with Gotham Rounded and Proxima Soft
- Open Sans (ttf-opensans) – Sans serif font commissioned by Google, based on Droid sans but slightly wider.
- PT Sans (ttf-google-fonts-gitAUR) – 3 major variations: normal, narrow, and caption - Unicode: Latin, Cyrillic
- Source Sans (adobe-source-sans-fonts) – Open source sans serif font from Adobe with a design based on News Gothic and Franklin Gothic
- Tahoma (Wine Replacement) (ttf-tahomaAUR) – Open source substitute for Tahoma developed by the Wine project. It was created because many Windows applications expected Tahoma to be available
Serif
- Bitstream Charter (ttf-bitstream-charterAUR, otf-bitstream-charterAUR) – Originally a commercial font designed by Matthew Carter and shares similarities with Georgia. A version was released under a free license and later converted to modern formats (provided as the aforementioned packages).
- Bodoni* (otf-bodoniAUR) – An open-source Bodoni revival
- Crimson (otf-crimson) – An open-source font that shares similarities with Minion
- EB Garamond (ebgaramond-otfAUR) – An open-source Garamond revival, the aforementioned package is the version developed by Octavio Pardo
- FreeSerif (gnu-free-fonts) – Visually similar to Times New Roman but metrically different, see #Families
- Gentium (gentium-plus-font) – Unicode: Latin, Greek, Cyrillic, Phonetic Alphabet
- Heuristica (ttf-heuristicaAUR) – Based on a version of Utopia that was released under a free license
- Liberation Serif (ttf-liberation) – Metric-compatible with Times New Roman but visually distinct, see #Families
- Libre Baskerville (ttf-librebaskervilleAUR) – An open-source Baskerville revival designed by Impallari Type
- Libre Caslon (otf-libre-caslonAUR) – An open-source Caslon revival designed by Impallari Type
- Linux Libertine (ttf-linux-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)
- TeX Gyre Termes (tex-gyre-fonts) – Visually similar to Times New Roman (but there are some minor metric differences), see #Families
- Tinos (ttf-croscore) – Metric-compatible with Times New Roman but visually distinct (and looks similar to Liberation Serif), see #Families
Unsorted
- ttf-cheapskateAUR – Font collection from dustismo.com
- ttf-junicode – Junius font containing almost complete medieval latin script glyphs
- ttf-mph-2b-damaseAUR – Covers full plane 1 and several scripts
- xorg-fonts-type1 – IBM Courier and Adobe Utopia sets of PostScript fonts
- all-repository-fontsAUR – Meta package for all fonts in the official repositories.
- ttf-google-fonts-gitAUR – A huge collection of free fonts (including Ubuntu, Inconsolata, Roboto, etc.) - Note: Your font dialog might get very long as >100 fonts will be added.
Non-latin scripts
Ancient Scripts
- ttf-ancient-fontsAUR – Font containing Unicode symbols for Aegean, Egyptian, Cuneiform, Anatolian, Maya, and Analecta scripts
Arabic
- ttf-amiriAUR – A classical Arabic typeface in Naskh style pioneered by Amiria Press. Its Latin characters are based on Crimson (otf-crimson) [1] [2]
- ttf-arabeyes-fontsAUR – Collection of free Arabic fonts
- ttf-qurancomplex-fontsAUR – Fonts by King Fahd Glorious Quran Printing Complex in al-Madinah al-Munawwarah
- ttf-sil-lateefAUR – Unicode Arabic font from SIL
- ttf-sil-scheherazadeAUR – Unicode Arabic font from SIL (Alternative for Traditional Arabic font)
Bengali
Read Localization/Bengali#Fonts for details.
Braille
- ttf-ubrailleAUR – Font containing Unicode symbols for braille
Chinese, Japanese, Korean, Vietnamese
Pan-CJK
- Adobe Source Han fonts – Large collection of fonts which comprehensively support Simplified Chinese, Traditional Chinese, Japanese, and Korean, with a consistent design and look.
- adobe-source-han-sans-otc-fonts – Sans fonts
- adobe-source-han-serif-otc-fonts – Serif fonts
- noto-fonts-cjk – Large collection of fonts which comprehensively support Simplified Chinese, Traditional Chinese, Japanese, and Korean, with a consistent design and look. It is currently a rebadged version of adobe-source-han-sans-otc-fonts.
Chinese
See Localization/Chinese#Fonts.
Japanese
See Localization/Japanese#Fonts.
Korean
See Localization/Korean#Fonts.
Vietnamese
- ttf-hannom – Vietnamese TrueType font for chữ Nôm characters
Cyrillic
See also #Latin script.
- ttf-paratypeAUR – Font family by ParaType: sans, serif, mono, extended cyrillic and latin, OFL license
- otf-russkopisAUR – A free OpenType cursive font for Cyrillic script
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-gfsAUR – Selection of OpenType fonts from the Greek Font Society
- ttf-mgopenAUR – Professional TrueType fonts from Magenta
Hebrew
- opensiddur-hebrew-fontsAUR – Large collection of Open-source licensed Hebrew fonts. There are also few Latin, Greek, Cyrillic, Arabic, and Amharic.
- culmusAUR – Nice collection of free Hebrew fonts.
- alefbetAUR – 2 Hebrew fonts (at the moment): the commonly used "David Libre", and the handwriting font "Gveret Levin".
- ttf-ms-fontsAUR – contains Arial and other fonts.
Indic
Khmer
- ttf-khmer – Font covering glyphs for Khmer language
- Hanuman (ttf-google-fonts-gitAUR)
Mongolic and Tungusic
- ttf-abkaiAUR – Fonts for Sibe, Manchu and Daur scripts (incomplete, currently in development)
Persian
- persian-fontsAUR – Meta package for installing all Persian fonts in AUR.
- borna-fontsAUR – Borna Rayaneh Co. Persian B font series.
- iran-nastaliq-fontsAUR – A free Unicode calligraphic Persian font.
- iranian-fontsAUR – Iranian-Sans and Iranian-Serif Persian font family.
- ir-standard-fontsAUR – Iran Supreme Council of Information and Communication Technology (SCICT) standard Persian fonts.
- persian-hm-ftx-fontsAUR – A Persian font series derived from X Series 2, Metafont and FarsiTeX fonts with Kashida feature.
- persian-hm-xs2-fontsAUR – A Persian font series derived from X Series 2 fonts with Kashida feature.
- gandom-fontsAUR, parastoo-fontsAUR, sahel-fontsAUR, samim-fontsAUR, shabnam-fontsAUR, tanha-fontsAUR, vazirmatn-fontsAUR, vazir-code-fontsAUR – Beautiful Persian fonts made by Saber RastiKerdar.
- ttf-yasAUR – The Yas Persian font series (with hollow zero).
- ttf-x2AUR – Free fonts with support for Persian, Arabic, Urdu, Pashto, Dari, Uzbek, Kurdish, Uighur, old Turkish (Ottoman) and modern Turkish (Roman).
Tai–Kadai
- fonts-tlwgAUR – Collection of scalable Thai fonts
- ttf-laoAUR – Lao TTF font (Phetsarath_OT)
Tibeto-Burman
- ttf-tibetan-machine – Tibetan Machine TTFont
- ttf-sil-padaukAUR – Unicode font that supports the many diverse languages that use the Myanmar script
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 without any configuration once you have at least one emoji font installed of supported format. Emoji font fallback according to the standard requires extra code to handle emoji.
For the discovery and input of Emoji see List of applications/Utilities#Text input.
Software | CBDT/CBLC | SBIX | COLR/CPAL | SVG | Emoji font fallback |
---|---|---|---|---|---|
Freetype | Yes | Yes | Yes | No | – |
Pango | Freetype | Yes | |||
WebKitGTK | Freetype | Yes | |||
Qt | Freetype | No [3] [4] [5] | |||
Chromium | Freetype | Yes | |||
Firefox | Freetype | Yes | No, see Firefox#Font troubleshooting for workaround. |
CBDT/CBLC:
- noto-fonts-emoji – Google's open-source Emoji 14.0.
- ttf-joypixels – EmojiOne creator's proprietary Emoji 13.1.
- ttf-twemojiAUR – Twitter's open-source Emoji 13.0.
SVG:
- otf-openmojiAUR – German University of Design in Schwäbisch Gmünd open-source Emoji 13.0.
- ttf-twemoji-colorAUR – Twitter's open-source Emoji 13.0.
Outline only:
- ttf-symbolaAUR – provides many Unicode symbols, including emoji.
Kaomoji are sometimes referred to as "Japanese emoticons" and are composed of characters from various character sets, including CJK and Indic fonts. For example, the following set of packages covers most of existing kaomoji: gnu-free-fonts, ttf-arphic-uming, and ttf-indic-otf.
Math
- Computer Modern (ttf-cm-unicodeAUR, otf-cm-unicodeAUR)
- Computer Modern (otf-latin-modern, otf-latinmodern-math) – Improved version used in LaTeX
- STIX fonts (otf-stixAUR) – Released under a royalty-free license and designed to be a math compansion of Times New Roman. The current version is called STIX Two Math.
- TeX Gyre math fonts (tex-gyre-math-fontsAUR) – Math compansions of TeX Gyre fonts (see #Families). Notably, TeX Gyre Termes Math is a math compansion of Times New Roman.
- XITS fonts (otf-xitsAUR) – A fork of STIX and is therefore a math compansion of Times New Roman. XITS and STIX Two Math have similar levels of completeness for mathematical symbols and alphabets [7], but do have some visual differences.
Additionally, texlive-core and texlive-fontsextra contain many math fonts such as Latin Modern Math and STIX fonts. See TeX Live#Making fonts available to Fontconfig for configuration.
Other operating system fonts
- ttf-mac-fontsAUR - Apple MacOS TrueType fonts
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>
- If you use a Chinese locale, set
LC_LANG
tound
to make this work. Otherwise both English and Chinese text will be rendered in the Chinese font. - After changing the configuration run
fc-match -a monospace | 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#Replace or set default fonts.
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 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.
Tips and tricks
List all installed fonts
You can use the following command to list all installed Fontconfig fonts that are available on your system.
$ fc-list
List installed fonts for a particular language
Applications and browsers select and display fonts depending upon fontconfig preferences and available font glyph 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 glyph:
$ 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
List installed fonts for a particular Unicode character
To search for monospace fonts supporting a particular Unicode codepoint:
$ fc-match -s monospace:charset=1F4A9
Set terminal font on-the-fly
For terminal emulators that use X resources, e.g. xterm or rxvt-unicode, fonts can be set by using escape sequences. Specifically, echo -e "\033]710;$font\007"
to change the normal font (*font
in ~/.Xresources
), and replace 710
with 711
, 712
, and 713
to change the *boldFont
, *italicFont
, and *boldItalicFont
, respectively.
$font
uses the same syntax as in ~/.Xresources
and can be anything the terminal emulator will support. (Example: xft:dejavu sans mono:size=9
)
Application-specific font cache
Matplotlib (python-matplotlib or python2-matplotlibAUR) 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 [8].
BiDirectional text in terminal
Run BiCon (bicon-gitAUR) in order to display correctly Arabic and Hebrew text inside the terminal.
See also
- State of Text Rendering
- Font Library - Fonts under Free licenses
- Fonts on screenshots.debian.net