(Courriels de diversion: <recoudrez@boulot-suspens.com> <sollicitera@volte-face-ecorchait.com> <bizutages@bouillantes-vira.com> <desynchroniser@metaphoriques-externes.com> <cellulaire@trafique-feignant.com> <rassasierait@ajouts-rincerons.com> <programmeuses@guerillas-transfigurant.com> <decongestionne@ravalaient-indexations.com> <reassortir@eternisais-avivez.com> <feuillettes@rendez-lutterez.com> )


jdd a écrit :

> bon, je crois que je vais arréter un peu sur ce sujet, quitte à le
> reprendre plus tard, je ne comprends plus rien.
>
> qua d je fais (sur ultra)
>
> cat >test
> éàçû
> ^D
>
> cat test me donne éàçû, vi _pareil_ (pas de mention "converti")
> si je le transforme en utf-8 avec iconv, cat et vi m'affichent... des
> caractères bidons, visiblement le utf-8 vu en iso (à quoi sert le set
> encoding=utf-8 qui est dans .vimrc?
> c'est d'ailleurs pareil si je tape àéçû dans vi...
>
> d'ailleurs il se pourrait bien que vi n'ai rien à voir avec mes
> problèmes...
>
> dans la console, si je tape une commande, par exemple
>
> echo éàçû
>
> que je reviens en arrière avec le curseur pour mettre un " avant le é,
> dès que je tape " la console s'affole, le curseur ne réagit pas
> normalement et très lentement... il se pourrait donc que ce soit
> l'aller/retour entre Ultra et moi qui masque le texte, pas vi...
>
Pour mettre, moi aussi, mon grain de sel:

La description du problème ne me permet pas de le «visualiser».
Cependant, il me semble que si vim croit que le terminal d'affichage est
utf-8, et si le terminal d'affichage croit que l'application affichante
utilise un encodage de caractères monooctets,
Pour afficher une ligne composée des 3 caractères ééé, vim enverra les 6
octets de la ligne, le terminal affichera donc 6 caractères (disposés
sur 6 colonnes), alors que vim considérera qu'il n'y en a que 3
(caractères et donc colonnes), d'où d'inévitables problèmes d'affichage,
notamment lors du déplacement du curseur ou de la réécriture par vim
d'une partie de la ligne.

Je suppose qu'un problème similaire se pose dans le cas contraire.

Il convient donc, me semble t-il, de s'assurer que les deux logiciels
sont configurés pour le même encodage.

Pour info la commande file permet parfois de connaître l'encodage d'un
fichier.
file /etc/init.d/README
/etc/init.d/README: UTF-8 Unicode English text

Pour info3 le script suivant affiche mauvais terminal, si le terminal
n'est pas utf-8.
(U="\303\251"; U5=$U$U$U$U$U ; L="\010" ; G="$L $L" ;G5=$G$G$G$G$G ;
echo -e "mauvais terminal$U5$U5$U5$U$G5$G5$G5$G5$G5$G5$G$G.")



Pour info2, la commande unicode permet d'obtenir des infos sur des
caractères unicodes.
unicode U+0045 U+0234
U+0045 LATIN CAPITAL LETTER E
UTF-8: 45  UTF-16BE: 0045  Decimal: &#69;
E (e)
Lowercase: U+0065
Category: Lu (Letter, Uppercase)
Bidi: L (Left-to-Right)

U+0234 LATIN SMALL LETTER L WITH CURL
UTF-8: c8 b4  UTF-16BE: 0234  Decimal: &#564;
ȴ
Category: Ll (Letter, Lowercase)
Bidi: L (Left-to-Right)











--------------------------------------------------------------------
Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>