重新打开VSCode而不加载上次的工作区或文件

14

我希望能将VSCode设置为干净启动,不要打开上一个工作区或文件。

我将其用作unity3d调试器,它总是打开以前的工作区(没有保存的工作区),这很让人烦恼。

先感谢您!


"window.restoreWindows": "none",在您的设置中将始终以空工作区打开。 - Mark
谢谢@Mark!我尝试了,但没有影响,我启动了vscode,得到了最后的工作区/打开的文件。 - ghiboz
我不知道为什么,但我不得不重新启动几次vscode才能生效 - 我想人们可能遇到了一些问题 - 但现在它每次都可以正常工作。[实际上,最后一次似乎它能够正常工作时,我自己删除并输入了“none”,然后关闭了设置文件,再关闭了vscode]。所以它看起来有点不稳定,但现在对我来说运行良好。只需尝试重新启动几次即可。 - Mark
3个回答

15

除了我之前的评论,还请参见打开新窗口,如果您偏好使用命令行方式打开,今天发布了v1.22版本。

控制是否在启动第二个没有参数的实例时打开一个新的空白窗口,或者最后一个正在运行的实例应该获得焦点。 // - on:打开一个新的空白窗口 // - off:最后一个活动运行的实例将获得焦点 // 请注意,仍然可能会有忽略此设置的情况(例如,使用-new-window或-reuse-window命令行选项时)。

  "window.openWithoutArgumentsInNewWindow": "on"

但是环境设置

"window.restoreWindows": "none"

应该也适用于其他方式打开(但似乎需要重启几次 - 或许在1.22版本中已经修复了?)。


确切地说,@Mark,这种情况发生在打开了两个窗口的情况下,一个窗口显示最新的工作区,另一个窗口显示新的工作区。 - ghiboz
@ghiboz,这有帮助到你吗? - v.karbovnichy
这两个设置都加上后,我的问题得到了解决! - banjeremy

8
根据 VSCode 命令行文档,您可以使用 -n--new-window 标志打开新会话而不加载旧文件。

我刚刚检查了一下,它是有效的。

在我的电脑上,运行 VSCode 的完整命令是:

"C:\Program Files (x86)\Microsoft VS Code\Code.exe" -n

或者只是
code -n

提示: 你可以更改VSCode的快捷方式,包括-n标志,这样它将始终打开新会话。


谢谢,这个功能不需要内部设置吗? - ghiboz
1
不是的,但这可能会对您有所帮助:工作区特定文件位于根目录下的 .vscode 文件夹中。例如,Task Runner 的 tasks.json 和调试器的 launch.json。也许您可以在开始调试之前将它们删除。 - v.karbovnichy

2

其他解决方案对我都不起作用。

最近我遇到了一个问题,我试图在15000个文件中进行查找和替换,但是vscode在尝试保存所有这些文件时崩溃了。我关闭了窗口并重新打开,但它仍然试图重新打开那15000个文件,并且会再次崩溃。

我通过删除相应的工作区文件夹(按文件夹名称搜索)来解决了这个问题

/Users/{username}/Library/Application Support/Code/User/workspaceStorage

然后当您重新打开该文件夹时,没有任何文件被保存或打开。


我曾经遇到过类似的问题,但仅仅删除工作区文件夹并没有起到帮助作用。在VSCode AppData文件夹中有一个名为“/Code/Backup”的文件夹,它保存了出现故障的工作区备份以及34004(!)个在该工作区中打开的文件的副本。删除该工作区的备份文件夹,并从备份文件“workspaces.json”中的“emptyWorkspaceInfos”部分中删除该工作区,这是解决问题的方法。 - Ethuil UI

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接