Follow

Vous vous souvenez de ça ? Ça fait plus d’un an que je trolle GNU/Linux parce que le tri Unicode est complĂštement aux fraises lorsque le systĂšme est configurĂ© en locale FR.

Il y a du nouveau.

—

· Web · 6 · 48 · 25

Tout d’abord je dĂ©dicace ce thread Ă  tout ceux qui m’ont rĂ©pondu des trucs du genre :

« C’est un usage minoritaire, y’a que toi que ça emmerde »

« Ça changera jamais, c’est comme ça »

« Rapporte un bug, mais je sais pas oĂč »

Notez qu’en cherchant un peu j'ai vu que d’autres personnes ont rencontrĂ© des problĂšmes similaires dans d’autres langues dans les dix derniĂšres annĂ©es et ont obtenu le mĂȘme genre de rĂ©ponse.

Pour la faire courte, je viens de me rendre compte que c’est complĂštement corrigĂ© sur Debian 10, qui vient de sortir. Alors que c’était IMPOSSIBLE hein.
Sur Fedora c’est depuis la version 29.

Alors s’est-il passĂ© ?

Et bien en 2012 (!!) un contributeur de glibc ouvre un bug car il s’est rendu compte que les fichiers de dĂ©finition de locales (= langues) Ă©taient basĂ©s sur Unicode 3.0, datant de 2000.

sourceware.org/bugzilla/show_b

Trois ans aprÚs, en 2015, premiÚre réponse : « tiens, pourquoi on a fait ça ? »

« Personne ne s’en occupe Ă  part des gens qui patchent quand c’est trop le bordel, et puis ils disparaissent »

« Faudrait regarder quand mĂȘme mais ça a l’air compliquĂ© »

Fin 2017 (!!!), un gentil contributeur s’y colle.

« J’ai regardĂ© mais c’est le bordel, on a 15 ans de retard, faut tout refaire »

2018, la réécriture des fichiers de définition est en cours et ça casse pas mal de trucs dans plein de langues.

Car en plus le format des fichiers de la norme a changé depuis 2000.

« Ça va pĂ©ter les ranges mais de toute façon c’est pas fait pour, c’est dĂ©conseillĂ© de les utiliser directement et c’était dĂ©jĂ  pĂ©tĂ© »

(les notations type [a-z])

« Ah ben non mais faut pas laisser ça comme ça sinon les caractÚres hors locale ne sont pas triés »

OH ÇA ALORS REGARDEZ QUI AVAIT RAISON

Août 2018, release de glibc 2.28 remis à la norme Unicode 9.0 de 2016

On passe de 18 à 2 ans de retard 😌

PostgreSQL fait un communiqué en avertissant que ça peut corrompre les bases de données mal branlées.

Pendant ce temps je rĂąle et personne n’a pu me rediriger vers ces infos (que je n’avais pas trouvĂ©es moi-mĂȘme)... c’est considĂ©rĂ© comme un sujet accessoire par la communautĂ© et on m’envoyait paĂźtre 👿

Fedora release dans la foulée.

2019, avec 15 ans de retard donc (Unicode 4 date de 2004), release de glibc 2.28 dans Debian 10.

Un grand merci à Mike Fabian qui a pris le sujet au sérieux.

Rendez-vous dans 20 ans...

(y’a dĂ©jĂ  eu deux mises Ă  jour de la norme depuis 2016 🙃)

Je termine juste en rajoutant que dÚs que je parle d'internationalisation, et notamment de respect de norme Unicode et de user experience, je reçois souvent des "parle à ma main", notamment de libristes.

Alors que chez les logiciels privateurs, c'est un sujet sérieux. Apple et Microsoft ont des équipes dédiées et sont contributeurs de la norme depuis 30 ans.

Il faudrait que ça change, au bout d'un moment.

