Résumé

  • La RFC 1345 attribuait des mnémoniques aux caractères pour les faire passer par des jeux de transport plus étroits sans perdre leur identité, si les délimiteurs étaient conservés.
  • Avec intro=0, le signe introducteur et les soulignements encadrant les noms longs disparaissaient. Le texte gagnait en lisibilité mais perdait sa réversibilité ; mnemonic+ascii+0 équivalait à ascii.

Un nom traverse un vieux circuit de courrier. Il contient un caractère que ce circuit ne sait pas porter. Le remplacer par une lettre voisine est rapide ; retrouver plus tard le caractère initial devient alors une affaire de devinette. La RFC 1345, publiée en juin 1992 par Keld Simonsen, proposait une autre route : nommer le caractère avec une petite séquence de signes que plusieurs jeux de codes savaient transmettre.

Cette route exigeait des bornes. Sans marque d’entrée, deux lettres visibles pouvaient être un mot ordinaire ou le nom d’un autre caractère. La RFC recommandait l’esperluette ASCII, valeur décimale 38, pour annoncer le mnémonique. Il fallait doubler ce signe lorsqu’il devait apparaître pour lui-même. Un nom de plus de deux caractères recevait des soulignements autour de lui. Ces signes alourdissaient la ligne ; ils indiquaient aussi exactement où commencer et arrêter la reconstruction.

Le vocabulaire commun reposait sur 83 signes graphiques invariants d’ISO 646. Les mnémoniques de deux caractères visaient surtout des écritures alphabétiques : latin, grec, cyrillique, hébreu et arabe. Les noms de longueur variable couvraient notamment des écritures non alphabétiques comme le japonais et le chinois. Ce choix permettait de parler d’un caractère sans exiger que le terminal d’arrivée puisse le dessiner. Le transport pouvait rester étroit pendant que l’identité du caractère suivait le message.

Puis le format offrait une porte de sortie séduisante. La section 4.3.2 autorisait une valeur introductrice de 0. Dans ce cas, le marqueur ne voyageait plus et les soulignements des noms longs disparaissaient également. La chaîne devenait plus agréable à regarder. Elle cessait aussi de distinguer de façon sûre un mnémonique du texte tapé normalement. La RFC nommait le coût : perte d’information et fin de la réversibilité. Elle donnait même l’équivalence mnemonic+ascii+0 = ascii.

Le problème ne venait donc pas d’un relais défectueux qui aurait arraché un octet. Le système permettait à l’émetteur de choisir lui-même une présentation plus propre au détriment de la preuve. Le format marqué gardait une trace de la différence entre le caractère d’origine et son substitut. Le format à zéro laissait seulement une ligne facile à parcourir. Copier cette ligne dans une archive sans conserver l’entrée changeait un choix de lecture en perte durable.

Simonsen ajoutait une réserve très concrète pour les caractères chinois d’origine chinoise, japonaise ou coréenne. Il déconseillait les mnémoniques dans ce cas : l’équipement du destinataire pouvait souvent traiter le codage d’origine, tandis que les noms de substitution devenaient pénibles à lire. La possibilité technique de tout épeler avec un petit alphabet ne suffisait pas à en faire une bonne interface pour tous les lecteurs.

La RFC était un document d’information, pas une obligation imposée aux messageries. Sa valeur historique est d’avoir mis les deux reçus côte à côte : une forme qui pouvait revenir au caractère, et une forme qui paraissait plus simple mais avait abandonné ce retour. Le zéro n’était pas un détail de ponctuation. C’était une décision sur ce que le prochain lecteur pourrait encore savoir.

Source : RFC 1345, Character Mnemonics & Character Sets, sections 2 et 4.3 ; fiche du RFC Editor.