Sublime Text 默认不索引隐藏目录,临时搜索可于“Where”框输入“.git/”等路径;永久启用需在用户设置中设"index_files": true和"index_exclude_patterns": [],注意二者与folder_exclude_patterns互不影响。
Sublime Text 默认不会在搜索中包含隐藏目录(如 .git、.vscode 或以点开头的系统目录),但你可以通过两种互不冲突的方式“让它们被搜到”:一种是临时放开搜索范围(适合偶发调试),另一种是永久解除索引屏蔽(需谨慎)。关键在于区分「侧边栏是否显示」和「搜索是否索引」——它们由不同配置控制。
这是最安全、最常用的方法。它不修改任何设置,只影响当前一次搜索,适合你突然想查 .git/config 里某段配置,或确认 .prettierrc 是否被正确读取。
Ctrl+Shift+F(Windows/Linux)或 Cmd+Shift+F(macOS)打开全局搜索面板Where 输入框中,**显式写出隐藏目录的相对路径**,例如:., .git/, .prettier/
. 表示当前项目根目录;.git/ 前**不能加短横线 -**(那是排除语法);斜杠 / 推荐加上,避免匹配到同名文件ls -la 确认)、以及 Sublime 是否已加载该项目(非单文件打开)如果你经常要搜索 .env、.eslintrc.js、.github/workflows 这类配置,又不想每次手动输 Where,可以关闭 Sublime 的默认隐藏保护。但它会影响所有搜索功能(包括 Ctrl+P),且可能拖慢大项目响应速度。
Preferences → Settings,在右侧用户设置中添加:"index_files": true,
"index_exclude_patterns": []
index_files: true 是前提(默认就是 true,但某些旧版或插件会覆盖它)index_exclude_patterns: [] 清空默认排除列表(Sublime 默认值含 ".*",即所有点开头的文件/目录)folder_exclude_patterns 和 file_exclude_patterns **不影响索引**,只控制侧边栏显示和部分 UI 过滤,所以改这两个没用Project → Refresh Folders 生效folder_exclude_patterns 不起作用?很多用户误以为把 ".git" 从 folder_exclude_patterns 列表里删掉,就能搜到它——这是常见误解。这个设置只决定「侧边栏是否显示」,而搜索索引走的是另一套机制(index_exclude_patterns)。
"folder_exclude_patterns": [".git", "node_modules"],→ 侧边栏看不到
"index_exclude_patterns": []
.git,但 Find in Files 和 Ctrl+P 仍能搜到它folder_exclude_patterns 里的 .git 却没动 index_exclude_patterns,侧边栏能看到 .git,但搜索仍找不到——因为索引层还是屏蔽着
户注意:Cmd+Shift+. 只切换侧边栏的「系统级隐藏文件」(如 .DS_Store),对 Sublime 自己的索引规则无效真正需要搜隐藏目录时,优先用 Where 框临时加路径;只有当高频、跨项目使用才考虑改 index_exclude_patterns。后者容易被忽略的点是:它不继承项目级配置,必须写在用户设置里,且一旦清空,连 .sublime-project 文件本身也会出现在 Ctrl+P 结果中。