设为false是唯一生效的全局开关,可使单击文件生成常驻正体标签页、显示未保存标识、已开斜体页自动转换,但Ctrl+Click跳转、搜索双击等需额外配置对应开关。

workbench.editor.enablePreview 设为 false 是唯一生效的全局开关
单击资源管理器文件后标签斜体、切走再回来内容消失、未保存标识(圆点)不显示——这些全是 workbench.editor.enablePreview 为 true 的直接表现。设为 false 后,所有单击行为(无论来自资源管理器、命令面板还是搜索结果)都会生成常驻标签页,已打开的斜体页会立即转为正体,无需重启。
注意两点:
- 右下角若显示「Workspace Settings」,说明你只改了当前项目配置,而用户级设置仍是
true,必须同步修改用户设置,否则新窗口或新工作区仍会复现预览 - 双击文件不受此设置影响,它永远常驻;但双击一个已存在的斜体预览页(快捷键
Enter)也能把它固定下来
Ctrl+Click 跳转定义仍出斜体?关掉 workbench.editor.enablePreviewFromCodeNavigation
按住 Ctrl 点函数名跳转后标签还是斜体,不是 workbench.editor.enablePreview 没生效,而是 workbench.editor.enablePreviewFromCodeNavigation 在单独控制这个路径。F12、Shift+F12、Alt+F12 全部受它管辖。
常见干扰项:
- Vim 插件可能劫持
Ctrl+Click,需检查键盘映射是否覆盖了默认行为 - 某些语言服务器(如 TypeScript Server)在跳转时会绕过编辑器配置,此时需确认
editor.links为true(默认开启),否则跳转本身可能失效
搜索结果双击仍预览?改 search.editor.doubleClickBehaviour 为 open
在 Ctrl+Shift+F 搜索面板里双击匹配行,默认行为是 gotoLocation,它强制走预览逻辑,和 workbench.editor.enablePreview 完全无关。
正确做法是把 search.editor.doubleClickBehaviour 显式设为 "open":
"search.editor.doubleClickBehaviour": "open"
这个值只有两个可选:"gotoLocation"(默认,进预览)和 "open"(强制常驻)。别写错大小写或加引号以外的字符,VSCode 不校验拼写,写错就回退到默认行为。
为什么关了所有设置,还有斜体标签?这些操作根本绕过配置
即使你把 workbench.editor.enablePreview、enablePreviewFromExplorer、enablePreviewFromQuickOpen 全设为 false,仍可能看到斜体标签,因为以下行为是硬编码逻辑,无法通过设置禁用:
-
Alt+Click(Windows/Linux)或Option+Click(macOS)在资源管理器中点击文件:这是编辑器组策略,属于底层行为,不是 bug - 拖拽文件到另一个 editor group:目标组若为空,会以预览形式打开;若非空,则取决于该组当前焦点页是否为预览页
- GitLens blame 行点击、Todo Tree 任务跳转等扩展行为:它们调用的是 VSCode 的预览 API,得查对应扩展文档看是否有
enablePreview类开关
真正容易被忽略的是:预览页没有 unsaved changes 标识,改了几行代码却没注意它仍是斜体,切走再回来,改动可能被新文件覆盖——这不是丢失,是被静默替换掉了。


















