sublime text不存在真正意义上的“一键清理”功能,所谓“一键”实为需手动删除cache、index、local三目录及session.sublime_session、consolehistory.sublime-settings文件,并关闭hot_exit等设置才能彻底清理。

为什么“一键清理”根本不存在
Sublime Text 没有真正意义上的“一键清理历史或缓存”功能。菜单里的 Clear Recent 只清内存缓存,Index Rebuild 只重建当前项目索引,clear() 在控制台里只刷新视图——它们全都不碰磁盘上的持久化数据。所谓“一键”,实际是多个手动动作的组合,漏掉任一环节,重启后照样卡顿、历史照常恢复、插件继续报错。
必须删的三个核心路径:Cache、Index、Local
只删 Cache 目录等于白干。LSP 插件(如 pyright)的符号数据库在 Index,崩溃恢复快照和窗口布局在 Local,三者缺一不可:
- Windows:
%APPDATA%\Sublime Text\Cache、%LOCALAPPDATA%\Sublime Text\Cache、%LOCALAPPDATA%\Sublime Text\Local\Index - macOS:
~/Library/Application Support/Sublime Text/Cache、~/Library/Caches/Sublime Text、~/Library/Application Support/Sublime Text/Local\Index - Linux:
~/.config/sublime-text/Cache、~/.cache/sublime-text、~/.config/sublime-text/Local\Index
删之前务必确认 sublime_text.exe(Windows)、Sublime Text(macOS)或 sublime_text(Linux)进程已彻底退出,否则文件被锁,删了也立刻重建旧缓存。
历史记录清不干净?直击 Session.sublime_session 和 ConsoleHistory.sublime-settings
“文件 → 最近打开的文件”列表由 Session.sublime_session 文件里的 recent_files 字段驱动;控制台按 ↑ 键能翻出的报错和命令,则存在 ConsoleHistory.sublime-settings 里。这两个文件都必须在 Sublime 完全退出后手动处理:
-
Session.sublime_session路径与系统一致:%APPDATA%\Sublime Text\Local\Session.sublime_session(Win)、~/Library/Application Support/Sublime Text/Local/Session.sublime_session(macOS)、~/.config/sublime-text/Local/Session.sublime_session(Linux) - 用记事本、VS Code 等外部编辑器打开,搜索
"recent_files"、"recent_workspaces"、"file_history",把对应数组清空为[],确保 JSON 格式合法(逗号、括号配对) -
ConsoleHistory.sublime-settings位于Packages/User/下,直接删除该文件即可,重启后重置为空
别用 Sublime 自己打开这些文件——它会自动监听并覆盖你的修改。
防止下次又爆满:关掉源头比清理更关键
删文件只是救火,关掉会话持久化机制才能一劳永逸。在 Preferences → Settings 右侧用户设置中添加:
{
"hot_exit": false,
"remember_open_files": false,
"index_files": false
}
hot_exit 和 remember_open_files 关闭后,Session.sublime_session 将始终为空;index_files 关闭则直接禁用全文索引,避免 Index 目录再次膨胀。副作用明确:Ctrl+P 和 Ctrl+R 功能基本失效,但如果你主要靠文件树或外部终端导航,这反而是最轻量的长期方案。
真正容易被忽略的是:所有这些操作都依赖“彻底退出进程”这个前提——托盘图标还在、菜单栏没消失、任务管理器里残留 subl.exe,就别动手删文件,否则你改的只是镜像,不是真相。











