sublime text 的 ctrl+f 下拉列表中旧搜索词来自 find.sublime-settings 文件中的 find_history 和 replace_history 字段;清空需退出程序后删除或编辑该文件,手动清空数组内容并确保 json 合法。

Ctrl+F 下拉列表里总出现旧词?不是缓存,是配置文件在记
Sublime Text 原生不保存查找历史——你每次重启后看到的旧搜索词,一定是从某个 JSON 配置文件里读出来的。最常见来源就是 Find.sublime-settings,它硬编码了 "find_history": [] 和 "replace_history": [] 两个字段。关掉插件、重启后还存在?基本可以锁定是这个文件在起作用。
最快清空:删掉 Find.sublime-settings 文件
这是最直接、无副作用的操作方式:
- 必须先完全退出 Sublime Text(Windows 查任务管理器确认没有
subl.exe或sublime_text.exe;macOS 看菜单栏图标是否消失) - 定位到该文件:
Windows:%APPDATA%\Sublime Text\Local\Find.sublime-settings
macOS:~/Library/Application Support/Sublime Text/Local/Find.sublime-settings
Linux:~/.config/sublime-text/Local/Find.sublime-settings - 删掉它,或重命名为
Find.sublime-settings.bak备份 - 重启 Sublime,
Ctrl+F下拉列表立刻为空,且所有其他设置(正则开关、全字匹配等)不受影响
想保留自定义查找行为?编辑而非删除
如果你改过默认查找偏好(比如默认启用正则、区分大小写),这些设置也存在 Find.sublime-settings 里。删整个文件会丢掉它们——这时应该用外部编辑器(别用 Sublime 自己打开!)手动清理:
- 找到
"find_history": []和"replace_history": []这两行 - 把方括号里的内容全删掉,确保写成
"find_history": [],不是null、不是空行、更不能漏掉逗号或括号 - 顺手加上防复发配置(仅对新增生效):
"find_history_max_items": 15"replace_history_max_items": 10 - 保存前务必检查 JSON 合法性:少个
}或多加个逗号,Sublime 启动时会卡死报错
为什么没快捷键?因为 Sublime 不提供一键清除入口
菜单里没有“清除搜索历史”选项,Ctrl+Shift+P 里也搜不到对应命令。这不是遗漏,而是设计如此——历史记录被当作配置项持久化存储,不是运行时内存缓存。所以:
-
Ctrl+F按 ↑/↓ 调出的词,永远来自磁盘文件,不是当前会话临时记忆 - 所谓“快捷键清理”,本质是快速定位并处理那个 JSON 文件,而不是按某个组合键
- 真正容易被忽略的是:插件(如
FindInFilesEnhanced)可能另存一份历史到FindHistory.sublime-settings,若清完Find.sublime-settings还有残留,请检查该文件











