Sublime Text侧边栏隐藏.env、README.md等文件需用file_exclude_patterns,如[".env", "README.*"];搜索排除node_modules必须在Where输入框写., -/node_modules/, -/dist/,folder_exclude_patterns对全局搜索无效。

Sublime Text 不会自动读取 .gitignore,忽略特定文件必须手动配置 file_exclude_patterns;而搜索时排除 node_modules 等目录,folder_exclude_patterns 完全无效,得靠搜索面板的 Where 输入框实时写规则。
怎么让侧边栏不显示 .env、README.md 这类文件
用 file_exclude_patterns,它只匹配文件名(或路径中任意位置的片段),不关心层级:
- 填
"*.log"→ 所有.log文件都不出现在侧边栏和Ctrl+P - 填
".env"→ 精确匹配名为.env的文件(注意没通配符) - 填
"README.*"→ 匹配README.md、README.txt,但不匹配README_backup.md - 别写成
"./.env"或"/.env"—— 路径前缀会被忽略,只认 basename 或通配片段 - 这个字段对
Ctrl+Shift+F全局搜索无效,仅影响索引和 UI 显示
为什么改了 folder_exclude_patterns,Ctrl+Shift+F 还在扫 node_modules
因为 folder_exclude_patterns 和全局搜索完全无关。它只在项目加载时决定「哪些文件夹被建索引」,而 Ctrl+Shift+F 是实时遍历磁盘路径,绕过所有索引设置。
- 真正起作用的是搜索面板顶部的
Where输入框 - 正确写法:
., -/node_modules/, -/dist/(注意:逗号后必须空格,结尾必须加/) -
-*/__pycache__/可匹配任意深度的__pycache__,但-**/node_modules无效 - 填错格式(比如漏空格、多斜杠、用反斜杠)会导致整条规则被忽略
- 这个输入框改完立刻生效,不用重启、不用重开项目
Where 输入框和下方 Exclude folders 栏的区别
这两个地方都叫“排除”,但机制完全不同,混用容易白忙活:
-
Where:支持路径前缀(如-/node_modules/),可精准控制层级,例如只排除根级build而保留src/build -
Exclude folders:只按文件夹名匹配,无视路径,填node_modules|.git|dist会干掉项目里所有叫这名字的文件夹,无论在哪层 -
Exclude folders不支持通配符,node_modules*或nodemodules都不匹配node_modules - 大小写敏感:Linux/macOS 下
Node_modules≠node_modules,后者才有效 - 如果同时用了两者,
Where优先级更高,但建议只用Where,更可控
如何同步 .gitignore 里的规则到 Sublime
没有自动同步,只能手动摘关键项。重点抄这些高频模式:
- 文件类:把
*.log、*.swp、.DS_Store、.env加进file_exclude_patterns - 文件夹类:把
node_modules、dist、build、.git加进folder_exclude_patterns - 别抄
!src/main.js这类取反规则——Sublime 不支持! - 别抄
**/temp/—— Sublime 不识别双星号,用-*/temp/替代(但效果不等价) - 改完用户设置后必须重启 Sublime,否则侧边栏不会刷新;项目设置则需关闭再重开该文件夹
最麻烦的其实是软链接目录:如果 node_modules 是符号链接,folder_exclude_patterns 对它不生效,只能靠 Where 排除路径或换用 file_exclude_patterns 配合关键字绕过。

















