Journal : Explosion d'UNICODE sur le web
Posté par IsNotGood () le 10 mai 2008
0
Si on en croit les statistiques de google, UNICODE est devenu le codage de caractère le plus utilisé sur Internet :http://googleblog.blogspot.com/2008/05/moving-to-unicode-51.(...)
Notons qu'aujourd'hui la majorité des distributions utilise UNICODE par défaut.
Bientôt la fin des charsets. Hourra !
> Lire le journal (56 commentaires, moyenne: 3,7).
Vous avez demandé le commentaire #929779.



hg
░███░░░░░░░░░░░░░░░░░░░░░░░░░░░▒██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░█░░░░░░█░░░░░░░░░░░░░█░░░░░░█░░░░░░░░░░░░████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░█░░░░░░█░░░░░░░░░░░░░█░░░░░░█░░░░░░░░░░░█▓░░▒█░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░█░░░░░░█░░░░█░░░█░░█████░░█████░░░░░░░░░█░░░░█░░░░░░░░░▓██▒░░░███░░░░░░░░░
░░░█░░░░░░░░░░░█░░░█░░░░█░░░░░░█░░░░░░░░░░░█▒░░▒█░░░░░░░░▓█░░▓░░█▒░▒█░░░░░░░░
░░░█░░░░░░░░░░░█░░░█░░░░█░░░░░░█░░░░░░░░░░░░████░░░░░░░░░█░░░░░░░░░░█░░░░░░░░
░░░█░░░░░░░░░░░█░░░█░░░░█░░░░░░█░░░░░███░░░█▒░░▓█░░░░░░░░█░░░░░░▒████░░░░░░░░
░░░█░░░░░░░░░░░█░░░█░░░░█░░░░░░█░░░░░░░░░░░█░░░░█░░░░░░░░█░░░░░░█▒░░█░░░░░░░░
░░░█░░░░░░░░░░░█▒░▓█░░░░█░░░░░░█░░░░░░░░░░░█▓░░▒█░░░░░░░░▓█░░▓░░█░░▓█░░░░░░░░
░░░▒██░░░░░░░░░▒██▒█░░░░▒██░░░░█░░░░░░░░░░░░████░░░░░░░░░░▓██▒░░▒██▒█░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░█▓██░░░█░░░█░░░███░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░█▓░▓█░░█░░░█░░▓▓░▒█░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░█░░░█░░█░░░█░░█░░░█░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░█░░░█░░█░░░█░░█████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░█░░░█░░█░░░█░░█░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░█▓░▓█░░█▒░▓█░░▓▓░░█░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░█▓██░░░▒██▒█░░░███▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░█░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░█░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░█░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
[^]Re: hg
Tu veux dire "utf-8 ça pue" ou "unicode ça pue" ?
Sinon tu peux utiliser utf-16 ou utf-32.
[^]Re: hg
J'ai ecrit utf-8 il me semble, non ?
[^]Re: hg
Oui, mais avec la cédille manquante, on a du mal à lire.
Pour tant, il y a bien le « ç » en ISO-8859-1 ?
[^]Re: hg
Tout le monde aura corrigé mon espace de trop, bien sûr ;-).
[^]Re: hg
Ben Windows utilise UTF-16. Tu dois être super contend avec Windows.
Java utilise aussi UTF-16.
[^]Re: hg
UTF-16 c'est vraiment ce qu'on fait de pire, ça cumule les tares de l'utf-8 (caractères de taille variable) et de l'utf-32 (bouffe de la memoire, problemes d'endian). Pas étonnant que windows et java l'aient choisi !
[^]Re: hg
Pour info, pour une fois que MS ne fait pas tout après tout le monde, MS est passé à Unicode à l'époque de WinNT 3.
A cette époque, UTF-32 n'existait pas, tout bêtement parce que le consortium Unicode avait imaginé que 2 octets (65536 caractères maxi) pour coder les caractères (il y avait de la place, et on imaginait pas le "succès d'Unicode, et le besoin de coder des caractère très rares... Mais l'informatique se démocratise...). MS a été "victime" d'avoir voulu passer à Unicode avant les autres. Il a du du coup passer de UCS-16 à UTF-16 (qui ne sont pas égaux, ie l'UCS-16 ne permet pas d'avoir les caractères unicode supérieurs à 0xFFFF, UTF-16 si) avec Windows 2000. MS aurait bien amié ne plus se faire chier avec les "multi-byte character" avec les codage qu'il avait pris, mais raté, et ça l'embête bien.
Unicode est passé après la sortie de WinNT 3 à 4 octets (et hop Linux a pris 4 octets tout de suite...)
Par contre, pour Java j'ai plus de mal à expliquer (bouffer 2x moins de mémoire en RAM dans 99.99% des cas? mais bon, la RAM ne manque pas trop et on n'a pas souvent 10 millions de caractères en RAM donc les inconvénients dépassent les avantages...)
Sinon,
UTF-16 c'est vraiment ce qu'on fait de pire, ça cumule les tares de (...)
On s'en fout, c'est en RAM, c'est sur une seule machine à la fois, c'est donc transparent pour le programmeur qui ne gère qu'un truc à la fois, de façon transparente. Perso je programme pour Windows et Linux en C++, donc la taille du wchar_t change d'Endianess et de taille, mais je programme de la même façon (bon, je dois avouer que je ne me suis pas encore trouvé confronté à un caractère supérieur à 0x8FFF en Unicode, donc peut-être que des trucs merderont sous Windows plus tard, mais ça va être rare).
Les fichiers stockés doivent être en UTF-8, pour le reste (comment l'OS s'y prend) n'est pas gênant en soit.
[^]Re: hg
Je ne sais pas si tu sais, mais en UTF-8 il n'y a que les caractère ASCII qui ne sont codés sur un seul octet. Les autres caractères sont codés sur deux (pour les premiers blocs unicode), ou plus d'octets (majorité des caractères).
Donc dans pas mal de langues ... UTF-16 est clairement moins gourmand en octets (deux octets à la place de trois, pour chaque lettre). Donc je ne vois pas comment tu peux dire qu'il est “bouffe de la mémoire”.
Par contre les problèmes d'endian existent bien.
La Roue du Temps
[^]Re: hg
Et un wchar est un UTF-32 sous Linux.
C'est n'est qu'au moment de l'écriture sur fichier/réseau qu'on convertit en UTF-8 pour gagner en place.
[^]Re: hg
N'oublie pas l'UTF-9 ou l'UTF-18 si tu bosses sur un PDP-10
http://tools.ietf.org/html/rfc4042
[^]Re: hg
C'est ça qu'on appelle le Minitel 2.0 ?