必须直接编辑settings.json,GUI设置易被工作区配置覆盖或重启失效;需在用户级settings.json中正确配置"editor.fontFamily"(字体名加英文单引号、逗号分隔)和"editor.fontSize"(整数),终端字体还需单独设"terminal.integrated.fontFamily"和"terminal.integrated.fontSize"。

必须直接编辑 settings.json,图形界面改的容易被覆盖或重启失效。
为什么不能只靠设置面板点点点
你在设置搜索框里搜“font family”或“font size”,点开选项填值——看起来生效了,但一重启或打开某个项目,字体又回退。这不是 VS Code 抽风,是配置优先级和解析逻辑在起作用:
- 图形界面修改写入的是用户设置(
settings.json),但若某项目根目录存在.vscode/settings.json,它会**完全覆盖**全局设置 - GUI 输入框对引号、空格、逗号不敏感,比如输
Fira Code, Consolas会被当成一个字体名,解析失败后 fallback 到默认Consolas - 某些主题插件(如 One Dark Pro)会在启动时重写
editor.fontFamily,你改了也白改
真正生效的 settings.json 写法
按 Ctrl+Shift+P(Win/Linux)或 Cmd+Shift+P(macOS),输入 Preferences: Open Settings (JSON),打开用户级配置文件。填这两行(示例):
"editor.fontFamily": "'Fira Code', 'JetBrains Mono', 'Consolas', 'monospace'", "editor.fontSize": 14
注意这些细节:
-
editor.fontFamily的每个含空格/连字符的字体名必须用**英文单引号**包裹,例如'Fira Code',不是双引号,也不是不加引号 - 多个字体用英文逗号 + 空格分隔,顺序即 fallback 优先级:左边优先,加载失败才试右边
-
editor.fontSize必须是整数,14.5或"14px"都会被静默忽略 - 中文字体慎用
Microsoft YaHei(Linux/macOS 渲染模糊),macOS 推荐'PingFang SC',Linux 推荐'Noto Sans CJK SC'
终端字体别忘了单独配
改完 editor.fontFamily,底部集成终端还是小得看不清?因为终端用的是另一套配置:
- 必须显式添加
"terminal.integrated.fontFamily": "'Fira Code', monospace" - 字号也得单独设:
"terminal.integrated.fontSize": 13(建议比编辑器大 1–2) - 改完保存,已打开的终端页签不会刷新,要关掉再按
Ctrl+`新建一个 - 如果终端中文发虚,检查是否混用了中英字体,比如
'Fira Code', 'Microsoft YaHei'在非 Windows 上大概率糊,换成'Fira Code', 'Noto Sans CJK SC'
改完没变化?先盯住这三个地方
不是设置没写对,而是别的地方在“抢控制权”:
- 检查项目根目录有没有
.vscode/settings.json,里面有冲突的editor.fontFamily就会盖掉全局设置 - 开了 Remote-SSH 或 Dev Container?本地改的
settings.json不生效,得在远程环境里重新配 - GPU 加速干扰渲染(尤其 Linux 或老旧独显):临时用
code --disable-gpu启动验证,如果字体立刻变清晰,说明是驱动问题
最常被忽略的一点:VS Code 的编辑器、终端、侧边栏、状态栏、右键菜单,用的全是不同配置项。只调 editor.fontSize,等于只修了一扇窗——其他地方照样糊、照样小。


















