Texte bidirectionnel

Texte bidirectionnel

Certains systèmes d’écritures, tels que l’alphabet arabe et hébreu, s’écrivent de droite à gauche (Right-To-Left, RTL, en anglais). Dans ce cas, le texte commence du côté droit de la page et se termine du côté gauche, au contraire du sens d’écriture conventionnel de gauche à droite (Left-To-Right, LTR) des langues utilisant l’alphabet latin (telles que le français). Lorsqu’un texte LTR est mélangé avec un texte RTL dans le même paragraphe, chaque type de texte doit être écrit dans son propre sens, phénomène connu sous le nom de texte bidirectionnel.

Sommaire

Systèmes d’écriture

Cela peut devenir relativement complexe, lorsque plusieurs niveaux de citations sont utilisés. La plupart des systèmes d’écriture originaires de Moyen-Orient sont de cette nature. Par exemple, le nom hébreu Sarah (שרה) doit être épelé shin (ש), resh (ר), heh (ה) de droite à gauche.

Très peu d’écritures peuvent être écrites dans les deux sens. C’était le cas des hiéroglyphes égyptiens, où l’on employait un hiéroglyphe « tête », orientée dans le sens de lecture, marquant le début d’une ligne, et un hiéroglyphe « queue » pour marquer la fin. L’orientation des hiéroglyphes renseigne sur le sens de lecture : les figures (par exemple les oiseaux) « regardent » en effet vers le début de la ligne.

Certaines inscriptions grecques, touaregs, et runiques hongroises ont utilisé un système original, appelé boustrophédon, dans lequel le sens de lecture est inversé à chaque ligne.

Support d’écriture bidirectionnel

Le support d’écriture bidirectionnel (en anglais bidirectional script support) est la capacité d’un logiciel à afficher correctement le texte bidirectionnel. Dans le jargon informatique, on abrège ce terme par BiDi ou bidi. Peu de logiciels affichent correctement les textes bidirectionnels. Certains navigateurs Web peuvent afficher le texte hébreu de cet article en sens inverse.

Les premiers systèmes informatiques étaient conçus pour ne prendre en charge qu’un unique sens d’écriture, en particulier le sens LTR (ainsi qu’une unique fonte basée sur l’ASCII et l’alphabet latin). L’ajout de nouveaux jeux de caractères et d’encodages a permis le support d’autres écritures de gauche à droite, mais peu aisément de droite à gauche, par exemple pour l’arabe ou l’hébreu, et le mélange des deux irréalisable. Le support bidirectionnel a permis d’utiliser les deux sens d’écriture dans une même page, voire dans un même paragraphe.

En particulier, le standard Unicode fournit des bases pour un support BiDi complet, avec des règles détaillées définissant comment doivent être enchaînés les textes de droite à gauche et de gauche à droite pour leur codage et affichage. En codage Unicode, tous les caractères sont stockés dans l’ordre d’écriture, et le logiciel trouve dans quelle direction le texte doit être affiché.

Subtilités techniques en Unicode

Les niveaux

Les morceaux de textes sont numérotés en fonction de leur niveau d’imbrication. Le niveau 0 est du simple texte français, le niveau 1 est du simple texte arabe, possiblement embarqué à l’intérieur de texte français de niveau 0. Le niveau 2 est du texte français, possiblement embarqué à l’intérieur de texte arabe de niveau 1, et ainsi de suite.

Sauf exceptions, le texte et les nombres français seront toujours d’un niveau pair ; les textes arabes (à l’exception des nombres) seront d’un niveau impair.

Exemple

En notant par des majuscules le texte de droite à gauche (arabe), et par des minuscules, le texte de gauche à droite (comme le français, ou le catalan).

Représentation mémoire : un texte TEXTE ARABE en français
Types des caractères  :  LL-LLLLL-RRRRR-RRRRR-LL-LLLLLLLL
Niveau :                 00000000011111111111000000000000

Les caractères neutres (espaces) entre TEXTE et ARABE prennent par défaut le niveau des caractères les entourant. Des marques directionnelles peuvent être ajoutées autour des caractères neutres, afin d’en changer leur effet.

Marques de sens d’écriture

