Skip to content

QR code displays garbled characters in some terminals #7

@lmsh7

Description

@lmsh7

问题描述

运行 npx claude-code-wechat-channel setup 时,终端显示的二维码出现乱码,Unicode 方块字符(如 )被显示为 â 等乱码字符,无法正常扫码。

复现步骤

  1. 在某些终端环境下运行 npx claude-code-wechat-channel setup
  2. 程序获取微信登录二维码
  3. 二维码显示为乱码,例如:
âââââââââââââââââââââââââââââââââââââââ
â âââââ â ââââ ââââââââââââââââ âââââ â
â â   â â  ââ ââ ââ âââââââ âââ â   â â
...

原因分析

项目使用 qrcode-terminal 库的 { small: true } 模式渲染二维码,该模式依赖 Unicode 半块字符( )。当终端的字符编码不是 UTF-8 或终端字体不支持这些 Unicode 方块字符时,就会显示乱码。

建议修复

qrcode-terminal{ small: true } 改为标准模式(不传 small 参数),使用 ANSI 背景色渲染二维码,兼容性更好。

涉及文件:

  • setup.ts(第 104-112 行)
  • wechat-channel.ts(相关二维码显示代码)

环境信息

  • OS: macOS
  • Node.js: >= 18
  • 包版本: 0.2.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions