À partir d'aujourd'hui, je rencontre des problèmes de rendu de police avec rxvt-unicode. Plus précisément, avec de nombreuses polices, j'obtiens une abondance d'espace supplémentaire entre les caractères. Dans d'autres polices, rxvt refuse de modifier les tailles.
Voici un exemple du problème d'espacement entre urxvt et xterm.
Les ressources des polices:
URxvt*font: xft:Terminus:medium:size=10
xterm*faceName: xft:Terminus:medium:size=10
Et les rendus
- urxvt
- xterm
J'ai essayé toutes les permutations d'indices et d'anticrénelage. La modification de la taille ou de la taille des pixels redimensionne la police dans urxvt, mais cela augmente également l'espacement supplémentaire.
Quelqu'un a-t-il des idées que je peux essayer de résoudre ce problème?
xterm
utiliser réellement la même police. LeJ
et le0
sont nettement différents. Vous pouvez le confirmer en utilisant une police inexistante dans le fichier de ressources (xterm*faceName: xft:Nosuchfont:medium:size=10
). S'il a toujours la même apparence, ce n'est évidemment pas Terminus.gvim
lors de l'utilisation de ma configuration sur un système où la police que je voulais n'était pas installée.xft
ou quelque chose retombe sur une police non monospace et c'est ainsi qu'ils apparaissent.Réponses:
Urxvt a une option pour crénage de base:
letterSpace
. Voirman urxvt
:Vous pouvez donc ajuster l'espacement en ajoutant une ligne à votre
~/.Xresources
, comme ceci:Remarque: il est difficile de le dire à partir de votre première capture d'écran, mais il semble que Urxvt retombe dans la police par défaut car il ne peut pas trouver ou charger Terminus, d'où le grand espacement. Terminus est une police bitmap (qui est probablement désactivée par défaut), vous devez donc utiliser
xfontsel
pour copier la chaîne de police correcte dans votre définition.Voir la page Arch Wiki sur X Logical Font Description pour une description détaillée du fonctionnement de ce système.
la source
urxvt -letsp -2
c'était nécessaire pour moi. L'utilisation-1
était meilleure, mais je ne m'en étais pas rendu compte au départ car cela ne suffisait pas.fc-match <font-name>
au lieu dexfontsel
s'il n'est pas installé ( nom-police est l'expression donnée dansURxvt*font
le nom de police de votre ligne). Si cela apparaît avec une valeur correspondant à l'expression, la police sera chargée correctement. par exemple, sifc-match "Noto Mono"
donneDejaVuSans.ttf: "DejaVu Sans" "Book"
alors il peut être considéré comme une expression de police incorrecte.Il s'avère qu'une règle a été activée sur mon système qui bloquait les polices bitmap telles que Terminus.
Cette règle (sur mon système) était
/etc/fonts/conf.d/70-no-bitmap-fonts
et contenait:J'ai supprimé cela du
conf.d
répertoire et mes polices s'affichent à nouveau correctementurxvt
.la source
Veuillez noter qu'il existe un rapport de bogue concernant l'espacement des lettres.
J'ai eu des problèmes similaires. En suivant les recommandations de la discussion de bug, j'ai défini
Xft.rgba: none
etXft.hintstyle: hintfull
dans~/.Xdefaults
(au lieu deXft.rgba: rgb
etXft.hintstyle: hintslight
). Cela m'a corrigé - j'ai utilisé Ubuntu Mono comme police, cependant.la source
Ma solution était simple:
Maintenant ça marche parfaitement.
la source
Cela peut provenir du fichier de police réel (Monospace dans mon cas) plus probablement que de quoi que ce soit dans l'urxvt. Si la police déclare (par erreur) certains glyphes trop larges, urxvt est également obligé de rendre la grille plus large.
Dans mon cas, la police "OK" que j'ai trouvée était Bitstream Vera Sans Mono.
la source