关掉workbench.editor.enablePreview是唯一有效解法:设为false后,单击文件生成常驻、正体、带未保存圆点的标签页,已打开斜体预览页实时转常驻;但Ctrl+P、跳转定义等需额外关闭对应预览开关。

关掉 workbench.editor.enablePreview 是唯一有效解法
VSCode 单击文件就“闪一下消失”,不是卡顿,也不是插件冲突,是预览模式在起作用。默认 workbench.editor.enablePreview 为 true,所有单击打开的文件都以斜体预览标签页存在,可被后续操作覆盖。设为 false 后,斜体立即转为正体、常驻、带未保存圆点标识的标签页,已打开的预览页也会实时转换,无需重启。
注意:workbench.editor.enablePreview 是全局开关,但只控制「资源管理器单击」这一种行为;其他入口仍可能触发预览,需单独处理。
Ctrl+P、跳转定义、搜索结果双击仍出预览?补关对应配置项
即使 workbench.editor.enablePreview 已设为 false,以下操作仍会绕过它强制开预览:
-
Ctrl+P(命令面板)回车打开文件 → 补设"workbench.editor.enablePreviewFromQuickOpen": false -
Ctrl+Click跳转函数/变量定义 → 补设"workbench.editor.enablePreviewFromCodeNavigation": false - 搜索结果中双击文件 → 设
"search.editor.doubleClickBehaviour": "open"(而非默认的"preview") -
Ctrl+Click资源管理器文件 → 无法禁用,VSCode 硬编码逻辑,只能改用双击或Enter固定
这些配置项彼此独立,混搭使用可精准控制:比如你只想保留跳转时的预览(不挤占当前标签),就只关前两项,留第三项。
Ctrl+K W 关不干净?先确认哪些是预览态,再决定是否固定
Ctrl+K W 默认不关闭预览态标签页——哪怕它们已经打开十分钟。判断方式很简单:看标签右上角有没有小箭头图标 →。有就是预览态,Ctrl+K W 会跳过它。
临时解决办法(不改设置):
- 单击预览标签页名本身,或按
Ctrl+Enter(Windows/Linux)将其转为固定态 - 之后再按
Ctrl+K W就能一并关闭 - 注意:终端、调试控制台等面板不受影响,
Ctrl+K W只作用于编辑器区域
长期来看,与其每次手动固定,不如直接关掉预览源头。
改了设置还是看到斜体?检查设置作用域和扩展干扰
右下角显示「Workspace Settings」说明你只改了当前项目配置,而用户级设置仍是 true,实际生效的是用户级。必须同步修改用户设置,否则新建窗口、新项目仍会回归预览。
另外,某些扩展(如 GitLens blame 行点击、Todo Tree 任务跳转)内部调用预览 API,不走 VSCode 主配置路径。这类情况得查对应扩展文档,找类似 gitlens.previewMode 或 todo-tree.previewOnOpen 的开关。
真正容易被忽略的是:预览模式会影响 Ctrl+Tab 切换历史(预览页不进栈)、拖拽排序(预览页灰掉不可拖)、甚至调试器跳转源码(可能意外开预览页)。关掉它不只是为了“看着顺眼”,而是让编辑器行为更符合直觉。











