预览标签页无法直接固定,必须先双击、Ctrl+K Enter或右键“Reopen to the Side”转正为常驻标签,再右键Pin Tab;固定仅防覆盖和Ctrl+Tab排除,不防Ctrl+W、中键、双击等关闭操作,且重启即失效。

预览标签页根本不能“固定”,只能先转正再 Pin
VSCode 中的预览标签页(斜体、左下角标“预览”)是临时态,没有图钉图标,右键菜单里压根不显示 Pin Tab 或 Keep Open 选项——它连被固定的资格都没有。所谓“固定预览标签”,本质是误解。你必须先让它脱离预览态,变成常驻标签,之后才能操作 Pin。
转正方法有三种,按优先级排列:
- 双击该预览标签页(最直接,立刻变正体、可 Pin)
- 按
Ctrl + K Enter(Windows/Linux)或Cmd + K Enter(macOS),当前预览标签立即转正 - 右键点击预览标签 → 选择
Reopen Editor to the Side,新开一个常驻副本,原预览页仍可关掉
注意:workbench.editor.enablePreview 设为 false 后,新打开的文件默认就是常驻态,不再经过预览环节——但已存在的预览标签不会自动转正,仍需手动触发一次上述任一操作。
为什么关了预览模式,还有斜体标签?查这几个隐藏开关
即使你在 settings.json 里写了 "workbench.editor.enablePreview": false,仍可能看到斜体标签,说明其他入口绕过了主开关。常见来源包括:
-
workbench.editor.enablePreviewFromQuickOpen:控制Ctrl + P搜索后回车的行为,默认true,必须显式设为false -
workbench.editor.enablePreviewFromExplorer:虽已废弃,但某些旧扩展或自定义 UI 可能仍在读取,若存在也建议设为false - macOS 上
Cmd + Click资源管理器文件是硬编码预览,无法通过设置关闭;可用Ctrl + Click或双击替代
这些配置都得加到同一份 settings.json 里,且用户级设置优先于工作区设置——右下角显示 Workspace 时,改的只是当前项目,全局无效。
固定后仍被关?不是 Bug,是设计如此
右键选 Pin Tab 或点图钉图标后,标签页左侧出现图钉、位置锁定在最左、不参与 Ctrl + Tab 切换——但它**完全不防关闭**。以下操作依然会关掉它:
-
Ctrl + W(关闭当前焦点编辑器,固定不豁免) - 鼠标中键点击标签页(VSCode 默认绑定为强制关闭)
- 双击标签页空白处(UI 层关闭逻辑,绕过固定状态)
- 右键菜单里的
Close Editor或Close All Editors
想减少误关,可禁用中键关闭:"workbench.editor.mouseBackForwardToNavigate": false,但这会同时关掉鼠标侧键导航功能。
重启后固定状态消失,这是正常行为
VSCode 的固定状态是内存态,不写入磁盘,也不持久化。每次重启、重载窗口(Ctrl + Shift + P → Developer: Reload Window)后,所有图钉都会消失。这不是 bug,是官方明确的设计决策——没有配置项能开启“记住固定状态”。
如果你需要某个文件每次启动都打开并固定,唯一可行路径是:
- 把文件加入工作区的
"folders"配置(仅限文件夹) - 配合
"workbench.startupEditor": "none"和任务脚本预加载,太重,不推荐 - 更实际的做法:接受手动 Pin,或用编辑器组分流(如左侧放常用文件,右侧放临时浏览),每组独立管理固定状态
别指望“永久固定”,VSCode 没这机制;重点是理解预览/常驻/固定三层生命周期,以及哪些操作真正影响哪一层。











