关闭 workbench.editor.enablepreview 并设为 false 即可消除斜体标签,使其变为常驻页;斜体是预览模式的视觉标识,表示该标签页临时可被覆盖,非字体或显示问题。

直接关掉 workbench.editor.enablePreview 就行,设为 false,斜体标签立刻消失,所有单击打开的文件都变成常驻标签页。
为什么文件名是斜体?那是预览模式的视觉标记
VSCode 用斜体文字明确告诉你:这个标签页是临时的,随时会被下一次单击覆盖。它不是 bug,也不是字体设置问题,而是预览模式(Preview Mode)的默认 UI 表现。只要 workbench.editor.enablePreview 是 true(默认值),单击资源管理器里的文件就会触发它。
常见误解包括:以为改了 files.associations 或调高字体大小能解决——其实完全无关;也有人去禁用 minimap 或侧边栏,那只是掩盖症状,不治本。
怎么永久关闭斜体预览(含工作区覆盖陷阱)
关键就一条配置,但容易漏掉生效范围:
- 打开设置(
Ctrl+,或Cmd+,),搜索workbench.editor.enablePreview - 把对应选项取消勾选 → 实际写入的是
"workbench.editor.enablePreview": false - 务必检查右下角是否显示「Workspace Settings」——如果显示,说明你只改了当前项目的工作区设置,而用户级设置仍是
true,得同步改掉 - 改完无需重启,已打开的斜体标签会自动转为正体、常驻状态
关了还是有斜体?这些操作会绕过设置
即使全局关了预览,以下行为仍会强制出现斜体标签:
-
Ctrl+Click(Windows/Linux)或Cmd+Click(macOS)在资源管理器中单击:这是硬编码逻辑,无法通过设置禁用 - 通过命令面板运行
File: Open Preview:明确调用预览 API,和配置无关 - 某些扩展(如 GitLens 的 blame 跳转、Todo Tree 的任务点击)内部用了预览打开方式,需查该扩展文档看是否有
enablePreview类开关 - 双击文件本身不受
enablePreview控制——它永远常驻,所以斜体不会出现;但双击斜体标签页(即预览页自身)才能把它“固定”,快捷键是Enter
想留预览但不让特定文件斜体?用 workbench.editorAssociations
比如你希望 Markdown 预览保持轻量(斜体+可覆盖),但所有 .ts 文件必须一打开就是正体常驻标签:
"workbench.editorAssociations": [
{
"viewType": "default",
"filenamePattern": "*.ts",
"enablePreview": false
}
]
注意:这个数组按顺序匹配,前面规则优先;enablePreview: false 在这里会覆盖全局 enablePreview: true,但不能反过来——如果全局已设 false,再在这里写 true 也不会生效。
真正容易被忽略的是:workbench.editorAssociations 不影响 Ctrl/Cmd+Click 和命令面板行为,它们走的是另一套打开路径。











