设workbench.editor.enablePreview为false是唯一有效解法,可使单击文件生成带未保存标识、可拖拽、不被覆盖的常驻正体标签页,改完立即生效且无需重启。

直接改 workbench.editor.enablePreview 为 false 是唯一有效动作
VSCode 单击文件只闪一下、没圆点、切走再回来内容没了——不是插件或缓存问题,就是这个开关开着。设成 false 后,所有单击行为(资源管理器、搜索结果、命令面板)都会生成带未保存标识(圆点)、可拖拽、不被覆盖的常驻标签页。改完立刻生效,不用重启,已打开的斜体预览页会自动转为正体常驻状态(但不会自动保存内容,这点要自己 Ctrl+S)。
必须同步用户级设置,否则 Workspace Settings 会覆盖它
图形界面里搜 workbench.editor.enablePreview 取消勾选后,看右下角:如果显示「Workspace Settings」,说明你只改了当前项目配置,而用户级设置仍是 true,预览照常出现。必须手动进用户设置补一刀:
- 按
Ctrl + ,(Windows/Linux)或Cmd + ,(macOS)打开设置 - 点击右上角「Open Settings (JSON)」图标
- 在
{}里加一行:"workbench.editor.enablePreview": false
关了主开关,这些地方还可能出斜体标签
即使 workbench.editor.enablePreview 是 false,以下操作仍绕过主开关、强制走预览路径:
-
Ctrl + Click(Windows/Linux)或Cmd + Click(macOS)跳转定义:需额外设"workbench.editor.enablePreviewFromCodeNavigation": false - 命令面板(
Ctrl + P)输文件名回车:需设"workbench.editor.enablePreviewFromQuickOpen": false - 搜索结果中双击文件:受
search.editor.doubleClickBehaviour控制,设为"open"才避免预览 - GitLens、Todo Tree 等扩展点击跳转:它们调用的是 VSCode 预览 API,得查对应扩展文档看有没有
enablePreview类开关
别忽略预览页没有 unsaved changes 标识这个隐患
斜体预览页不显示圆点,改了几行代码你可能根本没意识到它还是预览状态;一旦切到别的文件,这个预览页就被新文件覆盖,改动直接丢。这不是“偶尔卡一下”,而是设计行为——所以关预览不只是为了看着顺眼,更是防误删未保存内容。最易被忽略的是:双击文件永远常驻,但单击斜体页后按 Enter 也能把它固定,这个快捷键很多人不知道。











