Composer默认输出英文,显示繁体中文是因安装了csineneo/lang-traditional-chinese插件、系统LANG设为zh_TW.UTF-8,或Windows终端字体渲染造成视觉错觉;卸载插件、重置LANG为en_US.UTF-8并清缓存即可恢复纯英文输出。

Composer 命令行本身不支持中文界面,所谓“显示繁体字”不是 Composer 的功能,而是你本地环境或第三方插件造成的假象;它默认输出纯英文,任何中文(简体/繁体)都来自外部语言包或系统 locale 干扰。
为什么 composer 命令会显示繁体中文?
这不是 Composer 内置行为,而是以下三者之一在起作用:
- 你安装了
csineneo/lang-traditional-chinese这类非官方语言包,它会劫持命令输出并翻译成繁体 - 你的系统
LANG或LC_ALL环境变量设为zh_TW.UTF-8或类似值,某些 PHP 扩展(如 intl)可能据此影响错误提示的本地化 - 你在 Windows 上用了 PowerShell + 中文区域设置,且终端字体渲染把英文 ASCII 字符映射成了中文字形(视觉错觉,实际仍是英文字符)
如何确认是否被语言包干扰?
运行这条命令看输出里有没有中文相关依赖:
composer show --installed | grep -i "chinese\|lang"
如果返回 csineneo/lang-traditional-chinese 或 csineneo/lang-simplified-chinese,说明是它在作祟。此时直接卸载即可:
- 删繁体包:
composer remove csineneo/lang-traditional-chinese - 不装简体包——除非你真有强需求,否则没必要引入额外翻译层
- 清缓存:
composer clear-cache
之后所有 composer 命令将回归原始英文输出,稳定、无歧义、兼容 CI/CD。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
想强制用英文但 locale 是中文怎么办?
临时生效(当前终端):
unset LANG LC_ALL && composer diagnose
永久生效(写入 shell 配置):
- Linux/macOS:在
~/.bashrc或~/.zshrc末尾加export LANG=en_US.UTF-8 - Windows CMD:用
setx LANG en_US.UTF-8,需重启终端 - Windows PowerShell:在
$PROFILE加$env:LANG="en_US.UTF-8"
注意:en_US.UTF-8 必须是你系统已安装的 locale,可用 locale -a | grep en_US 验证;若不存在,先生成再设置。
别碰 composer.json 里的 extra.language
网上流传的在 composer.json 中加 "extra": {"language": "zh"} 是无效的——Composer 官方根本不读这个字段。它只存在于某些 fork 版本或老教程里,现代 Composer(2.0+)完全忽略。硬加进去只会让配置变脏,还可能干扰其他工具解析 JSON 结构。
真正影响输出语言的只有两处:环境变量(LANG)、已安装的第三方语言包。其余都是噪音。

















