convfmt
convfmt is a command line tool in rust which can convert between formats:
Usage:
$ convfmt --help
cli tool which can convert different formats
Usage: convfmt [OPTIONS] --from <FROM> --to <TO>
Options:
-f, --from <FROM> [possible values: bson, csv, hjson, hocon, json, json5, jsonl, plist, ron, toml, toon, xml, yaml]
-t, --to <TO> [possible values: bson, csv, hjson, hocon, json, json5, jsonl, plist, ron, toml, toon, xml, yaml]
-c, --compact
-h, --help Print help
-V, --version Print version
$ cat cfg.yml | convfmt -f yaml -t toml > cfg.toml
$ convfmt -f json -t json < compact.json > pretty.json
$ curl https://api.github.com/users/oriontvv | convfmt -f json -t json5 > api.json5
By default convfmt uses pretty format. Can't be compacted with --compact option.
Beware of nulls, some formats don't support them (e.g. toml).
Installation:
-
Download latest binary
-
Install binary using cargo-binstall
cargo install cargo-binstall && cargo binstall convfmt
- Build from sources with rust
cargo install convfmt