utf8 en console [ boulet online]

6 réponses
Avatar
Fabrice Regnier
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.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: https://lists.debian.org/55b65fc4$0$3062$426a74cc@news.free.fr

6 réponses

Avatar
Sylvain L. Sauvage
Le lundi 27 juillet 2015, 18:43:47 Fabrice Regnier a écrit :
salut la liste ;)



’soir,

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



Par « console », tu entends bien un tty, hein, pas une
connexion ssh ou autre ?

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



C’est typiquement de l’UTF-8 vu comme en latin-1 (=
iso-8859-1) (ou -9 (= iso-8859-15)). En UTF-8, le é se code en
deux octets qui correspondent au codage de é en latin-1.

Et pourtant sur le serveur:

:~/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



Ok.

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



Pas nécessaire mais ok.

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



Pas nécessaire si /etc/default/locale le fait déjà (et LANG
est suffisant).

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 ?



Utilise console-setup.

Note que le noyau Linux ne permet d’avoir une fonte console
Unicode complète (je crois que les fontes sont limitées à 256 ou
512 caractères), donc console-setup (config. dans
/etc/default/console-setup) gère deux paramètres : charmap, q ui
doit être à UTF-8, et codeset, qui correspond à la fonte (et
sera sûrement à Lat15, les caractères que tu afficheras le plus
souvent).

Si ça coince encore, regarde /usr/share/doc/console-
setup/FAQ.gz

--
Sylvain Sauvage

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Sébastien NOBILI
Bonjour,

Le lundi 27 juillet 2015 à 18:43, Fabrice Regnier a écrit :
Je créé un fichier utf8 avec kate sur une machine de dev qui contient des
accents et que je déplace sur le serveur.



C'était implicitement lié à une question de Sylvain, mais mieux vaut s'en
assurer clairement.

Comment as-tu déplacé le fichier sur le serveur ? Si c'est à travers une
connexion SSH (SCP ou autre), alors la configuration du client SSH peut
impacter. Si tes deux machines sont en UTF-8 mais que ton client cause ISO, tu
peux avoir des surprises.

Sébastien

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Fabrice Regnier
'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:

:~$ locale
LANG=
LANGUAGE LC_CTYPE=""
LC_NUMERIC=""
LC_TIME=""
LC_COLLATE=""
LC_MONETARY=""
LC_MESSAGES=""
LC_PAPER=""
LC_NAME=""
LC_ADDRESS=""
LC_TELEPHONE=""
LC_MEASUREMENT=""
LC_IDENTIFICATION=""
LC_ALL
Il faut donc que dans /etc/ssh/ssh_config de mon poste, je commente
SendEnv LANG LC_* pour éviter de balancer

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:
:~$ 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:

:~$ 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

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

Et pourtant sur le serveur:

:~/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.




--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/55b896a8$0$3055$
Avatar
Haricophile
Le Wed, 29 Jul 2015 11:02:32 +0200,
Fabrice Regnier a écrit :

La plupart d'entre vous sont-ils déjà full utf8 ?



Perso je suis passé à UTF8 dès que j'ai pu, et ça comme nce à faire pas
mal d'année. Aucun regret d'avoir quitté le BabelWeb ! Jongler av ec les
encodages nationaux est une plaie !

( ̄~ ̄;)ウーン ・・・

--


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Sébastien NOBILI
Le mercredi 29 juillet 2015 à 11:02, Fabrice Regnier a écrit :
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 ?



C'est justement ce que je t'aurais proposé.

Ç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 ?



J'ai complètement migré en UTF-8 (mais j'ai conservé les ISO-* au cas où) depuis
un bon moment maintenant (ça devait être aux alentours de Sarge ou Etch).

$ locale -a
C
C.UTF-8
français
french
fr_FR

fr_FR.iso88591

fr_FR.utf8
POSIX

$ cat /etc/default/locale
# File generated by update-locale
LANG=fr_FR.UTF-8

Aucun problème constaté (au contraire même, le genre de problème que tu as là,
je ne connais plus depuis !).

Tu auras sûrement besoin de convertir un certain nombre de choses (contenu des
fichiers, noms de fichiers), ça pourra t'aider :

https://www.debian.org/doc/manuals/debian-reference/ch11.fr.html

Sébastien

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Fabrice Regnier
J'vous l'avais bien dit que j'étais un boulet ;)

Mon soucis venait de Konsole (pour lancer une console sous KDE) qui
n'avait pas l'encodage utf8 par défaut mais iso-machin. Donc, malgré une
conf de mon poste (presque) nickel en utf8, je rencontrais toujours le
soucis.

Merci à tous et désolé pour le bruit!

f.


Le 29/07/2015 11:40, Sébastien NOBILI a écrit :
Le mercredi 29 juillet 2015 à 11:02, Fabrice Regnier a écrit :
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 ?



C'est justement ce que je t'aurais proposé.

Ç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 ?



J'ai complètement migré en UTF-8 (mais j'ai conservé les ISO-* au cas où) depuis
un bon moment maintenant (ça devait être aux alentours de Sarge ou Etch).

$ locale -a
C
C.UTF-8
français
french
fr_FR

fr_FR.iso88591

fr_FR.utf8
POSIX

$ cat /etc/default/locale
# File generated by update-locale
LANG=fr_FR.UTF-8

Aucun problème constaté (au contraire même, le genre de problème que tu as là,
je ne connais plus depuis !).

Tu auras sûrement besoin de convertir un certain nombre de choses (contenu des
fichiers, noms de fichiers), ça pourra t'aider :

https://www.debian.org/doc/manuals/debian-reference/ch11.fr.html

Sébastien




--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/55b8c72a$0$3347$