根本原因是hot_exit和remember_open_files未同时启用:hot_exit:true负责退出时写入Session.sublime_session,remember_open_files:true负责启动时读取还原,缺一不可。

Sublime Text 启动时总开空白窗口,不是上次项目?
根本原因是 hot_exit 和 remember_open_files 没同时启用。只开一个等于白设——hot_exit: true 负责退出时把文件夹、未保存内容、光标位置写进 Session.sublime_session;remember_open_files: true 负责启动时读这个文件并还原。缺一不可。
常见错误操作:
- 只改了用户设置右边的
remember_open_files,忘了配hot_exit - 改的是左侧默认配置(只读),实际生效的是右侧用户配置
- 用
subl --project xxx.sublime-project或subl .启动,会跳过会话恢复逻辑,哪怕两个参数都开着也无效 - 关 Sublime 前开了新窗口但没激活目标项目,导致会话里没存对的项目路径
想每次固定打开某个文件夹,别靠“恢复”?
依赖会话机制不稳定,尤其在远程 SSH、CI 环境或多人共用机器时。更可靠的方式是绕过会话,直接命令行硬指定路径。
Windows 快捷方式目标字段填:"C:\Program Files\Sublime Text\sublime_text.exe" "D:\my-project"(引号不能少,路径含空格必须包住)
macOS 终端执行:open -a "Sublime Text" "/Users/me/my-project"
注意:
- 别用
subl .当默认——它只是临时加当前目录到项目,关掉就丢,不持久 - 如果项目路径带中文或特殊符号,确保终端编码和 Sublime 的文件系统编码一致,否则可能报错找不到路径
- Linux 下用
subl命令需确认Exec=行末尾有%F,否则双击文件夹不生效
为什么保存了 .sublime-project 却没自动加载?
Sublime 不会自动把拖进去的文件夹当“项目”,真正起作用的是显式保存的 .sublime-project 文件,且必须满足两个条件才会被 restore_open_projects 加载:
- 关闭前该
.sublime-project处于激活状态(窗口标题栏显示项目名,Project 菜单里对应项带对勾) -
restore_open_projects为true(默认就是 true,别手动设成null或false) - 项目文件本身得是合法 JSON,且顶层有
"folders": [{ "path": "..." }]字段
容易忽略的一点:如果你在用户设置里写了 "project": null,Sublime 会主动忽略所有项目文件,哪怕路径正确、激活状态也对,照样不加载。
双击 .sublime-project 文件没反应?
这不是 Sublime 的问题,是操作系统没把它关联到 Sublime。Windows/macOS/Linux 都需要单独绑定 .sublime-project 这个扩展名。
Windows:进「设置 → 默认应用 → 按文件类型指定默认应用」,找到 .sublime-project,点击右侧图标选 sublime_text.exe(不是快捷方式)
macOS:右键任一 .sublime-project 文件 →「显示简介」→「打开方式」选 Sublime Text →「全部更改」
关键细节:
- 某些旧版 Sublime 安装包不会自动注册该后缀,必须手动绑定一次
- 如果绑定后仍双击无反应,检查文件是否损坏:用 Sublime 手动打开它,看右下角是否显示 “JSON” 语法,不是则说明格式非法
- 别把项目文件放在 iCloud Drive 或 OneDrive 同步目录里——文件锁或延迟同步会导致 Sublime 读取失败,表现为“打开空白”或“报错找不到路径”











