如何防止VS Code在打开新文件时关闭此前已打开的文件(非文件夹使用场景)
解决VS Code打开新文件时自动关闭原有文件的问题
嘿,这个问题我之前帮不少开发者捋清楚过,本质就是VS Code的默认打开/恢复行为设置在起作用,分两种场景给你对应的解决方案:
场景1:同一个VS Code实例中,打开新文件时原有文件被替换
如果你的操作流程是:已经打开VS Code并加载了文件A,接着双击文件B(或右键选「Open with Code」),此时文件A直接被关闭,只显示文件B——那你需要调整文件的打开行为:
- 打开VS Code的设置界面:用快捷键
Ctrl+,(Windows/Linux)或者Cmd+,(Mac),也可以点击左下角的齿轮图标选择「Settings」。 - 在顶部搜索框输入
window.openFilesInNewWindow,找到这个设置项。 - 把它的选项改成
off:这样新文件会在当前窗口的标签页中打开,原有文件不会被关闭,会和新文件一起保留在编辑器里。
场景2:关闭VS Code后,重新打开新文件时之前的文件不再显示
如果你的情况是:打开文件A后关闭VS Code,之后打开文件B时,VS Code里只有文件B,之前的文件A完全消失——那你需要调整窗口恢复的设置:
- 同样打开VS Code设置界面。
- 在搜索框输入
window.restoreWindows,定位到该设置。 - 将它的选项设置为
all:这样每次重启VS Code(包括通过双击文件打开),都会自动恢复之前所有打开过的文件和窗口状态。
另外补充个小技巧:如果你偶尔想用新窗口打开文件,不用改设置,按住Shift键双击文件,或者右键选「Open with Code (New Window)」就行,临时生效很方便。
内容的提问来源于stack exchange,提问作者Phate01




