7 个版本

0.2.5 2024年3月22日
0.2.4 2023年3月14日
0.2.1 2023年2月28日
0.2.0 2020年2月6日
0.1.1 2020年2月28日

#8 in #pest-grammar

Download history 178/week @ 2024-04-07 141/week @ 2024-04-14 145/week @ 2024-04-21 83/week @ 2024-04-28 73/week @ 2024-05-05 72/week @ 2024-05-12 96/week @ 2024-05-19 77/week @ 2024-05-26 138/week @ 2024-06-02 90/week @ 2024-06-09 82/week @ 2024-06-16 101/week @ 2024-06-23 76/week @ 2024-06-30 123/week @ 2024-07-07 87/week @ 2024-07-14 94/week @ 2024-07-21

388 每月下载量
用于 2 crates

MPL-2.0 许可协议

46KB
936

Pest 格式化器

Test Crate

Pest 格式化器是一个用于格式化 Pest 语法文件的工具。

安装

cargo install pest_fmt

用法

然后使用 pestfmt 命令来格式化您的 .pest 文件。

$ pestfmt -h
A formatter tool for pest

Usage: pestfmt [OPTIONS] [FILE]...

Arguments:
  [FILE]...  The file or path to format [default: .]

Options:
  -s, --stdin
  -h, --help     Print help
  -V, --version  Print version

格式化 pest 文件

$ pestfmt .

它将在当前目录中找到所有 .pest 文件,并格式化并覆盖它们。

输出

Pest Formatter
-------------------------------------
2 files formatted.

从 stdin 格式化

您可以使用 --stdin 选项从 stdin 格式化 Pest 源代码,它将从 stdin 读取并写入 stdout。

cat file.pest | pestfmt --stdin

作为库使用

pest_fmt 添加到您的 Cargo.toml

$ cargo add pest_fmt

然后使用 Formatter 结构来格式化 pest 语法。

use pest_fmt::Formatter;

let mut fmt = Formatter::new("a={ASCII_DIGIT}");
let out = fmt.format().unwrap();
println!("{out}");
// a = { ASCII_DIGIT }

开发工具集成

VS Code

https://github.com/pest-parser/pest-ide-tools

基准测试

基于 MacBook Pro (Apple M1 2020)

format (json.pest)                time:   [89.403 µs 89.632 µs 89.878 µs]
format (grammar.pest)             time:   [1.6018 ms 1.6054 ms 1.6105 ms]

许可协议

Mozilla 公共许可证 2.0

依赖项

~7–17MB
~202K SLoC