Mise à jour 2008-08-30 : Cette astuce a été sélectionnée par le magazine L'Ordinateur Individuel et publiée dans le numéro 208 (septembre 2008) page 136 comme astuce du mois.
Nostalgie, nostalgie... le DOS c'est toute ma jeunesse. Le manuel du MS-DOS 5.0 est d'ailleurs le premier livre d'informatique que j'ai lu. Même sous Windows, j'ai toujours systématiquement une fenêtre d'« invite de commandes » toujours ouverte. Et la première chose que je fais sur un nouveau PC Windows, c'est d'assigner le raccourci Ctrl+Alt+C à l'invite de commandes MS-DOS. La deuxième, c'est Ctrl+Alt+N pour le Bloc-Notes (N comme NotePad). Et la troisième, c'est d'installer mon fichier .INF
qui ajoute une entrée Ouvrir un shell dans le menu contextuel de l'Explorateur Windows.
Alors de temps en temps je vais voir comment évoluent les articles de Wikipédia dédiés au MS-DOS pour vérifier qu'ils ne racontent pas trop de bêtises, les corriger à l'occasion, et éventuellement encore apprendre quelque chose. C'est donc dans la section Windows NT que j'ai vu quelques commandes que j'ai vu quelques commandes que j'ai voulu vérifier par l'expérience sur Windows Vista.
Microsoft Windows [version 6.0.6000]
Copyright (c) 2006 Microsoft Corporation. Tous droits réservés.
C:\Users\Dolmen>ver
Microsoft Windows [version 6.0.6000]
C:\Users\Dolmen>command /k ver
MS-DOS Version 5.00.500
C:\USERS\DOLMEN>
Rien de spécial jusque là.
C:\USERS\DOLMEN>cd
Mais là, oh stupeur ! Pas moyen de taper un '\'. La combinaison de touches AltGr+8 ne fonctionne pas ! En fait, le clavier est en QWERTY dans COMMAND.COM
!
En investiguant un peu plus, j'ai pu vérifier que ce sont tous les programmes pur MS-DOS qui ne tiennent plus compte de la configuration du clavier français mais utilisent au lieu de cela une configuration américaine du clavier. Par exemple debug.exe
ou edit.com
. Vous pouvez tester avec tous les .COM
(ceux-là, contrairement aux .EXE
, vous êtes sûrs que ce sont des programmes DOS) :
C:\Users\Dolmen>dir %windir%\System32\*.com
Le volume dans le lecteur C s'appelle XXX
Le numéro de série du volume est YYYY-ZZZZ
Répertoire de C:\Windows\System32
02/11/2006 10:31 11 776 chcp.com
02/11/2006 09:09 50 648 COMMAND.COM
02/11/2006 10:32 13 824 diskcomp.com
02/11/2006 10:32 11 264 diskcopy.com
18/09/2006 23:43 69 886 edit.com
02/11/2006 10:32 35 328 format.com
02/11/2006 10:35 56 320 graftabl.com
02/11/2006 09:09 19 694 GRAPHICS.COM
02/11/2006 09:09 14 710 KB16.COM
02/11/2006 09:09 1 131 LOADFIX.COM
02/11/2006 10:32 25 088 mode.com
02/11/2006 10:32 20 992 more.com
02/11/2006 10:32 16 384 tree.com
02/11/2006 10:35 6 656 win.com
14 fichier(s) 353 701 octets
0 Rép(s) VV VVV VVV VVV octets libres
Vous aurez peut-être noté la présence de KB16.COM
qui semble une piste à explorer :
C:\USERS\DOLMEN>kb16 /?
Configures a keyboard for a specific language.
KEYB [xx[,[yyy][,[drive:][path]filename]]] [/E] [/ID:nnn]
xx Specifies a two-letter keyboard code.
yyy Specifies the code page for the character set.
[drive:][path]filename Specifies the keyboard definition file.
/E Specifies that an enhanced keyboard is installed.
/ID:nnn Specifies the keyboard in use.
C:\USERS\DOLMEN>chcp
Page de codes active : 850
C:\USERS\DOLMEN>kb16 fr,850 /E
C:\USERS\DOLMEN>
Voilà, c'est réparé... pour cette session ! Mais au prix de la perte de 6 Ko de mémoire conventionnelle (comparer avant et après avec mem /C
). Et vous aurez noté que KB16.COM
n'est pas traduit : Microsoft ne semble plus attacher autant d'importance à la traduction de ses produits.
Mise à jour 2008-10-20 : La solution ci-dessous est obsolète. J'ai trouvé la vraie solution au problème, bien plus simple. Sautez au commentaire 26.
Pour charger automatiquement KB16.COM
dans les prochaines sessions, il faut ajouter l'appel dans %windir%\System32\autoexec.nt
. Mais comme avec Vista, rien n'est simple en raison de la protection paranoïaque des commandes d'administration, voici la marche à suivre :
- Dans le menu Démarrer, Tous les programmes, Accessoires, cliquez avec le bouton droit sur Invite de commandes puis Exécuter en tant qu'administrateur.
- Chargez le clavier français et lancez
edit.com
:
Microsoft Windows [version 6.0.6000]
Copyright (c) 2006 Microsoft Corporation. Tous droits réservés.
C:\Windows\system32>KB16 fr,850 /E
C:\WINDOWS\SYSTEM32>edit autoexec.nt
Pourquoi edit.com
? On aurait pu aussi utiliser le Bloc-Notes (notepad.exe
). Sauf que l'on souhaite ici entrer des accents qui seront affichés dans la page de code du terminal, c'est à dire 850. Or le Bloc-Notes ne connaît que les encodages ANSI (cp1252), Unicode (ucs-2le), Unicode Big Endian (ucs2-be) et UTF-8.
- Tapez Ctrl+Fin et collez les lignes suivantes (pas avec Copy du menu Edit d'
edit.com
, mais avec Modifier, Coller dans le menu système de la fenêtre) :
lh %SystemRoot%\system32\KB16 fr,850 /E
if not errorlevel 1 echo Clavier français activé.
- Quittez en enregistrant : Alt+F, x, Entrée.