关闭 workbench.editor.enablePreview 并设为 false 是唯一必须操作;VSCode 默认单击文件仅创建可覆盖的斜体预览标签,双击才常驻,改后已开斜体标签自动转正体但不保存。

关掉 workbench.editor.enablePreview 就行,设为 false 是唯一必须做的操作。其他设置只是补漏,不改它,所有“关预览”的尝试都白忙。
为什么单击文件总闪一下就消失?
这不是卡顿,也不是插件冲突,是 VSCode 默认行为:单击资源管理器文件时,它不真正打开,而是生成一个可被覆盖的临时标签页,用斜体标识。这个行为由 workbench.editor.enablePreview 控制,且默认值就是 true。
- 双击文件不受该设置影响——它永远常驻,所以不会出现斜体
- 改完设置后无需重启,已打开的斜体标签会自动转为正体、常驻状态(但内容不会自动保存)
- 如果右下角显示「Workspace Settings」,说明你只改了当前项目配置,而用户级设置仍是
true,必须同步修改用户设置
怎么改?图形界面 or settings.json?
两种方式都行,但手动编辑 settings.json 更可靠,避免 GUI 因缓存或层级显示问题漏改。
- 图形界面:
Ctrl + ,(Windows/Linux)或Cmd + ,(macOS)→ 搜索enablePreview→ 取消勾选「Workbench › Editor: Enable Preview」 - JSON 手动编辑:打开
Preferences: Open Settings (JSON)→ 在{}内加一行:"workbench.editor.enablePreview": false
关了还看到斜体标签?检查这几个绕过主开关的操作
即使 workbench.editor.enablePreview 是 false,以下行为仍可能触发预览,因为它们走的是独立 API 路径:
-
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、Todo Tree 等扩展点击跳转:它们调用的是 VSCode 预览 API,得查对应扩展文档看能否禁用其内部预览行为
最易被忽略的细节
预览页没有 unsaved changes 标识(没圆点),改了几行代码却没注意它还是预览状态,切走再回来内容就丢了——这不是 bug,是设计如此。真正要警惕的不是“怎么关”,而是“哪些操作根本关不掉”,比如 Alt + Click 或拖拽到另一个 editor group,这类行为完全不受任何预览设置控制,属于 editorGroup 策略层面的行为。











