Page suivante - Page précédente - Table des matières

6. Les tables de caractères de la console

Le noyau a quatre tables de conversion des octets en symboles écran: a) Latin1 -> PC, b) VT100 graphique -> PC, c) PC -> PC, d) utilisateur.

Il y a deux tables de caractères, appelées G0 et G1, dont l'une est la table courante. (Initialement G0.) Taper ^N fait passer à la table G1, ^O à la table G0.

Ces variables G0 et G1 pointent sur des tables de conversion et peuvent êtres changées par l'utilisateur. Initialement, elles pointent respectivement sur les tables a) et b). Les séquences ESC ( B , ESC ( 0 , ESC ( U et ESC ( K font respectivement pointer G0 sur les tables de conversion a), b), c) et d). Les séquences ESC ) B , ESC ) 0 , ESC ) U et ESC ) K font respectivement pointer G0 sur les tables de conversion a), b), c) et d).

La séquence ESC c provoque une réinitialisation complète du terminal, ce qui peut être nécessaire si l'écran est tout brouillé. La commande echo ^V^O, souvent conseillée, ne fera que rappeler la table G0, mais rien ne garantit que G0 pointe sur la table a). Certaines distributions ont un programme reset(1) qui fait juste un echo ^[c. Si votre termcap pour la console est correcte (et a une entrée :rs=\Ec:), alors vous pouvez utiliser setterm -reset.

La table de conversion d) peut être définie par mapscrn(8). Le résultat est que si un symbole c est affiché, c'est le symbole s = map[c] qui est mis dans la mémoire vidéo. L'image du caractère s se trouve dans la mémoire de la carte vidéo et peut être modifiée avec setfont(8).


Page suivante - Page précédente - Table des matières