prettier-atom是团队统一代码风格的核心工具,但不能用于赋值符对齐;它按ast重排结构、支持.prettierrc同步配置,却故意不处理=或:的列对齐,因prettier认为该对齐无语义且易被破坏;需配合.atom-aligner临时手动对齐、.editorconfig统一缩进,并禁用其他格式化插件避免冲突。

prettier-atom 是团队统一风格的核心,但不能靠它对齐赋值符
团队代码风格统一,关键不是“看起来整齐”,而是“每次保存后行为可预期”。prettier-atom 能做到这点——它按 AST 重排结构,自动处理括号、换行、引号、逗号等,且支持 .prettierrc 配置同步到所有成员。但它**故意不处理 = 或 : 的列对齐**,这是 Prettier 的设计原则:对齐无语义,还容易被后续编辑破坏。
常见错误现象:有人在 .prettierrc 里加 "arrowParens": "avoid" 或调 tabWidth,以为能控制赋值符位置——没用。保存后对齐照样消失。
- 必须用
prettier-atom做日常格式化(开“Format on Save”) - 团队共用同一份
.prettierrc,例如:{ "tabWidth": 2, "useTabs": false, "singleQuote": true, "trailingComma": "es5" } - 禁用其他格式化插件(如
atom-beautify),避免冲突
需要对齐时,只用 atom-aligner 临时选中操作
atom-aligner 不是格式化器,是纯文本对齐工具,适合 Code Review 前手动整理某几行变量声明或对象键值对。但它非常脆弱,一不小心就失效。
使用场景有限:只在你明确要“肉眼对齐某几行”时才用,比如整理配置常量、mock 数据、或调试时临时排版。
- 必须用鼠标或
Shift + ↑/↓选中至少两行,且每行都含相同分隔符(如=或:) - 触发方式:右键 → Align,或快捷键
Ctrl+Alt+Shift+A(Windows/Linux)、Cmd+Alt+Shift+A(macOS) - 它只对齐“所有选中行共有的最左分隔符”——某行缺
=,整行跳过
缩进和空格必须靠 .editorconfig 统一约束
团队里有人用 2 空格、有人用 4 空格、还有人混用 Tab,atom-aligner 对齐会偏移,prettier-atom 输出也会不一致,ESLint 还可能报 no-mixed-spaces-and-tabs。
解决方法不是调 Atom 设置,而是靠项目根目录的 .editorconfig 文件强制覆盖:
- 内容示例:
root = true[*]indent_style = spaceindent_size = 2end_of_line = lfcharset = utf-8trim_trailing_whitespace = truesinsert_final_newline = true
- 确保 Atom 已安装
editorconfig插件(官方维护,非第三方) - 删掉 Atom 设置里的
Tab Length依赖——它会被.editorconfig覆盖,留着反而误导新人
JSON/YAML/注释对齐基本别碰
atom-aligner 不解析语法,只做字符串匹配。你在 {"a": 1, "b": 2} 里对齐 :,它不管双引号内外,直接把 "key": "value:foo" 里的冒号也拉过去——JSON 结构就坏了。
YAML 更危险:靠缩进表达层级,空格对齐会干扰解析器判断;注释对齐(如 // config 后面的内容)依赖语言插件的缩进逻辑,atom-aligner 无法保证一致性。
真有这类需求,优先改写结构(如拆成多行对象、用变量代替长字面量),而不是硬对齐。
复杂点在于:对齐是视觉惯性,但团队协作里真正重要的是“保存即生效、多人结果一致”。一旦开始混合用 prettier-atom 和 atom-aligner,就得靠人盯人提醒——这恰恰是自动化想规避的。











