[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: utf8 en console [ boulet online]



'lut,

Par « console », tu entends bien un tty, hein, pas une
connexion ssh ou autre ?
oops, il s'agit d'une connexion ssh sur le serveur distant.

Du coup, et pour répondre aussi à Sébastien, je comprends que le client ssh peut poser des problèmes d'encodage s'il est mal paramétré.

Dans mon cas, le protocole fish est utilisé par kate pour ouvrir des fichiers distants. Je recréé donc un "lien" fish vers mon serveur en spécifiant l'encodage utf8.

Voici les locales de mon poste:

fabricer@FR-PORT:~$ locale
LANG=fr_FR@euro
LANGUAGE=
LC_CTYPE="fr_FR@euro"
LC_NUMERIC="fr_FR@euro"
LC_TIME="fr_FR@euro"
LC_COLLATE="fr_FR@euro"
LC_MONETARY="fr_FR@euro"
LC_MESSAGES="fr_FR@euro"
LC_PAPER="fr_FR@euro"
LC_NAME="fr_FR@euro"
LC_ADDRESS="fr_FR@euro"
LC_TELEPHONE="fr_FR@euro"
LC_MEASUREMENT="fr_FR@euro"
LC_IDENTIFICATION="fr_FR@euro"
LC_ALL=

Il faut donc que dans /etc/ssh/ssh_config de mon poste, je commente
SendEnv LANG LC_* pour éviter de balancer fr_FR@euro

Sur le serveur, pareil, je commente AcceptEnv LANG LC_* pour qu'il arrête d'accepter les confs des clients.

Pour info, sur le serveur, j'ai:
fabricer@ns330829:~$ locale
LANG=fr_FR.UTF-8
LANGUAGE=fr_FR.UTF-8
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
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=fr_FR.UTF-8


Pour résumer:
J'utilise kate avec fish pour modifier des fichiers sur le serveur. Ces fichiers sont en utf8 (d'après kate). Pour créer le lien "fish", j'ai bien spécifier encoding=utf8
Sur le serveur, je commente AcceptEnv LANG LC_*.
Sur mon poste, je commente SendEnv LANG LC_*

Je me connecte en ssh sur le serveur:
* je peux écrire "école" sur la ligne de commande
* mais si je veux afficher un fichier du serveur (créé par kate sur mon poste), j'ai toujours:

fabricer@ns330828:~$ head -n 2 /home/fabricer/infocentre/util.php
<?php
//test utf8: école école école

Ça signifie que la "console" du serveur accédée en ssh en passée en latin-9.
Il faudrait que j'accède physiquement au serveur, sur un tty pour vérifier que head -n 2 /home/fabricer/infocentre/util.php
me donne bien

<?php
//test utf8: école école école

Bref, je comprends le soucis même si je ne sais pas comment le rêgler. J'imagine qu'il disparaîtrait de lui-même si, sur mon poste, je passais en UTF-8 et en virant ISO-8859-15 avec dpkg-reconfigure locales ?

Ça ne risque pas de poser problème à certaines applications ne comprenant encore que le ISO-8859-15 ?
La plupart d'entre vous sont-ils déjà full utf8 ?

Désolé pour ce long post.

f.




Le 27/07/2015 19:00, Fabrice Regnier a écrit :
salut la liste ;)

Je ne me suis jamais senti très à l'aise entre utf8 et iso-machin. Mais
cette fois, je souhaite basculer complètement vers utf8.

Et je ne m'explique pas ceci:

Je créé un fichier utf8 avec kate sur une machine de dev qui contient
des accents et que je déplace sur le serveur.

En console, sur le serveur, je ne vois pas apparaître les accents

fabricer@ns330829:~/infocentre$ head util.php
<?php
//test utf8: école
              ~~

Et pourtant sur le serveur:

fabricer@ns330828:~/infocentre$ locale
LANG=fr_FR.UTF-8
LANGUAGE=fr_FR:fr
LC_CTYPE="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
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=fr_FR.UTF-8

avec dpkg-reconfigure locale, je n'ai gardé que utf8.

J'ai l'impression que mes consoles sont encore en iso-8859-15.

J'ai aussi rajouté dans mon .bashrc et .profile ceci:
export LC_ALL=fr_FR.UTF-8
export LANG=fr_FR.UTF-8
export LANGUAGE=fr_FR.UTF-8

Lorsque j'utilise l'éditeur joe. Il me dit bien que je suis en utf-8
mais ne m'autorise pas à taper des accents.

Sinon, je ne sais pas si console-data peut m'aider.

Ma question est donc la suivante: comment avoir ses consoles en utf8
avec toujours la possibilité de taper les accents ?

merci!

f.



Reply to: