You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
1 week ago | |
---|---|---|
.github | 4 weeks ago | |
cmd/gofimports | 2 months ago | |
internal | 4 weeks ago | |
.gitignore | 2 months ago | |
.golangci.yml | 4 weeks ago | |
.goreleaser.yml | 4 months ago | |
CHANGELOG.md | 4 weeks ago | |
LICENSE | 4 months ago | |
Makefile | 1 week ago | |
README.md | 2 months ago | |
go.mod | 2 weeks ago | |
go.sum | 2 weeks ago |
README.md
gofimports
Group Go imports with my opinionated preferences.
First is standard. Then third party, then company if exist. The last is local.
Also main selling point of this tool is to handle imports only.
So please run gofumpt
or gofmt
to format you files after running this tool.
Install
With Go version >= 1.16
:
go install github.com/haunt98/gofimports/cmd/gofimports@latest
Usage
# Format ./internal with:
# - print impacted file (-l),
# - write to file (-w),
# - print diff (-d)
# - company prefix, split using comma (,)
gofimports -l -w -d --company github.com/make-go-great,github.com/haunt98 ./internal
Example result:
import (
"fmt"
"github.com/urfave/cli/v2"
"github.com/pkg/diff"
"github.com/make-go-great/color-go"
"github.com/haunt98/gofimports/internal/imports"
)
Roadmap
- Diff with color
- Add profiling
- Improve performance