200 votes

Changer la page de code par défaut de la console Windows en UTF-8

Actuellement, j'utilise Windows 7 x64 et je souhaite généralement que tous les outils de la console fonctionnent avec UTF-8 plutôt qu'avec la page de code 850 par défaut.

Running chcp 65001 dans l'invite de commande avant l'utilisation de tout outil, mais y a-t-il un moyen de définir cette page comme page de code par défaut ?

Mise à jour :

Changer HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage\OEMCP à la valeur 65001 semblent rendre le système incapable de démarrer dans mon cas.

Modification proposée de HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\Autorun a @chcp 65001>nul convient parfaitement à mes besoins. (merci à Ole_Brun )

140voto

Nils Magne Lunde Points 2432

Pour modifier la page de code pour la console uniquement, procédez comme suit :

  1. Démarrer -> Exécuter -> regedit
  2. Aller à [HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\Autorun]
  3. Changez la valeur en @chcp 65001>nul

Si Autorun n'est pas présent, vous pouvez ajouter un New String

60voto

juca Points 589

Personnellement, je n'aime pas modifier le registre. Cela peut causer beaucoup de problèmes. J'ai créé un fichier batch :

@ECHO OFF
REM change CHCP to UTF-8
CHCP 65001
CLS

J'ai économisé à C:\Windows\System32 comme switch.bat et créé un lien pour cmd.exe sur le bureau.

Dans les propriétés du raccourci cmd, changez la destination en : C:\Windows\System32\cmd.exe /k switch

Voilà, lorsque j'ai besoin de taper en UTF-8, j'utilise ce lien.

52voto

Isti115 Points 734

Dans la version 1809 de Windows 10, j'ai réussi à résoudre ce problème de façon permanente en allant dans le menu de configuration du système. Language settings en sélectionnant Administrative language settings en cliquant Change system locale... et en vérifiant le Beta: Use Unicode UTF-8 for worldwide language support puis redémarrer mon ordinateur.

De cette façon, elle s'applique à toutes les applications, même celles que je ne lance pas à partir d'une invite de commande !
(Ce qui était nécessaire pour moi, puisque j'essayais d'éditer du code Agda à partir d'Atom).

44voto

Red Tux Points 2074

Modifiez le registre :

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"OEMCP"="65001"

Alors redémarrez. Avec cette correction, si vous utilisez la police Consolas, elle semble se verrouiller. PowerShell dans une petite taille de police. cmd.exe fonctionne toujours bien. Comme solution de rechange, vous pouvez utiliser Lucida Console, ou je suis passé à Cascadia Mono :

https://github.com/microsoft/cascadia-code

6voto

Freon Sandoz Points 119

Cela peut être fait en créant un profil PowerShell et en y ajoutant la commande "chcp 65001 >$null" :

PS> Set-ExecutionPolicy RemoteSigned
PS> New-Item -Path $Profile -ItemType file -Force
PS> notepad $Profile

Cela ne nécessite pas de modifier le registre et, contrairement à la modification d'un raccourci, cela fonctionnera si PowerShell est lancé dans un dossier spécifique à l'aide du menu contextuel de l'Explorateur Windows.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X