Unicode en version 16.0.0, le plein de hiéroglyphes égyptiens et de symboles informatiques

Posté par  (site web personnel, Mastodon) . Édité par Xavier Teyssier et Benoît Sibaud. Modéré par Benoît Sibaud. Licence CC By‑SA.
Étiquettes :
13
27
sept.
2024
Doc

Le consortium Unicode a annoncé la sortie de la version 16.0.0 de sa norme d’encodage des caractères le 10 septembre 2024. En bref, cette version voit le nombre de caractères passer de 149 813 à 154 998, soit 5 185 caractères supplémentaires. Elle ajoute sept nouvelles écritures, de nouveaux fichiers de données et quatre normes techniques Unicode sont versionnées pour être synchrones avec la norme Unicode. Elle remplace toutes les autres versions, la précédente datant de 2022.

Quelques-uns de ces changements sont détaillés ci-après, et, évidemment, tout figure dans les notes de version (en).

Caractères égyptiens source Unicode

Sommaire

Afrique

Les hiéroglyphes égyptiens, le principal ajout en nombre de caractères

On se souvient peut-être des réactions des égyptologues, lors de l’introduction des hiéroglyphes égyptiens dans le standard Unicode en 2009. Il ne contenait que les sept-cent signes de base répertoriés par l’égyptologue britannique Alan H. Gardiner (1879 – 1963). Le gros reproche était le faible nombre de hiéroglyphes retenus : on en connaît plus de 6 000. Unicode 16 a rajouté 3 995 caractères aux 1 654 existants déjà dans le standard. Ce qui porte à 5 649 le nombre de hiéroglyphes égyptiens du catalogue Unicode

Les hiéroglyphes égyptiens occupent les blocs Unicode 13460 à 1355F.

L’alphabet Garay

L’alphabet Garay fait son entrée dans les blocs Unicode 10D40 à 10D8F.

Cet alphabet a été créé en 1961 par El Hadji Assane Faye, qui fut, entre autres, président du mouvement des enseignants en langues africaines. L’objectif étant de retranscrire « les caractéristiques sociolinguistiques africaines ». L’alphabet Garay comporte vingt-cinq consonnes et quatorze voyelles. Il est notamment utilisé pour le wolof, langue nationale du Sénégal, de la Mauritanie et de la Gambie. Il s’écrit de droite à gauche.

Asie

Les écritures de langues indiennes

Cinq écritures sont ajoutées à cette version d’Unicode. Les quatre premiers alphabets sont récents :

  • Gurung Khema ou Khema est l’une des écritures utilisées pour retranscrire le Gurung (en), une langue parlée dans le Népal, il s’écrit de gauche à droite et occupe les blocs Unicode 16100 à 1613F,
  • Kirat Rai (en), qui s’écrit de gauche à droite, est utilisé pour écrire le Bantawa, une langue parlée dans l’est de l’Himalaya et l’est du Népal, les blocs Unicode 16D40 à 16D7F lui sont réservés,
  • Ol Onal a été inventé entre 1981 et 1992 (en) par Mahendra Nath Sardar pour transcrire la langue Bhumij, une langue parlée par quelques populations de l’ouest du Bengale et des états indiens Jharkhand, Odisha et Assam. Elle s’écrit de gauche à droite et on la retrouvera dans les blocs Unicode 1E5D0 à 1E5FF,
  • Sunuwar (en), une écriture qui a été développée en 1942 par Krishna Bahadur Jentich (1926 - 1991) pour écrire la langue éponyme parlée dans le Sikkim, un État du nord de l’Inde, et au Népal, s’écrit de gauche à droite et figure dans les blocs Unicode 11BC0 à 11BFF,
  • Tulu-Tigalari ou Tilagari est une écriture plus ancienne. L’alphabet a été conçu à partir de l’alphabet Grantha, une écriture du sud de l’Inde, depuis le XIe siècle. Utilisé au départ pour le sanscrit, le Tilagari (en) sera aussi l’écriture du Tulu, une langue du sud-ouest de l’Inde à partir du XVe siècle. Il s’écrit de gauche à droite et occupe les blocs Unicode 11380 à 113FF.

