Encoding Fix

修复双重/三重编码 UTF-8 的乱码(Mojibake)。修复 Windows cp1252/Latin-1 误解析问题。零依赖。

ellmos-ai 74aefc7 1.3 KB Updated

File contents

中文encoding-fix 官方中文版本。

Encoding Fix (中文)

修复由于 Windows cp1252/Latin-1 误解析导致的乱码(双重/三重 UTF-8 编码)。零依赖 — 仅使用 Python 标准库。

典型问题

"ue" (U+00FC) -> UTF-8 \xc3\xbc -> read as cp1252 -> "ü"

使用方法

作为库使用

from encoding_fix import sanitize_outbound

clean = sanitize_outbound("Würge")  # -> "Wuerge"

子进程输出

from encoding_fix import sanitize_subprocess_output

text = sanitize_subprocess_output(process.stdout)

CLI

python encoding_fix.py "Würge"    # Check a single string
python encoding_fix.py              # Self-test

特性

  • 幂等性: 正确编码的文本不会被修改
  • 最多 3 轮修复: 甚至能修复三重编码的字符串
  • 子进程解码器: 针对进程输出提供 UTF-8/cp1252 回退解码
  • 零依赖: 仅依赖 Python 标准库

更新日志

1.0.0 (2026-03-12)

  • 从 BACH system/tools/encoding_fix.py 移植

ellmos-ai/skills/tree/main/skills/utilities/encoding-fix/zh commit 74aefc7405

Frequently asked questions

npx skillmds@latest add ellmos-ai/encoding-fix-6