fontconfig: не может изменить семейство шрифтов

1077
Eike Cochu

это мой ~ / .config / fontconfig / fonts.conf

<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd">  <fontconfig>  <match target="font"> <edit name="antialias" mode="assign"><bool>true</bool></edit> <edit name="hinting" mode="assign"><bool>true</bool></edit> <edit name="hintstyle" mode="assign"><const>hintfull</const></edit> <edit name="lcdfilter" mode="assign"><const>lcddefault</const></edit> <edit name="rgba" mode="assign"><const>rgb</const></edit> </match>  <alias> <family>monospace</family> <prefer> <family>Meslo LG S DZ Regular for Powerline</family> <family>Inconsolata</family> <family>Menlo</family> <family>DejaVu Sans Mono</family> </prefer> </alias>  <alias> <family>sans-serif</family> <prefer> <family>DejaVu Sans</family> <family>Droid Sans</family> <family>Ubuntu</family> <family>Helvetica</family> </prefer> </alias>  <alias> <family>serif</family> <prefer> <family>DejaVu Serif</family> <family>Bitstream Vera Serif</family> <family>Times New Roman</family> </prefer> </alias>  </fontconfig> 

Как вы можете видеть, я хочу, чтобы Meslo использовался как моноширинный шрифт. Я получил имя от fc-list | grep Meslo:

/usr/share/fonts/OTF/Meslo LG M DZ Regular for Powerline.otf: Meslo LG M DZ for Powerline:style=RegularForPowerline /usr/share/fonts/OTF/Meslo LG L DZ Regular for Powerline.otf: Meslo LG L DZ for Powerline:style=RegularForPowerline /usr/share/fonts/OTF/Meslo LG L Regular for Powerline.otf: Meslo LG L for Powerline:style=RegularForPowerline /usr/share/fonts/OTF/Meslo LG S DZ Regular for Powerline.otf: Meslo LG S DZ for Powerline:style=RegularForPowerline /usr/share/fonts/OTF/Meslo LG M Regular for Powerline.otf: Meslo LG M for Powerline:style=RegularForPowerline /usr/share/fonts/OTF/Meslo LG S Regular for Powerline.otf: Meslo LG S for Powerline:style=RegularForPowerline 

Файл конфигурации включен в /etc/fonts/conf.d/50-user.conf:

<include ignore_missing="yes" prefix="xdg">fontconfig/fonts.conf</include> 

Я побежал fc-cache -vfи перезагрузился, затем попытался fc-match monospaceи ожидал Meslo, но вместо этого получил Inconsolata. Зачем?

2

2 ответа на вопрос

0
Gexos

I used this snippet in the past with success,

<!-- Scaling a chosen font with Fontconfig. By poige, 2008. --> <match target="font"> <test name="family"> <string>Liberation Sans</string> </test> <edit name="pixelsize" mode="assign"> <times><name>pixelsize</name>, <double>1.1</double></times> </edit> </match> 

Here is the source of this snippet, but in Russian language.

Это не меняет моноширинный шрифт по умолчанию, а скорее меняет размер шрифта Eike Cochu 10 лет назад 0
0
Eike Cochu

Очевидно, у меня была опечатка в моей фамилии, и я fc-list | grep Mesloскопировал жирную часть в <family>тег:

/ usr / share / fonts / OTF / Meslo LG M DZ Regular для Powerline.otf: Meslo LG M DZ для Powerline : стиль = RegularForPowerline

мой конфиг теперь выглядит так:

<alias> <family>monospace</family> <prefer> <family>Meslo LG M DZ for Powerline</family> <family>DejaVu Sans Mono</family> <family>Inconsolata</family> </prefer> </alias> 

и работает как положено

Похожие вопросы