必须先打开目标文件夹再搜索,否则Where路径可能为空、为.或残留旧路径,导致搜偏;正确做法是右键侧边栏文件夹选Find in Folder,使Where自动填入绝对路径。

必须先“打开文件夹”,否则搜的不是你想要的目录
Sublime 不会自动猜你当前在看哪个文件夹——它只认 Where 输入框里写的路径。如果你没通过 File → Open Folder 把目标文件夹加到侧边栏,Where 很可能为空、为 .(项目根),甚至残留上一次的路径,结果就是搜偏了。
- 正确做法:先右键侧边栏中的目标文件夹 → 选
Find in Folder,此时Where会自动填入完整绝对路径,如/Users/me/project/src - 错误做法:直接按
Ctrl+Shift+F(Win/Linux)或Cmd+Shift+F(macOS)弹出面板,但侧边栏是空的或开着别的项目 - 多项目场景下,每次切换目标文件夹,都得重新右键 →
Find in Folder,不能依赖“上次搜过就还记得”
用逗号分隔通配符,别写 shell 式路径
想搜 src 下所有 Python 和 JS 文件?不是写 src/*.py, src/*.js,Sublime 不识别这种嵌套通配;而是写 ./src, *.py, *.js——路径和文件类型规则用逗号平级并列,全部生效。
- 支持排除:写
./src, -*.min.js, -/node_modules/,注意-/node_modules/的斜杠不能少,否则会误杀含node_modules字样的文件名(比如my_node_modules_config.js) - 大小写敏感:默认不区分,但如果勾了
Match case,*.PY就匹配不到main.py - 常见失效写法:
src/**/*.py(Sublime 不支持 glob 递归)、src\*.js(反斜杠在 macOS/Linux 无效)
搜索结果跳转失败?大概率是 file_regex 被插件覆盖了
点击 Find Results 标签页里的文件路径,光标没跳转到对应行——这不是 Sublime 本身坏了,而是某个插件(比如旧版 CTags、自定义构建系统)改了全局 file_regex,导致路径解析失败。
- 验证方法:新建空白窗口 →
File → Open Folder一个干净的小目录(如只有几个.py文件)→ 再执行Ctrl+Shift+F,看能否正常跳转 - 排查位置:
Preferences → Package Settings里逐个检查插件设置,找有没有写"file_regex"的配置 - 安全写法:不要在用户设置里全局覆盖
file_regex;如需自定义,应限定在特定build_system或插件 scope 内
多项目间快速切换搜索上下文,靠的是“关闭再开”,不是标签组管理
Sublime 没有原生的“标签组隔离”机制。所谓“在多个文件夹中搜索”,本质是手动切换当前工作上下文:关掉一个项目,再打开另一个。ProjectManager 插件只是把这步自动化了,并非魔法。
- 纯原生操作流:
右键侧边栏项目根 → Close Folder→File → Open Folder新目录 → 右键新目录 →Find in Folder - 用 ProjectManager 插件时,按
Cmd+Alt+P(macOS)呼出面板选项目,它会自动关闭当前所有标签并加载目标项目——但底层仍是“先清空,再加载” - 切记:
Go to Anything(Ctrl+P)只能在已打开的文件中模糊跳转,不能跨未打开的文件夹搜索内容
Where 框的字符串决定,而这个字符串几乎全靠你手动控制或右键触发生成;没有“智能默认”,也没有“历史记忆”。搜之前多看一眼 Where 里写的是什么,比事后翻几十个文件找漏掉的匹配要省力得多。










