denoland / denoland/deno

console.log of non-ASCII text is mojibake on Windows consoles with a non-UTF-8 code page (no WriteConsoleW)

Abierto
#28,362 1 comentario 0 reacciones 0 asignados Ver en GitHub
windows
Lenguaje dominante
Rust
Estrellas
108k
Forks
6.4k
Merge medio
2 d 20 h
PR fusionados (30 d)
58

Descripción

Version: Deno 2.2.2

![Image](https://github.com/user-attachments/assets/2b4ecaac-f27f-42bd-b05b-bcae35b9e905)

My repo uses ps12exe to help users install git, deno, and start the repo.
But it seems that deno's Chinese output in ps12exe is messed up.

![Image](https://github.com/user-attachments/assets/fd2be7f2-f480-46e4-aa70-da371dab3836)

# reproduce:
1. open powershell on Windows
2. Install ps12exe by:
```powershell
Install-Module ps12exe -Scope CurrentUser -Force
```
It'll download an 1mb powershell moule for generate exe, you can remove it by `Uninstall-Module ps12exe`
3. Run the following command:
```powershell
deno eval "console.log('测试')" # outputs: 测试
"deno eval `"console.log('测试')`"" | ps12exe
./a.exe # outputs: 娴嬭瘯
"'测试'" | ps12exe
./a.exe # outputs: 测试

```

![Image](https://github.com/user-attachments/assets/20a9491b-0c95-4ccd-b4c6-78a9747ef6c4)

You don't need to install powershell core, use windows powershell that comes with windows and make sure deno is in your path can also reproduce this.
![Image](https://github.com/user-attachments/assets/02d05a27-59af-405d-9df7-81c8e0658efb)

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza reproduciendo el problema con Deno 2.2.2 utilizando los comandos de PowerShell y ps12exe mostrados, especialmente `deno eval "console.log('测试')"`. Traza la ruta de salida de `console.log` en Windows cuando la consola no admite WriteConsoleW y utiliza una página de códigos que no es UTF-8. Se considera terminado cuando el texto chino se mantiene correcto en la salida del ejecutable generado.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
javascript, rust
Área
cli, operating-systems
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Tranquilo
Claridad
Bastante claro
Aptitud para principiantes
52/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.