我对此问题的问题恰恰相反:Visual Studio Code always reopens previous file or folder
VSCode似乎永远不会记住我之前打开的文件,并始终以空窗口开头。我检查过,如果我的快捷方式偶然出现参数“-n”(这会强制这种行为),但它不在那里。
有没有办法强制VSCode记住打开的文件和文件夹?
答案 0 :(得分:38)
<击> 看来,如果你还打开了一个文件夹,VsCode只会记住打开的文件。 没关系,如果这只是你驱动器某处的虚拟文件夹 - 如果你打开这个文件夹之外的文件,它们也会被记住。
我不确定这是设计还是错误。
修改:这是一个错误并已跟踪here
击><击> 撞击>
编辑2: 总结下面的答案,现在有两个关于这个问题的设置:
已经实现了Hot exit,它可以恢复在VS代码关闭之前未保存的文件。 要更改此设置,请使用此设置:
files.hotExit: "onExit"
要重新打开所有文件,请使用以下设置:
window.restoreWindows: "all"
但仍有未解决的问题here。
...
答案 1 :(得分:10)
您可以尝试设置选项:
"window.reopenFolders": "all"
这应该重新打开关闭编辑器时打开的所有内容,但我还没有对其进行测试。我通常更喜欢没有重新打开,所以我使用none
。默认值为one
。
答案 2 :(得分:6)
转到:
打开文件 - &gt;偏好 - &gt;设置并添加"window.restoreWindows": "all"
到您的settings.json文件。
请记住在前面的语句中添加逗号。
这将重新打开您在上次会话结束时打开的所有窗口。
答案 3 :(得分:4)
他们在2016年11月添加了this functionality。
以下是更改热退出行为的设置:
<ReactRouter.Route path="*" component={Handle404} />
答案 4 :(得分:3)
我尝试了window.reopenFolders选项,发现如果从桌面图标启动VSCode,文件夹和文件将重新打开,但如果我点击资源管理器中的文件并使用VSCode要打开(并且VSCode当前没有运行),以前的文件夹和文件都不会打开。我不确定是否有解决方法。
答案 5 :(得分:2)
所以我也需要功能,目前只是
"window.restoreWindows": "none",
在设置中。
控制重启后窗口的重新打开方式。选择“无”始终以空白工作区开头,选择“一个”重新打开您处理的最后一个窗口,选择“文件夹”重新打开所有打开文件夹的窗口,或者“全部”重新打开上一个会话的所有窗口。
答案 6 :(得分:0)
如果使用VSCode 1.42(2020年第一季度)意外关闭(例如,操作系统重新启动以进行操作系统更新,或强制终止VSCode的任何操作),这也将起作用。
请参见vscode/issue 12058(“定期保存UI状态以防止关闭而丢失”)和PR 87158和commit 54ab792,其中包括注释:
// In some environments we do not get enough time to persist state on shutdown.
// In other cases, VSCode might crash, so we periodically save state to reduce
// the chance of loosing any state.
// The window loosing focus is a good indication that the user has stopped working
// in that window so we pick that at a time to collect state.
推送了一个更改(#87158),该更改将:
- 每60秒保存一次状态
- 当窗口失去焦点时保存状态
真正的解决方法是Electron提供API来检测Windows上的系统关闭情况(例如electron/electron#15620的建议)。
当VSCode获得焦点并重新启动Windows时,这些更改可能无济于事,尽管在我的测试中,当弹出任何非vscode UI时(例如,来自Windows的一些提示来应用更新),它都可以工作。
我认为这是我们目前可以做的最好的事情。