6 个版本 (3 个重大变更)

0.3.0 2020 年 6 月 26 日
0.2.0 2020 年 6 月 7 日
0.1.2 2020 年 5 月 31 日
0.0.0 2020 年 5 月 18 日

#343值格式化

每月 39 次下载
forma 中使用

MIT 许可证

40KB
998

forma 🐚

一个有偏见的 SQL 格式化工具。


📦 安装

可以使用 cargo 安装二进制文件

$ cargo install forma

此外,可能还需要作为依赖项的配套库 formation

[dependencies]
formation = "0.3.0"

🤸 使用

⚠️ forma 应被视为 alpha 质量,存在许多已知的和更多未知的缺陷。 使用风险自担!

通过文件路径或 stdin 给 forma 一些 SQL,你会得到格式化后的 SQL。

$ echo "SELECT * FROM users" | forma
select * from users;

要格式化 SQL 文件,只需给 forma 文件路径。

$ forma path/to/some/sql/example.sql

如果你希望不实际格式化 SQL 但要知道是否会发生格式化,请使用 --check 标志。

该二进制文件是 formation 库的薄包装,可用于在你的应用程序中格式化 SQL。

use formation::format;
let sql = "SELECT * FROM users;";
assert_eq!(
    format(sql, false, 100).unwrap(),
    vec!["select * from users;\n".to_owned()]
);

🚧 TODOs

  • 全面支持 Statement 变体(目前仅支持 Query
  • 支持注释(这些将被格式化器吃掉!)
  • 参数化方言

依赖关系

~2.5MB
~51K SLoC