侧边栏为空主因是未加载项目目录结构,仅单文件打开时天然为空;配置生效需用项目配置而非全局,且show_hidden_files开启后file/folder_exclude_patterns才起额外过滤作用。

侧边栏文件过滤必须用项目配置(.sublime-project),全局设置容易误杀其他项目;file_exclude_patterns 和 folder_exclude_patterns 只起“额外排除”作用,不控制隐藏文件的默认行为。
为什么改了 file_exclude_patterns 侧边栏还是空?
这不是配置没生效,而是 Sublime 根本没加载目录结构:
- 用
File → Open File…打开单个文件时,侧边栏天然为空——它只在项目上下文里工作 - 路径含符号链接(symlink)时,默认不跟随,即使目标是普通目录也不会出现
- macOS/WSL2 下挂载路径(如
/mnt/c/Users/xxx、APFS 快照卷)可能被静默跳过,无报错也无内容 -
folder_exclude_patterns里写了"*"或".*",会把整个根目录过滤掉,导致侧边栏彻底空白
show_hidden_files 是显示 .git 等隐藏项的唯一开关
这个选项从 Sublime Text 4 build 4126 起才正式支持,ST3 写了也无效:
- 必须加到用户设置或项目
settings字段下,不能塞进folders里 - 启用后,
folder_exclude_patterns和file_exclude_patterns才真正开始“额外过滤” - 默认值里有
".git"、".DS_Store"等,要显示就得手动删掉对应项 - 别写
"^\."或".*"——Sublime 不支持正则,只认 glob 前缀匹配(如"*.tmp"有效,"^\."直接被忽略)
file_exclude_patterns 和 folder_exclude_patterns 的分工与坑点
二者语义明确,但常被混用:
-
folder_exclude_patterns只对目录生效:"node_modules"、"__pycache__"、".git"都得放这里 -
file_exclude_patterns只对文件生效:"*.log"、"*.pyc"、".env"才该放这里 - 数组不合并:项目配置里写了
"folder_exclude_patterns": ["node_modules"],那全局设置同名字段就完全失效 - 想“只显示
.py和.md”,只能反向排除所有其他类型,漏一个(比如"*~"或".swp"),它就可能冒出来
临时查看被过滤的文件,原生 Sublime 没有右键菜单支持
原生行为不提供 “Show Hidden Files” 功能,可行办法只有:
- 用
File → Open File…手动打开单个被过滤文件(侧边栏仍不显示) - 临时注释掉项目配置中的
file_exclude_patterns,保存后侧边栏立即刷新 - 装
SideBarEnhancements插件,部分版本支持右键“显示被排除项”,但行为依赖插件实现 - 注意:即使开了
show_hidden_files,只要folder_exclude_patterns里还留着".git",.git就依然不会出现
最常被忽略的一点:项目配置和全局配置不是叠加关系,而是覆盖关系。你改了用户设置,却在某个前端项目里看到 node_modules 还在侧边栏——大概率是因为那个项目的 .sublime-project 文件里明确定义了它。