Japon

La base de données des caractères japonais « Moji Jōhō Kiban » (文字情報基盤) a été ajoutée comme source de référence (en) aux 36 000 idéogrammes unifiés CJC (chinois, japonais, coréen). Ce qui se reflète dans les tableaux de codes de pratiquement tous les blocs d’idéogrammes unifiés CJC par des glyphes représentatifs supplémentaires dans la colonne « J ».

Albanie

L’alphabet Todhri (en) a été inventé par Todhri Haxhifilipi (1811 - 1869) pour écrire en langue albanaise. Composée de cinquante-deux caractères, il s’écrit de gauche à droite et semble dériver de l’écriture cursive romaine.

Les blocs Unicode 105C0 à 105FF lui sont réservés.

Émoji et héritage informatique

Sept nouveaux émojis font leur entrée :

  • une tête avec des valises sous les yeux (face with bags under eyes), 1FAE9,
  • une empreinte digitale (fingerprint), 1FAC6,
  • un arbre sans feuille (leafless tree), 1FABE,
  • un radis (root végétable), 1FADC,
  • une harpe (harp), 1FA89,
  • une pelle (shovel), 1FA8F,
  • une éclaboussure (splatter), 1FADF.

À cela s’ajoutent sept-cent symboles (en) d’environnements informatiques, blocs Unicode 1CC00 à 1CEBF (Symbols for Legacy Computing Supplement).

Synchronisation

Plusieurs spécifications Unicode importantes ont été mises à jour. Notamment les quatre standards UTS #10, UTS #39, UTS #46, et UTS #51. Ils sont maintenant versionnés de façon synchronisée avec le standard Unicode, leurs fichiers de données couvrant les mêmes répertoires. Ils ont tous été mis à jour en version 16.

Spécification Champ d’application Fichiers de données
UTS #10, Unicode Collation Algorithm (en) Tri du texte Unicode UCA data (en)
UTS #39, Unicode Security Mechanisms (en) Réduction de l’usurpation d’identité en Unicode Security data (en)
UTS #46, Unicode IDNA Compatibility Processing (en) Traitement des URL non-ASCII URLs IDNA data (en) et IDNA 2008 derived data (en)
UTS #51, Unicode Emoji (en Émoji et leur comportement Emoji data (en)

Ces modifications sont susceptibles de nécessiter des changements dans les implémentations. Les sections migrations et modifications des standards UTS #10 (en), UTS #39, (en), UTS #46 (en) et UTS #51 (en) indiquent comment y procéder.

Montée en version vers Unicode 16

Quels impacts pour cette montée en version, outre les modifications apportées par l’ajout de nouveaux caractères et de nouveaux systèmes d’écriture ? Ils semblent plutôt mineurs, le changement le plus notable concerne sans doute celui de l’accès aux spécifications Unicode :

  • les spécifications de base ont été complètement remaniées pour Unicode 16.0 et, converties en HTML, elles sont déployées dans un sous-site autonome,
  • plusieurs des caractères ajoutés peuvent avoir quelques implications sur certaines optimisations de la normalisation; cela ne modifie pas l’algorithme de normalisation, mais il peut y avoir des conséquences sur la dérivation et l’utilisation des propriétés Quick_Check pour l’optimisation de la détection des formes de normalisation, voir UAX #15 (en),
  • des modifications ont été apportées sur les sauts de lignes apportées au guillemet simple gauche, U+2018 et aux guillemets directionnels similaires dans les contextes spécifiques d’Asie de l’Est afin de corriger les sauts de ligne en chinois simplifié et mieux coller aux spécifications au comportement de l’ICU (International Components for Unicode, bibliothèque logicielle, à ne pas confondre avec la fédération internationale des cheerleaders), voir UAX #14 (en),
  • quelques changements ont été apportés à la spécification afin de mieux s’aligner sur les pratiques courantes et simplifier les éléments transitoires qui ne sont plus nécessaires.

Fin

