tag:blogger.com,1999:blog-21628438.post6627469520464106140..comments2024-03-27T08:21:58.680+01:00Comments on new Blog( perso );: Encoding HellNicolas De Loofhttp://www.blogger.com/profile/01689687514370945173noreply@blogger.comBlogger6125tag:blogger.com,1999:blog-21628438.post-36370731062972082242009-10-14T09:57:33.187+02:002009-10-14T09:57:33.187+02:00Comme de nombreux Linuxiens tu me semble bien &quo...Comme de nombreux Linuxiens tu me semble bien "définitif" sur tes prises de positions ;)<br /><br />Notepad++ ou Eclipse sait tout aussi bien gérer les divers encodages, et MS pourrait tout aussi bien dire que c'est à Nunux de passer en ISO-8859-1, et nos amis asiatiques pourraient te dire que ton chouchou devrait être en Big5 par défaut plutôt qu'UTF-8 !<br /><br />Plus sérieusement, le problème n'ai pas de savoir qui a raison, mais de constater que le syndrome de la tour de Babel est encore bien vivant. <br /><br />Le problème d'encoding est mal compris, mal géré. Je suis tombé sur un bug dans le compilo JAXB (xjc) qui génère le code source selon l'encodage natif, alors que je précise celui utilisé par javac dans mon build... <br /><br />Le problème de mon point de vue c'est que l'API Java ne devrait PAS proposer d'utiliser un encodage par défaut non déterministe. Comment sans cela parler de portabilité ?Nicolas De Loofhttps://www.blogger.com/profile/01689687514370945173noreply@blogger.comtag:blogger.com,1999:blog-21628438.post-22040150755330745962009-10-14T09:46:46.599+02:002009-10-14T09:46:46.599+02:00Ca vient qu'en même sacrément de l'OS prim...Ca vient qu'en même sacrément de l'OS primitif sur lequel on développe la plupart du temps.<br />Désolé mais sous Linux ça fait longtemps que tout se fait en UTF-8 et le moindre éditeur de texte un peu évolué sait préciser l'encoding d'entrée et de sortie (kate par exemple le fait très bien).<br />Même vim est en UTF-8. Le jour où M$ fera l'effort d'utiliser l'UTF-8 dans le coeur on sera enfin sorti de cet enfer...ehsavoiehttps://www.blogger.com/profile/15310007753097500007noreply@blogger.comtag:blogger.com,1999:blog-21628438.post-70954051379659941442009-10-12T11:34:21.625+02:002009-10-12T11:34:21.625+02:00> histoire de ne plus sortir du bon vieux ASCII...> histoire de ne plus sortir du bon vieux ASCII 7 bits<br /><br />Mouai. Pour moi la solution serait plutôt de faire disparaître tout autre encodage qu'UTF-8. Mais ne rêvons pas trop. :-)<br /><br />Il me semble plutôt qu'on n'a pas trop le choix et qu'il nous faut vivre avec les encodings. Parce qu'effectivement, on peut contourner le problème en évitant les accents dans notre code/commentaire/pom. <br />Mais pour les fichiers properties, par exemple, on n'échappe pas à une bonne maitrise du fonctionnement d'un encodage, de comment transcoder d'un encodage à un autre (et de ce qu'est la translitération, donc), et l'écriture du caractère sous forme de point de code unicode pour supporter tous les caractères de la planète... <br />Je doute que nos clients apprécient qu'on leur dise : ben vous voyez, là ça va pas être possible de mettre des accents ou d'afficher le signe €, en fait :-)<br /><br />Personnellement, j'ai plutôt tendance à utiliser sans restriction les accents et tous les caractères légaux du moment qu'ils sont bien dans le bon encoding.<br /><br />Le problème, c'est que peu de développeurs ont bien compris ce qu'étaient encodage et jeu de caractères. Lorsqu'ils se retrouvent face à un simple problème simple d'affichage de "?". Ils ne savent pas du tout quoi faire et maudissent "l'encoding" alors qu'ils ont parfois fait n'importe quoi avec les données.<br /><br />Cas récent : on stocke un fichier XML sur le disque (qui spécifie un encoding, donc), puis plus tard, on le charge dans une String sans indiquer quoi que ce soit en encoding (i.e. avec l'encoding de la plateforme), bref, de la merde chargée, manipulée puis restockée ailleurs sans jamais prendre en compte l'encoding source et cible ! Et ensuite, on passe du temps à savoir à quel endroit on a commencé à coder n'importe comment...<br />Ça, ça explose dès que le fichier XML n'a pas le même encoding que la plateforme... :-/.<br /><br />Pour moi, le problème est donc davantage un problème de communication/formation. Si tous les développeurs maitrisaient mieux ce domaine, on serait moins souvent dans la mââârde :-). Parce que même si yen a un qui maitrise bien et fait attention à éditer le fichier avec un éditeur qui gère l'encodage, yen aura toujours un autre qui va le faire, ajouter des accents et avec un éditeur qui stocke uniquement du cp1252 (au hasard).<br /><br />L'article le plus connu à ce sujet : http://www.joelonsoftware.com/articles/Unicode.html<br />Ou le même traduit :http://french.joelonsoftware.com/Articles/Unicode.html<br />Et aussi : http://genezys.net/blog/post/99-comprendre-les-jeux-de-caracteres<br /><br />@++Batmathttps://www.blogger.com/profile/17600942178313903985noreply@blogger.comtag:blogger.com,1999:blog-21628438.post-83462225774849257512009-10-12T10:19:42.214+02:002009-10-12T10:19:42.214+02:00Ah, les accents mal encodés. Dans la même famille,...Ah, les accents mal encodés. Dans la même famille, je mettrais au palmarès des problèmes les plus récurrents :<br /><br />- les apostrophes et tirets convertis par Word (CP1252 only) joyeusement copiés-collés des specs dans le code<br />- les BOMs dans le fichiers XML et Java (plante la compil sur certaines plateformes)<br /><br />Avec une mention spéciale pour ces éditeurs qui détectent mal les encodings, créant ainsi des fichiers multi-encodings...Sebhttps://www.blogger.com/profile/18416311829727827267noreply@blogger.comtag:blogger.com,1999:blog-21628438.post-19680092885994209172009-10-10T20:57:42.665+02:002009-10-10T20:57:42.665+02:00C'est à peu près les même circonstances : J...C'est à peu près les même circonstances : J'ai pris l'habitude de non-accentuer mon code, mais il a suffit d'une fois au mauvais endroit (dans mon POM) et le build Hudson plante sur un beau stacktrace incompréhensible. Reste à retrouver d'où peut bien venir le problème parmi les 25 modules du projet ... :(Nicolas De Loofhttps://www.blogger.com/profile/01689687514370945173noreply@blogger.comtag:blogger.com,1999:blog-21628438.post-21142093960845243592009-10-10T18:24:52.115+02:002009-10-10T18:24:52.115+02:00Salut,
je compatis. J'ai pris le parti de ne ...Salut,<br /><br />je compatis. J'ai pris le parti de ne plus mettre d'accent (j'encode les properties à la main) et pour le reste (commentaire de code ou autre) je ne mets plus d'accent. J'écris en Anglais la majorité, si on me demande d'écrire en Français, je ne mets pas d'accents sauf si cela m'échappe...<br />Je me suis encore fait avoir mercredi avec une release maven qui plantait sur la création du changelog.xml, j'avais glissé un accent dans un commentaire de commit...Anonymoushttps://www.blogger.com/profile/17910397677060569637noreply@blogger.com