MooTool

Handy tool set for developers

View on GitHub

DIFF-005:格式化使用 JVM 解析器而非 Prettier

原行为(Electron)

prettier/standalone:Java 走 prettier-plugin-java,XML 走 @prettier/plugin-xmlxmlWhitespaceSensitivity: preserve),HTML 走 prettier/plugins/html。语法错误由 Prettier 抛出。Nginx 为自写 tokenizer,不经 Prettier。

本产品行为

不要求使用者安装 Node,也不用通用花括号换行冒充多语言 formatter。

理由

架构要求独立声明的 Java 语法处理器和专用 HTML/XML/Nginx 实现,禁止把 Electron Prettier 当运行时依赖。JavaParser 能按用户选择的缩进重排,并在解析失败时定位。

证据

ReformatEngineTest:Electron Nginx fixture 逐字一致;Java 样本含 class DemoSystem.out.println("moo"); 且二次格式化幂等;XML <item 缩进与文本节点 moo 文本;HTML 含 <strong>Moo</strong>;非法 Java/XML 抛 syntax 且带行号。

受影响范围