Questions générales sur Manjaro Linux.
S'il vous plaît, avant de poster, essayez la fonction de recherche du forum.
Répondre

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#1Messageil y a 2 semaines

Bonjour,

J'utilise Urxvtd comme terminal. Cependant j'ai des problèmes d'affichage pour certains caractères chinois comme ici dans ncmpcpp (mais aussi quand je navigue dans des fichiers ou dossiers via cd) :

Image

Je n'ai pas ce problème d'affichage si j'utilise un autre terminal sur le même ordinateur.

Voici ma configuration pour Urxvtd :
! ===================
! urxvt
! ===================

URxvt*scrollBar: false
URxvt*scrollBar_right: true
URxvt*scrollBar_floating: true
URxvt*letterSpace: 0
URxvt.internalBorder: 10
URxvt*font: xft:MesloLGS NF:size=9
URxvt*boldFont: xft:MesloLGS NF:bold:size=9
URxvt*cursorBlink: true
URxvt.iso14755: false
URxvt*utf8: true
URxvt.keysym.C-equal: resize-font:bigger
URxvt.keysym.C-parenright: resize-font:smaller

URxvt.perl-ext-common: default,matcher
URxvt.url-launcher: chromium
URxvt.matcher.button: 3

! URxvt*perl-ext: matcher
! URxvt.perl-ext-common: default
! Prise en charge des onglets
! shift+bas ou clic sur NEW= ouvrir nouvel onglet,
! shift + fleche gauche/droite=navigation dans les onglets.
! ctrl + fleche gauche/droite= deplacement onglet
! ctrl+d ou taper exit = fermer onglet/terminal

! Dimension du terminal
URxvt*geometry: 70x20

##### THIS FILE IS BEING CURRENTLY MANAGED BY URXVTCONFIG #####
##### CHANGES DONE TO THIS FILE MANUALLY MAY AFFECT THE FUNCTIONALITY ######
##### PROCEED WITH CAUTION! #####

! special colors
*.foreground: #93a1a1
*.background: #002b36
*.cursorColor: #93a1a1
! black
*.color0: #002b36
*.color8: #657b83
! red
*.color1: #dc322f
*.color9: #dc322f
! green
*.color2: #859900
*.color10: #859900
! yellow
*.color3: #b58900
*.color11: #b58900
! blue
*.color4: #268bd2
*.color12: #268bd2
! magenta
*.color5: #6c71c4
*.color13: #6c71c4
! cyan
*.color6: #2aa198
*.color14: #2aa198
! white
*.color7: #93a1a1
*.color15: #fdf6e3

*antialias: false
*autohint: false

URxvt.perl-ext-common: default,matcher
URxvt.url-launcher: firefox
URxvt.matcher.button: 1

URxvt.depth: 32
URxvt.background: rgba:0000/0000/0000/dddd
URxvt*borderLess: true

