必须用 Add Project Folder 打开项目,否则 .editorconfig 不生效;文件须置于项目根目录、命名严格为 .editorconfig、首行推荐 root = true;还需关闭 Atom 原生 Tab Type 干扰,并与 prettier-atom 合理分工。

装了 editorconfig 插件却没效果,不是插件坏了,而是 Atom 根本没识别到你的项目配置——它只认“用 Add Project Folder 打开的目录”,单文件打开或路径不对,.editorconfig 就是废纸一张。
必须用 Add Project Folder 打开项目,否则配置不加载
Atom 不像 VS Code 那样自动向上查找 .editorconfig,它只在你通过 File > Add Project Folder 显式添加的根目录下读取该文件。常见错误包括:
- 双击某个
.js文件直接打开——此时 Atom 把单文件当项目,无视上层.editorconfig - 项目嵌套太深(比如从
/src/components添加文件夹),导致 Atom 把子目录当根,跳过真正的项目根目录 - 状态栏右下角没有
EditorConfig字样(旁边跟着LF或CRLF)——这是最直观的生效标志
.editorconfig 文件位置和命名必须严格匹配
文件必须满足三个硬性条件,缺一不可:
- 放在你用
Add Project Folder选中的那个目录下(即 Atom 状态栏显示的“Project Root”) - 文件名是
.editorconfig(开头带点,无任何扩展名,不是.editorconfig.txt或editorconfig) - 内容第一行推荐写
root = true,防止 Atom 继续向上遍历父目录找其他配置,避免规则被意外覆盖
缩进失效?先关掉 Atom 的 Tab Type 设置
即使 .editorconfig 里写了 indent_style = space,Atom 仍可能按自己喜好插 Tab——因为它的原生设置优先级高于 EditorConfig。解决方法:
- 打开
Settings > Editor - 把
Tab Type改成auto(不是soft或hard) - 检查
Soft Tabs是否开启(对应indent_style = space),关闭则对应tab - 运行命令
EditorConfig: Show State(Ctrl+Shift+P 输入),确认输出里indent_style和indent_size真的被读取,而不是显示undefined
和 prettier-atom 冲突时,分工要清晰
两者都改缩进、空格、换行,保存时会互相覆盖。别禁用谁,而是明确边界:
-
editorconfig只管编辑时行为:按 Tab 键插几个空格、保存时删尾空格、末尾加空行——这些是编辑器底层该兜住的事 -
prettier-atom只管代码结构重排:JSX 拆行、对象属性排序、三元运算符换行等——这类逻辑性格式化交给 Prettier - 在
prettier-atom设置里关掉Ensure Single Quote、Tab Width、Insert Final Newline这类和.editorconfig重复的选项 - HTML/JSX 文件缩进错乱?大概率是
.editorconfig里漏了[*.html]或[*.jsx]段,没显式声明indent_style和indent_size
最容易被忽略的其实是项目打开方式和状态栏提示——很多问题根本不是配置写错了,而是 Atom 压根没进入 EditorConfig 工作模式。每次怀疑配置失效,先看右下角有没有 EditorConfig 四个字,没有就回去重新 Add Project Folder。

















