有效,但仅限于当前会话中关闭的标签页且未重启Sublime时可用;它按关闭顺序维护栈式记录,不保存未保存文件,重启后清空,依赖hot_exit和remember_open_files才能跨会话恢复。

Ctrl+Shift+T 在 Sublime Text 中是否有效?
有效,但仅限于当前会话中关闭的标签页,且必须在未重启 Sublime 的前提下操作。Ctrl+Shift+T(Windows/Linux)或 Cmd+Shift+T(macOS)是 Sublime 默认绑定的「重新打开最近关闭的标签页」快捷键。它不是无限回溯的历史记录,而是按关闭顺序维护的一个栈:每次执行,恢复栈顶那个标签页,并将其从栈中弹出。
常见误区是以为它能恢复昨天关掉的文件——其实只要 Sublime 进程重启过,这个栈就清空了。所以别等关机后再试,关掉标签页后立刻用。
为什么 Ctrl+Shift+T 没反应?检查这三点
快捷键失效通常不是 Bug,而是配置或状态干扰:
- 当前焦点不在编辑区域(比如光标在侧边栏、命令面板或搜索框里),
Ctrl+Shift+T不触发 - 你用的是 Sublime Text 4,但安装了第三方插件(如
Origami或SideBarEnhancements)覆盖了默认快捷键绑定,可查Preferences → Key Bindings看是否有冲突项 - 文件被关闭时处于「未保存」状态(带 * 号),Sublime 默认不会把它记入恢复栈——这是设计行为,防止误恢复脏数据
已重启 Sublime 后如何找回误关的文件?
靠 Sublime 自身已无解,但有两条现实路径:
- 检查操作系统级临时缓存:
~/.config/sublime-text-3/Local/Session.sublime_session(Linux)、%LOCALAPPDATA%\Sublime Text 3\Local\Session.sublime_session(Windows)、~/Library/Application Support/Sublime Text 3/Local/Session.sublime_session(macOS)。该文件含最近打开的文件路径和光标位置,但只在正常退出时写入;异常崩溃或强制杀进程后可能不完整 - 依赖系统级文件恢复工具(如 Windows 的「以前的版本」、macOS 的 Time Machine、Linux 的
extundelete),前提是目标文件没被新内容覆盖且磁盘未频繁写入 - 终极预防:启用
hot_exit和remember_open_files(在Preferences → Settings中设为true),这样即使异常退出,下次启动也会自动还原全部标签页和光标位置
用插件增强恢复能力:FileHistory 是最轻量的选择
FileHistory 插件不依赖 Session 文件,而是主动监听 on_close 事件并持久化记录。它比原生恢复更可靠,尤其适合多窗口、频繁重启场景。
安装后默认无快捷键,需手动添加绑定(Preferences → Key Bindings):
[
{ "keys": ["ctrl+alt+t"], "command": "file_history" }
]
注意:它记录的是「路径 + 时间戳」,不保存编辑内容;若文件已被外部程序修改或删除,打开时会提示差异。真正要防丢内容,还得靠自动保存(save_on_focus_lost)或 Git 提交习惯。
Sublime 没有真正的「撤销关闭」,只有「有限栈式重开」和「会话级还原」。关键不在找快捷键,而在理解它的恢复机制边界——特别是 hot_exit 和 remember_open_files 这两个开关,它们才是决定你能否跨重启找回标签页的底层开关。










