关闭workbench.editor.enablePreview设为false即可消除斜体预览标签,但需同步修改用户级设置;Ctrl/Cmd+Click等硬编码操作仍强制预览,须额外配置对应开关。

直接关掉 workbench.editor.enablePreview 就行,设为 false 后单击文件立刻变成常驻标签页,斜体消失,不再“闪退”。这是唯一必须改的核心配置。
怎么改设置才真正生效
打开设置(Ctrl + , 或 Cmd + ,),搜 enablePreview,找到 Workbench > Editor: Enable Preview,取消勾选。这个操作对应 JSON 配置项:"workbench.editor.enablePreview": false。
- 改完不用重启,已打开的斜体标签会自动转为正体、常驻状态
- 右下角如果显示「Workspace Settings」,说明你只改了当前项目,用户级设置仍是
true,得同步改掉用户设置 - 手动编辑
settings.json更可靠,避免图形界面误操作
为什么关了还是有斜体标签
即使 workbench.editor.enablePreview 是 false,以下行为仍会强制触发预览,它们绕过全局开关:
-
Ctrl + Click(Windows/Linux)或Cmd + Click(macOS)在资源管理器中单击:VSCode 硬编码逻辑,无法通过设置禁用 - 命令面板(
Ctrl + P)输入文件名后回车:需额外设"workbench.editor.enablePreviewFromQuickOpen": false - 搜索结果中双击文件:受
search.editor.doubleClickBehaviour控制,设为"open"可避免预览 - 跳转定义(
Ctrl + Click代码内符号):需设"workbench.editor.enablePreviewFromCodeNavigation": false - 某些扩展(如 GitLens blame、Todo Tree 点击任务)内部调用预览 API,得查对应扩展文档是否有
enablePreview类开关
想保留预览但只对特定文件类型禁用
files.associations 不管用——它只管语法高亮。真正起效的是 workbench.editorAssociations,支持按文件名模式匹配并指定是否启用预览:
"workbench.editorAssociations": [
{
"viewType": "default",
"filenamePattern": "*.ts"
},
{
"viewType": "default",
"filenamePattern": "*.js"
}
]
规则按数组顺序匹配,越靠前优先级越高。注意:这不是布尔开关,而是显式声明哪些类型走默认编辑器(即非预览)。
预览模式不是 bug,但它的“临时性”和多个入口的独立控制逻辑,很容易让人误以为设置没生效。最常被忽略的是工作区与用户设置的冲突,以及 Ctrl/Cmd + Click 这类硬编码行为——它们根本无视 enablePreview 的值。


















