package golinters import ( "fmt" "path/filepath" "strings" "golang.org/x/tools/go/analysis" "github.com/golangci/golangci-lint/pkg/config" ) func formatCode(code string, _ *config.Config) string { if strings.Contains(code, "`") { return code // TODO: properly escape or remove } return fmt.Sprintf("`%s`", code) } func formatCodeBlock(code string, _ *config.Config) string { if strings.Contains(code, "`") { return code // TODO: properly escape or remove } return fmt.Sprintf("```\n%s\n```", code) } func getFileNames(pass *analysis.Pass) []string { var fileNames []string for _, f := range pass.Files { fileName := pass.Fset.PositionFor(f.Pos(), true).Filename ext := filepath.Ext(fileName) if ext != "" && ext != ".go" { // position has been adjusted to a non-go file, revert to original file fileName = pass.Fset.PositionFor(f.Pos(), false).Filename } fileNames = append(fileNames, fileName) } return fileNames }