Depuis un an que je me plains rĂ©guliĂšrement du problĂšme, j'ai mĂȘme eu un gros libriste qui m'a le plus sĂ©rieusement du monde assĂ©nĂ© un "de toute façon les noms de fichiers c'est caractĂšres alphanumĂ©riques sans espaces et c'est tout".

VoilĂ .

Ceci étant dit au début des années 2000 quand je suis passé sous Windows 2000 (qui est 100% Unicode comme tout Windows NT), quand je faisais des rapports de bugs à divers projets (souvent privateurs) sur le fait qu'ils ne supportaient pas les noms de fichiers non-ANSI je me faisais jeter aussi avec des "Unicode pas une priorité" :)

Le plus beau ça a été le tout neuf Firefox qui avait été refait from scratch sans support Unicode pour les noms de fichiers :p

AH NON pardon le plus MAGNIFIQUE c'était cette bouse de Norton antivirus, qui était installé partout sur Windows à l'époque, et qui était incapable d'ouvrir les fichiers contenant des caractÚres hors-locale.

Je m'en suis rendu compte car j'avais un disque avec un énorme dossier nommé en japonais et Norton le scannait en zéro seconde (sans faire remonter d'erreur critique !).

@fenarinarsa Merci de ce fil instructif quoiqu'énervé (mais je comprends bien pourquoi :)

Pour info, ext4 peut maintenant ĂȘtre insensible Ă  la casse. Je ne suis pas insensible au sujet, j'ai envie d'ĂȘtre violemment opposĂ© Ă  cette fonctionnalitĂ©, mais aprĂšs tout, c'est optionnel.

@ffeth AprÚs il faut définir ce qu'est la casse en fonction des langues.

En Unicode ce genre de choses est trÚs bordélique.

La norme est passé au niveau au-dessus depuis un moment avec la représentation canonique des chaßne de caractÚres.

@fenarinarsa Mais... tu vois la blague que ça peut produire : si tu mets un fichier aAa lĂ  oĂč se trouvait un fichier AaA, scritch scratch, ça l'Ă©crase. Or, comme tu le soulignes, la notion de casse n'est pas absolument sans ambiguitĂ©...

@ffeth Exact... honnĂȘtement c'est un nid Ă  emmerdes, mĂȘme si tu es insensible Ă  la casse et que tu stockes les caractĂšres tels quels tu peux avoir des problĂšmes. Par exemple A et ïŒĄ sont codĂ©s diffĂ©remment et pourtant c'est le mĂȘme caractĂšre.

@fenarinarsa Thread super intĂ©ressant ! J'imaginais mĂȘme pas qu'il puisse y avoir ce genre de problĂšmes.

@dada Alors que mĂȘme dans les langues europĂ©ennes le tri des caractĂšres accentuĂ©s change.

En suédois par exemple ils sont classés à la fin de l'alphabet.

Je parle mĂȘme pas des problĂ©matiques de casse et de caractĂšres Ă©quivalents qui sont reprĂ©sentĂ©s par diffĂ©rents point de code, qu'on ne peut comparer que par leur reprĂ©sentation canonique.

@fenarinarsa Le pire c'est que c'est complĂštement faux sous Unix:
Un nom de fichier c'est tout sauf / et l'octet nul et un truc genre 255 charactĂšres. (le systĂšme de fichier peut mettre plus de restrictions, genre si tu utilise du FAT)

Donc tu peut mettre des retours à la ligne, des charactùres de controle, 


@fenarinarsa Je suis dĂ©solĂ©e que tu sois tombĂ©(e) sur des tĂȘtes de bois 😔
 Ils sont malheureusement encore nombreux mĂȘme si on essaie de les amĂ©liorer au fur et Ă  mesure, mĂȘme moi j'ai pu avoir ce genre de comportement Ă  mes dĂ©buts. Et je m'en excuse đŸ˜¶.

@nlavielle T'as pas à t'excuser, et deux ou trois ont cherché à m'aider mais ils sont pas allés beaucoup plus loin que moi. Je me suis cassé les dents sur les fichiers de définition i18n qui ne sont absolument pas documentés, et on ne savait pas quel projet en était en charge.

@fenarinarsa ah yes y a un logiciel libre que je peux pas utiliser car mon dossier principal sur windows a le malheur d'avoir un accent et je peux plus le modifier 👍

@fenarinarsa C'Ă©tait facile de contourner l'analyse anti-virus dis donc


@fenarinarsa c'est trĂšs chiant ce genre de rĂ©ponse quand l'un des arguments du logiciel libre c'est d'ĂȘtre accessible Ă  tous.tes

Genre "ça l'est mais si tu parle une langue ou y'a plus de caractÚres qu'en anglais va te faire voir" quoi

@fenarinarsa super thread et chapeau pour ta persévérance !

@fenarinarsa Laisse moi te dire, petit merdique de mes deux, totalement ignorant des importantes priorités du libre...

Ce que tu dis est trĂšs important !

Ca montre bien que l'IT reste bien dev- et anglo-centrée.

Moi-mĂȘme j'ai la moitiĂ© du temps des caractĂšres bizarres dans certains de mes noms de fichiers. Ca devient grave quand tu travaille avec X pc (avec chacun son OS).

@fenarinarsa Et bien sûr, je suis et reste un occidental. Donc impacté, mais on arrive à bosser. (mes alphabets restent proches de l'ascii standard)

J'imagine pas un laotien...

(J'ai resolu, pour l'instant, de m'en tenir Ă  l'ascii pour les noms de fichiers critiques).

@fenarinarsa Malheureusement ca risque pas de changer.

Microsoft et Apple *DOIVENT* avoir unicode OK chez eux. Impératif commercial. Bien sûr t'accepte des conneries au départ, mais au fur et à mesure, t'exige un truc OK et M$ et Apple vont le faire(l'ont fait). Merci le capitalisme.

À contrario, GNU etant pour beaucoup du bĂ©nĂ©volat, persone va bosser sur ces trucs non-structurants, non-fancy et totalement accessoire.

À moins qu'une ou des distros payent des mecs pour faire le truc.

@22Decembre « non structurant », « totalement accessoire »
Merci de confirmer ce que j’ai dit plus haut

@fenarinarsa ça me les brise pareil que toi, si ce n'est pire (je suis trilingue). Merci pour ce fil.

@fenarinarsa Je compatis, mais à décharge il faut bien dire que si on veut faire les choses proprement et complÚtement, c'est compliqué, car il y a plein de nuances et de subtilité. Ce qui a comme conséquences que cela réduit déjà le nombre de potentiel contributeurs et qui ne seront pas vraiment "remerciés" pour ce genre de tùches qui restent peu visibles, sauf quand justement elles cassent tout potentiellement... 1/2

@fenarinarsa Je suis effarĂ© de voir la trĂšs faible proportion de dĂ©veloppeurs juste sensibilsĂ© Ă  Unicode, pour en saisir besoin et contraintes avant d'en comprendre les consĂ©quences. Bien peu, ou en tout cas pas assez, ne font ne serait-ce que lire joelonsoftware.com/2003/10/08/ ou Ă©quivalent. Il y a toujours eu, en particulier en france, un certain snobisme Ă  parler anglais plutĂŽt que français, et mĂȘme faire des erreurs, alors forcĂ©ment les subtilitĂ©s comme le tri ou les majuscules accentuĂ©es... 2/2

@fenarinarsa
As-tu un script ou quelque chose pour produire cette image ? J'aimerais bien essayer sur FreeBSD (et te faire par des résultats).
@fenarinarsa Pour PostgreSQL de toute façon tu es censĂ© utiliser une locale statique (genre C.UTF-8), c'est pas la premiĂšre fois que ça peut casser et avoir une locale pose souvent des problĂšme si tu est sur plusieurs machines qui on pas forcĂ©ment exactement le mĂȘme sysĂšme.

@lanodan Le communiqué de PostgreSQL parlait de locale sur les index et clairement sur les index il faut pas de locale, c'est un défaut d'architecture au moment de la création de la base.

Pour le reste who cares les locales sont faites pour s'adapter Ă  l'utilisateur. C'est pas l'utilisateur qui doit adapter sa langue Ă  la machine.

@fenarinarsa c'est surprenant tous ces projets libres qui ont des tickets ouverts depuis des annĂ©es pour des gros bugs et aucune solution sĂ©rieuse... đŸ€”

*regarde WICD avec un air énervé*

@fenarinarsa Ça dĂ©pends du soft, pas de l’OS, si ? Je veux dire, est-ce que ls fait pareil ? Ou les autres gestionnaires de fichiers ? Etc.

@fenarinarsa Hum, dĂ©solĂ© j’avais pas tout le fil. Effectivement, c’est con comme problĂšme.

@fenarinarsa Bonjour :)
Popcorn, merci pour le thread fort intéressant :)

@fenarinarsa Merci pour ce thread trÚs intéressant. Ca montre au moins une chose : qu'il faut un modÚle pour financer l'open source.
Car en effet, on ne peut pas en vouloir que personne ne s'intéresse à corriger un problÚme aussi complexe, sur son temps libre, gratuitement (donc en plus de son temps de boulot pour vivre).

@fenarinarsa
Il y a des projets (comme la glibc) qui sont à la fois trÚs complexe, et trÚs utilisé, et aussi trÚs sous maintenue ... (OpenSSL + Heartbleed?).

Ca "fonctionne" mais en effet il ne faut pas s'Ă©tonner que sans financement les cas d'usage "marginaux" (voir plus) fonctionnent mal.

@fenarinarsa Pour corriger certains problÚmes, c'est des dizaines d'heure (ou des centaines ...) sur des choses non/mal documentées ... avec peu de tests de non-régression. Et à lire des normes illisibles.
C'est un vrai repoussoir.
Imagine faire ça en bénévole sur des intervalles de temps d'1h à chaque fois ...

Bref merci d'avoir soulevé le problÚme. :)

@yannsionneau complùtement d’accord sur le problùme de financement de l’open source et je suis trùs conscient du problùme.

Ce qui m’énerve par contre c’est le dĂ©ni que j’ai rencontrĂ©. En gros c’était soi-disant un non-problĂšme...
Je prĂ©fĂšre qu’on me rĂ©ponde « y’a personne pour s’en occuper » plutĂŽt que « ça ne concerne que toi et c’est pas un bug » :)

