Auto formatter for device tree files.
You can install dtsfmt by running the install script which will download the latest release.
curl -LSfs https://go.mskelton.dev/dtsfmt/install | shOr you can build from source.
git clone --recurse-submodules https://github.com/mskelton/dtsfmt.git
cd dtsfmt
cargo install --path .To run dtsfmt, simply provide a file/directory path to the dtsfmt command.
dtsfmt .The following configuration options are available for dtsfmt. Configuration should
be added to a .dtsfmtrc.toml file at the root of your project.
indent_str = " " # Optional, used for each indent level when printing.
# Default is two spaces.layout = "kinesis:adv360" # Required
# Available options are ["kinesis:adv360", "sweep", "moergo:glove80", "imprint:letters_only_full_bottom_row"]warn_on_unhandled_tokens = false # Optional
# Used to check if an input file contains any tokens not handled by the parser/printer.You can add a .dtsfmtignore file at the root of your project to exclude files
and paths from formatting. This file follows the same rules as .gitignore.
When you want to check if your files are formatted, you can run dtsfmt with
the --check flag (or -c). This will output a human-friendly message and a
list of unformatted files, if any.
dtsfmt --check .If passed the --stdin flag dtsfmt will read from stdin and write to stdout.
dtsfmt --stdin < input.dts > output.dts