├── .gitattributes ├── .github ├── FUNDING.yml └── workflows │ └── test.yml ├── .gitignore ├── .vscode ├── launch.json └── tasks.json ├── LICENSE ├── README.md ├── _fuzz └── it │ ├── fuzz.go │ ├── go.mod │ ├── go.sum │ └── tools.go ├── _js ├── LICENSE ├── README.md ├── api_dump.go ├── build ├── go.mod ├── go.sum ├── main.go ├── package.json └── testmain.js ├── cmd ├── gosh │ ├── main.go │ └── main_test.go └── shfmt │ ├── Dockerfile │ ├── docker-entrypoint.sh │ ├── json.go │ ├── main.go │ ├── main_test.go │ └── testdata │ └── scripts │ ├── atomic.txt │ ├── basic.txt │ ├── diff.txt │ ├── editorconfig.txt │ ├── flags.txt │ ├── tojson.txt │ └── walk.txt ├── expand ├── arith.go ├── braces.go ├── braces_test.go ├── doc.go ├── environ.go ├── environ_test.go ├── expand.go ├── expand_test.go └── param.go ├── fileutil └── file.go ├── go.mod ├── go.sum ├── interp ├── api.go ├── builtin.go ├── example_test.go ├── handler.go ├── handler_test.go ├── interp_test.go ├── os_unix.go ├── os_windows.go ├── runner.go ├── test.go ├── test_classic.go ├── unix_test.go ├── vars.go └── windows_test.go ├── pattern ├── example_test.go ├── pattern.go └── pattern_test.go ├── shell ├── doc.go ├── example_test.go ├── expand.go └── expand_test.go ├── shfmt.cmd └── syntax ├── braces.go ├── canonical.sh ├── doc.go ├── example_test.go ├── filetests_test.go ├── lexer.go ├── nodes.go ├── nodes_test.go ├── parser.go ├── parser_arithm.go ├── parser_test.go ├── printer.go ├── printer_test.go ├── quotestate_string.go ├── simplify.go ├── simplify_test.go ├── token_string.go ├── tokens.go ├── walk.go └── walk_test.go /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: mvdan 2 | -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/.vscode/tasks.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/README.md -------------------------------------------------------------------------------- /_fuzz/it/fuzz.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_fuzz/it/fuzz.go -------------------------------------------------------------------------------- /_fuzz/it/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_fuzz/it/go.mod -------------------------------------------------------------------------------- /_fuzz/it/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_fuzz/it/go.sum -------------------------------------------------------------------------------- /_fuzz/it/tools.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_fuzz/it/tools.go -------------------------------------------------------------------------------- /_js/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_js/LICENSE -------------------------------------------------------------------------------- /_js/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_js/README.md -------------------------------------------------------------------------------- /_js/api_dump.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_js/api_dump.go -------------------------------------------------------------------------------- /_js/build: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_js/build -------------------------------------------------------------------------------- /_js/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_js/go.mod -------------------------------------------------------------------------------- /_js/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_js/go.sum -------------------------------------------------------------------------------- /_js/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_js/main.go -------------------------------------------------------------------------------- /_js/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_js/package.json -------------------------------------------------------------------------------- /_js/testmain.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/_js/testmain.js -------------------------------------------------------------------------------- /cmd/gosh/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/gosh/main.go -------------------------------------------------------------------------------- /cmd/gosh/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/gosh/main_test.go -------------------------------------------------------------------------------- /cmd/shfmt/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/Dockerfile -------------------------------------------------------------------------------- /cmd/shfmt/docker-entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/docker-entrypoint.sh -------------------------------------------------------------------------------- /cmd/shfmt/json.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/json.go -------------------------------------------------------------------------------- /cmd/shfmt/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/main.go -------------------------------------------------------------------------------- /cmd/shfmt/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/main_test.go -------------------------------------------------------------------------------- /cmd/shfmt/testdata/scripts/atomic.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/testdata/scripts/atomic.txt -------------------------------------------------------------------------------- /cmd/shfmt/testdata/scripts/basic.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/testdata/scripts/basic.txt -------------------------------------------------------------------------------- /cmd/shfmt/testdata/scripts/diff.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/testdata/scripts/diff.txt -------------------------------------------------------------------------------- /cmd/shfmt/testdata/scripts/editorconfig.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/testdata/scripts/editorconfig.txt -------------------------------------------------------------------------------- /cmd/shfmt/testdata/scripts/flags.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/testdata/scripts/flags.txt -------------------------------------------------------------------------------- /cmd/shfmt/testdata/scripts/tojson.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/testdata/scripts/tojson.txt -------------------------------------------------------------------------------- /cmd/shfmt/testdata/scripts/walk.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/cmd/shfmt/testdata/scripts/walk.txt -------------------------------------------------------------------------------- /expand/arith.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/expand/arith.go -------------------------------------------------------------------------------- /expand/braces.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/expand/braces.go -------------------------------------------------------------------------------- /expand/braces_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/expand/braces_test.go -------------------------------------------------------------------------------- /expand/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/expand/doc.go -------------------------------------------------------------------------------- /expand/environ.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/expand/environ.go -------------------------------------------------------------------------------- /expand/environ_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/expand/environ_test.go -------------------------------------------------------------------------------- /expand/expand.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/expand/expand.go -------------------------------------------------------------------------------- /expand/expand_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/expand/expand_test.go -------------------------------------------------------------------------------- /expand/param.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/expand/param.go -------------------------------------------------------------------------------- /fileutil/file.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/fileutil/file.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/go.sum -------------------------------------------------------------------------------- /interp/api.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/api.go -------------------------------------------------------------------------------- /interp/builtin.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/builtin.go -------------------------------------------------------------------------------- /interp/example_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/example_test.go -------------------------------------------------------------------------------- /interp/handler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/handler.go -------------------------------------------------------------------------------- /interp/handler_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/handler_test.go -------------------------------------------------------------------------------- /interp/interp_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/interp_test.go -------------------------------------------------------------------------------- /interp/os_unix.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/os_unix.go -------------------------------------------------------------------------------- /interp/os_windows.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/os_windows.go -------------------------------------------------------------------------------- /interp/runner.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/runner.go -------------------------------------------------------------------------------- /interp/test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/test.go -------------------------------------------------------------------------------- /interp/test_classic.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/test_classic.go -------------------------------------------------------------------------------- /interp/unix_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/unix_test.go -------------------------------------------------------------------------------- /interp/vars.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/vars.go -------------------------------------------------------------------------------- /interp/windows_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/interp/windows_test.go -------------------------------------------------------------------------------- /pattern/example_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/pattern/example_test.go -------------------------------------------------------------------------------- /pattern/pattern.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/pattern/pattern.go -------------------------------------------------------------------------------- /pattern/pattern_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/pattern/pattern_test.go -------------------------------------------------------------------------------- /shell/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/shell/doc.go -------------------------------------------------------------------------------- /shell/example_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/shell/example_test.go -------------------------------------------------------------------------------- /shell/expand.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/shell/expand.go -------------------------------------------------------------------------------- /shell/expand_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/shell/expand_test.go -------------------------------------------------------------------------------- /shfmt.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | cd /d %~dp0 3 | build\shfmt_windows_amd64.exe -ns %* 4 | -------------------------------------------------------------------------------- /syntax/braces.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/braces.go -------------------------------------------------------------------------------- /syntax/canonical.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/canonical.sh -------------------------------------------------------------------------------- /syntax/doc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/doc.go -------------------------------------------------------------------------------- /syntax/example_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/example_test.go -------------------------------------------------------------------------------- /syntax/filetests_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/filetests_test.go -------------------------------------------------------------------------------- /syntax/lexer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/lexer.go -------------------------------------------------------------------------------- /syntax/nodes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/nodes.go -------------------------------------------------------------------------------- /syntax/nodes_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/nodes_test.go -------------------------------------------------------------------------------- /syntax/parser.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/parser.go -------------------------------------------------------------------------------- /syntax/parser_arithm.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/parser_arithm.go -------------------------------------------------------------------------------- /syntax/parser_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/parser_test.go -------------------------------------------------------------------------------- /syntax/printer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/printer.go -------------------------------------------------------------------------------- /syntax/printer_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/printer_test.go -------------------------------------------------------------------------------- /syntax/quotestate_string.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/quotestate_string.go -------------------------------------------------------------------------------- /syntax/simplify.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/simplify.go -------------------------------------------------------------------------------- /syntax/simplify_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/simplify_test.go -------------------------------------------------------------------------------- /syntax/token_string.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/token_string.go -------------------------------------------------------------------------------- /syntax/tokens.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/tokens.go -------------------------------------------------------------------------------- /syntax/walk.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/walk.go -------------------------------------------------------------------------------- /syntax/walk_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/patrickvane/shfmt/HEAD/syntax/walk_test.go --------------------------------------------------------------------------------