atom项目搜索跳过node_modules和dist需三层配置:一、settings>core>ignorednames添加node_modules、dist、build;二、勾选exclude vcs ignored paths;三、项目根目录建.atomignore写入node_modules/、dist/;改完必须重启,且file/directory pattern须留空才全量扫描。

Atom 项目搜索怎么跳过 node_modules 和 dist
Atom 默认不自动排除 node_modules、dist 这类目录,搜索结果里混进几万个小文件,不是“搜得慢”,是它真在挨个扫描。必须手动配置两层过滤,缺一不可。
-
core.ignoredNames列出要忽略的名称:在 Settings > Core > Ignored Names 里加node_modules、dist、build(注意不带斜杠,dist/反而无效) -
core.excludeVcsIgnoredPaths必须开启:确保 Settings > Core > Exclude VCS Ignored Paths 是勾选状态,否则.gitignore规则完全不生效 - 改完必须重启 Atom,热重载不读新配置
为什么 .gitignore 有时不起作用
Atom 只在项目根目录存在 .git 文件夹且 excludeVcsIgnoredPaths: true 开启时,才读取 .gitignore。没 Git 仓库?那 .gitignore 就是纯文本,毫无影响。
- 常见陷阱:项目用 Mercurial 或纯手工管理,
.gitignore写得再全也没用 - 解决方案:直接建
.atomignore放项目根目录,内容写node_modules/**、dist/**——这个文件无需重启,Atom 启动时自动加载 -
.atomignore语法和.gitignore一致,支持**递归匹配,比ignoredNames更精准
File/directory pattern 输入框填什么才真正生效
这个输入框不是“可选过滤”,而是“强制白名单”。留空 = 全项目扫描;填了内容 = 只扫匹配的路径,其他一律屏蔽。
- 想搜整个项目:清空
File/directory pattern,别留空格,也别填*—— 填了反而只搜当前目录下名字含*的文件 - 只想搜
src下的 JS:填src/**/*.js(原生支持**,但不支持@(js|ts)语法) - 误填
./src≠ 搜src目录:./前缀会让 Atom 当作“仅本层”,不会进src/utils - 批量替换前务必确认右上角没勾
Only in open files,否则替换范围被锁死
大体积文件夹导致卡顿,光靠 ignore 不够
忽略只是让搜索不扫它,但只要文件夹被 Atom 的 tree-view 加载,就仍会触发图标渲染、Git 状态轮询、文件监听等后台行为——尤其 file-icons 插件未开缓存时,遍历 node_modules 能吃掉 2GB 内存。
- 禁用非必要插件:
file-icons(必须开 Enable icon caching)、github(内置 Git 插件)、linter类插件 - tree-view 设置里关掉
Hide VCS Ignored Files(它会反复扫描.gitignore,拖慢启动) - 终极方案:在终端启动 Atom 时显式排除,如
atom --exclude=node_modules --exclude=dist /path/to/project
ignoredNames + excludeVcsIgnoredPaths + .atomignore 三层叠加,再加上插件级裁剪——少一层,node_modules 就可能在后台悄悄拖垮主线程。











