Sublime全局搜索必须用Ctrl+Shift+F(Win/Linux)或Cmd+Shift+F(macOS)调出find_in_files面板,项目未加载、Where填错、正则未启用、替换后未Save All均会导致搜不到或修改丢失;Ctrl+Shift+F灰显说明未通过File→Open Folder加载项目目录,Where必须填“.”才搜全项目,排除目录用“., -node_modules/, -dist/”,正则需点亮.*图标,Replace All后务必手动Save All。

Sublime 的全局搜索不是 Ctrl+H 点一下就跨文件生效的,必须用 Ctrl+Shift+F(Windows/Linux)或 Cmd+Shift+F(macOS)调出 find_in_files 面板,且项目未加载、Where 填错、正则没开、替换后不保存,都会导致“搜不到”或“改了但没存”。
Ctrl+Shift+F 灰显或没反应?先看项目有没有真正加载
它只认通过 File → Open Folder… 加载的目录,不支持单文件上下文。左下角状态栏没显示类似 ~/my-project/ 的路径?那面板必然灰显或只扫当前已打开的标签页。
- 双击打开一个
.js文件就按快捷键 → 无效 - 用
Project → Add Folder to Project…叠加路径 → 可能范围错乱、结果重复 - Mac 用户系统级
Cmd+Shift+F(Spotlight)冲突 → 去「系统设置 → 键盘 → 快捷键 → Spotlight」关掉 - 插件劫持快捷键 → 打开
Preferences → Key Bindings – User,删掉冲突的ctrl+shift+f绑定
Where 输入框填什么才真正搜全项目?别信“留空=全部”
Where 是 Shell 风格路径过滤器,不是补全框,也不是正则输入区。留空 ≠ 全项目,而是退化为只扫已打开标签页;填错一个字符,90% 的文件就漏掉了。
- 搜整个项目:必须填
.(单个英文点),不是./,也不是空 - 只搜
src/下所有文件(含子目录):填src/,结尾带正斜杠,自动递归 - 排除
node_modules和dist:写成., -node_modules/, -dist/(逗号分隔,统一用/) - 限定类型且递归:如
src/**/*.ts(支持**,但不支持*.(ts|tsx)) - Windows 上也必须用正斜杠
/;路径区分大小写:./SRC和./src是两个目录
搜函数或 API 怎么避免误中?Whole Word 和正则得配合用
Sublime 是纯文本引擎,不解析语法。搜 fetch 会命中注释、字符串、refetch、变量名 isFetching —— 单靠关键词根本不可控。
- 先点右上角
W(Whole Word)按钮 →fetch不再匹配refetch,但仍能匹配fetch() - 要更严格?启用
.*(正则模式),写成\bfetch\b - 定位 JS 函数定义:
^\s*function\s+render\b或\bconst\s+render\s*=\s*function,括号、点号记得转义:console\.log$$ - Python 函数:
^\s*def\s+render\b,Where填*.py - 中文或 Unicode 搜索前,确认右下角编码是
UTF-8,否则正则可能错位
Replace All in Files 改完内容丢了?这不是 Bug,是设计如此
替换操作把修改存在内存里,不触发文件修改标记(右上角不显示 *),也不自动保存——切走焦点、关掉面板、甚至只是切换标签页,改动就清空,且无任何提示。
- 必须手动执行
File → Save All,或快捷键:Ctrl+K松开 → 再按Ctrl+B(macOS 是Cmd+K→Cmd+B) -
Ctrl+S只保存当前激活标签页,对批量替换完全无效 - 替换前务必先点
Find All(或回车),让结果完整展开在底部面板;否则Replace All in Files可能只作用于当前可见的几条 - 高风险操作前务必
git commit,Replace All没撤销机制
最常被跳过的动作是:没等右下角 Indexing… 消失就搜,或 Where 里写了 src/* 这种非标准写法——前者搜不到新文件,后者直接过滤掉整个 src 子目录。

















