[Etch 4.0 Stable] Conflits d'accents entre Windows et Linux

Bonjour à tous !

Je voux explique rapidement mon problème : sur mon disque dur, j’ai 3 partitions : une en reiserfs (réservée au système Debian), une en ntfs pour un Windows XP et enfin une en ext3 où je peux stocker mes documents (et que j’utlise également comme /home). J’accède à ma partition ext3 avec les drivers IFS.

Tout se passe à merveille, à ceci près que Windows et Linux ne semblent pas utiliser le même encodage de caractère. Ce qui a pour effet que tous mes accents d’un OS sont remplacés par des symboles sur l’autre OS.

J’ai changé mes locales sur Linux pour essayer de résoudre le problème, mais que ce soit l’UTF-8, l’Euro ou d’autres encodages, je n’arrive toujours pas à récuperer mes accents de Windows.

J’aimerais savoir s’il est possible d’utiliser le même encodage pour les deux OS et si oui lequel (que je doive changer celui de Debian ou Windows n’a que peu d’importance).

Merci d’avance à tous !

Tu a remarqué ca seulement avec les fichiers textes ?

Comparons déjà les deux encodages, pour le savoir sous debian c’est :

# env | grep LANGpar exemple … et sous windows ?
et montres les résultats stp …

Non, ça le fait aussi bien avec les fichiers textes que les dossiers. Et idem quand j’y accède en console (les symboles sont remplacés par des ?)

Résultat de env | grep LANG :

LANG=fr_FR
LANGUAGE=fr_FR.UTF-8:fr_FR:fr:en_GB:en

Le temps de rebooter sous Windows, de trouver où est l’encodage (vu que j’y avais jamais touché) et je complète mon post !

Hum sous Windows, je n’ai trouvé de tel au niveau encodage (un menu me donnant le choix entre UTF-8…). D’après quelques recherches, ce serait le latin1 (ISO8859-1), donc je vais essayer de trouver quelque chose d’approchant sous Linux…

oui, donc là debian n’est pas encoder en UTF-8 …

Moi j’ai aucun problème, j’ai ceci dans mon fstab :

/dev/sda1 /mnt/win_c  ntfs  defaults,ro,user,nls=iso8859-1,nls=utf8,umask=0 0 0
/dev/sda5 /mnt/win_d  ntfs  defaults,ro,user,nls=iso8859-1,nls=utf8,umask=0 0 0
/dev/sda6 /mnt/win_e  ntfs  defaults,ro,user,nls=iso8859-1,nls=utf8,umask=0 0 0
/dev/sda7 /mnt/win_f  ntfs  defaults,ro,user,nls=iso8859-1,nls=utf8,umask=0 0 0

@ usineagaz : à quoi vois-tu que ma debian n’est pas encodée en UTF-8 ? C’est loin d’être aussi clair pour moi :open_mouth:

A propos de l’encodage utilisé, c’est celui qui me permet d’avoir tous mes accents sur Fvwm-Crystal avec les locales françaises fournies.

Avant de te lancer dans quoi que ce soit, renseigne toi bien … c’est un peu lourd l’encodage quand il y a tout à refaire.
Je vois ton encodage à la variable LANG, chez moi :

# env | grep 'LANG=' LANG=fr_FR.UTF-8
C’est en quoi ces restitutions d’accents ? console, navigateurs … ?

ps: la solution de d2_racing est à tenter …
Et puis tout dépend de ce qu’on veut faire … l’utf8 c’est bien beau, mais comme je comprend rien au japonais ;… heu … j’ai juste encodé comme ça pour tâter de l’encodage … iso 1 et 15, ça marche trés bien.
De plus l’uft-8 n’est pas toujours reconnu, php ne l’intègrera que dans sa version 6, Eterm ne le digère pas … par exemples.

En effet, après quelques tests, je ne suis pas sous UTF-8, mais visiblement sous ISO8859-1, donc j’ignore toujours comment faire pour que les accents soient visibles sur les deux OS.

J’ai testé la solution de d2_racing, qui n’a pas marché, vu que mon système ne parvenait plus à monter mon /home (et j’ignore aussi pourquoi…).

Bref, je vais me renseigner sur les différents encodages possibles, avant de faire n’importe quoi !

[quote=“Shenga”]LANGUAGE=fr_FR.UTF-8:fr_FR:fr:en_GB:en[/quote]À mon avis tu dois changer ça, c’est pas bon d’avoir fr_FR.UTF-8 en premier …
je suis pas sûr que mettre un export LANGUAGE=fr_FR:fr:en_GB:en à la fin de ton /etc/bash.bashrc soit la solution, mais tu peux essayer.
Comment se présente les caractères mal restitués ?:

