Provided by: manpages-fr_4.23.1-1_all bug

NOM

       console_codes — Séquence de contrôle et d’échappement des consoles

DESCRIPTION

       Sous Linux, le gestionnaire de console implémente un sous-ensemble important des séquences
       de contrôle des terminaux VT102 et ECMA-48/ISO/IEC 6429/ANSI  X3.64,  ainsi  que  quelques
       séquences   spécifiques   pour   le   changement   de  palette  de  couleurs,  de  jeu  de
       caractères, etc. Dans la description ci-dessous, la seconde colonne de la  table  contient
       les  mnémoniques  ECMA-48  ou DEC (ces derniers ayant le préfixe DEC) pour chaque fonction
       indiquée. Les séquences sans mnémonique ne correspondent ni à l'ECMA-48 ni au VT102.

       Lorsque tout le prétraitement nécessaire à une  sortie  est  terminé,  et  qu'un  flux  de
       caractères  arrive  au  gestionnaire  de  console  pour  être  effectivement  affiché,  la
       traduction des codes utilisés pour le prétraitement en codes utilisés pour  l'affichage  a
       lieu avant tout.

       Si  la console est en mode UTF-8, les octets arrivant sont tout d'abord assemblés en codes
       sur 16 bits au standard Unicode. Sinon, chaque octet est  transformé  en  fonction  de  la
       table  de  correspondance  en  cours  (qui  convertit chaque octet en une valeur Unicode).
       Consultez la section Jeux de caractères ci-après pour plus de détails.

       Normalement, la valeur Unicode est convertie en un index dans la table de caractères,  qui
       est  alors  stocké dans la mémoire vidéo, afin que le glyphe correspondant (comme ceux qui
       se trouvent dans la mémoire morte vidéo), apparaisse sur l'écran. Notez que  l'utilisation
       de   l'Unicode,  et  la  conception  des  PC,  permettent  de  disposer  simultanément  de
       512 symboles différents.

       Si la valeur Unicode rencontrée est un caractère de contrôle ou si l'on est déjà  dans  le
       traitement  d'une  séquence d'échappement, la valeur sera traitée de manière particulière.
       Plutôt que d'être convertie en un index dans la table des caractères et affichée comme  un
       glyphe, elle peut provoquer un déplacement du curseur ou toute autre fonction de contrôle.
       Consultez le paragraphe Contrôle de la console Linux ci-après pour plus de détails.

       Il vaut mieux éviter en général de coder en  dur  les  contrôles  de  terminaux  dans  les
       programmes.  Linux  propose l'utilisation de la base de données terminfo(5) concernant les
       possibilités des terminaux. Plutôt que d'émettre des séquences d'échappement  à  la  main,
       vous pourrez presque toujours utiliser des bibliothèques de gestion de terminaux utilisant
       terminfo ou des utilitaires comme ncurses(3), tput(1) ou reset(1).

   Commandes de la console Linux
       Ce paragraphe décrit tous les caractères de commande et les  séquences  d'échappement  qui
       déclenchent  certaines  fonctions  spéciales  (c'est-à-dire n'affichant pas un glyphe à la
       position actuelle du curseur) sur la console Linux.

       Caractères de contrôle

       Un caractère est dit « de contrôle » s'il correspond à l'un des 14 codes  suivants  (avant
       traduction  par  la  table  de  correspondance  en  cours) :  00 (NUL), 07 (BEL), 08 (BS),
       09 (HT), 0a (LF),  0b (VT),  0c (FF),  0d  (CR),  0e (SO),  0f (SI),  18 (CAN),  1a (SUB),
       1b (ESC),  7 (DEL).  Un  « mode  d'affichage des caractères de contrôle » (voir ci-après),
       dans lequel les codes 07, 09, 0b, 18, 1a et 7f seront quand même affichés  sous  forme  de
       glyphes,  peut  être  défini.  Inversement,  en mode UTF-8, tous les codes de l'intervalle
       00–1f sont considérés comme des caractères de contrôle quel que soit le « mode d'affichage
       des caractères de contrôle ».

       Lorsqu'un  caractère  de  contrôle  est  rencontré, il agit immédiatement, puis est oublié
       (même au milieu d'une séquence d'échappement), et la séquence d’échappement continue  avec
       le   caractère   suivant).  Toutefois,  ESC  indique  le  début  d'une  nouvelle  séquence
       d'échappement, annulant alors une éventuelle séquence déjà commencée. De même, CAN et  SUB
       annulent  toute  séquence  d'échappement entamée. Les caractères de contrôle reconnus sont
       BEL, BS, HT, LF, VT, FF, CR, SO, SI, CAN, SUB, ESC, DEL, CSI. Ils effectuent  les  actions
       suivantes :

       BEL (0x07, ^G)
              émet un bip ;

       BS (0x08, ^H)
              provoque  un  retour  en  arrière  d'une  colonne  (mais  ne remonte pas à la ligne
              précédente quand il est invoqué en début de ligne) ;

       HT (0x09, ^I)
              provoque un saut au prochain taquet de tabulation ou à la fin de ligne s'il  n'y  a
              pas de taquet d'ici là ;

       LF (0x0A, ^J)
       VT (0x0B, ^K)
       FF (0x0C, ^L)
              provoquent  tous  les  trois  un saut de ligne pour et si LF/NL (mode new-line) est
              actif, un retour chariot ;

       CR (0x0D, ^M)
              provoque un retour chariot (« carriage return ») ;

       SO (0x0E, ^N)
              active le jeu de caractères G1 ;

       SI (0x0F, ^O)
              active le jeu de caractères G0 ;

       CAN (0x18, ^X)
       SUB (0x1A, ^Z)
              interrompent des séquences d'échappement ;

       ESC (0x1B, ^[)
              débute une séquence d'échappement ;

       DEL (0x7F)
              est ignoré ;

       CSI (0x9B)
              est équivalent à ESC [.

       Séquences d'échappement ESC, non CSI

       ESC c     RIS      réinitialisation
       ESC D     IND      saut de ligne
       ESC E     NEL      nouvelle ligne
       ESC H     HTS      positionner un taquet de tabulation à la colonne en cours
       ESC M     RI       saut de ligne inversé
       ESC Z     DECID    identification réservée à DEC, le noyau renvoie la chaine ESC [ ? 6 c,
                          affirmant qu’il s’agit d’un VT102
       ESC 7     DECSC    sauvegarde de l’état actuel (coordonnées du curseur, attributs, jeux de
                          caractères pointés par G0, G1)
       ESC 8     DECRC    restauration de l'état sauvegardé le plus récemment par ESC 7
       ESC %              début d’une séquence de sélection de jeu de caractères :
       ESC % @               sélection par défaut (ISO/IEC 646/ISO/IEC 8859-1) ;
       ESC % G               sélection de l’UTF-8 ;
       ESC % 8               sélection de l’UTF-8 (obsolète).
       ESC # 8   DECALN   test d'alignement d'écran DEC, remplissage de l'écran avec des E
       ESC (              début d’une séquence de définition du jeu G0 (suivi par un des B, 0, U,
                          K (comme ci-dessous)
       ESC ( B            sélection par défaut (mappage ISO/IEC 8859-1)
       ESC ( 0            sélection du mappage des graphismes VT100
       ESC ( U            pas de mappage — directement les caractères ROM
       ESC ( K            sélection du mappage défini par l'utilisateur — carte chargée par
                          mapscrn(8)
       ESC )              début d’une séquence G1 (suivi par un des B, 0, U, K, comme ci-dessus)

       ESC >     DECPNM   définition du mode de pavé numérique
       ESC =     DECPAM   définition du mode de pavé numérique d’application
       ESC ]     OSC      préfixe d’Operating System Command
       ESC ] R            réinitialisation de la palette
       ESC ] P            définition de la palette, avec des paramètres en 7 chiffres
                          hexadécimaux nrrggbb après le P final. Ici n est la couleur (0–15) et
                          rrggbb indique les valeurs rouge/vert/bleu (0–255)

       Séquences d'échappement ECMA-48 CSI

       CSI (ou ESC [) est suivi d'une série de paramètres, au plus NPAR (16), représentés par des
       nombres  décimaux  séparés  par  des  points-virgules.  Un  paramètre  vide  ou absent est
       considéré comme étant 0. La série de paramètres peut  être  précédée  par  un  seul  point
       d'interrogation.

       Toutefois,  après  CSI [ (ou ESC [ [) un seul caractère est lu, et le reste de la séquence
       est ignoré. L'idée est d’ignorer les touches de fonctions répétées.

       L'action déclenchée par une séquence CSI est indiquée par le dernier caractère.

       @   ICH       insertion du nombre indiqué de caractères blancs
       A   CUU       remontage du curseur du nombre de lignes indiqué
       B   CUD       descente de curseur du nombre de lignes indiqué
       C   CUF       avance du curseur du nombre de colonnes indiqué
       D   CUB       recul du curseur du nombre de colonnes indiqué
       E   CNL       descente du curseur du nombre de lignes indiqué, dans la première colonne
       F   CPL       remontage du curseur du nombre de lignes indiqué, dans la première colonne
       G   CHA       déplacement du curseur à la ligne indiquée, dans la même colonne
       H   CUP       déplacement du curseur à la ligne et à la colonne indiquées (origine en 1,
                     1)
       J   ED        effacement de l'écran (par défaut, depuis le curseur jusqu’à la fin de
                     l'écran)
                     ESC [ 1 J : effacement du début jusqu'au curseur
                     ESC [ 2 J : effacement de tout l'écran
                     ESC [ 3 J : effacement de tout l'écran, y compris le tampon de défilement en
                     arrière (depuis Linux 3.0)
       K   EL        effacement de la ligne (défaut : depuis le curseur jusqu'à la fin de la
                     ligne)
                     ESC [ 1 K : effacement du début de ligne jusqu'au curseur
                     ESC [ 2 K : effacement de toute la ligne
       L   IL        insertion du nombre indiqué de lignes blanches
       M   DL        suppression du nombre indiqué de lignes
       P   DCH       suppression du nombre indiqué de caractères sur la ligne en cours
       X   ECH       effacement du nombre indiqué de caractères sur la ligne en cours
       a   HPR       avance du curseur du nombre de colonnes indiqué
       c   DA        réponse de ESC [ ? 6 c : « Je suis un VT102 »
       d   VPA       placement du curseur sur la ligne indiquée, même colonne
       e   VPR       descente de curseur du nombre de lignes indiqué
       f   HVP       placement du curseur aux ligne et colonne indiquées
       g   TBC       sans paramètre : effacer un taquet de tabulation à la position courante
                     ESC [ 3 g : effacement de tous les taquets de tabulation
       h   SM        définition du mode (voir ci-après)
       l   RM        réinitialisation du mode (voir ci-après)
       m   SGR       définition des attributs (voir ci-après)
       n   DSR       indication d’état (voir ci-après)
       q   DECLL     réglage des LED du clavier
                     ESC [ 0 q : effacement de toutes les LED
                     ESC [ 1 q : allumage de la LED Arrêt Défil.
                     ESC [ 2 q : allumage de la LED Verr. Num.
                     ESC [ 3 q : allumage de la LED Verr. Maj.
       r   DECSTBM   indication de la région de défilement, les paramètres sont les lignes haute
                     et basse
       s   ?         mémorisation de l'emplacement du curseur
       u   ?         rétablissement de l'emplacement du curseur
       `   HPA       déplacement du curseur à la ligne indiquée, dans la même colonne

       Sélection du rendu graphique ECMA-48

       La  séquence  ECMA-48  SGR suivante ESC [ paramètres m définit les paramètres d'affichage.
       Plusieurs attributs  peuvent  être  indiqués  dans  la  même  séquence,  séparés  par  des
       points-virgules. Un attribut vide (entre les points-virgules ou en début ou fin de chaîne)
       est interprété comme valant zéro.

       paramètre   résultat
       0           réinitialisation de tous les attributs à leurs valeurs par défaut.
       1           gras
       2           demi-brillance (simulé par une couleur sur un écran couleur)
       3           italiques (depuis Linux 2.6.22 ; simulé par une couleur sur un écran couleur)
       4           soulignement (simulé par une couleur sur un écran couleur) (les couleurs
                   utilisées pour simuler la demi-brillance ou sont définies en utilisant ESC ]
                   ...)
       5           clignotement
       7           vidéo inversée
       10          réinitialisation du mappage choisi, affichage du drapeau contrôle et
                   activation du drapeau meta (« fonte principale » pour ECMA-48)
       11          sélection d’aucun mappage, réglage de l’affichage du drapeau contrôle
                   réinitialisation de l’activation du drapeau meta (« première fonte
                   alternative » pour ECMA-48)
       12          sélection d’aucun mappage, réglage de l’affichage du drapeau contrôle
                   réinitialisation de l’activation du drapeau meta (« seconde fonte
                   alternative » pour ECMA-48). L’activation du drapeau meta fait que le bit du
                   poids le plus fort est activé avant que la translation de table de mappage ne
                   soit faite.
       21          soulignement. Avant Linux 4.17, cette valeur réglait une intensité normale
                   (comme cela est fait dans beaucoup d’autres terminaux)
       22          intensité normale
       23          pas d’italiques (depuis Linux 2.6.22)
       24          pas de soulignement
       25          pas de clignotement
       27          pas d'inversion vidéo
       30          encre noire
       31          encre rouge
       32          encre verte
       33          encre marron
       34          encre bleue
       35          encre magenta
       36          encre cyan
       37          encre blanche
       38          couleur de fond 256/24 bits après, comprimée dans les 16 couleurs basiques
                   (avant Linux 3.16 : soulignement actif, couleur de fond par défaut)
       39          couleur de l’encre par défaut (avant Linux 3.16 : pas de soulignement, couleur
                   d’encre par défaut)
       40          fond noir
       41          fond rouge
       42          fond vert
       43          fond marron
       44          fond bleu
       45          fond magenta
       46          fond cyan
       17          fond blanc
       48          couleur de fond 256/24 bits après, comprimée dans les 8 couleurs basiques
       49          couleur de fond par défaut
       90..97      couleurs de fond en versions brillantes de 30..37
       100..107    couleur de fond, telle que 40..47 (brillance non gérée)

       Les commandes 38 et 48 ont besoin d’autres arguments :

       ;5;x       256 couleurs : les valeurs 0..15 sont IBGR  (noir,  rouge,  vert,  ...  blanc),
                  16..231 un cube de couleurs 6x6x6, 232..255 une rampe d’échelle de gris
       ;2;r;g;b   couleur en 24 bits, les composantes r/g/b sont dans l’intervalle 0..255

       Modes ECMA-48

       ESC [ 3 h
              DECCRM (inactif par défaut) : afficher les caractères de contrôle.

       ESC [ 4 h
              DECIM (inactif par défaut) : mode insertion.

       ESC [ 20 h
              LF/NL (inactif par défaut) : faire suivre les LF, VT ou FF par un CR.

       Demandes de rapport d'état ECMA-48

       ESC [ 5 n
              Rapport d'état du périphérique (DSR) : la réponse est ESC [ 0 n (Terminal OK).

       ESC [ 6 n
              Rapport  de position du curseur (CPR) : la réponse est ESC [ y ; x R, où x,y est la
              position actuelle du curseur.

       Modes privés DEC (DECSET/DECRST)

       Ces modes ne sont pas décrits dans l'ECMA-48. La liste ci-dessous présente  les  séquences
       d'activation  des  modes.  Les  séquences  de désactivation sont obtenues en remplaçant le
       « h » final par un « l ».

       ESC [ ? 1 h
              DECCKM (inactif par défaut) : les touches de déplacement  du  curseur  émettent  un
              préfixe ESC O plutôt que ESC [.

       ESC [ ? 3 h
              DECCOLM  (inactif  par  défaut  =  80 colonnes) : bascule de 80 à 132 colonnes. Les
              sources du gestionnaire de console indiquent que ce code n'est pas suffisant à  lui
              seul.  Certains  utilitaires  comme resizecons(8) modifient également les registres
              matériels de la carte vidéo.

       ESC [ ? 5 h
              DECSCNM (inactif par défaut) : mode d'inversion vidéo.

       ESC [ ? 6 h
              DECOM (inactif par défaut) : adressage du curseur relatif au coin haut gauche de la
              région de défilement.

       ESC [ ? 7 h
              DECAWM  (actif  par défaut) : saut de ligne automatique. Un caractère émis après la
              colonne 80 (ou 132 en mode DECCOLM), est affiché au début de la ligne suivante.

       ESC [ ? 8 h
              DECARM (actif par défaut) : répétition automatique des touches du clavier.

       ESC [ ? 9 h
              État de souris X10 (inactif par défaut) : définit le mode de rapport d'état  de  la
              souris à 1 (ou le réinitialise à 0) — voir ci-après.

       ESC [ ? 25 h
              DECTECM (actif par défaut) : curseur visible.

       ESC [ ? 1000 h
              État  de  souris X11 (inactif par défaut) : définit le mode de rapport d'état de la
              souris à 2 (ou le réinitialise à 0) — voir ci-après.

       Séquences CSI privées de la console Linux

       Les séquences suivantes ne sont ni ECMA-48 ni du VT102 originel. Elles sont spécifiques au
       gestionnaire de console de Linux. Les couleurs sont indiquées selon les paramètres SGR : 0
       = noir, 1 = rouge, 2 = vert, 3 = marron, 4 = bleu, 5 = magenta, 6 = cyan, 7 = blanc,  8–15
       = versions brillantes de 0–7.

       ESC [ 1 ; n ]       choix de la couleur n pour simuler le soulignement
       ESC [ 2 ; n ]       choix de la couleur n pour simuler la demi-brillance
       ESC [ 8 ]           utilisation de la paire de couleurs actuelle par défaut
       ESC [ 9 ; n ]       délai d’effacement de l’écran à n minutes
       ESC [ 10 ; n ]      fréquence du bip en Hz
       ESC [ 11 ; n ]      durée du bip en ms
       ESC [ 12 ; n ]      basculement de la console indiquée au premier plan
       ESC [ 13 ]          réaffichage de l’écran
       ESC [ 14 ; n ]      délai pour l’arrêt de l’écran VESA en minutes
       ESC [ 15 ]          basculement  de  la  console  précédente au premier plan (depuis Linux
                           2.6.0).
       ESC [ 16 ; n ]      intervalle de clignotement du curseur en millisecondes  (depuis  Linux
                           4.2).

   Ensembles de caractères
       Le  noyau connaît 4 types de traduction des octets en symboles graphiques pour la console.
       Les 4 tables sont a) Latin1 -> PC, b) graphismes VT100 -> PC, c) PC ->  PC,  d) spécifique
       utilisateur.

       Il  existe  deux jeux de caractères, appelés G0 et G1, et l'un d'entre eux est sélectionné
       comme jeu en cours (initialement G0). La frappe de ^N sélectionne le jeu G1 comme  jeu  en
       cours, la frappe de ^O sélectionne le jeu G0.

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

       La  séquence  ESC c  réinitialise  le  terminal.  C'est  ce qui doit être effectué lorsque
       l'écran est rempli  de  codes  incompréhensibles.  La  commande  classique  « echo  ^V^O »
       sélectionne  seulement le jeu G0, elle ne garantit pas que G0 pointe sur la table a). Dans
       certaines distributions, on trouve une commande reset(1) qui  effectue  simplement  « echo
       ^[c ».  Si  l'entrée  de  la  base terminfo pour la console est correcte, et dispose d'une
       entrée rs1=\Ec alors la commande « tput reset » fonctionnera aussi.

       La table de correspondance définie par l'utilisateur peut  être  construite  en  utilisant
       mapscrn(8).  Cette correspondance agit ainsi : si le symbole c doit être imprimé, alors le
       symbole  s  =  map[c]  est  envoyé  à  la  mémoire  vidéo.  La  représentation   graphique
       correspondant  à  s  est  placée  par  défaut  en  mémoire morte, et peut être modifiée en
       utilisant setfont(8).

   Gestion de souris
       Les possibilités de gestion de souris sont prévues pour fournir un rapport  d'état  de  la
       souris  compatible  avec  xterm(1).  Comme  le  gestionnaire de console n'a aucun moyen de
       connaître le périphérique, ni le type de souris, ces rapports sont envoyés dans le flux de
       saisie  de  la  console uniquement quand une requête ioctl de mise à jour de la souris est
       reçue. Ces requêtes doivent être déclenchées par une application  utilisateur  capable  de
       gérer les souris, comme le démon gpm(8).

       Les  séquences  de  suivi  de  souris  engendrées par xterm(1) sont encodés dans un unique
       caractère, de  code  valeur+040.  Par  exemple,  « ! »  correspond  à  1.  Le  système  de
       coordonnées d'écran commence à 1.

       En  mode  de compatibilité X10, une séquence d'échappement est envoyée lors de l'appui sur
       un bouton, encodant la position et le numéro du bouton pressé. Ce mode est activé avec ESC
       [  ?  9 h et désactivé par ESC [ ? 9 l. Lors d'une pression sur un bouton, xterm(1) envoie
       ESC [ M bxy (6 caractères). Dans ce message b correspond au numéro de bouton -1,  x  et  y
       sont  les  coordonnées de l'emplacement où le bouton a été pressé. Ce sont les mêmes codes
       que ceux produits par le noyau.

       En mode de suivi normal (non implémenté sous Linux 2.0.24), une séquence d'échappement est
       envoyée  lors  de  l'appui sur un bouton, mais aussi lors du relâchement. Des informations
       sur les touches de modification (SHIFT, CTL...)  sont  également  envoyées.  Le  mode  est
       activé  par  ESC  [  ?  1000  h  et  désactivé  avec ESC [ ? 1000 l. Lors de l'appui ou du
       relâchement d'un bouton, xterm(1) envoie ESC [ M bxy. Les deux bits de poids faible  de  b
       correspondent  à l'état du bouton 0=MB1 pressé, 1=MB2 pressé, 2=MB3 pressé, 3=relâchement.
       Les bits de poids fort codent l'éventuelle touche modificatrice enfoncée lors  de  l'appui
       sur  le  bouton  4=Shift,  8=Meta,  16=Control.  À  nouveau x et y sont les coordonnées de
       l’évènement de souris. Le coin en haut à gauche de l'écran a pour coordonnées (1,1).

   Comparaison avec d'autres terminaux
       Beaucoup d'autres terminaux sont dits compatibles VT100,  comme  la  console  Linux.  Nous
       allons  voir  ici  les  différences  entre  cette dernière et les deux types principaux de
       terminaux : le DEC VT102 et xterm(1).

       Gestion des caractères de contrôle

       Le VT102 reconnaissait les caractères de contrôle supplémentaires suivants :

       NUL (0x00)
              était ignoré ;

       ENQ (0x05)
              renvoyait un message de réponse ;

       DC1 (0x11, ^Q, XON)
              reprenait une transmission ;

       DC3 (0x13, ^S, XOFF)
              faisait que vt100 ignorait tous les codes saufs XOFF et XON (et arrêtait  également
              la transmission).

       Une gestion de DC1/DC3 compatible VT100 pouvait être activée par le pilote de terminal.

       Le  programme  xterm(1)  (en mode VT100) reconnaît les caractères de contrôle BEL, BS, HT,
       LF, VT, FF, CR, SO, SI, ESC.

       Séquences d'échappement

       Les séquences d'échappement VT100 non implémentées sur la console Linux :

       ESC N       SS2   basculement 2 unique (sélection  du
                         jeu    de    caractères   G2   pour
                         uniquement le caractère suivant)
       ESC O       SS3   basculement 3 unique (sélection  du
                         jeu    de    caractères   G3   pour
                         uniquement le caractère suivant)
       ESC P       DCS   chaîne de contrôle de  périphérique
                         (terminée par ESC \)
       ESC X       SOS   début de chaîne
       ESC ^       PM    message privé (terminé par ESC \)
       ESC \       ST    fin de chaîne
       ESC * ...         désignation du jeu de caractères G2
       ESC + ...         désignation du jeu de caractères G3

       Le  programme  xterm(1) (en mode VT100) reconnaît ESC c, ESC # 8, ESC >, ESC =, ESC D, ESC
       E, ESC H, ESC M, ESC N, ESC O, ESC P ... ESC \, ESC Z (il répond ESC [ ? 1  ;  2  c,  « Je
       suis  un  VT100  avec  des  options  vidéo  avancées »)  et ESC ^ ... ESC \ avec les mêmes
       significations que celles indiquées plus haut. Il accepte ESC (,  ESC  ),  ESC  *,  ESC  +
       suivis  de  0, A, B pour les caractères spéciaux DEC, les tracés de lignes, l'ASCII UK, et
       l'ASCII US, respectivement.

       L'utilisateur peut configurer xterm(1) pour qu'il réponde aux séquences de contrôle VT220,
       qui  s'identifiera comme VT52, VT100, et au-delà selon la manière dont il est configuré et
       initialisé.

       Il accepte ESC ] (OSC) pour définir certaines ressources. En plus de la fin de chaîne (ST)
       ECMA-48,  xterm(1) accepte qu'une chaîne OSC se termine par BEL. Il y a quelques séquences
       de contrôle OSC reconnues par xterm(1) :

       ESC ] 0 ; txt ST        utiliser txt pour le nom d'icône et le titre de
                               la fenêtre
       ESC ] 1 ; txt ST        utiliser txt pour le nom d'icône
       ESC ] 2 ; txt ST        utiliser txt pour le titre de la fenêtre
       ESC ] 4 ; num; txt ST   utiliser txt pour la couleur ANSI num
       ESC ] 10 ; txt ST       utiliser txt pour la couleur de texte dynamique
       ESC ] 4 6 ; nom ST      modifier   en   nom   le   fichier  de  journal
                               (normalement désactivé par une option au moment
                               de la compilation).
       ESC ] 5 0 ; fn ST       choisir la fonte fn

       Il  reconnait  les  codes  suivants avec une signification légèrement différente des codes
       originaux (sauvant plus d'états, avec un comportement plus proche de VT100/VT220) :

       ESC 7  DECSC   mémoriser l'emplacement du curseur
       ESC 8  DECRC   restaurer l'emplacement du curseur

       Il reconnaît également :

       ESC F          curseur en bas à gauche de l'écran (si activé par la ressource  d’xterm(1),
                      hpLowerleftBugCompat)
       ESC l          verrouillage mémoire (comme les terminaux HP)
                      verrouillage de la mémoire au-dessus du curseur
       ESC m          déverrouillage mémoire (comme les terminaux HP)
       ESC n   LS2    invocation du jeu de caractères G2
       ESC o   LS3    invocation du jeu de caractères G3
       ESC |   LS3R   invocation du jeu G3 pour le GR (rendu graphique)
                      aucun effet visible dans xterm
       ESC }   LS2R   invocation du jeu G2 pour le GR
                      aucun effet visible dans xterm
       ESC ~   LS1R   invocation du jeu G2 pour le GR

       Il  reconnaît  également  ESC % et fournit une implémentation plus complète d'UTF-8 que la
       console Linux.

       Séquences CSI

       Les anciennes versions  de  xterm(1),  par  exemple  depuis  X11R5,  interprètent  un  SGR
       clignotant  comme  un SGR gras. Les versions suivantes implémentant les couleurs ANSI, par
       exemple XFree86 3.1.2A en 1995, ont amélioré cela en autorisant  l'attribut  clignotant  à
       être  affiché  comme  une  couleur.  Les  versions  modernes  de xterm implémentent le SGR
       clignotant sous la forme de texte clignotant et autorisent encore le  texte  coloré  comme
       possibilité   alternative   de  rendu  des  SGR.  Les  versions  de  base  sous  X11R6  ne
       reconnaissaient pas les SGR de choix de couleur avant la publication  de  X11R6.8,  qui  a
       incorporé  le  xterm  de  XFree86. Toutes les séquences ECMA-48 CSI reconnues par Linux le
       sont aussi par xterm, bien que xterm(1) implémente plusieurs séquences de contrôle ECMA-48
       et DEC non reconnues par Linux.

       Le  programme  xterm(1)  reconnaît également toutes les séquences du mode privé DEC citées
       plus haut, mais aucune séquence du  mode  privé  Linux.  Pour  plus  de  détails  sur  les
       séquences  privées  d'xterm(1) consultez le document Xterm Control Sequences d'Edward Moy,
       Stephen Gildea et Thomas E. Dickey disponible avec la distribution X. Ce document, quoique
       succinct, est plus complet que cette page de manuel. Pour une vue générale chronologique,

              ⟨http://invisible-island.net/xterm/xterm.log.html⟩

       indique les changements apportés à xterm.

       Le programme vttesthttp://invisible-island.net/vttest/⟩

       montre  le fonctionnement de beaucoup de ces séquences de contrôle. La distribution source
       de xterm(1) contient également des scripts d'exemple utilisant d'autres fonctionnalités.

NOTES

       ESC 8 (DECRC) n'est pas capable de revenir au jeu de caractères  précédant  le  changement
       fait avec ESC %.

BOGUES

       Dans  Linux 2.0.23, CSI fonctionne mal, et les caractères NUL ne sont pas ignorés dans les
       séquences d'échappement.

       Certaines versions du noyau (après Linux 2.0) interprètent les séquences de  contrôle  sur
       8 bits.  Ces  contrôles  « C1 » utilisent des codes entre 128 et 159 pour remplacer ESC [,
       ESC ] et d'autres initiateurs similaires de séquence de contrôle sur deux  octets.  Il  en
       existe  des  fragments  dans  les  noyaux  modernes  (soit  négligés  soit  cassés par les
       changements pour la gestion UTF-8), mais l'implémentation est  incomplète  et  ne  devrait
       être considérée comme fiable.

       Les  séquences  « mode  privé »  Linux  ne suivent pas les règles ECMA-48 des séquences de
       contrôle en mode privé.  En  particulier,  celles  terminant  par  ]  n'utilisent  pas  un
       caractère  de  terminaison  standard.  La  séquence OSC (de réglage de la palette) pose un
       problème plus important,  puisque  xterm(1)  peut  l'interpréter  comme  une  séquence  de
       contrôle  exigeant  une  fin  de  chaîne  (« string  terminator » — ST). Contrairement aux
       séquences setterm(1) qui seront ignorées (étant des séquences de contrôle non autorisées),
       la  séquence  de palette donnera l'impression que xterm(1) s'est figé (bien que presser la
       touche entrée règle ce problème). Pour satisfaire les applications qui ont été  codées  en
       dur  pour  utiliser les séquences de contrôle Linux, réglez la ressource brokenLinuxOSC de
       xterm(1) à vrai.

       Une ancienne version de ce document insinuait  que  Linux  reconnaissait  la  séquence  de
       contrôle ECMA-48 destinée au texte invisible. Elle est ignorée.

VOIR AUSSI

       ioctl_console(2), charsets(7)

TRADUCTION

       La  traduction  française  de  cette  page  de  manuel  a  été créée par Christophe Blaess
       <https://www.blaess.fr/christophe/>, Stéphan  Rafin  <stephan.rafin@laposte.net>,  Thierry
       Vignaud  <tvignaud@mandriva.com>,  François Micaux, Alain Portal <aportal@univ-montp2.fr>,
       Jean-Philippe   Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)    <jean-
       luc.coulon@wanadoo.fr>,    Julien    Cristau    <jcristau@debian.org>,    Thomas   Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau  <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis
       Barbier  <barbier@debian.org>,  David  Prévot   <david@tilapin.org>,   Cédric   Boutillier
       <cedric.boutillier@gmail.com>,   Frédéric   Hantrais  <fhantrais@gmail.com>  et  Jean-Paul
       Guillonneau <guillonneau.jeanpaul@free.fr>

       Cette traduction est une documentation libre ; veuillez vous reporter  à  la  GNU  General
       Public   License   version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  concernant  les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à ⟨debian-l10n-french@lists.debian.org⟩.