Mais leur argument de base est faux: si, de nos jours, on sait globalement très bien et très efficacement détecter le codage de flux de textes donc le codage d'origine est inconnu
La détection de charset est très utile, mais ça devrait être du dernier recours quand tout à échoué. Ça marche très bien, mais ce n'est pas parfait.
Qu'est-ce qu'il se passe si je voulais vraiment écrire « 1⁄2uf » ? Les outils de détection automatiques risquent d'altérer mon texte. C'est peu probable, mon texte sera probablement plus gros et d'autres éléments permettront de désambiguïser, mais il vaut mieux que le charset soit fourni avec le texte dans le format qui le contient ou dans les métadonnées de transfert, qu'il soit correct et qu'il ne soit pas perdu.
Aussi, c'est triste que ça ne fasse pas 20 ans qu'on n'ait pas bougé à UTF-8 ou UTF-32 par défaut pour tout ce qui est écrit dans un alphabet latin (voir tout, tout court). Parce que bon, finalement, les problèmes d'encodage, ça vient principalement du fait que certains systèmes s'obstinent à pondre du windows-1252 ou du windows-1256, parfois à le déclarer comme du ISO-8859-15 ou inversement. Avec les fichiers de sous-titres justement, il y en a encore plein avec des soucis d'encodage, même de films et séries récentes. On voit encore passer plein de mails en windows-xxx, pour peu qu'ils aient été produits avec des outils MS. Cette négligence nous coûte de la complexité et les détecteurs de charset ont en effet encore de beaux jours devant eux. Je comprends bien qu'il y a des enjeux de rétrocompatibilité, mais il y a un moment où faut décider de corriger les choses, fournir des outils de compatibilité et arrêter les bêtises.
Je comprends la frustration : si ces outils n'existaient pas, peut-être que les logiciels qui produisent du contenu s'assureraient peut-être de standardiser sur un sous-ensemble utile de charset ( distinguables entre eux par le fait que les caractères de l'un sont illégaux dans l'autre) au lieu de laisser tout le monde se débrouiller avec des formats tous pétés.
[^] # Re: équivalent à la biblio Python FTFY
Posté par raphj (site web personnel) . En réponse à la dépêche Sortie de uchardet 0.0.8 pour la détection de codages de caractères. Évalué à 2.
La détection de charset est très utile, mais ça devrait être du dernier recours quand tout à échoué. Ça marche très bien, mais ce n'est pas parfait.
Qu'est-ce qu'il se passe si je voulais vraiment écrire « 1⁄2uf » ? Les outils de détection automatiques risquent d'altérer mon texte. C'est peu probable, mon texte sera probablement plus gros et d'autres éléments permettront de désambiguïser, mais il vaut mieux que le charset soit fourni avec le texte dans le format qui le contient ou dans les métadonnées de transfert, qu'il soit correct et qu'il ne soit pas perdu.
Aussi, c'est triste que ça ne fasse pas 20 ans qu'on n'ait pas bougé à UTF-8 ou UTF-32 par défaut pour tout ce qui est écrit dans un alphabet latin (voir tout, tout court). Parce que bon, finalement, les problèmes d'encodage, ça vient principalement du fait que certains systèmes s'obstinent à pondre du windows-1252 ou du windows-1256, parfois à le déclarer comme du ISO-8859-15 ou inversement. Avec les fichiers de sous-titres justement, il y en a encore plein avec des soucis d'encodage, même de films et séries récentes. On voit encore passer plein de mails en windows-xxx, pour peu qu'ils aient été produits avec des outils MS. Cette négligence nous coûte de la complexité et les détecteurs de charset ont en effet encore de beaux jours devant eux. Je comprends bien qu'il y a des enjeux de rétrocompatibilité, mais il y a un moment où faut décider de corriger les choses, fournir des outils de compatibilité et arrêter les bêtises.
Je comprends la frustration : si ces outils n'existaient pas, peut-être que les logiciels qui produisent du contenu s'assureraient peut-être de standardiser sur un sous-ensemble utile de charset ( distinguables entre eux par le fait que les caractères de l'un sont illégaux dans l'autre) au lieu de laisser tout le monde se débrouiller avec des formats tous pétés.