不能。ctrl+p不支持通配符语法,*.ts会被当作字面量匹配文件名,而非后缀筛选;它仅基于文件名字符顺序和结构进行模糊匹配。

Ctrl+P 里输 *.ts 能直接匹配 TypeScript 文件吗?
不能。Ctrl+P(Go to Anything)不支持通配符语法,*.ts 会被当作字面量去匹配文件名,比如真有个叫 *.ts 的文件才会出现——这显然不是你想要的。
它只做路径片段的模糊匹配,靠的是文件名中实际存在的字符顺序和结构。所以想快速打开所有 .ts 文件,得换思路:
- 输入常见前缀或中间名,比如
user、api、service,再从结果里挑带.ts后缀的 - 用驼峰拆解:
USService可能命中UserSearchService.ts - 加斜杠缩小范围:
src/api/回车后,再按 Ctrl+P 输入fetch,优先筛出该目录下的fetch*.ts
怎么让侧边栏只显示 .js 和 .ts,隐藏其他文件?
侧边栏没有“只显示”逻辑,只有“排除”逻辑。你只能通过 file_exclude_patterns 列出要隐藏的后缀,而不是指定保留哪些。
必须在项目配置(.sublime-project)中设置,不能写在用户全局设置里:
{
"folders": [
{
"path": ".",
"file_exclude_patterns": ["*.log", "*.tmp", "*.md", "*.txt", "*.json", "*.yml", "*.xml"]
}
]
}
注意:
-
file_exclude_patterns只匹配**文件名(含后缀)**,不支持路径,也不支持正则;*.log有效,log会误杀blog.md - 改完必须右键侧边栏 → Refresh Folder,否则不生效
- 这个设置不影响 Ctrl+Shift+F 搜索范围——被隐藏的
.log文件仍会被搜到内容
搜索时跳过 .min.js 和 .map 这类编译产物?
这是两个不同场景,别混用:
- 想在 Ctrl+Shift+F(Find in Files) 中跳过它们:在搜索面板的
Where输入框里填-*.min.js,-*.map(逗号分隔,减号开头表示排除) - 想让它们彻底不出现在侧边栏:把
"*.min.js", "*.map"加进项目配置的file_exclude_patterns - 如果它们藏在
dist/或build/目录里,更推荐用folder_exclude_patterns整个文件夹排除,比逐个后缀更干净
错误示范:-dist/*.min.js —— Where 框不支持路径前缀,只认后缀通配符。
为什么我输 env 找不到 .env 文件?
因为点开头的文件(如 .env、.gitignore)默认被 Sublime 排除索引,即使没写任何 file_exclude_patterns。
解决方法只有两个:
- 在项目配置的
folders下加"file_exclude_patterns": []清空默认排除(但会暴露所有隐藏文件) - 或者显式移除点文件限制:
"file_exclude_patterns": [".DS_Store", ".gitignore"],但把".env"剔除出列表
注意:show_hidden_files 在 ST3 完全无效;ST4 需 build 4126+ 且必须放在 settings 顶层,不能塞进 folders 里。
真正容易被忽略的是:Ctrl+P 的匹配依赖索引,而点文件默认不进索引——这不是 UI 显示问题,是根本没被扫描到。











