Modification des polices monospaces à l'échelle du système

11

Par défaut, la police à espacement fixe pour ma distribution (Trisquel) est la police A. Je voudrais la remplacer par la police B. Il y a quelque temps, j'ai réussi à modifier partiellement la police C, mais j'ai depuis oublié cette méthode et je ne peux pas reproduisez-le.

Le problème est que maintenant je peux voir les trois polices dans des contextes monospaces. Utilisant gnome-tweak-toolà la fois en tant que root et utilisateur, j'ai changé le champ "monospace" en police B. J'ai également fait cela via la ligne de commande sur gsettings, à nouveau en tant que root et utilisateur. Toutefois:

  • Si une page Web demande le style {font-family: monospace;}, la police C s'affiche. Edit: c'était un paramètre dans Firefox, que j'ai changé.
  • Dans les menus de polices Inkscape et gedit, il existe une police appelée simplement "Monospace", qui est la police A. Les polices d'interface utilisateur par défaut de ma distribution, que j'ai modifiées, s'affichent également dans ces menus sous les noms "Sans" et "Serif".
  • Lorsque les messages Thunderbird que j'ai reçus sont formatés en texte brut, ils sont affichés dans la police A. Sauf modification explicite, les messages que j'écris s'affichent également dans les polices "Sans" et "Monospace".

Comment puis-je résoudre ce problème, de sorte que la police B s'affiche dans tous les contextes décrits ci-dessus et que la mystérieuse police «Sans» soit remplacée par la police d'interface utilisateur que j'utilise actuellement?

Lee Sleek
la source

Réponses:

11

Ajoutez ceci à votre ~/.config/fontconfig/fonts.conffichier pour définir la police B comme police monospace par défaut

 <match target="pattern">
  <test name="family" qual="any">
   <string>monospace</string>
  </test>
  <edit binding="strong" mode="prepend" name="family">
   <string>Font B</string>
  </edit>
 </match>

Ou pour /etc/fonts/local.confle définir à l'échelle du système

contemplateur
la source
1
Le fichier n'existait pas, je l'ai donc créé et y ai ajouté ce texte, entouré de <? Xml version = "1.0"?> <! DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> et </fontconfig>. Cela n'a pas fonctionné, même après avoir exécuté sudo fc-cache -f -v.
Lee Sleek
Pour être clair, pas besoin d'ajouter <? Xml ... ou autre chose à ce fichier. C'est exactement comme indiqué ci-dessus. Sauver. Ensuite, vous pouvez tester si son fonctionnement avec: fc-match monospace(assurez-vous que "Font B" existe sous ce nom). Si vous avez besoin de plusieurs règles, entourez-la de <fontconfig>balise.
lepe
Cela fonctionne, mais comment définir également la taille? J'ai essayé Font B 14et ça n'a pas marché.
legends2k
4

J'ai trouvé que cela fonctionnait :

gsettings set org.gnome.desktop.interface monospace-font-name 'Noto Mono 11' (Probablement pas toutes les applications, gedit change instantanément)

aularon
la source
0

Je l'ai découvert en recherchant le nom de la police A. dans le système. Il devrait y avoir un fichier (plus précisément, un lien vers un fichier) "/etc/fonts/conf.d/01-trisquel.conf". Vous devrez modifier ce fichier pour inclure les noms des polices choisies en priorité (au-dessus des entrées <famille> existantes).

Lee Sleek
la source