├── .github ├── ISSUE_TEMPLATE │ └── common.md └── workflows │ ├── build.yml │ └── lint.yml ├── .gitignore ├── .golangci.yml ├── LICENSE ├── Makefile ├── README.md ├── cmd └── gci │ ├── completion.go │ ├── diff.go │ ├── gcicommand.go │ ├── list.go │ ├── print.go │ ├── root.go │ └── write.go ├── go.mod ├── go.sum ├── internal └── generate.go ├── main.go └── pkg ├── config ├── config.go └── config_test.go ├── format └── format.go ├── gci ├── gci.go ├── gci_test.go ├── testdata.go └── testdata │ ├── module │ ├── .gitattributes │ ├── config.yaml │ ├── go.mod │ ├── internal │ │ ├── bar │ │ │ └── lib.go │ │ ├── foo │ │ │ ├── lib.go │ │ │ └── lib.out.go │ │ └── lib.go │ ├── main.go │ └── main.out.go │ ├── module_canonical │ ├── .gitattributes │ ├── cmd │ │ ├── client │ │ │ ├── main.go │ │ │ └── main.out.go │ │ └── server │ │ │ ├── main.go │ │ │ └── main.out.go │ ├── config.yaml │ ├── go.mod │ └── internal │ │ ├── bar │ │ └── lib.go │ │ ├── foo │ │ ├── lib.go │ │ └── lib.out.go │ │ └── lib.go │ └── module_noncanonical │ ├── .gitattributes │ ├── cmd │ ├── client │ │ ├── main.go │ │ └── main.out.go │ └── server │ │ ├── main.go │ │ └── main.out.go │ ├── config.yaml │ ├── go.mod │ └── internal │ ├── bar │ └── lib.go │ ├── foo │ ├── lib.go │ └── lib.out.go │ └── lib.go ├── io ├── file.go ├── search.go └── stdin.go ├── log └── log.go ├── parse └── parse.go ├── section ├── alias.go ├── blank.go ├── commentline.go ├── commentline_test.go ├── default.go ├── default_test.go ├── dot.go ├── errors.go ├── errors_test.go ├── local_module.go ├── local_module_test.go ├── newline.go ├── newline_test.go ├── parser.go ├── parser_test.go ├── prefix.go ├── prefix_test.go ├── section.go ├── section_test.go ├── standard.go ├── standard_list.go └── standard_test.go ├── specificity ├── default.go ├── local_module.go ├── match.go ├── mismatch.go ├── name.go ├── specificity.go ├── specificity_test.go └── standard.go └── utils └── constants.go /.github/ISSUE_TEMPLATE/common.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/.github/ISSUE_TEMPLATE/common.md -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/.github/workflows/build.yml -------------------------------------------------------------------------------- /.github/workflows/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/.github/workflows/lint.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | dist/ 2 | .gitcookies 3 | .idea/ 4 | .vscode/ 5 | -------------------------------------------------------------------------------- /.golangci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/.golangci.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/README.md -------------------------------------------------------------------------------- /cmd/gci/completion.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/cmd/gci/completion.go -------------------------------------------------------------------------------- /cmd/gci/diff.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/cmd/gci/diff.go -------------------------------------------------------------------------------- /cmd/gci/gcicommand.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/cmd/gci/gcicommand.go -------------------------------------------------------------------------------- /cmd/gci/list.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/cmd/gci/list.go -------------------------------------------------------------------------------- /cmd/gci/print.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/cmd/gci/print.go -------------------------------------------------------------------------------- /cmd/gci/root.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/cmd/gci/root.go -------------------------------------------------------------------------------- /cmd/gci/write.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/cmd/gci/write.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/go.sum -------------------------------------------------------------------------------- /internal/generate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/internal/generate.go -------------------------------------------------------------------------------- /main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/main.go -------------------------------------------------------------------------------- /pkg/config/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/config/config.go -------------------------------------------------------------------------------- /pkg/config/config_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/config/config_test.go -------------------------------------------------------------------------------- /pkg/format/format.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/format/format.go -------------------------------------------------------------------------------- /pkg/gci/gci.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/gci.go -------------------------------------------------------------------------------- /pkg/gci/gci_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/gci_test.go -------------------------------------------------------------------------------- /pkg/gci/testdata.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module/.gitattributes -------------------------------------------------------------------------------- /pkg/gci/testdata/module/config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module/config.yaml -------------------------------------------------------------------------------- /pkg/gci/testdata/module/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module/go.mod -------------------------------------------------------------------------------- /pkg/gci/testdata/module/internal/bar/lib.go: -------------------------------------------------------------------------------- 1 | package bar 2 | -------------------------------------------------------------------------------- /pkg/gci/testdata/module/internal/foo/lib.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module/internal/foo/lib.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module/internal/foo/lib.out.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module/internal/foo/lib.out.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module/internal/lib.go: -------------------------------------------------------------------------------- 1 | package internal 2 | -------------------------------------------------------------------------------- /pkg/gci/testdata/module/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module/main.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module/main.out.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module/main.out.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_canonical/.gitattributes -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/cmd/client/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_canonical/cmd/client/main.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/cmd/client/main.out.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_canonical/cmd/client/main.out.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/cmd/server/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_canonical/cmd/server/main.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/cmd/server/main.out.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_canonical/cmd/server/main.out.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_canonical/config.yaml -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/go.mod: -------------------------------------------------------------------------------- 1 | module example.com/service 2 | 3 | go 1.20 4 | -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/internal/bar/lib.go: -------------------------------------------------------------------------------- 1 | package bar 2 | -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/internal/foo/lib.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_canonical/internal/foo/lib.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/internal/foo/lib.out.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_canonical/internal/foo/lib.out.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_canonical/internal/lib.go: -------------------------------------------------------------------------------- 1 | package internal 2 | -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_noncanonical/.gitattributes -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/cmd/client/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_noncanonical/cmd/client/main.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/cmd/client/main.out.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_noncanonical/cmd/client/main.out.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/cmd/server/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_noncanonical/cmd/server/main.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/cmd/server/main.out.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_noncanonical/cmd/server/main.out.go -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/gci/testdata/module_noncanonical/config.yaml -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/go.mod: -------------------------------------------------------------------------------- 1 | module service 2 | 3 | go 1.20 4 | -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/internal/bar/lib.go: -------------------------------------------------------------------------------- 1 | package bar 2 | -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/internal/foo/lib.go: -------------------------------------------------------------------------------- 1 | package foo 2 | 3 | import ( 4 | "log" 5 | "service/internal/bar" 6 | ) 7 | -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/internal/foo/lib.out.go: -------------------------------------------------------------------------------- 1 | package foo 2 | 3 | import ( 4 | "log" 5 | 6 | "service/internal/bar" 7 | ) 8 | -------------------------------------------------------------------------------- /pkg/gci/testdata/module_noncanonical/internal/lib.go: -------------------------------------------------------------------------------- 1 | package internal 2 | -------------------------------------------------------------------------------- /pkg/io/file.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/io/file.go -------------------------------------------------------------------------------- /pkg/io/search.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/io/search.go -------------------------------------------------------------------------------- /pkg/io/stdin.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/io/stdin.go -------------------------------------------------------------------------------- /pkg/log/log.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/log/log.go -------------------------------------------------------------------------------- /pkg/parse/parse.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/parse/parse.go -------------------------------------------------------------------------------- /pkg/section/alias.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/alias.go -------------------------------------------------------------------------------- /pkg/section/blank.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/blank.go -------------------------------------------------------------------------------- /pkg/section/commentline.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/commentline.go -------------------------------------------------------------------------------- /pkg/section/commentline_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/commentline_test.go -------------------------------------------------------------------------------- /pkg/section/default.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/default.go -------------------------------------------------------------------------------- /pkg/section/default_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/default_test.go -------------------------------------------------------------------------------- /pkg/section/dot.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/dot.go -------------------------------------------------------------------------------- /pkg/section/errors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/errors.go -------------------------------------------------------------------------------- /pkg/section/errors_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/errors_test.go -------------------------------------------------------------------------------- /pkg/section/local_module.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/local_module.go -------------------------------------------------------------------------------- /pkg/section/local_module_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/local_module_test.go -------------------------------------------------------------------------------- /pkg/section/newline.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/newline.go -------------------------------------------------------------------------------- /pkg/section/newline_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/newline_test.go -------------------------------------------------------------------------------- /pkg/section/parser.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/parser.go -------------------------------------------------------------------------------- /pkg/section/parser_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/parser_test.go -------------------------------------------------------------------------------- /pkg/section/prefix.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/prefix.go -------------------------------------------------------------------------------- /pkg/section/prefix_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/prefix_test.go -------------------------------------------------------------------------------- /pkg/section/section.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/section.go -------------------------------------------------------------------------------- /pkg/section/section_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/section_test.go -------------------------------------------------------------------------------- /pkg/section/standard.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/standard.go -------------------------------------------------------------------------------- /pkg/section/standard_list.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/standard_list.go -------------------------------------------------------------------------------- /pkg/section/standard_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/section/standard_test.go -------------------------------------------------------------------------------- /pkg/specificity/default.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/specificity/default.go -------------------------------------------------------------------------------- /pkg/specificity/local_module.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/specificity/local_module.go -------------------------------------------------------------------------------- /pkg/specificity/match.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/specificity/match.go -------------------------------------------------------------------------------- /pkg/specificity/mismatch.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/specificity/mismatch.go -------------------------------------------------------------------------------- /pkg/specificity/name.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/specificity/name.go -------------------------------------------------------------------------------- /pkg/specificity/specificity.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/specificity/specificity.go -------------------------------------------------------------------------------- /pkg/specificity/specificity_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/specificity/specificity_test.go -------------------------------------------------------------------------------- /pkg/specificity/standard.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/specificity/standard.go -------------------------------------------------------------------------------- /pkg/utils/constants.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daixiang0/gci/HEAD/pkg/utils/constants.go --------------------------------------------------------------------------------