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

9. Émulation de terminal ; la console

9.1 Émulation de terminal

Introduction à l'émulation de terminal

Puisqu'un PC possède un écran et un clavier (comme un terminal) mais possède aussi bien plus de puissance de calcul, il est facile d'utiliser une partie de cette puissance de calcul pour que le PC se comporte comme un terminal texte. Les logiciels d'émulation sont disponibles pour MS Windows et sont intégrés dans les versions récentes de MS Windows. La plupart des logiciels Linux ne peuvent émuler que des VT100, VT102 ou VT100/ANSI. Si vous en trouvez d'autres, dites-le moi. Puisque la plupart des PC possèdent des moniteurs couleur mais que les VT100 et VT102 ont été faits pour des terminaux monochromes, l'émulation ajoute en général des possibilités de gestion de couleurs (et un choix de couleurs). Parfois l'émulation n'est pas parfaite à 100 % mais ceci ne crée en général que peu de problèmes. Pour utiliser un Macintosh pour émuler un terminal, voyez le mini-Howto : Mac-Terminal.

N'utilisez pas TERM pour l'émulation

Certaines personnes ont pensé qu'ils pouvaient faire un émulateur sur la console Linux (le moniteur) en positionnant la variable d'environnement TERM sur le type de terminal qu'elles aimeraient émuler. Ceci ne fonctionne pas. En agissant ainsi, on déclare faussement que le terminal que l'on est en train d'utiliser (de type Linux) est d'un autre type -- mais il ne l'est pas. C'est comme si on avait branché un terminal de type A sur un port série et ensuite positionné TERM sur le type B, déclarant ce faisant que le terminal est de type B. Dans ce cas, les applications comme les éditeurs qui utilisent la variable TERM enverront des séquences d'échappement faites pour un terminal de type B vers un terminal de type A ce qui aura pour résultat de corrompre l'interface. Même avec cette corruption le terminal peut rester utilisable puisque beaucoup de terminaux de types différents utilisent des séquences d'échappement identiques pour beaucoup de commandes (mais pas toutes).

Programmes de communications (appels téléphoniques)

Un programme d'émulation est souvent couplé à un programme d'appel par modem (comme Minicom, Seyon ou Kermit) pour que l'on puisse (par exemple) appeler par téléphone des bibliothèques publiques pour utiliser leurs catalogues et index (ou même lire des articles de magazine). Seyon ne s'utilise qu'avec X Window et peut émuler des terminaux Tektronix 4014. Des émulateurs existent pour DOS comme telix et procomm et fonctionnent aussi bien. Les terminaux émulés sont souvent les vieux VT100, VT102 ou ANSI (comme VT100).

Émulation sous X Window

Xterm (obsolète ??) peut fonctionner sous X Window et permet d'émuler un VT102, VT220 ou Tektronix 4014. Il y a aussi une émulation xterm (bien qu'il n'y ait pas de vrai terminal qui s'appelle "xterm"). Si vous n'avez pas besoin de l'émulation Tektronix 4014 (un terminal avec des vecteurs graphiques ; voyez terminaux graphiques) vous pouvez utiliser eterm. Les prédécesseurs de eterm sont rxvt et xvt. eterm supporte les pixmaps en fond de fenêtre.

Pour les alphabets différents de Latin, kterm permet l'émulation de terminal Kanji (ou tout autre alphabet non Latin) alors que xcin est fait pour le chinois. Il y a aussi l'émulateur 9term. Il semble que ce soit plus qu'un simple émulateur puisqu'il possède un éditeur intégré et des barres de défilement. Il a été fait pour Plan 9, un système d'exploitation à la Unix de AT&T.

Les vrais terminaux sont mieux

Sauf si vous utilisez X Window avec un grand affichage, il est plus agréable d'utiliser un vrai terminal que de l'émuler. Il coûte en général moins cher, a une meilleur résolution pour le texte et n'a pas de lecteurs de disques qui font des bruits agaçants. Certains terminaux réels peuvent émuler divers autres modèles de terminaux mais restent de vrais terminaux.

9.2 Tester l'émulation du terminal

Pour la série des terminaux VT il y a un programme de test : vttest pour aider à déterminer si un terminal se comporte correctement comme un vt53, vt100, vt102, vt220, vt320, vt420, etc. Il n'y a pas de documentation mais il a des menus et est facile à utiliser. Pour le compiler lancez le script configure et ensuite tapez "make". On peut le charger à : ftp://ftp.clark/net:/pub/dickey/vttest/. Un autre site de chargement est : http://metalab.unc.edu/pub/Linux/utils/console/.

9.3 La console Linux

La console d'un système PC sous Linux est le moniteur de l'ordinateur. Il émule un terminal de type "Linux". Il n'y a pas moyen (sauf si vous voulez passer des jours à réécrire le code du noyau) pour le faire émuler autre chose. Positionner la variable d'environnement TERM à un type de terminal différent de "Linux" n'aboutira pas à l'émulation de cet autre terminal. Vous n'obtiendrez qu'une interface corrompue puisque vous avez déclaré faussement (par l'intermédiaire de la variable TERM) que votre "terminal" est d'un type différent de ce qu'il est. Voyez la section n'utilisez pas TERM pour l'émulation.

L'émulation "Linux" est souple et possède des possibilités qui vont bien au-delà de celles du terminal vt102 qu'il était censé émuler. Celles-ci comprennent la possibilité d'utiliser des fontes personnalisées et de reconfigurer facilement le clavier (sans modifier le code source et recompiler le noyau comme il faut le faire dans le cas d'un terminal réel). Ces possibilités supplémentaires se trouvent dans le logiciel de pilotage de la console et non dans le logiciel d'émulation mais le résultat fait qu'on dirait que ces possibilités font partie de l'émulation.

Beaucoup de commandes existent (voyez le HOWTO Keyboard-and-Console) pour utiliser ces possibilités supplémentaires. Les vrais terminaux, qui n'utilisent ni codes de balayages (scancodes) ni carte VGA, ne peuvent malheureusement pas utiliser la plupart de ces possibilités. On peut recompiler Linux pour qu'un terminal reçoive les messages qui vont normalement sur la console. Voyez transformer un terminal en console.


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