能,但仅限当前进程未重启时;它基于单层栈机制,每次关闭只记一个标签页,连续按可逐个回溯,但中间不能有新关闭操作,且不恢复未保存的临时文件。

Ctrl+Shift+T 真的能恢复刚关掉的标签页吗?
能,但只在当前 Sublime Text 进程未重启的前提下有效。它不是“历史记录”,而是一个单层栈:每次关闭一个标签页,reopen_last_closed_file 命令就只记住那一个;再关一个,前一个就被覆盖。连续按 Ctrl+Shift+T(Windows/Linux)或 Cmd+Shift+T(macOS)可以逐个向前回溯,但前提是中间没执行新的关闭操作——这点和浏览器行为一致,也和 VSCode 的 Reopen Closed Editor 逻辑相同。
- 恢复的是完整状态:光标位置、滚动偏移、编码格式都原样还原
- 不恢复未保存的临时文件(如
Untitled-1)——除非你开启了hot_exit且未强制杀进程 - 如果焦点不在编辑区(比如正处在命令面板或侧边栏),快捷键仍可触发,无须切回代码区
为什么有时 Ctrl+Shift+T 按了没反应?
最常见原因是快捷键被插件或自定义绑定覆盖了。Sublime 默认并未预设该组合键,必须手动添加到用户键绑定中。另外,如果你用的是预览模式(preview_on_click 开启),点击文件名产生的临时标签页被关闭后,不会进入恢复栈——它根本不算“已关闭的文件”,只是被丢弃的预览态。
- 检查键绑定:菜单 →
Preferences → Key Bindings,右侧用户文件中应有这一行:{ "keys": ["ctrl+shift+t"], "command": "reopen_last_closed_file" } - 确认没和其他插件冲突:比如某些文件管理插件会劫持
Ctrl+Shift+T做别的事 - 避免依赖预览标签:双击打开文件,确保它成为正式标签页,才具备可恢复性
重启后还能找回上次的标签页吗?
能,但靠的是会话机制,不是撤销功能。关键配置只有两个:"remember_open_files": true 和 "hot_exit": true。前者决定是否记录打开的文件列表,后者决定退出时是否保留未保存内容的状态。两者都开启,且你通过 Ctrl+Q 或窗口关闭按钮正常退出,下次启动就会自动加载全部标签页。
-
"hot_exit": false反而会导致会话丢失——这是很多人踩坑的地方,误以为关得越“干净”越好 - 会话文件存在本地:
Local/Session.sublime_session(Windows/macOS/Linux 路径略有不同),不建议手动编辑 - 如果某次异常退出(断电、杀进程),会话可能损坏,此时可尝试从
Auto Save Session.sublime_session恢复
有没有办法一次恢复多个误关的标签页?
没有原生支持。Sublime 不提供“恢复所有最近关闭”或时间轴式历史面板。你能做的只有:Ctrl+Shift+T 一次一个地按,或者换思路——用项目(.sublime-project)或工作区(.sublimeworkspace)提前固化一组文件。一旦保存过项目,哪怕全关了,Project → Open Project 就能瞬间拉回整个上下文。
- 临时补救:用
Ctrl+P打开快速跳转面板,输入文件名或路径,常能从“最近打开”里捞回刚关掉的几个 - 长期习惯:养成
Project → Save Workspace As…的动作,尤其分屏多列编辑时,工作区会记住所有组里的标签页 - 别指望“撤销关闭”变成浏览器那样——Sublime 的设计哲学是轻量+可预测,不是无限回退
hot_exit 和 remember_open_files 必须同时为 true,且必须正常退出程序,三者缺一不可。其他所有快捷键和命令,都是在这基础上的“加速器”,不是替代方案。










