
让他改一下 claude code 写的 py 程序,改的很好 就是中文全乱码了
1 Vaspike 2 月 27 日 指定编码组? |
2 280303 2 月 27 日 |
3 nethcx 2 月 27 日 项目里写个 agents.md 强约束:所有文件读写一律使用 UTF8 (无 BOM )。禁止使用默认编码、GBK 、ANSI 。 执行任何写文件命令前,必须检查并确认控制台编码为 UTF8 ( chcp 65001 ),并在读写时显式指定 UTF8 。 如发现中文乱码(例如“绔 Service 涓灞?”),不得直接修乱码文本,必须先确定原文(从正确源文件/历史版本/上下文)再替换。 若无法确认原文,必须先询问再修改。 违反以上规则将导致编码再次损坏,务必严格遵守。 |
5 zgx030030 2 月 27 日 @nethcx 学习了。 我之前也遇到过,好好的项目改完全是乱码。后来听说 linux/macos 里是正常的,我就直接在 wsl 里跑 codex 开发了... |
6 admirez OP @280303 我是 windows11 用微软 terminal ,ps 是 5.1 ,但是 claude code 也是这样用 cli 啊 从来没乱码过 |
7 Anonono 2 月 27 日 @admirez 不要纠结,就是 codex 的问题,我也踩过这坑,换 pwsh7 吧。然后推荐一下这个配置 https://linux.do/t/topic/1504310 可以参考使用下 |
8 jixule 2 月 27 日 wsl ,之前用 win 总是出现中文乱码,装在 wsl 里面再也没出现过 |
10 cairnechen 2 月 27 日 |
11 Censhuang 2 月 27 日 macos 的 codex 原生开始写,没有中文乱码。Claude code 倒是乱码一堆 |
12 EeveeRibbon 2 月 27 日 macOS 高强度使用没遇见过,应该是 Windows 版本的专属问题 |
14 nethcx 2 月 27 日 @cairnechen 默认加载 https://agents.md/ |
16 win8en 2 月 27 日 @EeveeRibbon 这个问题是 Windows 专属!你们 macOS 没有机会“享受”的!该死的阿三,烦死了。 |
17 4seasons 2 月 27 日 直接在 git bash 中用 codex ,就会少很多问题... |
18 bbbblue 2 月 27 日 # Force UTF-8 (no BOM) for console + pipeline $Utf8NoBom = [System.Text.UTF8Encoding]::new($false) [Console]::InputEncoding = $Utf8NoBom [Console]::OutputEncoding = $Utf8NoBom $OutputEncoding = $Utf8NoBom # Ensure code page is UTF-8 chcp 65001 > $null 把这个用在 PS5/PS7 的 profile 里 如果 codex 调了 wsl 的 bash config.toml 加参数 [shell_environment_policy.set] WSL_UTF8 = "1" |
19 ztm0929 2 月 27 日 @JYii 在微软商店下载其他应用也是如此吗?如果同样有类似的问题,说明此时代理没有正确应用到这类 UWP 应用。 不确定你在使用哪款客户端,不过可以参考这个说明操作去解决。 https://www.clashverge.dev/faq/windows.html#windows-uwp |
23 admirez OP 试了下 codex 在 powershell7 下面 编辑我的 gbk 编码的 bat 文件 还是中文乱码,utf8 编码的没问题。claudecode 在 powershell5.1 都是正常 |
24 admirez OP codex 最新版本改我的 markdown 还是有问题,他这样说: PowerShell 5.1 + ConstrainedLanguage 叠加导致的: - 运行器会先尝试设置 [Console]::OutputEncoding = UTF8 ,但你这个环境里被限制了,所以每次都报那句“无法设置属性” - JSON 文件我大多是用 Python 直接读写 UTF-8 ,路径比较单一,所以相对稳定 - Markdown 文本里中文自然语言更多,我如果直接把中文源码塞进 PowerShell heredoc ,容易被宿主链路在某一层按本地代码页解 释,结果就变成乱码或问号 - 所以后来我改成“ASCII 脚本 + Unicode 转义 + Python 写文件”,这个方式在你环境里才稳定 |