发布于2026-07-11 阅读(0)
扫一扫,手机访问
很多人第一反应是插件没装好,其实不然。Remote-SSH 启动的是一个独立进程,它不会读取你本地的 locale.json,也不会同步本机的插件配置。它只认远程机器上特定路径下的那个文件。所以,问题的根源很简单:远程 VS Code Server 根本没有加载中文语言上下文。
ssh user@host),然后检查或创建文件:VS Code 1.85 以上版本放在 ~/.vscode-server/data/Machine/locale.json;旧版本则用 ~/.vscode-remote/data/Machine/locale.json。路径搞错,一切白费。{"locale":"zh-cn"}。千万别写成 zh_CN、zh-hans,也别加注释或多余空格——一个字符不对,VS Code 就会静默回退英文。Developer: Reload Window(注意是远程窗口,不是本地窗口)。Remote-SSH 不会把你本地安装的 ms-ceintl.vscode-language-pack-zh-hans 插件复制到远程。VS Code Server 本身内置了语言资源,但只有 locale.json 存在并且内容合法时,才会真正触发加载。
Ctrl+Shift+P,输入 Developer: Show Running Extensions,查看列表中是否有 ms-ceintl.vscode-language-pack-zh-hans 且状态为 Activated。locale.json 放错了路径(比如扔在 ~/.vscode-server/ 根目录下),或者内容格式非法,又或者远程系统用的是 Snap 版 VS Code(沙盒限制会导致资源加载失败)。code --install-extension MS-CEINTL.vscode-language-pack-zh-hans --force,但生产环境建议避免这种操作。VS Code Server 查找 locale.json 是按固定路径顺序扫描的。只要路径偏差一点,就会静默回退英文。这个问题在 WSL、容器或自定义 $HOME 的环境里尤其常见,一不留神就放错位置。
ps aux | grep code,找到类似 /home/user/.vscode-server/bin/abc123.../node /home/user/.vscode-server/bin/abc123.../out/server-main.js 的进程,其父目录就是 Server 根路径。~/.vscode-server/data/Machine/ 下面某个带哈希后缀的子目录(比如 abcd1234...)里的 locale.json,而不是 ~/.vscode-server/ 根目录。~ 指向的是 Linux 用户家目录(/home/xxx),而不是 Windows 的 /mnt/c/Users/xxx。~/.ssh/config 中的 HostName 和 User 是否匹配实际登录用户,否则 Server 可能以错误用户身份启动,读到的是别的家目录。很多人觉得 SSH 能连上、路径应该没问题了,但实际 Remote-SSH 偶尔会因为权限或环境变量绕过预期路径,导致 locale.json 被忽略。这几个隐蔽点值得留意:
~/.ssh/config 文件的权限必须是 600(执行 chmod 600 ~/.ssh/config 即可),否则 VS Code 可能拒绝读取这个配置文件。VSCODE_LOCALE 环境变量有没有被设置为 en:在远程终端运行 echo $VSCODE_LOCALE。如果有输出,需要在 ~/.bashrc 或 ~/.profile 里 unset 掉它。locales 包,执行 locale -a | grep zh_CN 可能返回空。虽然这不直接影响 VS Code,但可能会干扰其他依赖 locale 的工具。不过,对汉化本身影响不大。en,在弹出的菜单里选择 zh-cn。这种方式会强制在当前远程会话中写入正确的配置,比手动编辑更可靠。说到底,真正起效的永远只有三件事:远程 locale.json 存在且内容合法、Server 进程读到了它、没有环境变量或权限问题把它屏蔽掉。路径细节和编码格式,正是大多数人卡住的地方。把这三步走通,汉化基本不会翻车。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8