Ajout de nouvelles langues dans INTEX

Ajout de nouvelles langues dans INTEX

Pour pouvoir bien définir le fichier Alphabet, il faut d’abord comprendre les codages de caractères. En réalité, il existe plusieurs types de codages de caractères dans le monde informatique. Les codages de l’ancienne génération (ASCII, EBCDIC, par exemple) utilisent 7 bits. En conséquence, ils ne peuvent accueillir que 27 = 128 caractères dont une grande partie est occupée par les caractères de contrôle, les caractères latins majuscules, minuscules, les chiffres et les signes de ponctuation. Il n’y a même pas de place pour les caractères accentués. Les codages de la génération suivante (ASCII étendu, EBCDIC étendu, etc.) utilisent 8 bits, c’est-à-dire qu’ils peuvent accepter jusqu’à 28 = 256 caractères. Les caractères latins accentués sont désormais codés. Ce sont les codages les plus répandus même actuellement, plus particulièrement, l’ASCII étendu qui devient le codage standard de Windows. C’est la raison pour laquelle INTEX adopte ce type de codage. Le Tableau 1.7 montre les caractères latins utilisés sous Windows. La plupart des versions de Windows utilisent toujours l’ASCII étendu à 8 bits. Cependant, ses 256 places ne suffisent pas pour ajouter des caractères étrangers, elles ne suffisent même pas pour des langues à grand alphabet comme le chinois, le japonais ou le coréen qui possèdent des milliers de caractères. Nous montrerons comment Windows gère ce problème à travers 2 exemples : le thaï (langue à petit alphabet) et le coréen (langue à grand alphabet). Nous expliquerons également comment définir le fichier Alphabet dans chaque cas.

Le nombre des caractères thaï est relativement petit (87 seulement, y compris les 10 chiffres thaï). Un octet (8 bits) qui offre 256 places, est largement suffisant. Néanmoins, la table de caractères du Tableau 1.7 est déjà complète, il faut donc supprimer certains caractères parmi les moins courants afin d’acquérir assez de places pour les 87 remplaçants du thaï. Commençons par l’en-tête, nous définissons les polices thaï à utiliser et leur taille, puis, le caractère à cacher. Nous choisissons le blanc (0x20) comme séparateur artificiel des mots thaï parce qu’il sera transparent dans les transducteurs du texte (cf. §6.4.1) et nous mettons 2 blancs derrière « ASIAN » : le deuxième est celui à cacher, le premier sert à séparer les deux termes (cf. §1.2.1.1). Nous décrivons ensuite les caractères que nous voulons considérer comme « lettres » en commençant par les caractères latins. Ceci est très important, d’une part parce que des mots anglais apparaissent souvent dans le texte thaï, d’autre part parce que nos dictionnaires sont codés avec les parties du discours et les codes syntactico-sémantiques en alphabet latin (ADV+z1, PREP, etc.). Si nous excluons ces caractères, nous ne pouvons pas employer les symboles lexicaux dans INTEX. Ensuite, nous définissons les caractères thaï en excluant les signes de ponctuation. Étant donné que l’alphabet thaï ne connaît pas la distinction entre majuscules et minuscules, nous écrivons deux fois le même caractère dans la même ligne. Nous incluons les chiffres thaï à la fin du fichier car nous voulons les considérer comme lettres afin de pouvoir les reconnaître plus tard par le dictionnaire des chiffres thaï (cf. §3.4.4).

Une langue à grand alphabet comme le coréen ne peut pas utiliser la même méthode que le thaï car elle possède des milliers de caractères et la table ASCII étendu à 256 places ne lui suffit même pas. Pourtant, à moins d’utiliser l’UNICODE qui possède 65 536 places, on représente le coréen dans le système Windows avec le « double ASCII », c’est-à-dire que deux codes ASCII (2 octets) se combinent pour coder un caractère coréen. Ce système s’appelle « WANSUNG » et demeure toujours le standard sous Windows coréen. Les caractères latins (non accentués), les chiffres arabes et les signes de ponctuation occupent toujours la première partie de la table. Les deux codes du WANSUNG sont appelés l’octet de tête et l’octet de queue. Le premier trouve sa place entre 0x81 et 0xFE (126 places ; voir Tableau 1.9) tandis que le deuxième se trouve dans une des 3 zones suivantes : 0x41 à 0x5A (26 places), 0x61 à 0x7A (26 places) et 0x81 à 0xFE (126 places). Si Windows trouve un code dans le champ de l’alphabet latin, il l’interprète comme tel. En revanche, à chaque fois qu’il trouve un code dans la zone des octets de tête et que le code suivant est dans une des trois zones des octets de queue, alors il interprète les deux codes ensemble en un caractère coréen. Le Tableau 1.10 montre tous les caractères dont l’octet de tête est 0xB0.

 

Cours gratuitTélécharger le document complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *