Je suis Charlie

Autres trucs

Accueil

Seulement les RFC

Seulement les fiches de lecture

Mon livre « Cyberstructure »

Ève

Version 14 d'Unicode

Première rédaction de cet article le 16 septembre 2021


Le mardi 14 septembre est sortie la version 14 d'Unicode (retardée pour cause de Covid-19). Une description officielle des principaux changements est disponible mais voici ceux qui m'ont intéressé particulièrement. (Il n'y a pas de changement radical.)

Pour explorer plus facilement la grande base Unicode, j'utilise un programme qui la convertit en SQL et permet ensuite de faire des analyses variées. Faisons quelques requêtes SQL :

ucd=> SELECT count(*) AS Total FROM Characters;
 total  
--------
 144762

Combien de caractères sont arrivés avec la version 14 ?

ucd=> SELECT version,count(version) FROM Characters GROUP BY version ORDER BY version::float;
...
 11.0    |   684
 12.0    |   554
 12.1    |     1
 13.0    |  5930
 14.0    |   838

838 nouveaux caractères, c'est une version calme (la version 13 apportait bien davantage de caractères). Quels sont ces nouveaux caractères ?

ucd=> SELECT To_U(codepoint) AS Code_point, name FROM Characters WHERE version='14.0' ORDER BY Codepoint;
 code_point |                                    name                                    
-----------+----------------------------------------------------------------------------
...
 U+870      | ARABIC LETTER ALEF WITH ATTACHED FATHA
 U+871      | ARABIC LETTER ALEF WITH ATTACHED TOP RIGHT FATHA
 U+872      | ARABIC LETTER ALEF WITH RIGHT MIDDLE STROKE
 U+873      | ARABIC LETTER ALEF WITH LEFT MIDDLE STROKE
 U+874      | ARABIC LETTER ALEF WITH ATTACHED KASRA
...
 U+12F90   | CYPRO-MINOAN SIGN CM001
 U+12F91   | CYPRO-MINOAN SIGN CM002
 U+12F92   | CYPRO-MINOAN SIGN CM004
 U+12F93   | CYPRO-MINOAN SIGN CM005
 ...
 U+1CF00    | ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT
 U+1CF01    | ZNAMENNY COMBINING MARK NIZKO S KRYZHEM ON LEFT
 U+1CF02    | ZNAMENNY COMBINING MARK TSATA ON LEFT
...
 U+1E290   | TOTO LETTER PA
 U+1E291   | TOTO LETTER BA
 U+1E292   | TOTO LETTER TA
 U+1E293   | TOTO LETTER DA
...
 U+1FAAC    | HAMSA
 U+1FAB7    | LOTUS
 U+1FAB8    | CORAL
 U+1FAB9    | EMPTY NEST
 U+1FABA    | NEST WITH EGGS
 ...

Cette version amène en effet plusieurs écritures nouvelles comme le toto, le chypro-minoen (toujours pas déchiffré, ce qui explique que ses caractères aient un numéro et pas un nom), le vieil ouïghour (écriture pour laquelle ont été fabriquées les plus anciens caractères mobiles connus), le vithkuqi, ou le tangsa. On trouve également beaucoup de nouveaux caractères de l'alphabet arabe pour écrire des langues non-arabes.

Plus anecdotique, on trouve également la notation musicale Znamenny.

Si vous avez les bonnes polices de caractères, vous allez pouvoir voir quelques exemples (sinon, le lien mène vers Uniview). Un nouveau symbole apparait, le Som (), pour la monnaie officielle du Kirghizistan. Et on a l'habituelle succession de nouveaux émojis, plus ou moins utiles. Les recruteurs aimeront l'index pointé 🫵, les royalistes seront contents de la tête couronnée 🫅, les nostalgiques d'Usenet auront le troll 🧌, les fanas de Dune frémiront en voyant l'eau qu'on verse 🫗, les geeks s'angoisseront de la batterie vide 🪫 et les partisans de la surveillance de la population noteront qu'on a un émoji « carte d'identité » 🪪. Les personnes transgenres remarqueront l'homme enceint (🫃, ainsi que la personne enceinte 🫄, la femme enceinte 🤰 était arrivée en Unicode version 9).

Tiens, d'ailleurs, combien de caractères Unicode sont des symboles (il n'y a pas que les emojis parmi eux, mais Unicode n'a pas de catégorie « emoji ») :

 ucd=> SELECT count(*) FROM Characters  WHERE category IN ('Sm', 'Sc', 'Sk', 'So');
 count 
-------
  7741

Ou, en plus détaillé, et avec les noms longs des catégories :

ucd=> SELECT description,count(category) FROM Characters,Categories WHERE Categories.name = Characters.category AND category IN ('Sm', 'Sc', 'Sk', 'So') GROUP BY category, description;
   description   | count 
-----------------+-------
 Modifier_Symbol |   125
 Other_Symbol    |  6605
 Math_Symbol     |   948
 Currency_Symbol |    63

Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)

Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)