Как определить, какой файл шрифта выбран для псевдонима общего системного шрифта?

14

В Fedora 22 в Системных настройках KDE (plasma) -> Шрифт -> Шрифты для параметра «Общие» задано «Sans Serif 10», для «Фиксированная ширина» - «Monospace 10», для «small» - «Sans Serif». 8 ", для" Панели инструментов "-" Sans Serif 9 ", для" Меню "-" Sans Serif 10 ", а для" Заголовка окна "-" OxygenSans 10 ".

Как определить, какой файл шрифта используется для универсального псевдонима Monospace? (Я уверен, что могу следовать той же процедуре, чтобы выяснить Sans Serif.)

fc-listпоказывает 30 файлов, но fc-list | grep -I monospaceничего не показывает. («Monospace» должен быть псевдонимом, а не именем реального шрифта.)

fc-match --allпоказывает 30 файлов, но также fc-match | grep -I monospaceничего не показывает.

ls -la ~/.config | grep fontничего не показывает (Нет ~ / .config / fontconfig)

/etc/fonts/fonts.conf перечисляет каталоги шрифтов, принимает устаревшие псевдонимы и указывает на /etc/fonts/conf.d.

/etc/fonts/conf.d/60-latin.conf - это файл XML с псевдонимом элемента, с дочерним семейством («monospace») и предпочитаемыми семействами («Битстрим Vera Sans Mono», «DejaVu Sans Mono», «Incolsolata») , "Andale Mono", "Новый курьер", "Cumberland AMT", "Luxi Mono", "Nimbus Mono L", Nimbus Mono "и" Courier ").

/etc/fonts/conf.d/61-oxygen-mono.conf имеет детскую семью ("monospace") и предпочитает семью ("Oxygen Mono").

/etc/fonts/conf.d/69-gnu-free-mono имеет детскую семью ("monospace") и предпочитает семью ("FreeMono").

/etc/fonts/conf.d/69-unifont.conf имеет детскую семью («monospace») и предпочитает семью («FreeMono»).

Теперь, в этом случае, единственное предпочтительное семейство, указанное выше, это «Oxygen Mono» (в OxygenMono-Regular.ttf), поэтому система должна использовать этот шрифт.

Но что, если некоторые из других предпочитаемых семей были установлены?

Разве нет простой команды, которая позволяет вам увидеть, на что отображается общий псевдоним системы, такой как «Monospace»? Я вижу только fc- {cache, cat, list, match, pattern, query, scan и validate} в моей системе, и только два, которые выглядят так, как будто они могут выполнить это (list, match), похоже, не имеют этого особенность.

user1902689
источник

Ответы:

15

fc-match - это утилита для использования. Например, fc-match monospaceскажет вам шрифт, используемый для моноширинного пространства, и fc-match -s monospaceскажет вам резервные шрифты, также по порядку. Первый шрифт в списке будет тем, что используется в большинстве случаев, а все последующие шрифты являются резервными шрифтами для отсутствующих глифов.

Рейчел Фрей
источник