启用 hot_exit 和 remember_open_files 并设为 true,且避免手动执行 Close Project,Sublime Text 启动时即可自动恢复上次项目;restore_open_folders 设为 2 还可恢复文件夹结构。

如何让 Sublime Text 启动时自动恢复上次打开的项目?
Sublime Text 默认不保存项目状态,关闭后重新打开只会看到空窗口或默认工作区。要实现「启动即加载上次项目」,关键不是靠项目文件(.sublime-project),而是启用其内置的会话(session)持久化机制。
它依赖 hot_exit 和 remember_open_files 两个设置协同生效,且必须确保没有手动执行过「Project → Close Project」——否则项目上下文会被主动清空。
-
hot_exit控制退出时是否保存未关闭的标签页和窗口状态(设为true) -
remember_open_files决定重启后是否还原已打开的文件(设为true) - 项目路径本身不会被单独记忆,但只要项目是通过
Project → Open Project…加载的,且窗口内至少有一个属于该项目的文件被打开,那么该会话就会连带记录项目配置
修改用户设置文件的正确位置和内容
直接编辑 Sublime Text 的用户偏好设置即可,无需插件或外部脚本。注意:不要改默认设置(Default),只改用户设置(User)。
打开方式:Preferences → Settings – User,然后在右侧 JSON 中添加或修改以下字段:
{
"hot_exit": true,
"remember_open_files": true,
"restore_open_folders": 2
}
restore_open_folders 设为 2 表示重启时也恢复上次打开的文件夹(即侧边栏中的文件树),这对项目工作流很关键;设为 0 则只恢复文件,不恢复文件夹结构。
为什么有时设置了也不生效?常见断点排查
最常被忽略的是「项目关闭动作」本身:如果某次退出前手动点击了 Project → Close Project,Sublime 就会主动清除当前项目上下文,下次启动哪怕所有设置都对,也不会加载项目。
- 检查是否误点了
Close Project而非单纯关窗口(macOS 下 Cmd+W 关闭标签页、Cmd+Q 退出程序,Windows/Linux 类似) - 确认没有启用冲突插件,比如某些项目管理类插件(如
ProjectManager)可能覆盖原生会话行为 - 如果使用便携版 Sublime,确保数据目录(如
Data/文件夹)没被重定向或权限受限,否则Session.sublime_session文件无法写入 -
Session.sublime_session文件位于Data/Local/下,可手动查看其内容验证项目路径是否被记录(搜索"project"字段)
项目文件(.sublime-project)和会话机制的关系
.sublime-project 是静态配置文件,用于定义构建系统、文件过滤、设置覆盖等,它本身不触发自动加载。Sublime 不会在启动时扫描目录寻找它。
真正起作用的是会话机制 —— 只有当你通过 Project → Open Project… 打开一个项目后,Sublime 才会在会话中记录该项目的路径和打开的文件。所以「先手动打开一次项目」是必要前提。
如果你希望多个常用项目快速切换,可以配合 Project → Save Project As… 生成 .sublime-project 文件,再用 Project → Quick Switch Project(Cmd+Ctrl+P)唤出列表,但这和启动自动加载是两套逻辑。
真正的自动加载只依赖会话,而会话是否完整保存,取决于你每次退出的方式和设置是否匹配。别漏掉 hot_exit,也别手贱点 Close Project。










