Comment connaissez-vous le nom correct à utiliser pour les polices X11 pour XTerm * faceName ou xterm -fa <NAME>?

17

J'utilise Mac OS X 10.8 et XQuartz 2.7.2. J'ai téléchargé et placé plusieurs polices TrueType nommées *.ttfdans mon /Users/<name>/.fontsrépertoire. Lors de l'exécution de XQuartz, plusieurs fichiers, y compris, fonts.dirsont créés. Ce fichier contient les noms de police X11 de divers encodages, etc. pour chaque police que j'ai installée.

Mon problème est que je ne peux pas toujours "trouver" le nom correct à utiliser dans xterm -fa <NAME>ou dans mon .Xresources XTerm*faceNameentrée. Pour certaines polices, le nom de la police de base comme indiqué dans le nom détaillé de la police X11 dans le fonts.dirfichier fonctionne alors que pour d'autres, il ne fonctionne pas.

Jason Waldrop
la source
1
Si cela peut vous aider: la page de manuel FreeBSD 10.2 pour xterm (1) inclut des informations sur -faet la ressource faceName .
Graham Perrin

Réponses:

23

Le one-liner suivant m'a souvent beaucoup aidé à trouver le nom de police correct:

$ fc-list | cut -f2 -d: | sort -u

Surtout avec des polices japonaises comme 'IPAX0208Mincho', je n'aurais jamais pu deviner le nom correct. Si cela ne vous dérange pas un peu plus d'effort de frappe, vous préférerez peut-être même

$ fc-list | cut -f2 -d: | sort -u | less -r

pour obtenir une sortie paginée.

erreur de syntaxe
la source
5

Vous pouvez utiliser xfontsel pour obtenir le bon nom:

$ xfontsel

entrez la description de l'image ici

Choisissez la police qui vous intéresse, puis cliquez sur le bouton "Sélectionner". Cela copiera le nom de la police dans le presse-papiers. Utilisez ce nom pour exécuter xterm. Par exemple:

$ xterm -font -adobe-helvetica-*-r-normal-*-12-120-*-*-*-*-*-*

Je ne peux pas le faire fonctionner sur mon système (Linux) en utilisant "-fa" mais "-font" fonctionne.

terdon
la source
1
Oui, je savais utiliser xfontsel pour obtenir le nom de la police X11 et utiliser xterm -font pour le sélectionner. Ce qui est étrange, c'est que pour certaines polices, je peux utiliser xterm -fa <nom de police simple> et cela fonctionne très bien sur d'autres polices. Je pense que vous devez avoir une orthographe très spécifique du <nom de la police simple> parce que si je prends une police là où elle fonctionne et que je change une lettre, elle ne fonctionne plus. Donc, ma question de base est de savoir comment déterminer systématiquement le <nom de police simple> "correct" de telle sorte que xterm -fa fonctionne.
Jason Waldrop
@JasonWaldrop Ah. Dans ce cas, je suis perplexe.
terdon
Si cela aide (à partir de la page de manuel): "… bien que xfd accepte une option" -fa "pour désigner les polices FreeType), xfontsel n'a pas été étendu de la même manière ..."
Graham Perrin
@JasonWaldrop vous pourriez être intéressé par le commentaire ci-dessus.
terdon
0

Si vous utilisez FontBook pour charger la police, il affichera le nom correct à utiliser avec xterm -fa.

Jason Waldrop
la source
0

Ce qui manque, ce sont des entrées dans le fonts.aliasfichier:

/usr/share/X11/fonts/75dpi/fonts.alias

Ce fichier fournit des noms courts ("alias") pour les polices X Window installées. Lorsque vous essayez d'utiliser un nom court qui n'est pas dans le fichier, vous obtenez un comportement comme celui-ci au démarrage de xterm:

lansdale:~> xterm -xrm \*font:courr12
xterm: cannot load font "courr12"

(Le xterm arrive et fonctionne avec une police différente par défaut)

Le fonts.aliasfichier existe en raison de la grande longueur des noms de police X11. Par exemple, courr12 est le nom abrégé de:

-adobe-courier-medium-r-normal--12-120-75-75-m-70-iso10646-1

[Les noms longs sont en fait 14 champs modifiables différents assemblés avec des tirets / tirets. Exécutez le programme xfontsel pour les voir; il commencera par tous les champs affichés avec un astérisque, ce qui signifie qu'ils ne sont pas définis sur quelque chose de spécifique.]

Chaque ligne du fichier commence par un nom court (un alias), un blanc, puis le nom long vers lequel il pointe / fait référence. De cette façon, vous n'avez pas à utiliser le nom long tout le temps, il vous suffit de configurer un alias et de l'utiliser. Lorsque vous mettez une nouvelle ligne dans le fichier, vous décidez quel sera le nom court, seul le nom complet du X11 doit avoir un fichier de police installé sur le système.

Lorsque j'ai fait mes premiers pas sur les systèmes Unix dans les années 1990, je suis tombé sur courr12 et j'ai plus tard voulu le faire (taille Courier 'Roman' 12) pour mes xterms. Sur HP / UX et Solaris, le fonts.aliasfichier avait déjà courr12, donc je pouvais simplement mettre "XTerm*font: courr12"mon .Xdefaultsfichier et tout fonctionnerait bien.

user855923
la source