ardent
An opinionated code formatter for NSIS scripts
Installation
crates.io
Source
The binary is at target/release/ardent.
CLI Usage
ardent [OPTIONS] [COMMAND]
Commands:
format Format NSIS scripts
check Check if NSIS scripts are formatted correctly
Options:
-D, --debug Print debug messages
-h, --help Print help
-V, --version Print version
Format
Formats one or more .nsi / .nsh files.
# Print formatted output to stdout
# Edit files in-place
See ardent format --help for available options.
Check
Checks whether files are already formatted.
# Check only (reports drift)
# Check and auto-fix (still exits 1 if drift was found)
See ardent check --help for available options.
Library Usage
Formatting
use ;
let formatter = new.expect;
let input = r#"section "My Section"
detailprint "Hello"
sectionend
"#;
let output = formatter.format.expect;
assert_eq!;
Checking
Returns None if the input is already formatted, or Some(formatted) if it needs changes.
use ;
let formatter = new.unwrap;
match formatter.check.unwrap
Options
| Field | Type | Default | Description |
|---|---|---|---|
end_of_lines |
Option<EndOfLines> |
None (auto-detect) |
Force CRLF or LF line endings |
indent_size |
usize |
2 |
Spaces per indent level (ignored when using tabs) |
trim_empty_lines |
bool |
true |
Collapse consecutive blank lines and strip leading/trailing blanks |
use_tabs |
bool |
true |
Indent with tabs instead of spaces |
:white_check_mark: Why defaulting to tabs is good for accessibility
License
This work is licensed under The MIT License.