![]() |
|
| Le codage des caractères |
|
Le codage du texte est le sujet le plus important, mais aussi le plus délicat et le plus explosif du domaine de l'internationalisation d'Internet. C'est un sujet primordial, parce qu'une grande partie de l'information circulant sur Internet est sous forme textuelle. Or, l'histoire d'Internet fait en sorte que le codage prédominant, et dans certains cas le seul possible, soit le très limité ASCII. Mais ce codage ne peut représenter que quelques langues dont seulement trois d'importance : l'anglais, l'indonésien et le souahéli. Toutes les autres langues, parlée par plus de 90 % de la population mondiale, doivent se rabattre sur d'autres jeux de caractères. Et il en existe une pléthore, créée au cours des ans pour satisfaire à la fois les contraintes d'écriture et les limites technologiques en constante évolution. Le registre international ISO des jeux de caractères n'en dénombre qu'une petite fraction ; le registre des caractères d'IBM1 fait plus de trois centimètres d'épais ; Microsoft et Apple ont chacun leur flopée, de même que d'autres fabricants ou éditeurs de logiciel. Le problème n'en est donc pas un de carence, mais bien de surabondance, du moins lorsque les standards Internet permettent de choisir. Et la surabondance est bien un problème : si chaque utilisateur arabe fait son propre choix parmi les quelques trois douzaines de codages disponibles pour cette langue, il y a bien peu de chance que son « voisin » ait fait le même choix et qu'ils se comprennent. Cet exemple un peu outré illustre toutefois bien l'importance des normes et des standards dans le domaine de l'internationalisation. Pour qu'un groupe d'utilisateurs partageant la même langue puisse échanger, il faut :
Certains jeux de caractères sortent du rang, soit par leur statut
de norme nationale ou
|
internationale officielle, soit tout simplement par leur utilisation répandue. Au premier chef, on peut citer la série de normes ISO 8859, qui normalise une dizaine de jeux de caractères utiles pour un grand nombre de langues à écritures latine, cyrillique, arabe, grecque et hébraïque. Ces normes ont un domaine d'application limité (8 bits par caractère, maximum de 190 caractères, pas de composition), mais lorsqu'elles suffisent (ce qui est le cas pour 10 des 20 langues les plus importantes ), elles devraient être utilisée sur Internet de préférence à tout autre codage. Pour toutes les autres langues, il convient de choisir autant que possible des normes nationales, ou, à défaut, de se rabattre sur un codage bien connu et répandu. Même en se limitant ainsi aux normes et standard les plus répandus, la surabondance reste considérable, ce qui complique singulièrement la vie aux concepteurs de logiciels vraiment internationaux et aux utilisateurs de plusieurs langues, surtout dans les cas où ces langues ne peuvent être représentées par un seul codage. C'est pour résoudre ce problème qu'ont été créés, d'une part le standard Unicode, et d'autre part la norme internationale ISO 10646. Deux standards ? Quelle horreur ! Leurs concepteurs s'en sont bien rendu compte, et ont su coopérer au point de rendre les répertoires de leurs jeux de caractères identiques, de même que les codages de ce répertoire commun. L'ISO 10646 (et Unicode) contient près de 40 000 caractères, permettant de représenter la plupart des langues vivantes au sein d'un même codage. Tous ces caractères, à l'exception des caractères Han (les caractères d'origine chinoise aussi utilisés en japonais et en coréen), ont un nom. Et il reste de l'espace pour coder les langues manquantes, aussitôt que la recherche nécessaire sera assez avancée. C'est avec Unicode que l'on peut représenter plusieurs langues de différentes écritures dans un même document électronique, comme par exemple notre liste de signets multilingue. 1 Character Data Representation Architecture Reference and Registry, SC09-2190, IBM Corporation. Contient 2 CD-ROM. |

| Le navigateur multilingue Tango assure l'affichage correct de toutes les langues de Babel. | ![]() |
© 1996, Alis Technologies inc. |