On laissera le mot de la fin à St00e9phane Bortzmeyer1 au sujet d’un site (de 2023) codé avec les pieds et une faible connaissance d’Unicode :

Si tu n’es pas assez fort pour lire les points de code Unicode, c’est que tu ne t’appliques pas assez de discipline.

J’en profite pour le remercier d’avoir fait passer l’information sur la sortie d’Unicode 16 sur Mastodon, sinon je l’aurais complètement ratée.


  1. Stéphane Bortzmeyer consacre le dernier chapitre de son livre Cyberstructure (2018, C&F) à l’Unicode et raconte comment son prénom est maltraité. Ceci est ma petite contribution à sa collection personnelle. 

Aller plus loin

  • # Enfin!

    Posté par  (site web personnel, Mastodon) . Évalué à 4 (+2/-0).

    À cela s’ajoutent sept-cent symboles (en) d’environnements informatiques, blocs Unicode 1CC00 à 1CEBF (Symbols for Legacy Computing Supplement).

    Quelques symboles utiles dans cette catégorie pour les irréductibles du terminal ou des forums usenet.

    On va enfin pouvoir faire des schémas électroniques lisibles en "ASCII" art (pardon pour l'abus de langage), puisque ce bloc contient des résistances, diodes, transistors, et autres condensateurs, ainsi que quelques portes logiques.

    Nous avons également des douzièmes de cercles (parfait pour une animation de chargement), les personnages du jeu Space Invaders, quatre types de bombes atomiques et un nuage d'explosion en forme de champignon, un entonnoir, des caractères semigraphiques qui découpent un caractère en 6 ou en 8 blocs, sans oublier "OLD PERSONAL COMPUTER WITH MONITOR IN PORTRAIT ORIENTATION" (ancien ordinateur personnel avec un écran en orientation portrait).

    Quel est votre préféré?

    • [^] # Re: Enfin!

      Posté par  (site web personnel, Mastodon) . Évalué à 3 (+0/-0).

      Je peux bien l'avouer, je ne voyais absolument pas l'intérêt d'ajouter toute cette collection de vieux symboles informatiques (qui ne me parlent absolument pas). Merci d'avoir éclairé ma lanterne sur ce point.

      « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

      • [^] # Re: Enfin!

        Posté par  (site web personnel, Mastodon) . Évalué à 4 (+2/-0).

        Je pense que l'objectif d'Unicode est surtout d'avoir une liste exhaustive de tous les symboles qui existent, afin de pouvoir convertir n'importe quel texte en Unicode.

        Donc, peu importe si c'est vraiment utile pour les nouveaux développements.

        Si on ne fait pas ça, il y aura toujours quelqu'un pour dire "oui mais en Unicode je ne peux pas dessiner un transistor" et des risques de perte/dégradation de données lorsqu'on convertit quelque chose en Unicode. On est donc, dans certains cas, obligé de stocker l'information d'encodage (est-ce que c'est de l'Unicode, ou autre chose) avec le texte. Le but (ambitieux) d'Unicode étant de régler ce problème une bonne fois pour toutes, ils sont obligés d'inclure le moindre cas particulier du système le plus obscur.

        Un "vrai" exemple d'utilisation: je développe un émulateur pour les ordinateurs Amstrad CPC qui est équipé d'un debugger permettant d'analyser la mémoire. Ce debugger permet d'afficher par exemple du texte contenu dans la mémoire de la machine. Il est très pratique de pouvoir convertir ce texte en Unicode pour l'afficher dans mon système moderne sur lequel fonctionne l'émulateur. Pour certains caractères, ce n'est possible que parce que je jeu de caractères spéciaux de l'Amstrad CPC a été fidèlement reproduit dans Unicode. Sinon, je serais obligé de faire cette conversion d'une autre façon (avec une police de caractères personnalisée par exemple), ce qui revient à perpétuer un encodage de texte exotique et non standardisé.

        C'est là le vrai rôle de ces blocs "legacy computing" (rétro informatique).

        Ce qui n'empêche pas aussi de trouver de nouvelles utilisations pour ces caractères un peu oubliés, et en particulier pour les personnes qui utilisent toujours un terminal en mode texte (pour des raisons de limitations techniques, de vitesse, ou simplement par préférence personnelle). Ils ont tous été ajoutés pour une raison valable dans le contexte d'une autre machine, d'une informatique d'un autre temps peut-être, mais il n'y a pas de raison a priori que les idées explorées alors ne soient plus utilisables aujourd'hui. J'en donnais quelques exemples dans mon premier message, mais il y en a sûrement plein d'autres.

        • [^] # Re: Enfin!

          Posté par  (site web personnel) . Évalué à 2 (+0/-0).

          Le but (ambitieux) d'Unicode étant de régler ce problème une bonne fois pour toutes, ils sont obligés d'inclure le moindre cas particulier du système le plus obscur.

          En théorie, ça devrait être un but perdu d'avance, vu qu'on devrait pouvoir créer de nouveaux caractères quand on en a besoin. Malheureusement, j'ai dû mal à concevoir comment on pourrait permettre aux gens de créer des nouveaux caractères, les intégrer dans leurs documents et transmettre les informations nécessaires pour les afficher dynamiquement.

          C'est particulièrement dommageable pour les systèmes pictographiques/idéographiques, mais moi j'aimerais bien pouvoir créer de nouveaux signes de ponctuations, bon avec (La)TeX, je vois comment faire (en les dessinant), mais sinon, c'est un peu compliqué.

          • [^] # Re: Enfin!

            Posté par  (site web personnel, Mastodon) . Évalué à 2 (+0/-1).

            Ça pose surtout problème pour les systèmes qui ne sont plus employés comme les hiéroglyphes égyptiens puisqu'il faut le temps que ça soit adopté par Unicode. Et j'ai l'impression que les systèmes idéographiques et autres du même genre ont tendance à se simplifier plutôt que se complexifier.

            Quant à la création de nouveaux signes de ponctuation, elle pose deux problèmes : sa nécessité d'abord ensuite sa compréhension. Si c'est pour faire des signes de ponctuation pour soi tout seul, à mon avis, l'intérêt est très limité.

            « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

        • [^] # Re: Enfin!

          Posté par  (site web personnel, Mastodon) . Évalué à 3 (+0/-0).

          Je pense que l'objectif d'Unicode est surtout d'avoir une liste exhaustive de tous les symboles qui existent, afin de pouvoir convertir n'importe quel texte en Unicode.

          Plus précisément qu'il soit possible d'écrire n'importe quel texte et qui ne soit pas du texte-image, illisible par les dispositifs d'assistance ou par les robots. C'est le point le plus important. Et c'est pour cela que des langues avec très peu de locuteurs et de locutrices voient leur système d'écriture ajouté à Unicode. C'est le cas notamment des langues indiennes de cette version de la norme. C'est aussi pour cela que les systèmes d'écriture ancien, comme les hiéroglyphes ou le todhri (qui n'est plus du tout utilisé) sont ajoutés.

          « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

    • [^] # Re: Enfin!

      Posté par  . Évalué à 3 (+1/-0).

      Encore faut-il une police pour les prendre en charge.

      https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll

      • [^] # Re: Enfin!

        Posté par  (Mastodon) . Évalué à 4 (+1/-0).

        Oui mais il faut bien commencer par le standard sinon la police n'existera jamais.

        En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.

      • [^] # Re: Enfin!

        Posté par  . Évalué à 2 (+0/-0).

        Avec Nerdfont on a déjà tout ce qu'il faut.

  • # "Symbols for Legacy Computing Supplement" (1CC00 à 1CEBF) en image

    Posté par  . Évalué à 4 (+2/-0).

    "Symbols for Legacy Computing Supplement" (1CC00 à 1CEBF) en image :
    https://www.unicode.org/charts/PDF/Unicode-16.0/U160-1CC00.pdf

  • # Fut

    Posté par  . Évalué à 2 (+0/-0).

    « El Hadji Assane Faye, qui fût » de chêne ? 😁

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.