Highlights:
- cmd/shfmt
- Add a man page via scdoc; see shfmt.1.scd
- Add
-filename
to give a name to standard input
- syntax
- Add initial support for Bats
- Protect line and column position numbers against overflows
- Rewrite arithmetic parsing to fix operator precedence
- Don't add parentheses to
function f {...}
declarations for ksh support KeepPadding
now obeys extra indentation when using space indentation- Properly tokenize
((
within test expressions - Properly tokenize single quotes within parameter expansions
- Obey print options inside
<<-
heredocs - Don't simplify indexed parameter expansions in arithmetic expressions
- Improve parsing errors for missing test expressions
LangVariant
now implements flag.Value
- interp
- Avoid panic on C-style loops which omit expressions
$@
and$*
always exist, so"$@"
can expand to zero words
Binaries built on go version go1.15.3 linux/amd64
via a shell script.
Consider becoming a sponsor if you benefit from the work that went into this release!