设为false是唯一必须改的设置:关闭workbench.editor.enablePreview可使单击生成带圆点的常驻标签页,避免预览页丢失未保存内容;Cmd+Click等操作需额外关闭对应开关。

workbench.editor.enablePreview 设为 false 是唯一必须改的设置
macOS 上 VSCode 单击资源管理器文件只闪一下、没圆点、切走再回来内容消失——不是插件或缓存问题,就是 workbench.editor.enablePreview 在起作用。它默认为 true,必须手动设为 false 才能让每次单击都生成带未保存标识(圆点)、可拖拽、常驻的正体标签页。
这个设置是全局开关,生效后立刻转换所有已打开的斜体预览页为常驻状态(但不会自动保存未提交的编辑,这点要自己 Ctrl+S)。
- 图形界面操作:
Cmd + ,→ 搜索workbench.editor.enablePreview→ 取消勾选「Workbench › Editor: Enable Preview」 - 更可靠的方式:打开
Preferences: Open Settings (JSON)→ 在{}内添加一行:"workbench.editor.enablePreview": false - 检查右下角是否显示「Workspace Settings」——如果显示,说明你只改了当前项目配置,用户级设置仍是
true,必须同步修改用户设置
Cmd+Click 和 Ctrl+P 仍出斜体?关掉这几个独立开关
即使 workbench.editor.enablePreview 是 false,macOS 下 Cmd+Click 资源管理器文件、Cmd+P 回车打开文件,仍会强制走预览路径,因为它们绕过主开关。
-
workbench.editor.enablePreviewFromQuickOpen:控制Cmd+P行为,必须设为false -
workbench.editor.enablePreviewFromCodeNavigation:控制Cmd+Click跳转定义(如函数、变量),也建议设为false -
search.editor.doubleClickBehaviour:搜索结果中双击文件,默认是preview,改为"open"才能避免预览
这些配置项互不依赖,只在各自触发路径下生效,缺一不可。
Cmd+Click 资源管理器文件无法禁用?这是硬编码行为
macOS 版 VSCode 中,Cmd+Click 点击资源管理器里的文件,是底层硬编码逻辑,**任何设置都无法关闭它的预览行为**。这不是 bug,是设计如此。
替代方案只有两个:
- 改用
Ctrl+Click(非 Cmd),它走的是普通单击路径,受workbench.editor.enablePreview控制 - 坚持用
Cmd+Click?那就接受它始终预览——或者直接双击文件,双击永远常驻,不受任何设置影响
别浪费时间找“隐藏配置”,VSCode 官方文档和源码都确认了这一点。
扩展跳转(GitLens、Todo Tree)也出预览?查扩展自身配置
GitLens 的 blame 行点击、Todo Tree 的任务项点击、甚至某些 LSP 插件的 go-to-definition,都可能调用 VSCode 预览 API,完全无视 workbench.editor.enablePreview。
这类行为无法靠通用设置拦截,必须逐个处理:
- GitLens:查
gitlens.codeLens.enablePreview或gitlens.views.fileHistory.enablePreview,设为false - Todo Tree:搜
todo-tree.tree.showInPreview或类似含preview的选项 - 其他扩展:在设置里搜索关键词
preview,优先看扩展作者是否暴露了对应开关
最易被忽略的是:预览页没有未保存标识(没圆点),你改了几行代码却没注意它还是预览状态,切走再回来,改动可能被新文件覆盖——这才是真正危险的地方。


















