sublime崩溃后可恢复未保存内容,关键在于立即重启并检查恢复提示、手动解析session.sublime_session或recovery目录中的临时文件,同时避免干扰操作。

重启 Sublime 看是否自动弹出恢复提示
Sublime 崩溃或强制退出后,只要没清空配置目录、也没反复重启覆盖缓存,大概率能直接恢复——前提是 hot_exit 和 remember_open_files 保持开启(默认就是 true)。这不是玄学,是它把未保存内容暂存在内存+本地会话快照里的结果。
立即重启 Sublime,盯着启动后的几秒:如果弹出“恢复上一个会话”或“恢复未保存的文件”对话框,点“恢复”就行;如果没有弹窗,但标签页里出现多个 Untitled,说明内容已加载进内存,马上执行 File → Save As 保存。
- 别等界面完全加载完再操作,有些内容在后台加载中,稍晚几秒可能就卡住或丢失焦点
- 如果只恢复了部分文件,反复按
Ctrl+Shift+T(Windows/Linux)或Cmd+Shift+T(macOS),它会逐个还原最近关闭的标签页 - 千万别在这时打开新文件或新建项目——会干扰会话恢复逻辑,甚至覆盖缓冲区
手动打开 Session.sublime_session 提取未保存内容
这个文件是 Sublime 的核心会话快照,崩溃后往往完好无损。它用 JSON 格式记录所有打开文件的路径、光标位置,最关键的是——未保存文件的完整文本就藏在 buffers 字段的 contents 或 input 里。
先彻底关闭 Sublime(避免写入覆盖),再按系统路径找文件:
- Windows:
C:\Users\你的用户名\AppData\Roaming\Sublime Text 3\Local\Session.sublime_session - macOS:
~/Library/Application Support/Sublime Text 3/Local/Session.sublime_session - Linux:
~/.config/sublime-text-3/Local/Session.sublime_session
用 VS Code 或记事本打开,搜索你记得的函数名、注释关键词或变量名。找到匹配项后,定位到 "contents": "" 字段,复制双引号内的内容(注意 \n 是换行,\" 是引号转义,粘贴后需手动还原)。
检查 Recovery 目录里的原始临时文件
某些崩溃场景下,Sublime 会把未保存内容单独写成更“裸”的临时文件,比 Session.sublime_session 更容易读取——因为不用解析 JSON,纯文本直出。
路径和 Session 文件同级,但进 Recovery 子目录:
- Windows:
C:\Users\你的用户名\AppData\Roaming\Sublime Text 3\Local\Recovery\ - macOS:
~/Library/Application Support/Sublime Text 3/Local/Recovery/ - Linux:
~/.config/sublime-text-3/Local/Recovery/
查找以 recovery- 开头、扩展名可能是 .tmp 或无扩展名的文件。用 Sublime 自身或任意文本编辑器直接打开,内容通常是可读的源码片段。这类文件命名常带时间戳或哈希,越早创建的越可能对应你要找的内容。
为什么有些方法失效?关键干扰因素
不是所有崩溃都能恢复,失败往往不是 Sublime 不行,而是环境动作覆盖了缓存。最常见几个断点:
- 反复重启 Sublime:每次启动都会尝试重写
Session.sublime_session,旧缓冲区可能被新会话覆盖 - 手动删过
Local目录或清过 Sublime 缓存:相当于主动销毁证据 - 启用了第三方同步工具(如 OneDrive、iCloud Drive):它们可能在后台静默删除或锁定
Recovery里的临时文件 - 用管理员权限运行过 Sublime 后又切回普通用户:会话数据可能写入不同配置路径,导致找不到文件
真正有效的恢复,靠的不是技巧多高明,而是动作够快、路径够准、干扰够少。一旦发现丢失,立刻停手,别开新项目、别装插件、别清缓存——先把 Session.sublime_session 和 Recovery 备份出来再说。










