Sublime全局搜索需在项目模式下通过Ctrl+Shift+F打开,Where路径必须正确填写(如.搜整个项目、src/递归搜索),启用Whole Word或正则可精准匹配,替换后须手动Save All。

Ctrl+Shift+F 打不开或搜不到内容?先看项目模式和 Where 路径
Sublime 的全局搜索只在「项目模式」下生效,左下角状态栏必须显示类似 ~/my-project/ 的路径,否则面板灰显或仅搜已打开的标签页。单文件打开、用 Add Folder to Project 添加子目录、或插件劫持快捷键,都会导致失效。
Where 输入框不是可选项,而是范围控制器:留空 ≠ 搜整个项目,它等价于只搜当前已打开的文件;填错一个字符(比如写成 ./src 或 src\)就可能漏掉全部目标文件。
- 搜整个项目:必须填
.(单个英文点),不是./、./.或空 - 只搜
src/下所有文件(含子目录):填src/,不加**也能递归 - 排除干扰目录:写成
., -node_modules/, -dist/(逗号分隔,斜杠统一用/) - 限定文件类型:如
src/**/*.ts可用,但*.(ts|tsx)不支持
搜到一堆无关结果?关掉子串匹配,用 Whole Word 或正则
默认搜索是纯子串匹配,搜 fetch 会命中 refetch、isFetching、甚至注释里的字符串。这不是 bug,是设计——Sublime 是文本引擎,不解析语法。
- 点右上角
W(Whole Word)按钮:让fetch只匹配独立单词,仍能匹配fetch()和fetch; - 要更严格?启用正则(点
.*图标),查找框填\bfetch\b - 搜函数定义:JS 写
^\s*function\s+render\b,Python 写^\s*def\s+render\b,Where 填*.py - 中文或 Unicode 字符前,确认右下角编码是
UTF-8,否则正则可能错位
搜索结果没上下文?确认用了 Find in Files,不是普通查找
只有通过 Ctrl+Shift+F(Windows/Linux)或 Cmd+Shift+F(macOS)打开的「Find in Files」面板,才会在每个匹配项后附带前后几行代码。普通 Ctrl+F 查找只作用于当前文件,不显示上下文。
默认上下文行数是 2 行,如需调整,可在用户设置中添加:"find_results_file_context_lines": 3。但注意:这个设置只影响结果面板的显示密度,不影响匹配逻辑。
替换完没保存?这不是 Bug,是 Sublime 的内存操作机制
点击 Replace All in Files 后,所有修改都存在内存里,文件不会被标记为“已修改”,也不会自动保存。关掉未保存的标签页,改动直接丢弃,且无任何提示。
- 必须手动执行
File → Save All,或快捷键:Ctrl+K松开 → 再按Ctrl+B(macOS 是Cmd+K→Cmd+B) -
Ctrl+S只保存当前激活标签页,对批量替换无效 - 高风险操作前务必
git stash或备份,替换后用git diff确认范围
最容易被忽略的是:Where 路径写错 + 忘 Save All,这两步出问题,90% 的批量操作等于白干。


















