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

Re: bash et UTF-8



PII 233 wrote:

Bonjour,

j'utilise putty pour me logger en ssh sur un serveur woody.
La version de bash est :
# bash --version
GNU bash, version 2.05a.0(1)-release (i386-pc-linux-gnu)
Copyright 2001 Free Software Foundation, Inc.

J'ai configuré ma locale en UTF-8.

C pour ça qu'il y a 1 arbre de noel de caractères bizares, non ?
What about ISO 8859-15 ?

Lorsque je tape la séquence de caractÚres "ls aé" sur la ligne de commande, j'ai des caractÚres "ls aé" qui sont correctement affichés. Maintenant, je tape backspace pour effacer le "é" et je le remplace par "2". J'ai les caractÚres "ls a2" qui sont donc affichés.
Je valide la commande, et bash me retourne une erreur :

# ls a2
ls: aâ??2: Chaîne multi-octets ou étendue de caractÚres invalide ou incomplÚte

Comme vous le voyez, il y a un caractÚre pourri qui a été inséré, comme si le caractÚre codé sur 2 octets n'avait été que partiellement supprimé.

Je n'ai pas du tout ce comportement sous vim, qui est configuré pour fonctionner en UTF-8. De même pour putty.

En faisant quelques recherches, j'ai constaté que l'auteur de putty mettait en garde les utilisateurs sur des incompatibilités possibles de certaines applications avec unicode.
En cherchant du cÎté de bash, j'ai trouvé le patch suivant :
ftp://ftp.gnu.org/pub/gnu/bash/bash-2.05b-patches/bash205b-007

Hé ! ça ressemble à un patch pour mon problÚme.

Le truc, c'est qu'une version 2.05b, il n'y en a pas en paquet, visiblement. Par ailleurs, si je regarde le paquet debian 2.05a, c'est une version patchée, à la debian, j'ai l'impression :
# apt-cache showpkg bash
Package: bash
Versions:
3.0-3(/var/lib/apt/lists/ftp.fr.debian.org_debian_dists_unstable_main_binary-i386_Packages) 2.05a-11(/var/lib/apt/lists/ftp.fr.debian.org_debian_dists_stable_main_binary-i386_Packages)(/var/lib/dpkg/status)

il y a en effet un "-11" qui suit, comme si c'était la 11Úme version du 2.05a pour woody.

Bref, je ne sais pas trop quoi penser : est-ce que le patch 7 pour la 2.05b aurait été appliqué à la 2.05a-11, et que donc le bug existe toujours ? ou bien faut-il que je compile un bash moi-même ? �a m'ennuie de devoir compiler le shell sur lequel presque tout le reste repose, en cas de bug corrigé dans les patches "-11", mais pas en 2.05b prise sur le site de gnu.

Il y a peut-être un moyen plus simple de corriger le problÚme, tout en restant en UTF-8 ? genre virer le mode vi, mais je n'ai pas compris comment ça marchait.

Je donc suis à l'écoute de vos conseils avisés :)

Voir + haut, si ce n'est pas carrément 1 pb de locales ?
Any other advises ?

Mi



Reply to: