Les problèmes d'encodage, c'est un cauchemar quotidien lorsqu'on travaille sur des corpus. Surtout sur des corpus venants du web. Surtout sur des corpus comprenant des systèmes d'écriture non latins.
Mais aujourd'hui, nous avons eu affaire à une nouveauté dans le domaine : les problèmes liés au sens de lecture. Voyez plutôt :
![]() |
| cliquer pour agrandir la capture |
Nous avons ici une capture d'écran du résultat d'un script perl qui nous est fourni (minigrep) pour effectuer des recherches de motif avec des systèmes d'écriture divers. L'une de nos langues de travail est l'arabe, langue qui se lit de droite à gauche.
Dans un encodage Unicode, les caractères sont entrés dans l'ordre de lecture, sans tenir compte de la nature de cet ordre. C'est à dire qu'en arabe, où on doit écrire
, sitôt qu'on écrit de l'arabe le curseur se déplace de droite à gauche, et on entre d'abord 11, puis le mot. Si on affiche les octets composant le fichier, on observera que les octets correspondant à "11" viendront avant les octets correspondant à "". C'est le rôle du moteur de rendu, ici votre navigateur préféré, d'afficher le texte de droite à gauche.
, sitôt qu'on écrit de l'arabe le curseur se déplace de droite à gauche, et on entre d'abord 11, puis le mot. Si on affiche les octets composant le fichier, on observera que les octets correspondant à "11" viendront avant les octets correspondant à "". C'est le rôle du moteur de rendu, ici votre navigateur préféré, d'afficher le texte de droite à gauche.


