#json-file #json #minify #file-path #prettify

app pitufo

A small application that will walk the given path and replace the content of every json file found. The file will either be prettified or minified.

2 stable releases

1.1.0 Feb 16, 2020
1.0.0 Feb 3, 2020

#2458 in Command line utilities

28 downloads per month

MIT/Apache

12KB
106 lines

Build Status crates.io

pitufo

A small application that will walk the given path and replace the content of every json file found. The file will either be prettified or minified.

Latest Release

Latest Release Page

Downloads

Installation

pitufo can be installed via cargo.

cargo install pitufo

Usage

Usage: pitufo [--follow] [--verbose] [--minify] [--bom] [-m <max-depth>] -p <path>

Options:
  --follow          follow symbolic links, the default is to not follow.
  --verbose         verbose mode, output the path of every file found, defaults
                    to silent
  --minify          minify the json, the default is to prettify.
  --bom             look for leading BOM in json files and remove if found, the
                    default is to take the file as-is.
  -m, --max-depth   set the maximum depth to recurse
  -p, --path        the path to search for json files.
  --help            display usage information

Example

recursively walk the path and prettify or minify everything you can find

  ./pitufo /GitHub/verb-data/json
  ./pitufo /GitHub/verb-data/json --minify

prettify or minify everything you can find directly under the path

  ./pitufo /GitHub/verb-data/json --max-depth 1
  ./pitufo /GitHub/verb-data/json --minify  --max-depth 1

Building

Install Rust as per the instructions here https://www.rust-lang.org/tools/install

git clone https://github.com/ian-hamlin/pitufo.git
cd pitufo
cargo build --release
./target/release/pitufo path/to/json

Notes

pitufo will:

  • silently ignore any path that it can not access.
  • report files it can not change to stderr.
  • not provide any feedback on success or progress.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~0.8–1.8MB
~36K SLoC