如何让VS Code重启后将窗口恢复至对应虚拟桌面(macOS 11.6)
解决VS Code在macOS 11.6重启后窗口集中到单个虚拟桌面的问题
快速临时修复
- 关闭VS Code前,把每个窗口拖回对应的虚拟桌面,然后用
Cmd+Q彻底退出(别点窗口右上角的叉号,那只是关窗口,进程还在后台),再重启VS Code,这样它能记住每个窗口的桌面位置。 - 打开VS Code设置(
Cmd+,),搜索window.restoreWindows,把选项改成all——如果之前习惯用叉号关窗口,这个设置能让VS Code重启时恢复所有窗口。
顽固情况的深度修复
删除VS Code的窗口状态缓存文件:
- 用
Cmd+Q完全退出VS Code - 打开访达,按
Cmd+Shift+G,输入~/Library/Application Support/Code并回车 - 删除
CachedData、CachedExtensions文件夹,还有windowState.json文件 - 重启VS Code,重新把窗口拖到对应桌面后正常退出,下次重启就会记住位置了
- 用
检查macOS系统设置:打开「系统偏好设置」→「调度中心」,取消勾选「当切换到应用程序时,切换到打开该应用程序的桌面」。这个系统设置会强制把应用的所有窗口集中到当前桌面,是常见诱因。
补充说明
Sublime Text默认会更可靠地保存窗口的虚拟桌面位置,而VS Code在旧版macOS(比如11.6)上偶尔会出现缓存异常,上面的方法基本能解决问题。
内容的提问来源于stack exchange,提问作者Ayhan Kesicioglu
相关产品推荐
相关产品推荐

