#json5 #comments #formatter #style #json #command-line

json5format

自定义 JSON5 文档格式化工具,保留注释

11 个版本

0.2.6 2022 年 6 月 17 日
0.2.5 2022 年 6 月 16 日
0.2.4 2022 年 1 月 19 日
0.2.0 2021 年 3 月 11 日
0.1.1 2020 年 4 月 27 日

#546 in 编码

Download history 83/week @ 2024-03-11 18/week @ 2024-03-18 24/week @ 2024-03-25 44/week @ 2024-04-01 23/week @ 2024-04-08 99/week @ 2024-04-15 116/week @ 2024-04-22 65/week @ 2024-04-29 54/week @ 2024-05-06 32/week @ 2024-05-13 48/week @ 2024-05-20 31/week @ 2024-05-27 16/week @ 2024-06-03 24/week @ 2024-06-10 21/week @ 2024-06-17 28/week @ 2024-06-24

每月 92 次下载
用于 jsonpretty5er

BSD-3-Clause

165KB
3K SLoC

json5format

json5format 是一个通用的 Rust 库,用于格式化 JSON5(又名“适合人类阅读的 JSON”),并保留上下文中的行和块注释。

crates.io license docs.rs json5format

json5format Rust 库

json5format 包含自定义文档格式的 API,全局可配置样式选项(影响整个文档),以及根据目标 JSON5 架构定制特定子集。有关更多详细信息和方法示例,请参阅 Rust 包文档。从版本 0.2.0 开始,公共 API 允许有限地访问解析文档内的信息,以及注入或修改注释。

formatjson5 命令行工具

json5format 包还捆绑了一个 示例命令行工具,formatjson5,它使用基本样式格式化 JSON5 文档,并通过命令行选项提供一些自定义。

$ cargo build --example formatjson5
$ ./target/debug/examples/formatjson5 --help

formatjson5 [FLAGS] [OPTIONS] [files]...

FLAGS:
-h, --help                  Prints help information
-n, --no_trailing_commas    Suppress trailing commas (otherwise added by default)
-o, --one_element_lines     Objects or arrays with a single child should collapse to a
                            single line; no trailing comma
-r, --replace               Replace (overwrite) the input file with the formatted result
-s, --sort_arrays           Sort arrays of primitive values (string, number, boolean, or
                            null) lexicographically
-V, --version               Prints version information

OPTIONS:
-i, --indent <indent>    Indent by the given number of spaces [default: 4]

ARGS:
<files>...    Files to format (use "-" for stdin)

注意:这不是一个官方支持的产品。

依赖项

~2.1–3MB
~53K SLoC