URxvt.keysym.Control-Up:\033[1;5A
URxvt.keysym.Control-Down:\033[1;5B
URxvt.keysym.Control-Left:\033[1;5D
URxvt.keysym.Control-Right:\033[1;5C
URxvt.keysym.M-Down:\033[1;3B
URxvt.keysym.M-Up:\033[1;3A
URxvt.keysym.M-Left:\033[1;3D
URxvt.keysym.M-Right:\033[1;3C
Comme vous pouvez le voir, j'utilise ces fonts :

URxvt*font:           xft:MesloLGS NF:size=9
URxvt*boldFont:             xft:MesloLGS NF:bold:size=9
je suis obligé d'utiliser MesloLGS NF car j'utilise powerlevel10k comme thème de mon oh my zsh et cela nécessite ces fonts.

J'au essayé de changer pour des fonts "chinoises" Google CJK mais cela n'a rien changé. Et de toute façon l'affichage dans un autre terminal (donc utilisant MesloLGS NF) est ok. je pense donc que le souçis vient ou d'Urxvtd ou de ma configuration d'Urxvtd.

Merci de votre aide.

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#2Messageil y a 1 semaine

Bonjour,
Je mets en vrac ce qui m'inspire ton message :
damien674 a écrit : il y a 2 semaines

URxvt*font:           xft:MesloLGS NF:size=9
URxvt*boldFont:             xft:MesloLGS NF:bold:size=9
Les polices ont 4 déclinaisons je pense : normale, gras, italique et gras italique. Tu devrais peut-être essayer de compléter.
damien674 a écrit : il y a 2 semaines je suis obligé d'utiliser MesloLGS NF car j'utilise powerlevel10k comme thème de mon oh my zsh et cela nécessite ces fonts.
Il est possible de configurer plusieurs polices, en les séparant par des virgules. Si un caractère n'est pas présent dans la 1ere police, il sera recherché dans la 2ième et ainsi de suite.
damien674 a écrit : il y a 2 semaines J'au essayé de changer pour des fonts "chinoises" Google CJK mais cela n'a rien changé.
Est-ce que ça ne pourrait pas être un problème de taille de police? Il n'y aurait pas assez de pixel dispo pour dessiner certains sinogrammes, ça voudrait le coup d'essayer avec disons une taille à 20 au lieu de 9 pour être sûr d'écarter cette hypothèse.
damien674 a écrit : il y a 2 semaines Et de toute façon l'affichage dans un autre terminal (donc utilisant MesloLGS NF) est ok.
Le "donc" me met le doute, s'agit-il d'une autre fenêtre urxvt ou un autre terminal (alacritty, kitty, ...) ?
Si c'est un autre terminal, tu peux essayer de récupérer les polices utilisées pour les ajouter dans urxvt en plus de ta police actuelle.

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#3Messageil y a 1 semaine

Salut,
fbe a écrit : il y a 1 semaine Bonjour,
Je mets en vrac ce qui m'inspire ton message :
damien674 a écrit : il y a 2 semaines je suis obligé d'utiliser MesloLGS NF car j'utilise powerlevel10k comme thème de mon oh my zsh et cela nécessite ces fonts.
Il est possible de configurer plusieurs polices, en les séparant par des virgules. Si un caractère n'est pas présent dans la 1ere police, il sera recherché dans la 2ième et ainsi de suite.
Ça pourrait marcher, mais urxvt a souvent eu des difficultés avec les polices non occidentales, il faut espérer qu'il s'est amélioré à ce niveau.
damien674 a écrit : il y a 2 semaines J'au essayé de changer pour des fonts "chinoises" Google CJK mais cela n'a rien changé.
Est-ce que ça ne pourrait pas être un problème de taille de police? Il n'y aurait pas assez de pixel dispo pour dessiner certains sinogrammes, ça voudrait le coup d'essayer avec disons une taille à 20 au lieu de 9 pour être sûr d'écarter cette hypothèse.
J'utilise Terminator, pas de souci avec du japonais ou du chinois en taille 9.
damien674 a écrit : il y a 2 semaines Et de toute façon l'affichage dans un autre terminal (donc utilisant MesloLGS NF) est ok.
Le "donc" me met le doute, s'agit-il d'une autre fenêtre urxvt ou un autre terminal (alacritty, kitty, ...) ?
Si c'est un autre terminal, tu peux essayer de récupérer les polices utilisées pour les ajouter dans urxvt en plus de ta police actuelle.
En général, on déclare une seule police dans la configuration, par exemple pour mon bureau, Liberation Sans et Liberation Mono, pour le terminal Liberation Mono. Si je veux pouvoir afficher des symbôles géométriques ou mathématiques, j'installe la police Symbola, sans avoir à la déclarer dans les configs, pareil pour les caractères asiatiques manquants, il suffit d'installer une police CJK, l'affichage se fait ensuite automatiquement.

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#4Messageil y a 1 semaine

Merci fbe!
fbe a écrit : il y a 1 semaine Bonjour,
Je mets en vrac ce qui m'inspire ton message :
damien674 a écrit : il y a 2 semaines

URxvt*font:           xft:MesloLGS NF:size=9
URxvt*boldFont:             xft:MesloLGS NF:bold:size=9
Les polices ont 4 déclinaisons je pense : normale, gras, italique et gras italique. Tu devrais peut-être essayer de compléter.
Je vais faire ça.
damien674 a écrit : il y a 2 semaines je suis obligé d'utiliser MesloLGS NF car j'utilise powerlevel10k comme thème de mon oh my zsh et cela nécessite ces fonts.

Il est possible de configurer plusieurs polices, en les séparant par des virgules. Si un caractère n'est pas présent dans la 1ere police, il sera recherché dans la 2ième et ainsi de suite.
J'ai essayé mais cela n'a rien changé. Ce que je ne comprends pas c'est pourquoi seulement certains caractères ne sont pas affichés.
damien674 a écrit : il y a 2 semaines J'au essayé de changer pour des fonts "chinoises" Google CJK mais cela n'a rien changé.

Est-ce que ça ne pourrait pas être un problème de taille de police? Il n'y aurait pas assez de pixel dispo pour dessiner certains sinogrammes, ça voudrait le coup d'essayer avec disons une taille à 20 au lieu de 9 pour être sûr d'écarter cette hypothèse.
Essayé, cela n'a rien changé à mon problème.
damien674 a écrit : il y a 2 semaines Et de toute façon l'affichage dans un autre terminal (donc utilisant MesloLGS NF) est ok.

Le "donc" me met le doute, s'agit-il d'une autre fenêtre urxvt ou un autre terminal (alacritty, kitty, ...) ?
Si c'est un autre terminal, tu peux essayer de récupérer les polices utilisées pour les ajouter dans urxvt en plus de ta police actuelle.
Dans cet autre terminal (xfce terminal) j'utilise aussi uniquement MesloLGS NF.

Bref bizarre bizarre, je pense que c'est un souçis avec Uxrvt mais même en leur demandant de l'aide via irc on n'a pas trouvé de solutions.

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#5Messageil y a 1 semaine

Smurf a écrit : il y a 1 semaine Ça pourrait marcher, mais urxvt a souvent eu des difficultés avec les polices non occidentales, il faut espérer qu'il s'est amélioré à ce niveau.
A priori non.

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#6Messageil y a 1 semaine

fbe a écrit : il y a 1 semaine Si c'est un autre terminal, tu peux essayer de récupérer les polices utilisées pour les ajouter dans urxvt en plus de ta police actuelle.
Cet autre terminal est le Xfce terminal, le voici à coté de Urxvtd :

Image

Et les fonts dans le terminal Xfce :

Image

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#7Messageil y a 1 semaine

damien674 a écrit : il y a 1 semaine Et les fonts dans le terminal Xfce :

Image
Ça ne veut pas dire que la police configurée dans le terminal est celle qui affiche tous les caractères. J'ai plusieurs albums de musique japonaise, chinoise et coréenne et certains caractères ne s'affichent pas dans le terminal (xfce, terminator) ou dans Thunar.
Quelque soit la police occidentale que j'utilise, je dois installer une ou plusieurs polices asiatiques pour afficher les caractères manquants. Je ne lis pas le japonais, le chinois ou le coréen, c'est juste pour des raisons esthétiques. :sourire:

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#8Messageil y a 1 semaine

J'ai récupéré 1 des titres de musique qui s'affiche de manière incomplète dans tes captures et installé le paquet rxvt-unicode (version 9.22.10). Tous les caractères s'affichent. Le problème ne vient pas d'urxvt lui-même. Pas le temps de regarder plus en détail la configuration maintenant. Je n'ai pas la mémoire d'avoir trop bidouillé dans les ressources X, mais j'y mettrai pas ma main à couper non plus.

Image

Edit : correction du lien vers l'image

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#9Messageil y a 1 semaine

C'est ce que j'ai d'installé :

Image

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#10Messageil y a 1 semaine

damien674 a écrit : il y a 1 semaine C'est ce que j'ai d'installé :
Les trois premiers de ta liste sont en fait le même paquet, rxvt-unicode, qui a rxvt-unicode-terminfo comme dépendance.
J'ai fait comme fbe, j'ai donc installé rxvt-unicode+rxvt-unicode-terminfo, j'ai désinstallé la police asiatique et installé MesloLGS NF (paquet ttf-meslo-nerd-font-powerlevel10k).
La config pour urxvt :

*.background:#23272B
*.foreground:#EFEFEF
URxvt*geometry: 80x24

URxvt.font: xft:MesloLGS NF:style=Regular:size=11
URxvt.boldFont: xft:MesloLGS NF:style=Bold:size=11
URxvt.italicFont: xft:MesloLGS NF:style=Italic:size=11

URxvt.scrollBar_right: true
Résultat :

Image


À noter que j'ai le même résultat dans Thunar et Terminator, des carrés.
Après réinstallation de la police asiatique, sans toucher à la config d'urxvt :

Image


Ça me donne l'impression que tu as une autre police installé sur ton système, qui gère en partie les caractères asiatiques.

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#11Messageil y a 1 semaine

Ça me donne l'impression que tu as une autre police installé sur ton système, qui gère en partie les caractères asiatiques.
Merci, quelle police asiatique as-tu installé ? Je vais lister les différentes polices chinoises que je peux avoir demain, les enlever et essayer avec la tienne uniquement +MesloLgs.

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#12Messageil y a 1 semaine

damien674 a écrit : il y a 1 semaine Merci, quelle police asiatique as-tu installé ?
C'est adobe-source-han-sans-otc-fonts, qui est bien moins lourde que noto-fonts-cjk, elle permet d'afficher du chinois, du japonais et du coréen. Si tu as besoin d'une police pour afficher le chinois seulement, wqy-microhei, qui est très légère (moins de 5 Mo).

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#13Messageil y a 1 semaine

Bon, j'ai essayé tous vos conseils mais rien ne marche.

Mon terminal Urxvtd n'affiche pas bien les caractères chinois

#14Messageil y a 1 semaine

damien674 a écrit : il y a 1 semaine Bon, j'ai essayé tous vos conseils mais rien ne marche.
Peut être que la police qui pose problème est choisie avant la police asiatique.
Cette commande te permettra de lister les paquets installés concernant les polices pour voir si ça te semble en ordre.

yay -Qi $(yay -Qsq font)|grep "Nom\|Description\|Requis\|Motif"|sed '0~4 a\\'
Répondre