Alors que le sens d’écriture est détecté automatiquement, des marques de contrôle sont prévues afin de pouvoir changer le sens d’écriture.

Le marqueur de gauche à droite a le code hexadécimal 200E. Le marqueur de droite à gauche a le code hexadécimal 200F.

D’autres marqueurs existent, en particulier entre les valeurs 202A et 202E.

Caractères miroir

Certains caractères apparaissent dans leur forme miroir lorsqu’ils sont écrits de droite à gauche.

Par exemple, la parenthèse gauche U+0028 qui est interprétée par le standard Unicode comme une parenthèse ouvrante apparaît comme « ( » quand elle est résolue en tant que paire, et comme son glyphe miroir « ) », lorsqu’elle est considérée comme impaire.

Voir aussi

Articles connexes

Liens externes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Texte bidirectionnel de Wikipédia en français (auteurs)

Игры ⚽ Нужен реферат?

Regardez d'autres dictionnaires:

  • Texte bi-directionnel — Unicode Jeux de caractères UCS (ISO/CEI 10646) ISO 646, ASCII ISO 8859 1 WGL4 UniHan Équivalences normalisées NFC (précomposée) NFD (décomposée) NFKC (compatibilité) NFKD (compatibilité) Propriétés et algorithmes ISO 15924 …   Wikipédia en Français

  • BiDi — Texte bi directionnel Unicode Jeux de caractères UCS (ISO/CEI 10646) ISO 646, ASCII ISO 8859 1 WGL4 UniHan Équivalences normalisées NFC (précomposée) NFD (décomposée) NFKC (compatibilité) NFKD (compatibilité) Propriétés et algorithmes ISO 15924 …   Wikipédia en Français

  • De droite à gauche — Texte bi directionnel Unicode Jeux de caractères UCS (ISO/CEI 10646) ISO 646, ASCII ISO 8859 1 WGL4 UniHan Équivalences normalisées NFC (précomposée) NFD (décomposée) NFKC (compatibilité) NFKD (compatibilité) Propriétés et algorithmes ISO 15924 …   Wikipédia en Français

  • De gauche à droite — Texte bi directionnel Unicode Jeux de caractères UCS (ISO/CEI 10646) ISO 646, ASCII ISO 8859 1 WGL4 UniHan Équivalences normalisées NFC (précomposée) NFD (décomposée) NFKC (compatibilité) NFKD (compatibilité) Propriétés et algorithmes ISO 15924 …   Wikipédia en Français

  • Unicode — est une norme informatique, développée par le Consortium Unicode, qui vise à permettre le codage de texte écrit en donnant à tout caractère de n’importe quel système d’écriture un nom et un identifiant numérique, et ce de manière unifiée, quelle… …   Wikipédia en Français

  • ISO/CEI 10646 — La norme ISO/CEI 10646, intitulée Technologies de l information Jeu universel de caractères codés (JUC), tente de définir un système de codage universel pour tous les systèmes d’écriture. Cette norme est le fondement d’Unicode. Sommaire 1… …   Wikipédia en Français

  • Binary Ordered Compression for Unicode — Le BOCU 1 est un schéma de transformation du texte, compatible avec le répertoire universel d’Unicode et ISO/CEI 10646, en séquences d’octets. Il tire son nom de l’acronyme anglais de Binary Ordered Compression for Unicode (« compression… …   Wikipédia en Français

  • ISO/CEI 646 — L ISO/CEI 646 (ICS n°35.040) est une norme ISO qui depuis 1972 spécifie des codes de caractères graphiques codés sur 7 bits à partir desquels plusieurs normes nationales sont dérivées. La plus connue d entre elles est la variante américaine,… …   Wikipédia en Français

  • UTF-16 — est un codage des caractères définis par Unicode où chaque caractère est codé sur une suite de un ou deux mots de 16 bits. Le codage était défini dans le rapport technique 17 à la norme Unicode. Depuis, cette annexe est devenue obsolète car UTF… …   Wikipédia en Français

  • Marque d'ordre des octets — Pour les articles homonymes, voir BOM. En Unicode, une marque d ordre des octets ou BOM (pour l anglais Byte Order Mark) est un caractère unicode de code point U+FEFF (espace insécable de largeur nulle «zero width no break space»), quand ce… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”