最直接有效的方式是在搜索面板where框中写排除规则,如-/node_modules/, -/dist/,支持通配符和逗号分隔,无需重启或改配置。

搜索时临时跳过 node_modules 或 dist
最直接有效的方式,就是在 Ctrl+Shift+F(Windows/Linux)或 Cmd+Shift+F(macOS)打开的搜索面板里,在 Where 输入框中写排除规则——它不改配置、不重启、不刷新索引,敲完回车立刻生效。
-
./或.表示当前项目根目录;加-/node_modules/就跳过根目录下的该文件夹(注意前后斜杠) - 想跳过所有层级的
debug目录?写-*/debug/,不是-debug/ - 多个规则用英文逗号分隔,且逗号后必须加空格:
., -/dist/, -/build/, -*.log - 错误写法:
-node_modules(会误匹配my_node_modules.js)、-/node_modules(末尾缺斜杠,语义变成排除同名文件而非文件夹)
为什么改 folder_exclude_patterns 有时没用?
因为这个配置控制的是「侧边栏显示」和「索引范围」,但 Find in Files 的实时搜索是否真跳过这些目录,取决于 Sublime 是否已完成索引——大项目可能延迟几秒,甚至需要右键项目根目录 → Refresh 才同步。
- 你改了
.sublime-project里的folder_exclude_patterns,但搜索结果里仍有.git下的文件?先检查拼写(比如写成.gir)和引号是否闭合 - 全局设置里开了
"index_files": false,那所有排除规则都失效——索引关了,Sublime 就退化为“按需读取”,Where框写的路径才真正起作用 - 某些插件(如
SideBarEnhancements)依赖完整目录结构,盲目全局隐藏可能导致右键菜单异常
想搜整个项目,但必须包含被隐藏的 logs/ 或 node_modules/
默认情况下,folder_exclude_patterns 既隐藏侧边栏,也屏蔽搜索。但 Where 框的显式路径优先级更高——只要写进去,就绕过所有排除逻辑。
- 正确写法:
logs/或./node_modules/,不是., -/dist/(那是排除,不是包含) - 混合场景:搜全部 + 特别加上
logs/?写., logs/,Sublime 会合并路径并去重 - 路径末尾加
/更安全:node_modules/只匹配文件夹;node_modules可能匹配到webpack-node_modules.config.js
Python 项目里排除 __pycache__ 和 *.pyc 的实操细节
这类缓存文件既不该出现在侧边栏,也不该污染搜索结果,但写法有讲究——folder_exclude_patterns 只接受纯文件夹名,file_exclude_patterns 才管文件通配符。
- 项目配置中应这样写:
"folder_exclude_patterns": ["__pycache__"],不能写"__pycache__/"或"/__pycache__" -
"file_exclude_patterns": ["*.pyc", "*.pyo"]才能过滤掉编译产物文件 - 如果搜索时仍看到
__pycache__/里的内容,说明你在Where框里写了具体路径(如__pycache__/),这会覆盖排除规则——这是设计使然,不是 bug
Where 框才是唯一可靠的控制开关。










