windows unicode character-encoding cmd console

windows - ¿Cómo hacer un conjunto de caracteres Unicode en cmd.exe por defecto?



character-encoding console (4)

Abra un símbolo del sistema elevado (ejecute cmd como administrador). consulta tu registro de fuentes TT disponibles a la consola de la siguiente manera:

REG query "HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Console/TrueTypeFont"

Verás un resultado como:

0 REG_SZ Lucida Console 00 REG_SZ Consolas 936 REG_SZ *新宋体 932 REG_SZ *MS ゴシック

Ahora necesitamos agregar una fuente TT que admita los caracteres que necesita como Courier New, lo hacemos agregando ceros al nombre de la cadena, por lo que en este caso el siguiente sería "000":

REG ADD "HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Console/TrueTypeFont" /v 000 /t REG_SZ /d "Courier New"

Ahora implementamos el soporte UTF-8:

REG ADD HKCU/Console /v CodePage /t REG_DWORD /d 65001 /f

Establecer la fuente predeterminada en "Courier New":

REG ADD HKCU/Console /v FaceName /t REG_SZ /d "Courier New" /f

Establecer tamaño de fuente a 20:

REG ADD HKCU/Console /v FontSize /t REG_DWORD /d 20 /f

Habilite la edición rápida si lo desea:

REG ADD HKCU/Console /v QuickEdit /t REG_DWORD /d 1 /f

El juego de caracteres 866 instalado por defecto en cmd.exe de Windows es pobre e inconviniente en comparación con el glorioso Unicode.

¿Puedo instalar Unicode de forma predeterminada o reemplazar cmd.exe a otra consola y hacerlo predeterminado para que programms lo use en lugar de cmd.exe?

Entiendo que chcp 65001 cambia la codificación solo en la consola en funcionamiento. Quiero cambiar el juego de caracteres en el nivel del sistema.


Archivo Reg

Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER/Console] "CodePage"=dword:fde9

Símbolo del sistema

REG ADD HKCU/Console /v CodePage /t REG_DWORD /d 0xfde9

Potencia Shell

sp -t d HKCU:/Console CodePage 0xfde9

Cygwin

regtool set /user/Console/CodePage 0xfde9


Después de probar la solución algirdas, mi Windows se colgó (Win 7 Pro 64bit), así que decidí probar una solución diferente:

  1. Start Run (Win + R)
  2. Escriba cmd /K chcp 65001

Obtendrá principalmente lo que quiere. Para iniciarlo desde la barra de tareas o en cualquier otro lugar, haga un atajo (puede cmd.unicode.exe nombre cmd.unicode.exe o lo que quiera) y cambie su Target a C:/Windows/System32/cmd.exe /K chcp 65001 .


Guarde lo siguiente en un archivo con el sufijo ".reg":

Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER/Console/%SystemRoot%_system32_cmd.exe] "CodePage"=dword:0000fde9

Haga doble clic en este archivo y regedit lo importará.

Básicamente establece la clave HKEY_CURRENT_USER/Console/%SystemRoot%_system32_cmd.exe/CodePage en 0xfde9 (65001 en sistema decimal).