ctrl+shift+n(windows/linux)或cmd+shift+n(macos)是新建独立进程窗口,非项目切换;它实现扩展、终端、调试器完全隔离,适合并行开发。

Ctrl+Shift+N不是“切换”,是开新进程
很多人以为按 Ctrl+Shift+N 是在“切换项目”,其实它创建的是全新 VSCode 进程:扩展、终端、调试器、语言服务全部隔离。这不是切换,是并行——适合同时跑前端 dev server 和后端 API,互不干扰。
- Windows/Linux 必用
Ctrl+Shift+N;macOS 要注意 Dock 图标右键选 New Window,直接点击图标默认复用已有窗口 - 命令行更可靠:
code --new-window /path/to/project-b,避免被输入法或系统快捷键劫持 - 误用
File → Open Folder…会清空当前上下文(语言服务重载、终端关闭、断点丢失),本质是重启,不是切换
.code-workspace 文件才是真正的“项目快照”
多根工作区不是“多个文件夹堆一起”,而是通过 my-app.code-workspace 文件固化路径和配置。它不存代码,只存 JSON 结构,可提交 Git,但路径必须用相对路径(如 ./client),否则换机器就失效。
- 资源管理器顶部显示工作区文件名、左下角状态栏出现
[Workspace]才算生效;只显示文件夹名说明仍是单文件夹模式 -
folders数组里每个path都是独立根,但所有根共享同一份settings.json,无法为./backend单独设editor.tabSize - 切换工作区别用
Open Folder,要用Workspaces: Open Workspace from File并选“重用当前窗口”,才能保留已打开的编辑器标签和终端面板
Project Manager 插件不是“锦上添花”,是超过10个项目后的刚需
原生 Workspaces: Open Recent 列表模糊搜索够用,但项目一多就难定位。Project Manager 的核心价值不在“保存”,而在“分类+命名+固定”。它不自动扫描硬盘,必须手动执行 Project Manager: Save Project 才入库。
- 项目名要带语义:
client-x-admin-fe比admin更防冲突,也方便命令面板里输缩写快速过滤 - 默认行为是新开窗口,可在插件设置里改成
openInCurrentWindow,避免窗口泛滥 - 生成的
projects.json存在用户数据目录,跨设备同步需手动备份——它不连云,也不自动同步
快捷键冲突比功能缺失更常导致“切换失败”
90% 的“快捷键没反应”不是 VSCode 问题,而是被系统级输入法、远程桌面工具或安全软件拦截。比如 macOS 的拼音输入法常吃掉 Cmd+\,Windows 的某些杀毒软件会劫持 Ctrl+Shift+N。
- 验证方式:打开 VSCode,按
Ctrl+Shift+P输入Developer: Toggle Developer Tools,在 Console 里执行document.addEventListener('keydown', e => console.log(e.code)),再按快捷键看是否触发 - 分屏快捷键
Ctrl+\和终端拆分Ctrl+Shift+5容易混淆:前者垂直分编辑器组,后者水平分终端面板;拖 Tab 到边缘 20px 内才触发分栏,拖太远只会新建 Tab - 切换编辑器组焦点用
Ctrl+1/Ctrl+2,不是Ctrl+Tab——后者只在当前组内切 Tab











