LE FICHIER ANSI.SYS
Definit les fonctions qui modifient l'affichage, controlent le deplacement du curseur et reaffectent les touches.
Le gestionnaire de peripherique ANSI.SYS prend en charge l'emulation par un terminal ANSI de sequences d'echappement permettant de gerer le clavier et l'ecran de votre systeme. Une sequence d'echappement ANSI est une sequence de caracteres ASCII dont les deux premiers sont le caractere d'echappement (1Bh) et le crochet ouvrant (5Bh). Le ou les caracteres suivants specifient un code alphanumerique qui gere une fonction de l'affichage ou du clavier. Les sequences d'echappement ANSI font la distinction entre les majuscules et les minuscules; par exemple "A" et "a" n'ont pas du tout la meme signification.
Ce gestionnaire de peripherique doit etre charge par une commande [DEVICE] ou [DEVICEHIGH] dans le fichier [CONFIG.SYS].
Syntaxe
DEVICE=[lecteur:][chemin]ANSI.SYS [/X] [/K] [R]
Parametres
[lecteur:][chemin]
Specifie l'emplacement du fichier ANSI.SYS.
Commutateurs
/X
Redefinit les touches etendues des claviers 101 touches.
/K
Permet a ANSI.SYS de gerer un clavier 101 touches comme un clavier 84 touches. Equivaut a la commande SWITCHES=/K. Si vous executez la commande SWITCHES=/Kvous devez utiliser le commutateur /K avec ANSI.SYS.
/R
Ajuste la barre de defilement pour ameliorer la lisibilite lorsque ANSI.SYS est utilise avec des programmes de lecture d'ecran (rendant les PC plus facilement accessible aux handicapes).
Parametres utilises dans les sequences d'echappement ANSI
Pn
Parametre numerique. Specifie un nombre decimal.
Ps
Parametre de selection. Specifie un nombre decimal permettant de selectionner une fonction. Pour specifier plusieurs fonctions separez les parametres par des points virgules.
PL
Parametre de ligne. Specifie un nombre decimal representant l'une des lignes de l'ecran ou de tout autre peripherique.
Pc
Parametre de colonne. Specifie un nombre decimal representant l'une des colonnes de l'ecran ou de tout autre peripherique.
Sequences d'echappement ANSI controlant le curseur, l'affichage graphique et les parametres du clavier
Dans la liste de sequences d'echappement ci-dessous ESC est l'abreviation du caractere d'echappement ASCII 27 (1Bh) affiche au debut de chaque sequence d'echappement.
ESC[PL;PcH
Deplacement du curseur: Place le curseur a l'endroit specifie (coordonnees). Si vous n'en specifiez aucun le curseur se place sur l'origine c'est-a-dire dans l'angle superieur gauche de l'ecran (ligne 0 colonne 0). Cette sequence d'echappement s'execute comme la suivante.
ESC[PL;Pcf
Deplacement du curseur: S'execute comme la sequence d'echappement precedente.
ESC[PnA
Deplacement du curseur vers le haut: Deplace le curseur vers le haut selon le nombre de lignes specifie sans changer de colonne. Si le curseur se trouve deja sur la premiere ligne ANSI.SYS ignore cette sequence.
ESC[PnB
Deplacement du curseur vers le bas: Deplace le curseur vers le bas selon le nombre de lignes specifie sans changer de colonne. Si le curseur se trouve deja sur la derniere ligne ANSI.SYS ignore cette sequence.
ESC[PnC
Deplacement du curseur vers la droite: Deplace le curseur vers la droite selon le nombre de colonnes specifie sans changer de ligne. Si le curseur se trouve deja sur la derniere colonne de droite ANSI.SYS ignore cette sequence.
ESC[PnD
Deplacement du curseur vers la gauche: Deplace le curseur vers la gauche selon le nombre de colonnes specifie sans changer de ligne. Si le curseur se trouve deja sur la derniere colonne de gauche ANSI.SYS ignore cette sequence.
ESC[s
Enregistrement de la position du curseur: Enregistre la position en cours du curseur. Vous pouvez placer le curseur a cet endroit a l'aide de la sequence d'echappement de restauration du curseur.
ESC[u
Restauration du curseur: Place le curseur a l'endroit enregistre a l'aide de la sequence d'enregistrement du curseur.
ESC[2J
Effacement de l'ecran: Efface l'ecran et place le curseur a la position d'origine (ligne 0 colonne 0).
ESC[K
Suppression de la ligne: Supprime tous les caracteres a partir du curseur jusqu'a la fin de la ligne y compris celui sur lequel se trouve le curseur.
ESC[Ps;...;Psm
Definition du mode graphique: Active les fonctions graphiques specifiees par les valeurs ci-apres. Ces fonctions restent actives jusqu'a nouvelle execution de la sequence d'echappement. Le mode graphique permet de modifier les couleurs et les attributs de texte tels que gras et souligne.
Attributs du texte0 Aucun attribut1 Gras
4 Souligne (moniteurs monochromes uniquement)
5 Clignotant
7 Video inverse
8 Cache
Couleurs du texte
30 Noir31 Rouge
32 Vert
33 Jaune
34 Bleu
35 Magenta
36 Cyan
37 Blanc
Couleurs du fond
40 Noir41 Rouge
42 Vert
43 Jaune
44 Bleu
45 Magenta
46 Cyan
47 Blanc
Les parametres 30 a 47 sont conformes a la norme ISO 6429.
ESC[=psh
Mode d'affichage: Modifie la largeur de l'ecran ou le type d'affichage selon le mode specifie:
0 40 x 148 x 25 monochrome (texte)1 40 x 148 x 25 couleur (texte)
2 80 x 148 x 25 monochrome (texte)
3 80 x 148 x 25 couleur (texte)
4 320 x 148 x 200 4 couleurs (graphique)
5 320 x 148 x 200 monochrome (graphique)
6 640 x 148 x 200 monochrome (graphique)
7 Passage automatique a la ligne suivante
13 320 x 148 x 200 couleur (graphique)
14 640 x 148 x 200 couleur (graphique 16 couleurs)
15 640 x 148 x 350 monochrome (graphique 2 couleurs)
16 640 x 148 x 350 couleur (graphique 16 couleurs)
17 640 x 148 x 480 monochrome (graphique 2 couleurs)
18 640 x 148 x 480 couleur (graphique 16 couleurs)
19 320 x 148 x 200 couleur (graphique 256 couleurs)
ESC[=Psl
Annulation du mode d'affichage: Utilise les memes parametres que la sequence d'echappement du mode d'affichage a l'exception de la valeur 7 qui desactive le passage automatique a la ligne. Le dernier caractere de la sequence d'echappement est un L minuscule.
ESC[code;string;...p
Definition des chaines de clavier: Affecte une chaine specifiee a une touche du clavier. Les parametres de cette sequence d'echappement sont definis comme suit:
Les valeurs ci-dessous representent des touches et des combinaisons de touches. En plus des points virgules de la sequence d'echappement tapez ceux des codes comme indique dans le tableau. Les codes entre parentheses ne sont pas disponibles sur certains claviers et ne peuvent dans ce cas etre reconnus par ANSI.SYS sauf si vous specifiez le commutateur /X dans la commande [DEVICE].
IMPORTANT: Certaines des valeurs du tableau ci-dessous ne sont pas disponibles sur tous les PC. Pour les identifier consultez la documentation de votre systeme.
|
|
|
|
|
F1 |
0;59 |
0;84 |
0;94 |
0;104 |
F2 |
0;60 |
0;85 |
0;95 |
0;105 |
F3 |
0;61 |
0;86 |
0;96 |
0;106 |
F4 |
0;62 |
0;87 |
0;97 |
0;107 |
F5 |
0;63 |
0;88 |
0;98 |
0;108 |
F6 |
0;64 |
0;89 |
0;99 |
0;109 |
F7 |
0;65 |
0;90 |
0;100 |
0;110 |
F8 |
0;66 |
0;91 |
0;101 |
0;111 |
F9 |
0;67 |
0;92 |
0;102 |
0;112 |
F10 |
0;68 |
0;93 |
0;103 |
0;113 |
F11 |
0;133 |
0;135 |
0;137 |
0;139 |
F12 |
0;134 |
0;136 |
0;138 |
0;140 |
ORIG |
0;71 |
55 |
0;119 |
--- |
HAUT |
0;72 |
56 |
0;141 |
--- |
PG PREC |
0;73 |
57 |
0;132 |
--- |
GAUCHE |
0;75 |
52 |
0;115 |
--- |
DROITE |
0;77 |
54 |
0;116 |
--- |
FIN |
0;79 |
49 |
0;117 |
--- |
PG SUIV |
0;81 |
51 |
0;118 |
--- |
INS |
0;82 |
48 |
0;146 |
--- |
SUPPR |
0;83 |
46 |
0;147 |
--- |
ORIG (touche grise) |
(224;71) |
(224;71) |
(224;119) |
(224;151) |
HAUT (touche grise) |
(224;72) |
(224;72) |
(224;141) |
(224;152) |
PG PREC (touche grise) |
(224;73) |
(224;73) |
(224;132) |
(224;153) |
GAUCHE (touche grise) |
(224;75) |
(224;75) |
(224;115) |
(224;155) |
DROITE (touche grise) |
(224;77) |
(224;77) |
(224;116) |
(224;157) |
FIN (touche grise) |
(224;79) |
(224;79) |
(224;117) |
(224;159) |
BAS (touche grise) |
(224;80) |
(224;80) |
(224;145) |
(224;154) |
PG SUIV (touche grise) |
(224;81) |
(224;81) |
(224;118) |
(224;161) |
INS (touche grise) |
(224;82) |
(224;82) |
(224;146) |
(224;162) |
SUPPR (touche grise) |
(224;83) |
(224;83) |
(224;147) |
(224;163) |
IMPR ECRAN |
--- |
--- |
0;114 |
--- |
PAUSE / ATTN |
--- |
--- |
0;0 |
--- |
RET ARR |
8 |
8 |
127 |
(0) |
ENTREE |
13 |
--- |
10 |
|
TAB |
9 |
0;15 |
(0;148) |
(0;165) |
NULL |
0;3 |
--- |
--- |
--- |
A |
97 |
65 |
1 |
0;30 |
B |
98 |
66 |
2 |
|
C |
99 |
67 |
3 |
|
D |
100 |
68 |
4 |
|
E |
101 |
69 |
5 |
|
F |
102 |
70 |
6 |
|
G |
103 |
71 |
7 |
|
H |
104 |
72 |
8 |
|
I |
105 |
73 |
9 |
|
J |
106 |
74 |
10 |
|
K |
107 |
75 |
11 |
|
L |
108 |
76 |
12 |
|
M |
109 |
77 |
13 |
|
N |
110 |
78 |
14 |
|
O |
111 |
79 |
15 |
|
P |
112 |
80 |
16 |
|
Q |
113 |
81 |
17 |
|
R |
114 |
82 |
18 |
|
S |
115 |
83 |
19 |
|
T |
116 |
84 |
20 |
|
U |
117 |
85 |
21 |
|
V |
118 |
86 |
22 |
|
W |
119 |
87 |
23 |
|
X |
120 |
88 |
24 |
|
Y |
121 |
89 |
25 |
|
Z |
122 |
90 |
26 |
|
0 |
48 |
41 |
||
1 |
49 |
|||
2 |
50 |
|||
3 |
51 |
|||
4 |
52 |
|||
5 |
53 |
|||
6 |
54 |
|||
7 |
55 |
|||
8 |
56 |
|||
9 |
57 |
= |
61 |
43 |
--- |
0;131 |
[ |
91 |
123 |
27 |
0;26 |
] |
93 |
125 |
29 |
0;27 |
; |
59 |
58 |
--- |
0;39 |
' |
39 |
34 |
--- |
0;40 |
/ |
47 |
63 |
--- |
0;53 |
` |
96 |
126 |
--- |
(0;41) |
ENTREE (pave numerique) |
13 |
--- |
10 |
(0;166) |
/ (pave numerique) |
47 |
47 |
(0;142) |
(0;74) |
* |
42 |
(0;144) |
(0;78) |
--- |
Remarques
Reconfiguration des touches etendues: Avec un clavier 101 touches vous pouvez reconfigurer certaines touches etendues a l'aide du commutateur /X. Par exemple les claviers 101 touches comportent deux touches ORIG dont l'une se trouve sur le pave numerique et l'autre sur le bloc de touches de controle de curseur. A moins que vous specifiez le parametre /X les deux touches ORIG sont les memes pour le DOS.
Ignorer les touches etendues
Si votre programme n'interprete pas correctement une entree a partir d'un clavier etendu utilisez le commutateur /K avec ANSI.SYS: vous disposerez alors des fonctions clavier classiques.
Utilisation des commutateurs /X et /K
N'utilisez jamais simultanement les commutateurs /X et /K avec ANSI.SYS.
Exemples
Pour echanger les emplacements de la barre oblique inverse et du point d'interrogation a l'aide d'une chaine litterale tapez la sequence d'echappement suivante: ESC["\";"?"pESC["?";"\"p
Pour echanger les emplacements de la barre oblique inverse et du point d'interrogation a l'aide de leurs codes ASCII respectifs tapez la sequence d'echappement suivante: ESC[92;63pESC[63;92p
Pour redonner leur fonction initiale aux touches de la barre oblique inverse et du point d'interrogation tapez la sequence d'echappement suivante: ESC[92;92pESC[63;63p
Pour afficher la liste des repertoires lorsque vous appuyez sur la touche F2 tapez : prompt $e[0;60;"dir";13p
Afin d'obtenir une couleur de texte intense sur fond d'ecran noir tapez : prompt $e[1;32;40m$p$g