Sublime Text 原生不保存查找历史,旧词残留源于会话恢复或插件(如 FindInFilesEnhanced)写入的 FindHistory.sublime-settings 等文件;清空需用外部编辑器修改对应 JSON 文件中的 "find_history": [] 和 "replace_history": [] 字段,并确保语法合法;防复发应配置 "find_history_max_items": 15 等参数限制条数。

Sublime Text 本身不保存查找历史,所谓“搜索历史”是会话残留或插件行为,不存在一键清除入口;真正要清理的,是 FindHistory.sublime-settings、Find.sublime-settings 或插件生成的配置文件。
为什么 Ctrl+F 里总出现旧词?不是历史记录,是会话/插件在“记事”
原生 Sublime 不写盘保存你输过的查找关键词。每次重启后面板本该空白——如果旧词还在,大概率是以下两种情况之一:
- 启用了
hot_exit和remember_open_files,导致查找面板状态随窗口一起被恢复(只是上次没关干净) - 装了插件(如
FindInFilesEnhanced),它自己创建了FindHistory.sublime-settings这类文件并持续写入
验证方法:关闭所有插件 → 重启 Sublime → Ctrl+F 输入词 → 关闭面板 → 再呼出。如果旧词消失,问题就出在插件上。
怎么清空已有的查找/替换历史?编辑或删配置文件
不要用 Sublime 自己打开这些文件,否则可能被锁住或覆盖。用记事本、VS Code 等外部编辑器操作:
- 定位到
%APPDATA%\Sublime Text\Packages\User\(Windows)或对应路径的Packages/User/目录 - 找这几个文件:
Find.sublime-settings、FindHistory.sublime-settings、SearchHistory.sublime-settings - 打开
Find.sublime-settings,找到"find_history": []和"replace_history": []字段,把数组内容清空,确保写成[],不是null或直接删行 - JSON 必须合法:检查逗号、括号、引号是否配对,否则 Sublime 启动时会卡死报错
改完保存,不用重启,下次呼出查找面板历史就是空的。
怎么防止以后越积越多?设最大条数比手动清理更可靠
光清一次没用,几天后又堆满。Sublime 支持硬性截断,靠配置就能自动淘汰旧记录:
- 打开
Preferences → Settings,在右侧用户设置中添加:
{
"find_history_max_items": 15,
"replace_history_max_items": 10
}
这个配置只对新增记录生效——已有 50 条不会自动删,得配合前面清空数组的操作。设了之后,新输入的词超过上限就会踢掉最老的一条。
控制台历史和最近打开文件是另一回事,别混在一起处理
有人把 Ctrl+` 控制台里的输入历史当成查找历史,其实完全无关。它的记录存在 ConsoleHistory.sublime-settings;而“最近打开的文件”存的是 Session.sublime_session 或 recent_files 字段。三者路径不同、文件不同、用途不同。删错文件可能导致会话丢失或设置重置。

















