Cette annexe décrit l'affichage, la gestion et l'impression de texte lorsque vous utilisez le Bureau CDE et les langues suivantes : le thaï et l'hébreu.
Le système d'exploitation de Solaris 7 inclut l'environnement en langue thaïe (TLE). Le TLE fournit un environnement en langue thaïe permettant de saisir, d'afficher et d'imprimer du texte en langue thaïe. De plus, le TLE fournit une plate-forme permettant d'élaborer des applications, des commandes en langue thaïe et d'autres fonctions d'exécution et de surveillance de Solaris 7 et CDE 1.3.
La liste suivante décrit les fonctions de l'environnement TLE :
Standard de jeu de codes
Cette version supporte le standard industriel thaï (TIS 620-2533) pour la représentation des caractères thaïs. Les noms de fichier et de répertoire peuvent comporter des caractères thaïs.
Entrée de texte thaï
Cette version inclut un indicateur de mode d'entrée pour chaque fenêtre pour indiquer le mode d'entrée courant. Vous pouvez également convertir les entrées ASCII en caractères thaïs en utilisant le module pour la bibliothèque internationale X11R6, chargeable de façon dynamique. Vous pouvez entrer du texte sur le clavier Sun Type 4 ou Type 5.
Sortie de texte thaï
Tous les sous-programmes de rendu de texte de CDE 1.3 ont été améliorés pour afficher le texte en langue thaïe. L'algorithme de sortie est basé sur la méthode d'affichage du texte WTT 2.0, géré par le gouvernement thaïlandais. Cette version inclut également des fichiers bitmap thaïs et des polices TrueType.
Impression de texte thaï
Les imprimantes supportées sont les imprimantes matricielles 15 points. Pour obtenir la liste des imprimantes supportées, reportez-vous à l'annexe C du manuel Thai Language Supplement for Solaris 2.6: Release Overview.
Outils de productivité du Bureau CDE
Toutes les fenêtres des applications de CDE 1.3 affichent et acceptent le texte thaï. Vous pouvez couper et coller du texte entre les applications. Cette version supporte les entrées thaïes au niveau Xlib et les sorties thaïes au niveau du kit d'outils, y compris la version CDE 1.3. Cette version fournit par ailleurs des outils de Bureau localisés qui affichent des libellés et les messages en langue thaïe et supporte l'utilisation de texte, de noms de fichiers en langue thaïe, etc.
Présentation complexe de texte (CTL)
Les fonctions CTL permettent aux API Motif de supporter des systèmes d'écriture qui nécessitent des transformations complexes entre les représentations de texte physique et logique. Elles fournissent également des options de traçage des caractères et de transformation de texte statique et dynamique. Par ailleurs, CTL supporte l'orientation de texte de gauche à droite et de droite à gauche et la tabulation pour le texte dynamique.
L'environnement TLE comporte la bibliothèque CDE 1.3, comprenant la gestion de texte en langue thaïe (insertion, suppression, sélection, fonctions Couper, Copier, Coller, Glisser et poser) conformément aux standards WTT 2.0. Pour plus d'informations sur l'utilisation de la bibliothèque pour développer des programmes, reportez-vous au manuel Solaris Common Desktop Environment: Programmer's Guide.
Cette section décrit les mécanismes de gestion des caractères thaïs.
Vous aurez peut-être besoin d'insérer des caractères anglais et des caractères thaïs dans un même fichier. Pour passer d'une fenêtre en langue anglaise à une fenêtre en langue thaïe et inversement, appuyez sur les touches Control+espace. La fenêtre de message située dans la partie inférieure de chaque outil affiche la langue d'entrée utilisée.
Cette section décrit comment utiliser du texte en thaï, plus particulièrement comment :
insérer et supprimer du texte ;
aller à la ligne ;
déplacer le curseur ;
sélectionner du texte ;
copier/coller et faire glisser/poser du texte.
L'insertion et la suppression de caractères thaïs modifient l'affichage du texte, selon que les caractères peuvent être composés ou non.
Les figures suivantes montrent comment insérer la séquence MAIHUNAKAT (voyelle AV2) entre SARA_II (voyelle AV3) et YOYAK (consonne).
MAIHUNAKAT ne peut pas se composer avec SARA_II et doit donc être affiché dans sa propre cellule.
L'exemple suivant illustre la suppression du caractère SARA_II (voyelle AV3).
Le caractère MAIHUNAKAT peut être composé avec NONU (consonne du type CONS). Il s'affiche donc dans la cellule précédente.
Il n'existe pas de caractères de délimitation (espaces) en langue thaïe. Cela complique le passage à la ligne en raison de la combinaison de caractères d'espacement et de caractères de non-espacement.
En environnement Solaris TLE 7, le passage à la ligne est effectué au niveau de la cellule d'affichage et le logiciel TLE compense les caractères de non-espacement lors du passage à la ligne. Par exemple, si un caractère d'espacement est entré à la fin de la dernière colonne d'une ligne, le curseur passe à la ligne suivante. Si en revanche un caractère de non-espacement est entré au même endroit, le curseur reste sur la même ligne. Le caractère de non-espacement est affiché dans la dernière cellule de la ligne précédente et la position du curseur ne change pas.
Lorsque vous sélectionnez une cellule, tous les caractères de cette cellule (caractères d'espacement et de non-espacement) sont sélectionnés.
Les différents niveaux d'affichage de la langue thaïe peuvent provoquer des déplacements inhabituels du curseur dans les fenêtres dtpad (éditeur de texte). Le curseur ne se déplace qu'entre les cellules d'affichage. Cependant, même si les cellules comportent généralement plusieurs caractères, le curseur ne se déplace pas entre eux.
Le mouvement du curseur dans une fenêtre de terminal est sensiblement différent du déplacement lors de l'édition de texte dans un des outils CDE pour la langue thaïe à l'aide d'éditeurs de texte (tels que dtpad). Lorsque vous déplacez le curseur dans une fenêtre de terminal, le curseur est mis en surbrillance dans la cellule, si celle-ci ne comporte qu'un seul caractère. Si la cellule comporte plusieurs caractères, toute la cellule est mise en surbrillance.
Vous pouvez afficher une combinaison de caractères thaïs et anglais à l'aide des quatre polices thaïes proposées par cette version. Les polices sont regroupées dans le Tableau D-1 et le Tableau D-2.
Vous pouvez afficher une combinaison de caractères thaïs et anglais à l'aide des quatre polices thaïes proposées par cette version. Les polices sont regroupées dans le Tableau D-1.
Tableau D-1 Polices Solaris TLE 7 (à corps variable)
Police |
Style |
Nom de la police |
---|---|---|
Angsana |
Normal |
-monotype-angsa-medium-r-normal--*-*-*-*-m-*-tis620.2533-0 |
Gras |
-monotype-angsab-bold-r-normal--*-*-*-*-m-*-tis620.2533-0 |
|
Italique |
-monotype-angsai-medium-i-normal--*-*-*-*-m-*-tis620.2533-0 |
|
Gras italique |
-monotype-angsaz-bold-i-normal--*-*-*-*-m-*-tis620.2533-0 |
|
Browalia |
Normal |
-monotype-browa-medium-r-normal--*-*-*-*-m-*-tis620.2533-0 |
Gras |
-monotype-browab-bold-r-normal--*-*-*-*-m-*-tis620.2533-0 |
|
Italique |
-monotype-browai-medium-i-normal--*-*-*-*-m-*-tis620.2533-0 |
|
Gras italique |
-monotype-browaz-bold-i-normal--*-*-*-*-m-*-tis620.2533-0 |
|
Cordia |
Normal |
-monotype-cordia-medium-r-normal--*-*-*-*-m-*-tis620.2533-0 |
Gras |
-monotype-cordiab-bold-r-normal--*-*-*-*-m-*-tis620.2533-0 |
|
Italique |
-monotype-cordiai-medium-i-normal--*-*-*-*-m-*-tis620.2533-0 |
|
Gras italique |
-monotype-cordiaz-bold-i-normal--*-*-*-*-m-*-tis620.2533-0 |
|
Tableau D-2 Polices Solaris TLE 7 (à corps fixe)
Police |
Style |
Nom de la police |
---|---|---|
Gothic Normal |
12 pt |
-logic-gothic-medium-r-normal--12-120-75-75-c-80-tis620.2533-0 |
14 pt |
-logic-gothic-medium-r-normal--14-140-75-75-c-90-tis620.2533-0 |
|
16 pt |
-logic-gothic-medium-r-normal--16-160-75-75-c-80-tis620.2533-0 |
|
20 pt |
-logic-gothic-medium-r-normal--20-200-75-75-c-100-tis620.2533-0 |
|
24 pt |
-logic-gothic-medium-r-normal--24-240-75-75-c-100-tis620.2533-0 |
|
Gothic Gras |
12 pt |
-logic-gothic-bold-r-normal--12-120-75-75-c-100-tis620.2533-0 |
14 pt |
-logic-gothic-bold-r-normal--14-140-75-75-c-110-tis620.2533-0 |
|
16 pt |
-logic-gothic-bold-r-normal--16-160-75-75-c-80-tis620.2533-0 |
|
20 pt |
-logic-gothic-bold-r-normal--20-200-75-75-c-120-tis620.2533-0 |
|
24 pt |
-logic-gothic-bold-r-normal--24-240-75-75-c-120-tis620.2533-0 |
|
Gothic Italique |
16 pt |
-logic-gothic-medium-i-normal--16-160-75-75-c-80-tis620.2533-0 |
Cette section décrit comment imprimer du texte en langue thaïe en utilisant le CDE 1.3 et une imprimante matricielle par points. Pour obtenir la liste des imprimantes supportées, reportez-vous à l'annexe C du manuel Thai Language Supplement for Solaris 2.6: Release Overview.
Si la police Angsana UPC est installée sur votre imprimante, vous pouvez effectuer une impression à partir de n'importe quel outil CDE 1.3 (les polices ne sont pas fournies dans Solaris TLE 7).
Cette section suppose que votre imprimante est enregistrée dans le standard WTT 2.0 présenté à la section "Printer Brand, Model, and Code IDs" de l'annexe C du manuel Thai Language Supplement for Solaris 2.6: Release Overview.
Si le système que vous voulez configurer utilise des imprimantes enregistrées dans le standard WTT 2.0, configurez-les en vous aidant des instructions présentées dans le manuel Setting Up User Accounts, Printers, and Mail de la documentation SunOS 5.6.
Lorsque l'imprimante est configurée, procédez comme suit pour pouvoir imprimer des caractères thaïs :
Tapez cd /usr/lp/interfaces
Editez le fichier nommé pour l'imprimante que vous venez de configurer.
Remplacez lp.cat par lp.filter dans la ligne suivante :
if [! -x "${LPCAT:=${LOCALPATH}/lp.cat}"]
Créez un script de shell dans /usr/lib/lp/bin appelé lp.filter qui transmette les tâches d'impression par le biais de lp.cat.
La syntaxe du programme lp.filter doit être identique à celle présentée plus loin. Reportez-vous à la page de manuel thaifilter(1) dans la section "Manual Pages" de l'annexe D du manuel Thai Language Supplement for Solaris 2.6: Release Overview pour connaître la syntaxe de thai_filter_command.
thai_filter_command | lp.cat
Cette section décrit comment utiliser l'utilitaire d'impression thaifilter(1) et les tables de conversion d'impression dont vous aurez besoin pour imprimer du texte en langue thaïe.
La page de manuel thaifilter(1) est un filtre qui convertit le texte thaï en trois niveaux :
les caractères du niveau de base (y compris les caractères ASCII) ;
les caractères de niveau supérieur ;
les caractères de niveau inférieur.
Ce système est connu sous le nom de système de classification à trois niveaux. Il existe deux principales utilisations des fichiers convertis au format de classification à trois niveaux :
indiquer aux imprimantes d'imprimer les caractères thaïs au niveau d'affichage approprié ;
visualiser les fichiers de texte thaï sur des terminaux qui n'autorisent habituellement pas l'affichage multi-niveau (normal) du texte thaï.
sur certaines imprimantes récentes, le logiciel de classification à trois niveaux est déjà installé. C'est pourquoi, il existe une option -x sur le programme thaifilter(1) qui permet de désactiver la classification à trois niveaux.
La page de manuel thaifilter(1) est fournie dans le logiciel TLE 2.6. Vous la trouverez sous forme imprimée à la section "Manual Pages" de l'annexe D du manuel Thai Language Supplement for Solaris 2.6: Release Overview.
Le standard WTT 2.0 identifie les conventions et termes suivants pour l'impression de texte thaï :
ID d'imprimante
Les ID d'imprimante sont des codes à 6 caractères définis par TAPIC qui indiquent le modèle, la marque et le code de caractères d'une imprimante. Les fournisseurs d'imprimantes doivent indiquer clairement les codes sur les imprimantes. La syntaxe d'un ID d'imprimante est BBMMCC, où BBest une abréviation à deux lettres correspondant à la marque, MM une abréviation à deux lettres correspondant au modèle de l'imprimante et CC un nombre à deux chiffres correspondant au code de conversion utilisé par l'imprimante. Les abréviations de marque et de modèle des imprimantes sont répertoriées à la section "Printer Brand, Model, and Code IDs" de l'annexe C du manuel Thai Language Supplement for Solaris 2.6: Release Overview. Reportez-vous à la section suivante pour plus d'informations sur les codes de conversion des imprimantes.
Par exemple, la première ligne du Tableau D-3 présente les abréviations de marque et de modèle d'une imprimante IZR650 de Data Products, DA et ZI. Si l'imprimante utilisait la table de conversion de code numéro 10, l'ID d'imprimante complet serait DAZI10.
Codes de conversion et tables de conversion de codes des imprimantes
Utilisez les codes affichés à droite du Tableau D-3 pour spécifier un ID d'imprimante. Solaris 7 TLE adhère à TIS 988-2533, qui spécifie une table de codes pour l'impression du standard TAC11x11.COD. Toutes les imprimantes n'utilisant pas cette table, le standard TIS spécifie au total 17 tables de conversion de codes pour convertir les autres codes d'imprimante au format TAC11x11.COD (TAC étant l'abréviation de Thai API Consortium. Les API définies par le comité d'internationalisation thaï ont pour préfixe "TAC").
Ces 17 tables de conversion de codes sont fournies avec Solaris 7 TLE pour convertir les codes des différentes imprimantes au format TAC11x11.COD. Les tables, énumérées dans le Tableau D-3 sont enregistrées dans le répertoire /usr/lib/lp/files.
Tableau D-3 Tables de conversion de codes
Table de conversion de codes |
Code utilisé avec l'ID d'imprimante |
---|---|
TAC11x10.COD |
10 |
TAC11x12.COD |
12 |
TAC11x13.COD |
13 |
TAC11x14.COD |
14 |
TAC11x15.COD |
15 |
TAC11x16.COD |
16 |
TAC11x17.COD |
17 |
TAC11x18.COD |
18 |
TAC11x19.COD |
19 |
TAC11x20.COD |
20 |
TAC11x21.COD |
21 |
TAC11x22.COD |
22 |
TAC11x40.COD |
40 |
TAC11x41.COD |
41 |
TAC11x42.COD |
42 |
TAC11x43.COD |
43 |
TAC11xAA.COD |
AA |
Si votre imprimante n'utilise aucune table de conversion de codes d'imprimante, reportez-vous à la section suivante pour savoir comment créer votre propre table de conversion.
Les tables de conversion d'imprimantes sont utilisées pour convertir les instructions d'impression au format TIS 988-2553, format d'impression par défaut de WTT 2.0. Les tables de conversion de codes listées dans le standard WTT 2.0 sont incluses dans Solaris TLE 7.
Si l'imprimante utilisée n'utilise pas le format TIS 988-2553 et qu'elle ne peut utiliser aucune table de conversion de codes, vous devez créer une table de conversion personnalisée. Cette section explique comment créer une nouvelle table de conversion de codes d'imprimantes.
Syntaxe des tables de conversion
Voici un exemple de fichier de conversion de codes :
-- -- -- -- TN -- ! TAC11x10.COD 16 AUG 1991 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA 3F 3F 3F 3F DF E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB 3F 3F 3F FF ! End of TAC11x10.COD
La première ligne de la table de conversion de codes utilise la syntaxe suivante :
CC LG UM EX TN SP ! commentaire
Si l'une des zones à deux caractères n'est pas utilisée, elle doit être complétée par deux tirets (--). Les zones de la première ligne sont décrites dans le Tableau D-4.
Tableau D-4 Tables de conversion de codes
Zone |
Description |
---|---|
CC |
Code combiné au niveau de TIS 988-2553, par exemple SaraI et MaiEk. |
LG |
Graphique en courbes. |
UM |
Code de combinaison de SaraAm et Nikhahit. |
EX |
Extension de lettre longue. |
TN |
Valeurs numériques de la langue thaï. |
SP |
Code spécial non défini dans TIS 988-2553. |
! comments |
Tous les commentaires à apporter. Dans le standard WTT 2.0, cette zone contient le nom du fichier et la date. Le commentaire doit être précédé du symbole "!". |
La partie centrale du fichier de conversion contient 16 lignes de 16 codes chacune, soit un total de 256 codes. Ces codes remplacent le code TIS 988-2553. Le code TIS988-2553 est présenté ci-dessous :
-- -- -- -- TN -- ! TAC11x11.COD 16 AUG 1991 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF ! End of TAC11x10.COD Note: There is no conversion in this table
La dernière ligne de la table de conversion est un autre commentaire, précédé du symbole "!". Les tables de conversion WTT 2.0 se terminent par la ligne :
! END OF nom_fichier
L'environnement d'exploitation Solaris 7 inclut l'environnement en langue hébraïque. Cette section décrit les principales fonctions de cet environnement.
Vous aurez peut-être besoin d'insérer des caractères anglais et des caractères hébraïques dans un même fichier. Pour passer du mode d'entrée en hébreu au mode d'entrée en anglais et inversement, appuyez sur les touches Control+T. La fenêtre de message située dans la partie inférieure de chaque outil affiche la langue d'entrée utilisée.
Cette section décrit comment utiliser du texte en hébreu, plus particulièrement comment déplacer le curseur en mode d'édition logique.
il se peut que vous trouviez une image résiduelle du curseur au début de la ligne de texte, après la saisie du texte. La fonctionnalité n'est pas affectée par cette image résiduelle. Continuez à entrer des données.
Le point d'insertion du texte n'est pas le même en hébreu et en anglais. Pour résoudre ce problème, un double curseur a été inséré pour refléter ces deux positions. Le texte se présente sous la forme ab|DC|, "|" représentant chaque curseur.
le double curseur peut ne pas s'afficher correctement lorsque vous appuyez sur les touches Origine (Home) et Fin.
L'impression en hébreu s'effectue à l'aide de filtres. Le module SUNWheu pour l'hébreu doit être installé sur la machine serveur à laquelle l'imprimante est connectée et à la machine cliente.
La liste suivante de filtres est incluse dans le module pour l'hébreu.
Le filtre heb2ps convertit le texte au format postscript et envoie la police hébreu à l'imprimante avec les autres polices.
Types d'entrées : heb2ps
Types de sorties : postscript
Types d'imprimantes : tous
Imprimantes : toutes
Type de filtre : bas
Commande : /usr/openwin/bin/mp
Options : INPUT * = -A4
Options : INPUT * = -L he
Lorsque vous effectuez une impression en utilisant le filtre hebl2r, le texte entré n'est pas réorganisé. Le texte est formaté pour tenir dans une feuille à 80 colonnes. Cela sera utile pour imprimer un document en anglais ne comportant que peu de mots en hébreu.
Types d'entrées : hebl2r
Types de sorties : heb2ps
Types d'imprimantes : tous
Imprimantes : toutes
Type de filtre : bas
Commande : /usr/lib/lp/postscript/convert_text
Options : INPUT * = -linewidth 80
Lorsque vous effectuez une impression en utilisant le filtre hebr21, tout le texte est inversé et la sortie résultante alignée à droite.
Types d'entrées : hebr21
Types de sorties : heb2ps
Types d'imprimantes : tous
Imprimantes : toutes
Type de filtre : bas
Commande : /usr/lib/lp/postscript/convert_text
Options : INPUT * = -linewidth 80 -inputLayoutDirection
right_down -outputLayoutDirection left_down
Lorsque vous effectuez une impression en utilisant le filtre hebtxt, le texte est trié dans le sens de l'hébreu et de l'anglais et la sortie résultante alignée à droite.
Types d'entrées : hebtxt
Types de sorties : heb2ps
Types d'imprimantes : tous
Imprimantes : toutes
Type de filtre : bas
Commande : /usr/lib/lp/postscript/convert_text
Options : INPUT * = -inputTextMode text_mode_implicit -outputTextMode
text_mode_visual -lineWidth 80 -inputLayoutDirection left_down
-outputLayoutDirection right_down
Pour effectuer une impression à partir de la ligne de commande, utilisez le filtre hebtxt. La page de manuel lp est lp -T hebtxt -d printer_name.
La zone d'impression des fichiers de configuration dt doit être modifiée pour ajouter le filtre de texte hébreu. Par exemple, dans l'application dtmail, l'action d'impression du fichier /usr/dt/appconfig/types/he/dtmail.dt doit être :
ACTION Print { LABEL Print ARG_TYPE DTMAIL_FILE TYPE COMMAND WINDOW_TYPE NO_STDIO EXEC_STRING sh -c ' \ dtmailpr -p -f %(File)Arg_1% | /usr/lib/lp/postscript/convert_text -inputTextMode text_mode_implicit -outputTextMode text_mode_visual -lineWidth 80 -inputLayoutDirection left_down -outputLayoutDirection right_down| mp -A4 -L he| dtlp -u %(File)Arg_1%;'}
Les paramètres convert_text imprimeront de droite à gauche le texte aligné à droite. Pour imprimer le texte aligné à gauche de gauche à droite, remplacez les paramètres précédents par -lineWidth 80.