sh
gofumpt
sh | gofumpt | |
---|---|---|
21 | 15 | |
6,790 | 3,052 | |
- | - | |
7.6 | 6.1 | |
5 days ago | about 1 month ago | |
Go | Go | |
BSD 3-clause "New" or "Revised" License | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sh
-
Show HN: Hucksh – A Shell with a Good Memory
* The shell itself is https://github.com/mvdan/sh, a bash-like command interpreter
-
Pure Bash Bible
https://github.com/mvdan/sh
And finally, checkbashisms if you intend on making pure posix scripts that are compatible with debian/ubuntu's dash. It is part of the debian's devscripts suite, but is often individually packaged in other distros.
> Also you can use the chat as a learning tool
Or you could learn from a guide written by people who have suffered decades of experience of the pitfalls of shell scripting and have shared their woes.
https://mywiki.wooledge.org/BashGuide
- Shfmt – format shell programs
- Shfmt – format shell programs (like gofmt, rustfmt)
-
Gofumpt: It's like gofmt except more strict
My bad, I completely screwed this up... the as of yet undiscussed project is:
https://github.com/mvdan/sh
(not shmfmt)
-
Gosh Linux shell written in Golang
I support projects like this for purposes of exploration and practice. But don't expect people to use it when there are already well established projects out there like: https://github.com/mvdan/sh
- mvdan/sh: A shell parser, formatter, and interpreter with bash support; includes shfmt
-
similar to shellcheck?
There are also: - shfmt - sh - bash language server - bashate
- shfmt - formatting comments issue
-
Indenting piped shell expressions in a script?
I also like running shfmt over my shell scripts so they all look the same without me having to think about whitespace.
gofumpt
- Defining your variables in your return?
- Gofumpt: A stricter gofmt
- gofumpt: A stricter gofmt
-
Gofumpt: It's like gofmt except more strict
In the roadmap section[1] the author says it's more of an experiment with a possibility that some of the rules might end up in the original 'gofmt' tool. While I agree that Go having a de facto formatter built in is wonderful, there are some absolutely fantastic additions in 'gofumpt' that I do hope wind up in 'gofmt'
---
[1]: https://github.com/mvdan/gofumpt#roadmap
-
Is there any reason not to use go fmt?
No. If you want more strict formatting, you can use https://github.com/mvdan/gofumpt. Apart from using that, there is literally no reason not to use it.
-
go-global-update - the missing command for updating globally installed go executables
I am the author of go-global-update, the missing command to update globally installed go executables (like gofumpt, gopls, gotop, and other CLI tools you may have installed globally in your system - in your GOBIN directory).
-
setting up emacs for go programming language
I think that the one tool that might still be useful outside of gopls is goimports. It can be used as a gofmt replacement, that also automatically manages and removes imports. Gopls can integrate staticcheck and gofumpt, but my understanding is that they have to be installed manually. See the settings section for more on that(1).
-
Is there a better alternative to `gofmt`?
I use gofumpt but I'm pretty sure it doesn't wrap either (and I don't want it to so we're good)
What are some alternatives?
bat - A cat(1) clone with wings.
goimports - [mirror] Go Tools
ShellCheck - ShellCheck, a static analysis tool for shell scripts
goimports-reviser - Right imports sorting & code formatting tool (goimports alternative)
go-pkg-xmlx
GNU/Emacs go-mode - Emacs mode for the Go programming language
go-pkg-rss
golangci-lint - Fast linters Runner for Go
inject
revive - 🔥 ~6x faster, stricter, configurable, extensible, and beautiful drop-in replacement for golint
toml - TOML parser for Golang with reflection.
go-tools - Staticcheck - The advanced Go linter