跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

解决VSCode中文显示乱码问题的终极方案

VSCode 中文乱码主因是字体配置不当而非编码错误;需分别设置 editor.fontFamily 和 terminal.integrated.fontFamily 为兼容中文字体组合,并确保文件编码为 UTF-8(无 BOM)。 vscode 中文显示乱码,通常不是 编码 格式错了,而是字体配置没跟上——尤其在 mac os 和 linux 上,系统默认中文字体可能未被 vscode 识别或优先级太低; win dows 虽自带宋体/微软雅黑,但某些终端或注释场景仍会 fallback 到不支持中文的等宽字体。 检查并设置 editor.fontFamily VSCode 编辑器内 中文乱码 ,大概率是 fontFamily 没指定兼容中文字体。打开设置( Ctrl+, / Cmd+, ),搜索 font family ,找到 Editor: Font Family ,填入以下推荐组合: macOS:
'SF Mono', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', monospace
Windows:
'Consolas', 'Microsoft YaHei', 'SimSun', 'NSimSun', monospace
Linux:
'Fira Code', 'Noto Sans CJK SC', 'WenQuanYi Micro Hei', monospace
注意:中文字体名必须用英文名(如
PingFang SC
,不是“苹方-简”),多个字体用英文逗号+空格分隔,末尾保留
monospace
保底。改完保存,无需重启,实时生效。 修复集成终端中文乱码 编辑器里正常,但底部 Terminal 显示方块或问号?这是终端渲染字体独立于编辑器。打开设置,搜索 terminal integrated font family ,设置 Terminal > Integrated: Font Family : macOS 推荐:
'MesloLGS NF', 'PingFang SC', 'Hiragino Sans GB'
(需先安装 MesloLGS NF 支持图标+中文) Windows 推荐:
'Cascadia Code', 'Microsoft YaHei'
(Cas cad ia Code 是微软开源等宽字体,原生支持中文) Linux 推荐:
'JetBrainsMono Nerd Font', 'Noto Sans CJK SC'
设完后,关闭再重开一个终端( Ctrl+Shift+` ),乱码即消失。 确认文件编码为 UTF-8(无 BOM) 极少数情况,文件本身以 GBK 或带 BOM 的 UTF-8 保存,VSCode 会误判。右下角状态栏点击编码(如 UTF-8 或 GBK ),选择 Reopen with Encoding → UTF-8 ;若显示 Save with Encoding ,选 UTF-8 并勾选 Don’t show again 。长期建议在 settings. js on 中强制默认: elasticsearch-9.4.0 win PHP中文网提供Elasticsearch 9.4.0 Windows 版本压缩包下载解压即用,内置 OpenJDK 无需额外配置 Java 环境。该版本重磅推出原生 Prometheus 支持、正式版 Elastic Workflows 以及基于 NVIDIA cuVS 的 GPU 加速向量索引,大幅提升 AI 检索与可观测性能力。建议前往官网下载,快速体验极速搜索与强大的数据分析功能。 下载
"files.encoding": "utf8", "files.autoGuessEncoding": false
避免 VSCode 自作聪明猜错编码。 进阶:全局字体回退策略(适合多语言开发) 如果你常写中文+日文+emoji+代码符号,单一字体撑不住。可在 settings.json 中启用字体回退链:
"editor.fontFamily": "'Fira Code', 'Noto Sans CJK SC', 'Noto Color Emoji', 'Segoe UI Emoji', 'monospace'"
VSCode 会从左到右逐个尝试:英文字体用 Fira Code,中文用 Noto Sans CJK SC,emoji 交给 Noto Color Emoji,兜底用系统等宽字体。顺序不能错,否则中文可能被 emoji 字体截断。 基本上就这些。核心就三点:字体列表配对、终端单独设、编码统一为 UTF-8。不复杂但容易忽略细节——比如输错字体英文名、漏掉空格、或者只改了 editor 没管 terminal。

相关文章