Page 1 sur 1
[LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs (RÉSOLU)
Publié : mar. 30 oct. 2018, 16:01
par Matows
Bonjour !
Premier problème
Je viens vers vous après avoir pas mal cherché : actuellement, quand je fait un simple ls:
Code : Tout sélectionner
Bureau 'Mod'$'\303\250''les' Public listePaquet.txt
Documents Musique 'T'$'\303\251''l'$'\303\251''chargements' save.tmp
Enregistrements 'Nouveau document 1.2018_10_30_10_36_07.0.svg' 'Vid'$'\303\251''os' service.log
Images Projets
Quand je fait un
export LC_CTYPE=fr_FR.UTF-8, tout rentre dans l'ordre dans le terminal en cours d'utilisation.
Je poste quelque retour de commande :
locale
Code : Tout sélectionner
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Ne peut initialiser LC_ALL ? la locale par d?faut: Aucun fichier ou dossier de ce type
LANG=fr_FR.UTF-8
LC_CTYPE=en_US.UTF-8
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE=C
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=
locale -a
Code : Tout sélectionner
locale: Cannot set LC_CTYPE to default locale: No such file or directory
C
POSIX
fr_FR.utf8
cat /etc/locale.conf
cat /etc/locale.gen | grep -v "^#"
sudo grep -R LC_CTYPE /etc :
http://termbin.com/8wf7
J'utilise ZSH avec le thème powerlevel9k
sudo grep -R LC_CTYPE ~/.oh-my-zsh :
http://termbin.com/aaau
Voilà j'ai pas beaucoup d'idée... J'ai changé une ligne qui faisait référence à la locale anglaise dans le thème powerlevel94 mais ça n'a pas donné grand chose.
Second problème
Je sais pas si le problème précédent a à voir, mais il y a des caractères que je ne peux pas voir que ce soit sous Firefox ou Chromium. Par exemple sur wikipedia.org (la page d'accueil) il y a deux langues donc les caractères ne font pas partie des caractère français. Je ne peux pas voir ces caractères.
Et pour le coup, je ne sais pas quel retour de commande vous donnés
Merci d'avoir pris le temps de lire mon poste !
Re: [LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs
Publié : mar. 30 oct. 2018, 19:22
par benjarobin
Bonjour,
On va uniquement traiter du premier problème dans ce sujet. C'est plus simple pour suivre. Je te conseil de créer un 2ième sujet pour le 2ième problème.
Tu ne devrait pas configurer de valeur pour LC_CTYPE via /etc/locale.conf, en effet la valeur LANG est normalement suffisante.
Peux tu donner la sortie de :
Il y a apparemment "quelqu'un" qui a définit la variable
LC_CTYPE
à
en_US.UTF-8
.
Cela vient peut être de ta configuration de oh-my-zsh
Re: [LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs
Publié : mer. 31 oct. 2018, 01:46
par Matows
benjarobin a écrit : ↑mar. 30 oct. 2018, 19:22
Bonjour,
On va uniquement traiter du premier problème dans ce sujet. C'est plus simple pour suivre. Je te conseil de créer un 2ième sujet pour le 2ième problème.
Tu ne devrait pas configurer de valeur pour LC_CTYPE via /etc/locale.conf, en effet la valeur LANG est normalement suffisante.
Peux tu donner la sortie de :
Il y a apparemment "quelqu'un" qui a définit la variable
LC_CTYPE
à
en_US.UTF-8
.
Cela vient peut être de ta configuration de oh-my-zsh
Bonsoir et merci de m'avoir répondu !
Pas de problème, je créerai une deuxième sujet par la suite.
J'avais en effet configurer la valeur de LC_CTYPE dans /etc/locale.conf le mois dernier car cela avait résolu mon problème.
Voici le retour des commandes (sans avoir enlevé LC_CTYPE de /etc/locale.conf) :
env | grep -E "LANG|LC_"
Code : Tout sélectionner
LANG=fr_FR.UTF-8
GDM_LANG=fr_FR.UTF-8
LC_COLLATE=C
LC_CTYPE=en_US.UTF-8
cat /etc/environment
Code : Tout sélectionner
#
# This file is parsed by pam_env module
#
# Syntax: simple "KEY=VAL" pairs on separate lines
#
Et je suis d'accord que cela pourrait venir de ma configuration de oh-my-zsh, mais comment en être sûr ? N'y aurait-il pas une commande permettant de savoir quel programme a modifier LC_CTYPE en dernier ?
Re: [LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs
Publié : mer. 31 oct. 2018, 06:18
par waitnsea
Matows a écrit : ↑mer. 31 oct. 2018, 01:46
N'y aurait-il pas une commande permettant de savoir quel programme a modifier LC_CTYPE en dernier ?
Bonjour,
Il n'y a pas une, mais plusieurs commandes nécessaires, pour avoir des locales correctes
Dans
ce post tu trouveras une petite synthèse, n'oublie pas de lancer le script de vérif en sudo.
Par contre tu devras trouver la cause dans tes .zshhrc - pour ma part j'ai préféré me contenter de la solution du
wiki : uniquement
grml-zsh-config plutôt que "l'usine à gaz" oh-my-zsh, mais tu en as peut-être besoin...
Re: [LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs
Publié : mer. 31 oct. 2018, 14:30
par Matows
waitnsea a écrit : ↑mer. 31 oct. 2018, 06:18
Matows a écrit : ↑mer. 31 oct. 2018, 01:46
N'y aurait-il pas une commande permettant de savoir quel programme a modifier LC_CTYPE en dernier ?
Bonjour,
Il n'y a pas une, mais plusieurs commandes nécessaires, pour avoir des locales correctes
Dans
ce post tu trouveras une petite synthèse, n'oublie pas de lancer le script de vérif en sudo.
Par contre tu devras trouver la cause dans tes .zshhrc - pour ma part j'ai préféré me contenter de la solution du
wiki : uniquement
grml-zsh-config plutôt que "l'usine à gaz" oh-my-zsh, mais tu en as peut-être besoin...
Merci de votre réponse ! Ce script m'a l'air bien pratique
Je poste le retour du script et je retourne bidouiller :
Code : Tout sélectionner
* Parent: 987 /usr/lib/gnome-session-binary
* Terminal: 2108 tilix
* Shell: 2115 /bin/zsh
notice: Tried to guess parent process from $SESSION_MANAGER.
warning: (shell) LC_CTYPE: unsupported locale "en_US.UTF-8"
warning: LC_CTYPE: set by shell but not terminal (en_US.UTF-8 | none)
problem: Shell and terminal have different locale settings.
* Your .bashrc or similar startup scripts may be overriding them.
problem: Your current locale is missing from the system.
* The missing locales are:
- en_US.utf8
* Make sure /etc/locale.gen has the apropriate lines uncommented.
After editing the file, run 'locale-gen' as root.
2 problems found. Here's a quick UTF-8 test for you: --> ★ <--
* a star -- font and terminal are okay.
* 3 question marks -- your terminal does not correctly interpret UTF-8.
* a box or rectangle -- UTF-8 works fine, but you need a better font.
* empty area -- you really need a better font or something.
Juste, si tout fonctionne bien, je n'ai normalement pas besoin de rajouté l'Anglais au locales ?
EDIT : J'ai rien contre les autres configurations disponibles pour ZSH, c'est juste que comme je suis nouveau sous Arch et que il y a plus de choix que sur Ubuntu (il faut bien avoir commencé quelque part
), je prend le temps d'essayer différent DEs, Shells, configs etc.
Re: [LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs
Publié : mer. 31 oct. 2018, 17:01
par waitnsea
Matows a écrit : ↑mer. 31 oct. 2018, 14:30
Je poste le retour du script et je retourne bidouiller :
Code : Tout sélectionner
* Parent: 987 /usr/lib/gnome-session-binary
* Terminal: 2108 tilix
* Shell: 2115 /bin/zsh
notice: Tried to guess parent process from $SESSION_MANAGER.
warning: (shell) LC_CTYPE: unsupported locale "en_US.UTF-8"
warning: LC_CTYPE: set by shell but not terminal (en_US.UTF-8 | none)
problem: Shell and terminal have different locale settings.
* Your .bashrc or similar startup scripts may be overriding them.
problem: Your current locale is missing from the system.
* The missing locales are:
- en_US.utf8
* Make sure /etc/locale.gen has the apropriate lines uncommented.
After editing the file, run 'locale-gen' as root.
2 problems found. Here's a quick UTF-8 test for you: --> ★ <--
* a star -- font and terminal are okay.
* 3 question marks -- your terminal does not correctly interpret UTF-8.
* a box or rectangle -- UTF-8 works fine, but you need a better font.
* empty area -- you really need a better font or something.
Juste, si tout fonctionne bien, je n'ai normalement pas besoin de rajouté l'Anglais au locales ?
Non tes locales ne sont pas correctement configurées, revois chaque étape du post donné, tout y est
Re: [LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs
Publié : jeu. 01 nov. 2018, 00:12
par Matows
waitnsea a écrit : ↑mer. 31 oct. 2018, 17:01
Matows a écrit : ↑mer. 31 oct. 2018, 14:30
Je poste le retour du script et je retourne bidouiller :
Code : Tout sélectionner
* Parent: 987 /usr/lib/gnome-session-binary
* Terminal: 2108 tilix
* Shell: 2115 /bin/zsh
notice: Tried to guess parent process from $SESSION_MANAGER.
warning: (shell) LC_CTYPE: unsupported locale "en_US.UTF-8"
warning: LC_CTYPE: set by shell but not terminal (en_US.UTF-8 | none)
problem: Shell and terminal have different locale settings.
* Your .bashrc or similar startup scripts may be overriding them.
problem: Your current locale is missing from the system.
* The missing locales are:
- en_US.utf8
* Make sure /etc/locale.gen has the apropriate lines uncommented.
After editing the file, run 'locale-gen' as root.
2 problems found. Here's a quick UTF-8 test for you: --> ★ <--
* a star -- font and terminal are okay.
* 3 question marks -- your terminal does not correctly interpret UTF-8.
* a box or rectangle -- UTF-8 works fine, but you need a better font.
* empty area -- you really need a better font or something.
Juste, si tout fonctionne bien, je n'ai normalement pas besoin de rajouté l'Anglais au locales ?
Non tes locales ne sont pas correctement configurées, revois chaque étape du post donné, tout y est
J'ai pourtant suivi chaque étapes... Mais j'ai trouvé l'origine de mon problème : c'est mon thème de prompt, powerlevel9k, qui change la locale LC_CTYPE (j'ai changé de thème et ls retourne des noms normaux). Je vais donc réinstaller powerlevel9k et si le problème persiste, peut-être devrais-je ouvrir un rapport de bug ?
EDIT : La réinstallation ne résout pas le problème. Powerlevel9k était auparavant installé par clonage de dépot git, et maintenant directement depuis les paquets archlinux : ça ne change rien. Le thème pas défaut fourni avec oh-my-zsh fonctionne lui, très bien.
Re: [LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs
Publié : jeu. 01 nov. 2018, 07:15
par waitnsea
Pourquoi, pour quel usage, veux-tu définir la variable LC_CTYPE ? C'est Gnome qui veut ça ??? Je n'en ai, pour ma part aucun besoin.
Code : Tout sélectionner
cat /etc/environment
#
# This file is parsed by pam_env module
#
# Syntax: simple "KEY=VAL" pairs on separate lines
#
LANG=fr_FR.UTF-8
Ce qui, avec les autres définitions donne :
Si tu en as besoin, je pense que c'est dans
/etc/environment
qu'elle devrait être définie, or ton retour était vide :
Matows a écrit : ↑mer. 31 oct. 2018, 01:46
cat /etc/environment
Code : Tout sélectionner
#
# This file is parsed by pam_env module
#
# Syntax: simple "KEY=VAL" pairs on separate lines
#
as-tu, depuis, renseigné tes variables dans ce fichier ?
waitnsea a écrit : ↑dim. 02 juil. 2017, 07:04
* /etc/environment voir
tuto , il vaut mieux qu'il ne contienne que
* ~/.config/locale.conf (obtenu par
cp /etc/locale.conf ~/.config/locale.conf
)
Note : ne pas définir LC_ALL pour ne pas masquer une mauvaise configuration
Edit:
ici Code : Tout sélectionner
It is worth saying that mixing LANG and LC_CTYPE can give unexpected results, because few people do that, so it is quite untested...
Re-Edit : en fait, si, elle existe chez moi mais semble s'être définie toute seule (avec locale-gen ?), et apparait dans
Code : Tout sélectionner
$ locale
LANG=fr_FR.UTF-8
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE=C
LC_MONETARY="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_PAPER="fr_FR.UTF-8"
LC_NAME="fr_FR.UTF-8"
LC_ADDRESS="fr_FR.UTF-8"
LC_TELEPHONE="fr_FR.UTF-8"
LC_MEASUREMENT="fr_FR.UTF-8"
LC_IDENTIFICATION="fr_FR.UTF-8"
LC_ALL=
Re: [LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs
Publié : jeu. 01 nov. 2018, 20:49
par Matows
waitnsea a écrit : ↑jeu. 01 nov. 2018, 07:15
Pourquoi, pour quel usage, veux-tu définir la variable LC_CTYPE ? C'est Gnome qui veut ça ??? Je n'en ai, pour ma part aucun besoin.
Justement, je veux bien ne pas la définir mais il y a un programme (en l’occurrence un thème de ZSH) qui la change, ce qui perturbe l'affichage de plusieurs programmes en ligne de commande, et
je me retrouve avec des programmes qui me parlent en anglais où qui affiche mal les caractères français.
(exemple avec
ls et
pacman)
Re: [LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs
Publié : jeu. 01 nov. 2018, 21:43
par benjarobin
Ok, j'ai regardé, et le bug est facilement corrigible. Il suffit de modifier
functions/icons.zsh
. Voici le patch corrigeant le souci :
Code : Tout sélectionner
diff --git a/functions/icons.zsh b/functions/icons.zsh
index d8661e6..6300d64 100755
--- a/functions/icons.zsh
+++ b/functions/icons.zsh
@@ -13,6 +13,7 @@
# Initialize the icon list according to the user's `POWERLEVEL9K_MODE`.
typeset -gAH icons
+() {
case $POWERLEVEL9K_MODE in
'flat'|'awesome-patched')
# Awesome-Patched Font required! See:
@@ -528,6 +529,7 @@ esac
if [[ "$POWERLEVEL9K_HIDE_BRANCH_ICON" == true ]]; then
icons[VCS_BRANCH_ICON]=''
fi
+}
# Safety function for printing icons
# Prints the named icon, or if that icon is undefined, the string name.
En gros tu dois ajouter
() {
ainsi que
}
aux endroits indiqués par le patch
Le bug à un an :
https://github.com/bhilburn/powerlevel9k/issues/587
Re: [LOCALE] LC_CTYPE différent de la valeur voulue et caractères non lisible dans navigateurs
Publié : ven. 02 nov. 2018, 01:32
par Matows
benjarobin a écrit : ↑jeu. 01 nov. 2018, 21:43
Ok, j'ai regardé, et le bug est facilement corrigible. Il suffit de modifier
functions/icons.zsh
. Voici le patch corrigeant le souci :
Code : Tout sélectionner
diff --git a/functions/icons.zsh b/functions/icons.zsh
index d8661e6..6300d64 100755
--- a/functions/icons.zsh
+++ b/functions/icons.zsh
@@ -13,6 +13,7 @@
# Initialize the icon list according to the user's `POWERLEVEL9K_MODE`.
typeset -gAH icons
+() {
case $POWERLEVEL9K_MODE in
'flat'|'awesome-patched')
# Awesome-Patched Font required! See:
@@ -528,6 +529,7 @@ esac
if [[ "$POWERLEVEL9K_HIDE_BRANCH_ICON" == true ]]; then
icons[VCS_BRANCH_ICON]=''
fi
+}
# Safety function for printing icons
# Prints the named icon, or if that icon is undefined, the string name.
En gros tu dois ajouter
() {
ainsi que
}
aux endroits indiqués par le patch
Le bug à un an :
https://github.com/bhilburn/powerlevel9k/issues/587
MERCI BEAUCOUP !
Il fallait y pensé au
git diff !
Je met de ce pas le sujet en résolut
mais il me reste une petite question :
Si le problème date d'il y a un an, pourquoi ne m'affecte-t-il que maintenant ?
En tout cas je te remerci beaucoup benjarobin
Cordialement,
Matows'