清空sublime text“最近项目”需手动编辑session.sublime_session文件:先彻底关闭程序,再用外部编辑器打开该文件,将"recent_workspaces": []清空并保存,重启后菜单即为空;原生无clear recent projects命令,禁用记录需同时设置"hot_exit": false和"remember_open_files": false。

Sublime Text 的“最近项目”列表不会自动刷新或切换,它只记录你通过 Project → Open Project… 或命令行 subl --project 显式打开过的 .sublime-project 文件路径,且不响应侧边栏双击、拖入文件夹等操作。想清空或重置,必须动 Session.sublime_session 里的 recent_workspaces 字段。
怎么真正清空“最近项目”菜单项
菜单栏 Project → Recent Projects 显示的内容完全来自 Session.sublime_session 文件中的 recent_workspaces 数组,不是内存缓存,也不是插件维护的独立列表。
- 必须先彻底关闭 Sublime Text(Windows 查任务管理器里
sublime_text.exe和subl.exe,macOS 用活动监视器强制退出) - 用外部编辑器(别用 Sublime 自己打开!)打开对应路径下的
Session.sublime_session文件:
Windows:%APPDATA%\Sublime Text\Local\Session.sublime_session
macOS:~/Library/Application Support/Sublime Text/Local/Session.sublime_session
Linux:~/.config/sublime-text/Local/Session.sublime_session - 搜索
"recent_workspaces",将其值清为空数组:"recent_workspaces": [],确保 JSON 格式合法(逗号、引号、括号匹配) - 保存后重启 Sublime,菜单中“最近项目”就彻底空了
为什么 Clear Recent Projects 命令无效或不显示
Sublime Text 原生没有绑定到菜单或命令面板的 Clear Recent Projects 命令。部分版本或插件可能提供类似功能,但默认安装的 Default 包里并不存在该命令名。
-
Ctrl+Shift+P输入clear recent只能调出Clear Recent Files,它对recent_workspaces完全无感 - 菜单底部的
Clear Recent Projects选项在 ST4 中多数情况下根本不会出现——这不是 Bug,是设计上未实现 - 试图用控制台执行
sublime.run_command('clear_recent_projects')会报错Unknown command: clear_recent_projects
项目切换失败的常见原因和绕过方式
所谓“无法切换项目”,往往不是界面卡死,而是你误以为某个操作能触发项目上下文变更,其实 Sublime 并不支持运行时动态切换项目配置(比如主题、构建系统、设置)。
- 从侧边栏双击文件夹、拖入文件夹、或用
File → Open Folder…打开的只是临时工作区,不会写入recent_workspaces,也不会加载.sublime-project配置 - 已打开的项目窗口若被最小化或隐藏,再次点击 Dock / 任务栏图标只会聚焦该窗口,不会新建或切换项目
- 真正切换项目的唯一可靠方式:关闭当前项目窗口 →
Project → Open Project…→ 选另一个.sublime-project文件 - 如果只是想快速访问不同项目文件,建议用
Ctrl+P搜索(它会优先列出当前项目内最近打开的文件),而非依赖“最近项目”菜单
禁用项目历史记录的稳妥做法
如果你根本不想让 Sublime 记录任何项目路径,光清空 recent_workspaces 不够,因为下次打开项目仍会重新写入。需要配合设置关闭持久化行为。
- 打开
Preferences → Settings,在右侧用户设置中添加:"hot_exit": false,"remember_open_files": false - 这两项关闭后,Sublime 退出时不保存窗口状态、不缓存打开的文件和项目路径,
Session.sublime_session里recent_workspaces将长期保持为空数组 - 注意:
remember_open_files: false会影响Ctrl+Shift+T恢复关闭标签页的功能——它依赖该字段记录,关掉后此快捷键将失效
真正麻烦的不是删不掉,而是删完又回来——只要没关 hot_exit 或没登出同步账号,下次启动时云端或本地会话文件就可能把 recent_workspaces 再填满。动手前先确认 subl --sync-logout 是否执行过,否则清理只是暂时的。











