vscode汉化本身不拖慢速度,真正卡顿源于带中文语言资源的插件触发同步扫描阻塞;ms-ceintl.vscode-language-pack-zh-hans是导火索,实际开销大者是含大量translations/zh-hans.json的插件。

VSCode汉化本身不会拖慢运行速度,真正卡在“正在加载扩展”的,是那些带中文语言资源的插件——尤其是 vscode-language-pack-zh-hans 和自带多语言 JSON 的插件(比如 esbenp.prettier-vscode),它们触发了同步扫描和解析阻塞。
为什么汉化会变慢?不是语言包,是语言资源扫描
VSCode 启动时会遍历所有已安装插件的 package.json 和 i18n 目录,检查是否提供当前 locale 的翻译。一旦插件数量多、结构深,或某个插件的中文资源文件损坏/路径异常,整个扫描过程就会卡住——界面停在“正在加载扩展”,但日志里看不到报错。
-
ms-ceintl.vscode-language-pack-zh-hans本身很小,但它是“导火索”,会连带触发其他插件的语言资源校验 - 含
contributes.grammars或大量translations/zh-hans.json的插件(如某些主题、格式化工具)实际开销更大 - Windows/macOS/Linux 上的文件系统性能差异会让这个问题在某些机器上更明显
怎么快速验证是不是语言资源拖慢的?
别猜,直接临时隔离可疑插件:
- 关掉 VSCode,进入 extensions 目录:
— macOS:~/Library/Application Support/Code/Extensions
— Windows:%USERPROFILE%\.vscode\extensions
— Linux:~/.vscode/extensions - 把名字含
language、i18n、zh-hans的文件夹重命名(例如加.bak后缀) - 重启 VSCode,观察启动是否恢复正常;如果快了,再逐个恢复,定位具体哪个插件引发阻塞
locale.json 配置错误比插件还致命
很多人手动改过 locale.json,但填错值会导致 VSCode 反复尝试 fallback 到英文、再扫描中文资源,形成循环卡顿。
- 该文件必须严格为:
{"locale":"zh-hans"}—— 注意是zh-hans,不是zh-CN、zh或zh-Hans - 路径固定:
— macOS/Linux:$HOME/.vscode/locale.json
— Windows:%APPDATA%\Code\User\locale.json - 改完后必须完全退出 VSCode(点右上角 × 关闭所有窗口),不能只用
Developer: Reload Window
真正有效的优化:跳过语言资源扫描
VSCode 1.86+ 支持通过 affinity 强制延迟加载,绕过启动阶段的语言资源扫描逻辑。这对没适配 activationEvents 的插件特别管用:
- 打开
settings.json(Cmd+, → 右上角 {} 图标) - 添加:
"extensions.experimental.affinity": { "ms-ceintl.vscode-language-pack-zh-hans": 2, "esbenp.prettier-vscode": 2, "redhat.vscode-yaml": 2 } - 数字
2表示“延迟加载”,VSCode 不再在启动时扫描其i18n目录,等你打开第一个 .json 或 .yaml 文件时才载入
最常被忽略的一点:禁用插件不等于移除语言资源。只要插件文件夹还在 extensions 目录里,VSCode 就会扫描它——哪怕你已经在 UI 里点了“禁用”。真要根治,要么删掉文件夹,要么用 affinity 拦住扫描,或者干脆重命名隔离。