[quote=“http://blog.neovov.com/index.php?2007/03/06/143-convertir-un-site-en-utf-8”]
Pour reconnaître les problèmes d’encodage c’est simple :

* Si vous voyez des "é", "î", "Ã", etc. c'est que les données sont en UTF-8 et que le navigateur les affiche en ISO ;
* Si vous voyez des "�" c'est que les données sont en ISO et que le navigateur les affiche en UTF-8 ;
* Si vous voyez des "???" c'est que les données sont en WINDOWS-1252 (le plus souvent) et que le navigateur les affiche en UTF-8.[/quote]1, 2 ou 3 ... ?

et où ? navigateur, console ?

Sous les navigateurs, il s’agit du deuxième (les points d’interrogation dans un losange) qui sont remplacés par des points d’interrogation simples en console.

Je vais essayer ta technique tout de suite !

EDIT : hum ça n’az pas marché, donc je vais aller faire un tour sur le site dont tu a mis le lien et je vais voir ce que je peux faire.

Dans ce cas, c’est à configuré dans les prefs de ton navigateur (firefox: contenu -> polices et couleurs -> avancé … par exemple).

[quote=“Shenga”]donc je vais aller faire un tour sur le site dont tu a mis le lien et je vais voir ce que je peux faire.[/quote]attention c’est pour convertir un site en utf-8, tu risques de t’enmêler les pinceaux …
Pour la console, je pense que c’est ce que je t’ai dis, mais il y a d’autre trucs, faut que tu cherches sur le forum on en parlait y’a pas longtemps.
Il y a aussi dpkg-reconfigure console-data, ou des trucs comme ça … je sais plus exactement dsl …

Ah non, je me suis suis mal exprimé, autant pour moi ! Quand je parlais de navigateur, il ne s’agissait pas de Firefox, mais de “gestionnaires de fichiers” (je ne me rappele plus du terme exact) comme Nautilus, Rox-Filer…

Et la console affiche correctement les accents, à l’exception des fichiers du disque dur partagé Windows/Linux.

J’ai déjà essayé dpkg-reconfigure locale, mais sans succès.

Quand je tape locale en cobsiken j’obtiens :

LANG=fr_FR
LANGUAGE=fr_FR:fr:en_GB:en
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=fr_FR@euro

Enfin, j’ai essayé la commande iconv -t utf8 -t latin1, mais elle est resté bloquée près de 3h avant que je ne l’arrête manuellement. Est-ce normale que ce soit si long ?

[quote=“Shenga”]Enfin, j’ai essayé la commande iconv -t utf8 -t latin1, mais elle est resté bloquée près de 3h avant que je ne l’arrête manuellement. Est-ce normale que ce soit si long ?[/quote]non c’est pas normal, comme de mettre deux fois l’option -t, normalement c’est -f (from) -t (to). De plus, j’imagine qu’iconv prend en argument aussi un nom de fichier, voir une liste de noms, mais je le vois mal opérer récursivement sur tout le disque si on donne pas de nom …
Mais, pourquoi convertir tes fichiers en utf8 si une autre partie pour windaube est en ISO-8859-1 ou 15 ou autre ?
Reprends tout à zéro en recherchant ici les posts avec un titre du style:
“problème d’accents”, “affichage accents”, … etc … y’en a des résolus.

Je pense avoir un début de réponse à mon problème. J’utilise Fvwm-Crystal comme environnemen graphique, mais celui-ci n’inclut pas de base de locale en français. J’ai donc été obligé d’en télécharger, et celles-ci se trouvent être des locale encodées en UTF-8.

Malgré quelques recherches, je n’ai trouvé aucune trace de locale en ISO-8859-1 pour Fvwm-Crystal. Donc il me reste le choix entre tout passer dans une langue étrangère en latin1 (espagnol par exemple), ce qui serait un peu suicidaire, ou essayer de passer Windows en UTF-8 (je ne sais pas si c’est possible).

En attendant, j’ai enlevé tous les accents de mes fichiers, mais bon c’est pas super joli…

quote="Shenga"essayer de passer Windows en UTF-8 (je ne sais pas si c’est possible).(…)[/quote]2000, c’est sur que non, XP, peut être les derniers service packs, et vista gère l’utf8, de ce que j’ai cru comprendre.