On les appelle parfois "séquences de contrôle". Cette section du Text-Terminal HOWTO est incomplète (et pourra ne jamais être complète car il y a un grand nombre de séquences de contrôle). Cette section sert de référence et appartient peut-être vraiment à ce qu'on pourrait appeler "Text-Terminal-Programming-HOWTO" (HOWTO sur la programmation d'un terminal texte).
Un exemple de séquence d'échappement ANSI normale est ESC[5B qui déplace le curseur vers le bas de cinq lignes. ESC est le caractère d'échappement. Le paramètre 5 est inclus dans la séquence. Si c'était 7 le curseur bougerait vers le bas de sept lignes, etc. Il est facile de comprendre l'explication suivante pour la séquence : "déplacer le curseur vers le bas de x lignes : ESC[xB". Mais un jargon de commande tel que : "requête d'attribut pour périphérique tertiaire" est moins compréhensible. Cette section essaiera d'expliquer une partie du jargon utilisé dans les commandes de séquences d'échappement. Une liste complète (comprenant les codes de séquences d'échappement pour la norme ANSI) est un projet "qu'on voudrait bien faire". Puisque beaucoup de séquences d'échappement font la même chose que ce qui est fait en configurant le terminal avec options de configuration, de telles options en séquences d'échappement ne seront pas répétées ici.
Pour avoir une liste de nombreuses séquences d'échappement (mais pas toutes) pour divers terminaux, voyez séquences d'échappement ; Amérique du Nord ou séquences d'échappement ; Europe. On utilise celles-ci pour émuler un terminal et elles ne sont pas toujours les mêmes que sur le vrai terminal correspondant. Une liste pour les VT (non maintenue) se trouve à FAQ Émulateurs. Cherchez "VT".
Table des codes de contrôle 8 bits DEC (en hexadécimal). Fonctionne sur les VT2xx ou plus récents. CSI est le code le plus courant.
ACRONYME NOM_COMPLET HEXA REMPLACE IND Index (une ligne vers le bas) 84 ESC D NEL Ligne Suivante 85 ESC E RI Index Inverse (une ligne vers le haut) 8D ESC M SS2 Décalage Simple 2 8E ESC N SS3 Décalage Simple 3 8F ESC O DCS Chaîne de Contrôle Périphérique 90 ESC P CSI Introduction Séquence de Contrôle 9B ESC [ ST Terminaison de Chaîne 9C ESC \
Ces séquences sont en général des requêtes envoyées de l'hôte pour demander un rapport du terminal. Le terminal répond en envoyant un rapport (en fait une autre séquence d'échappement) à l'hôte qui y a intégré certaines valeurs indiquant à l'hôte l'état en cours du terminal. Dans certains cas un rapport peut être envoyé à l'hôte même s'il n'a pas été demandé. Ceci arrive parfois quand on quitte la configuration. Par défaut aucun rapport non sollicité ne devrait être envoyé.
Le curseur se trouve à l'endroit où le prochain caractère reçu de l'hôte sera affiché. La plupart des mouvements de curseur sont compréhensibles. "index cursor" (indexer le curseur) veut dire déplacer le curseur vers le bas d'une ligne. Les mouvements du curseur peuvent être relatifs à la position en cours comme "déplacer de 4 espaces vers la gauche" ou absolus comme "déplacer à la rangée 3, colonne 39". Le mouvement absolu s'appelle "positionnement direct du curseur" ou "adressage direct du curseur".
La position d'origine est rangée 1, colonne 1 (l'origine de l'index est 1). Mais l'emplacement de cette position d'origine à l'écran n'est pas clair. Si "mode d'origine du curseur", équivalent à "mode d'origine relatif", est choisi, l'origine se trouve en haut de la partie défilante (pas forcément le haut de l'écran). Si le "mode d'origine absolu" est choisi (même chose que désactiver l'un des deux modes de la phrase précédente) alors l'origine se situe dans le coin en haut à gauche de l'écran. Sur certains terminaux anciens si le "mode d'origine du curseur" est activé, cela veut dire que c'est relatif.
Voyez pages pour avoir une explication sur les pages. Il y a un certain nombre de séquences d'échappement pour s'occuper des pages. Le texte peut être copié d'une page à une autre et on peut déplacer le curseur de page en page. Le passage d'une page à l'autre peut ou peut ne pas être automatique : quand l'écran est plein (page 1), alors les données supplémentaires venant de l'hôte vont sur la page 2. Le curseur peut n'être que sur une page à la fois et les caractères envoyés au terminal vont là. Si cette page n'est pas affichée, le nouveau texte sera reçu par le terminal et ira en mémoire d'affichage, mais vous ne le verrez pas (jusqu'à ce qu'on passe à cette page sur le terminal).
Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:43