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