Voilà un touitte de l'ANRT qui annonce qu'Unicode a été complété des caractères nécessaires à 4 autres graphies qui n'y étaient pas encore, pour atteindre le total (fort honorable) de 150 graphies.

L'occasion de vous faire un petit fil pour parler typographie (et jouer les vieux cons).

Parlons donc d'Unicode.

Unicode, c'est un projet de fou. Une espèce de délire humaniste d'informaticiens typographes du 20e siècle. Un peu comme l'Encyclopédie, celle de Diderot et D’Alembert.

L'idée était d'avoir un schéma de codage des caractères qui permette de recouvrir tous les schémas connus auparavant, et idéalement, toutes les langues écrites de l'humanité.

Les règles qui ont été retenues sont, presque toujours, les plus exigeantes possibles, et accordant une place très importante aux questions techniques. Le but n'était pas de faire un annuaire de tous les caractères dont personne ne se serve. Il fallait que ça puisse devenir un standard industriel, universel. Alors il fallait absolument prendre en compte les contraintes techniques, pour que les industriels suivent.

C'est par exemple de là que vient la contrainte sur la bijection : pour tous les codages connus (genre, le big5, schéma de codage utilisé par l'industrie japonaise), il faut qu'on puisse convertir l'ancien schéma vers unicode, aller-retour, sans aucune perte.

Ça semble abstrait ? Si l'ancien schéma contient deux caractères X1 et X2, alors, on doit retrouver ces deux caractères à deux positions différentes dans Unicode, même si la logique disait que c'était le même.

Par exemple, si dans un codage on avait "a latin minuscule" et "a latin minuscule italique", alors il fallait qu'Unicode prévoit les deux. Ainsi, l'ancien fichier pouvait être transcodé vers Unicode, puis de nouveau vers le schéma d'origine, et le fichier retrouvé était absolument intact, à l'octet près.

Pourtant, Unicode, normalement, stocke des caractères, par des glyphes.

On retrouve donc, pour ce compromis technique important, quelques éléments un peu hérétiques dans Unicode. Des caractères qui n'ont rien à y faire, mais qui sont conservés, pour les vieux fichiers.

Il y avait aussi la volonté de représenter toutes les langues. Toutes. Vraiment. Y compris dans leurs formes rares.

C'est une des raisons pour lesquelles Unicode continue à évoluer. Lentement, par rapport à ses débuts, mais ça continue. Parce qu'il y a des langues qui sont tellement mal représentées dans les outils modernes qu'il n'existe aucun outil informatique. Mais qui sont parlées, hein.

J'ai souvenir de cette langue rare, d'Inde, qui pouvait se typographier au plomb, à la fin du 19e, et n'a pu être typographiée à l'ordinateur qu'au début du 21e siècle.

Et encore, uniquement parce que des doux dingues ont écrit le code nécessaire pour faire ça avec LaTeX. La langue en question est une langue minoritaire d'Inde. C'est-à-dire 50 millions de locuteurs. Mais voilà, ils ne sont pas occidentaux, et ne roulent pas en SUV. Pendant ~60 ans, ça a été une tannée pour voir leur langue écrite.

Voyez, dans ma tête, Unicode, c'est ça. Un projet humaniste, d'unification, pour que toutes les langues du monde accèdent au numérique.

Du coup, si les grands noms de l'informatique pouvaient consacrer des efforts à ça, par exemple en produisant des polices de caractères cohérentes qui couvrent *tout* Unicode, qui permettent d'écrire, avec tous les supports numériques, dans toutes les langues du monde, ça me semblerait... vertueux.

Mais, en général, quand on parle d'Unicode, c'est pour discuter le look de la dernière émoji...

Alors, sans vouloir manquer de respects aux amateurices d'émojis, franchement, savoir si avec une série de caractères combinants on peut représenter une émoji "Courgette aux curry qui fait du tambour avec un poireau bleu et un chapeau pointu", j'en comprend le côté amusant, mais c'est pas ça, le sens d'Unicode.

Et ça m'exaspère qu'on laisse toujours le côté fantastique de cet outil dans l'ombre, pour montrer son côté le plus complètement inutile.

Alors, voilà, il y a dans Unicode les positions pour coder 4 nouvelles graphies, de langues rares, qui jusqu'à présent devaient être, soit écrites dans des alphabets qui ne sont pas les leurs, soit inaccessibles aux ordinateurs, c'est-à-dire mortes.

Unicode, c'est l'arche de Noé pour que les langues de l'humanité ne s'éteignent pas à cause de ce satané ordinateur qui ne sait parler qu'anglais.

@bayartb Si les langues actuellement parlées sont prioritaires dans Unicode, il y a aussi du travail fait pour encoder les systèmes d'écriture qui ne sont plus utilisés du tout, afin de pouvoir aussi numériser les écrits historiques.

@Feufochmar @bayartb Super intéressant ! Les hiéroglyphes y sont déjà présents je suppose ? Quid des "langues qui n'existent pas" ? genre le fameux elfique ou le klingon de StarTrek ? C'est envisageable ?
Ah, et autre question : il reste de la place dans l'unicode ???

@Mindiell @Feufochmar Alors, les hiéroglyphes, oui, c'est déjà dedans. Les langues imaginaires comme l'elfique ou le klingon, j'avoue, je n'ai pas vérifié. Disons que c'est plausible (au moins l'elfique, il a été utilisé dans la littérature, donc, si tu veux pouvoir publier Tolkien...). Et oui, il reste encore beaucoup de place.

Au début des travaux sur Unicode, ils sont partis sur un codage 16 bits. Quand il est apparu que ce serait un peu court, ils ont adopté 17 plans de 16 bits.

@Mindiell @Feufochmar En fait, le plan principal, et 16 plans secondaires. Mais du coup, ça se code sur... Bin... En fait c'est le bordel :)
20 bits ne suffisent pas. 21 bits, ça ferait 32 plans de 16 bits.

En pratique, on considère de nos jours qu'Unicode est sur 32 bits, et donc qu'il y a de la place. La représentation en utf8 n'est qu'une façon de représenter 32 bits par des séquences 8 bits en gardant la compatibilité avec ascii.

Follow

@bayartb @Feufochmar Très instructif, comme d'hab ;o) Merci pour les précisions !

Sign in to participate in the conversation
La Quadrature du Net - Mastodon - Media Fédéré

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!