moss-fmt is an executable tool that searches a directory of zips and extracts only the specified files to a new directory, renaming them to identifiable names in the process. The main reason being formatting files for Moss.
moss-fmt can be installed via Cargo, which comes with Rustup via:
sh
cargo install moss-fmt
You may manually build the source code using:
sh
$ git clone https://github.com/CJohnson19/moss-fmt.git
$ cd moss-fmt
$ cargo build --release
The binary will then be in target/release/moss-fmt
.
sh
moss-fmt [FLAGS] [OPTIONS] --dir <dir> --filename <file>
-h
, --help
: print help information-V
, --version
: print version number-v
, --verbose
: print information about each operation performed-d
, --dir
: Relative path to a directory with zip files you want to search.
Multiple directories may be provided.-f
, --filename
: Filename to search for in each zip. Multiple file names
can be provided.--filter-dir
: Folder to exclude from search in each zip. Defaults to
__MACOSX
and node_modules
.-o
, --output
: Directory to store resulting files. Defaults to current
working directory.-l
, --log-file
: File to store run information like zips without a file or
files that are compressed using unsupported methods. Defaults to moss-fmt.log
index.js
turns into
johndoe-index.js
.__MACOSX
or node_modules
to deal with.