Pour complĂ©ter je dirais que j’ai cherchĂ© Ă  le corriger moi-mĂȘme mais que rien n’était documentĂ©.

@fenarinarsa Bon y'a de super avantages au bleeding-edge mais des fois tu passes un temps infini a corriger les montées de versions de logiciels.
Mal gré que les devs font leur possible pour qu'il n'y ait plus le coup du 'je push release, osef si ca casse"

@fenarinarsa Linux a vraiment encore trop de petits détails qui ne sont pas agréables à l'utilisation courante.
On va pas leur jeter la pierre, quand t'es dans l'open-source non rĂ©munĂ©rĂ© t'essayes de te fixer Ă  l'essentiel pour passer vite fait a autre chose de plus gratifiant que d'ĂȘtre payĂ© en visibilitĂ©.

Sign in to participate in the conversation
Shelter

Bienvenue sur Shelter, l'instance Mastodon de la petite communauté otaku et geek du discord de l'Eden de la Nanami. Vous pouvez rejoindre le Discord par ce lien.

Discussions autour du jeu vidéo, du japon, de l'informatique et de l'animé/manga.

Les inscriptions sont pour le moment ouvertes.

Si vous avez des questions, n'hésitez pas à contacter l'administrateur de cette instance.

Pour une liste des Ă©mojis disponibles sur l'instance c'est par ici !

Shelter est le nom d'un clip musical de Porter Robinson & Madeon : Visionner sur Youtube.