mirror of
https://github.com/zeromicro/go-zero.git
synced 2025-01-23 00:50:20 +08:00
feat: replaced color package to support Windows (#3207)
This commit is contained in:
parent
8ad0668612
commit
774e8d1d08
@ -8,7 +8,7 @@ import (
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/util"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/util/pathx"
|
||||
@ -73,6 +73,6 @@ func CreateApiTemplate(_ *cobra.Command, _ []string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
fmt.Println(aurora.Green("Done."))
|
||||
fmt.Println(color.Green.Render("Done."))
|
||||
return nil
|
||||
}
|
||||
|
@ -11,7 +11,7 @@ import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
apiformat "github.com/zeromicro/go-zero/tools/goctl/api/format"
|
||||
@ -109,7 +109,7 @@ func DoGenProject(apiFile, dir, style string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
fmt.Println(aurora.Green("Done."))
|
||||
fmt.Println(color.Green.Render("Done."))
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -152,14 +152,14 @@ func sweep() error {
|
||||
seconds, err := strconv.ParseInt(timestamp, 10, 64)
|
||||
if err != nil {
|
||||
// print error and ignore
|
||||
fmt.Println(aurora.Red(fmt.Sprintf("sweep ignored file: %s", fpath)))
|
||||
fmt.Println(color.Red.Sprintf("sweep ignored file: %s", fpath))
|
||||
return nil
|
||||
}
|
||||
|
||||
tm := time.Unix(seconds, 0)
|
||||
if tm.Before(keepTime) {
|
||||
if err := os.RemoveAll(fpath); err != nil {
|
||||
fmt.Println(aurora.Red(fmt.Sprintf("failed to remove file: %s", fpath)))
|
||||
fmt.Println(color.Red.Sprintf("failed to remove file: %s", fpath))
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
@ -5,7 +5,7 @@ import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/api/parser"
|
||||
@ -45,6 +45,6 @@ func JavaCommand(_ *cobra.Command, _ []string) error {
|
||||
logx.Must(genPacket(dir, packetName, api))
|
||||
logx.Must(genComponents(dir, packetName, api))
|
||||
|
||||
fmt.Println(aurora.Green("Done."))
|
||||
fmt.Println(color.Green.Render("Done."))
|
||||
return nil
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/api/parser"
|
||||
@ -45,7 +45,7 @@ func TsCommand(_ *cobra.Command, _ []string) error {
|
||||
|
||||
api, err := parser.Parse(apiFile)
|
||||
if err != nil {
|
||||
fmt.Println(aurora.Red("Failed"))
|
||||
fmt.Println(color.Red.Render("Failed"))
|
||||
return err
|
||||
}
|
||||
|
||||
@ -59,6 +59,6 @@ func TsCommand(_ *cobra.Command, _ []string) error {
|
||||
logx.Must(genHandler(dir, webAPI, caller, api, unwrapAPI))
|
||||
logx.Must(genComponents(dir, api))
|
||||
|
||||
fmt.Println(aurora.Green("Done."))
|
||||
fmt.Println(color.Green.Render("Done."))
|
||||
return nil
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/api/parser"
|
||||
)
|
||||
@ -27,7 +27,7 @@ func GoValidateApi(_ *cobra.Command, _ []string) error {
|
||||
|
||||
err = spec.Validate()
|
||||
if err == nil {
|
||||
fmt.Println(aurora.Green("api format ok"))
|
||||
fmt.Println(color.Green.Render("api format ok"))
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
@ -8,7 +8,7 @@ import (
|
||||
"strings"
|
||||
"text/template"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/withfig/autocomplete-tools/integrations/cobra"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/api"
|
||||
@ -44,7 +44,7 @@ var (
|
||||
func Execute() {
|
||||
os.Args = supportGoStdFlag(os.Args)
|
||||
if err := rootCmd.Execute(); err != nil {
|
||||
fmt.Println(aurora.Red(err.Error()))
|
||||
fmt.Println(color.Red.Render(err.Error()))
|
||||
os.Exit(codeFailure)
|
||||
}
|
||||
}
|
||||
|
@ -2,53 +2,40 @@ package cmd
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"runtime"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/vars"
|
||||
"github.com/gookit/color"
|
||||
)
|
||||
|
||||
var colorRender = []func(v any) string{
|
||||
func(v any) string {
|
||||
return aurora.BrightRed(v).String()
|
||||
return color.LightRed.Render(v)
|
||||
},
|
||||
func(v any) string {
|
||||
return aurora.BrightGreen(v).String()
|
||||
return color.LightGreen.Render(v)
|
||||
},
|
||||
func(v any) string {
|
||||
return aurora.BrightYellow(v).String()
|
||||
return color.LightYellow.Render(v)
|
||||
},
|
||||
func(v any) string {
|
||||
return aurora.BrightBlue(v).String()
|
||||
return color.LightBlue.Render(v)
|
||||
},
|
||||
func(v any) string {
|
||||
return aurora.BrightMagenta(v).String()
|
||||
return color.LightMagenta.Render(v)
|
||||
},
|
||||
func(v any) string {
|
||||
return aurora.BrightCyan(v).String()
|
||||
return color.LightCyan.Render(v)
|
||||
},
|
||||
}
|
||||
|
||||
func blue(s string) string {
|
||||
if runtime.GOOS == vars.OsWindows {
|
||||
return s
|
||||
}
|
||||
|
||||
return aurora.BrightBlue(s).String()
|
||||
return color.LightBlue.Render(s)
|
||||
}
|
||||
|
||||
func green(s string) string {
|
||||
if runtime.GOOS == vars.OsWindows {
|
||||
return s
|
||||
}
|
||||
|
||||
return aurora.BrightGreen(s).String()
|
||||
return color.LightGreen.Render(s)
|
||||
}
|
||||
|
||||
func rainbow(s string) string {
|
||||
if runtime.GOOS == vars.OsWindows {
|
||||
return s
|
||||
}
|
||||
s0 := s[0]
|
||||
return colorRender[int(s0)%(len(colorRender)-1)](s)
|
||||
}
|
||||
|
8
tools/goctl/compare/testdata/testdata.go
vendored
8
tools/goctl/compare/testdata/testdata.go
vendored
@ -9,7 +9,7 @@ import (
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/util/pathx"
|
||||
)
|
||||
|
||||
@ -34,7 +34,7 @@ func (f File) execute(goctl string) error {
|
||||
}
|
||||
printCommand := strings.ReplaceAll(fmt.Sprintf("cd %s && %s", printDir, f.Cmd), "goctl", filepath.Base(goctl))
|
||||
command := strings.ReplaceAll(fmt.Sprintf("cd %s && %s", dir, f.Cmd), "goctl", goctl)
|
||||
fmt.Println(aurora.BrightGreen(printCommand))
|
||||
fmt.Println(color.LightGreen.Render(printCommand))
|
||||
cmd := exec.Command("sh", "-c", command)
|
||||
cmd.Env = os.Environ()
|
||||
cmd.Stdout = os.Stdout
|
||||
@ -106,10 +106,10 @@ func MustRun(baseDir string) {
|
||||
must(err)
|
||||
goctlNew, err := exec.LookPath("goctl")
|
||||
must(err)
|
||||
fmt.Println(aurora.BrightBlue("========================goctl.old======================="))
|
||||
fmt.Println(color.LightBlue.Render("========================goctl.old======================="))
|
||||
must(oldFiles.execute(goctlOld))
|
||||
fmt.Println()
|
||||
fmt.Println(aurora.BrightBlue("========================goctl.new======================="))
|
||||
fmt.Println(color.LightBlue.Render("========================goctl.new======================="))
|
||||
must(newFiles.execute(goctlNew))
|
||||
}
|
||||
|
||||
|
@ -9,7 +9,7 @@ import (
|
||||
"strings"
|
||||
"text/template"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/util"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/util/env"
|
||||
@ -42,7 +42,7 @@ type Docker struct {
|
||||
func dockerCommand(_ *cobra.Command, _ []string) (err error) {
|
||||
defer func() {
|
||||
if err == nil {
|
||||
fmt.Println(aurora.Green("Done."))
|
||||
fmt.Println(color.Green.Render("Done."))
|
||||
}
|
||||
}()
|
||||
|
||||
|
@ -7,8 +7,8 @@ require (
|
||||
github.com/emicklei/proto v1.11.2
|
||||
github.com/fatih/structtag v1.2.0
|
||||
github.com/go-sql-driver/mysql v1.7.1
|
||||
github.com/gookit/color v1.5.3
|
||||
github.com/iancoleman/strcase v0.2.0
|
||||
github.com/logrusorgru/aurora v2.0.3+incompatible
|
||||
github.com/spf13/cobra v1.7.0
|
||||
github.com/spf13/pflag v1.0.5
|
||||
github.com/stretchr/testify v1.8.2
|
||||
@ -56,6 +56,7 @@ require (
|
||||
github.com/jackc/pgx/v5 v5.3.1 // indirect
|
||||
github.com/josharian/intern v1.0.0 // indirect
|
||||
github.com/json-iterator/go v1.1.12 // indirect
|
||||
github.com/logrusorgru/aurora v2.0.3+incompatible // indirect
|
||||
github.com/mailru/easyjson v0.7.7 // indirect
|
||||
github.com/mattn/go-colorable v0.1.13 // indirect
|
||||
github.com/mattn/go-isatty v0.0.17 // indirect
|
||||
@ -71,6 +72,7 @@ require (
|
||||
github.com/prometheus/common v0.42.0 // indirect
|
||||
github.com/prometheus/procfs v0.9.0 // indirect
|
||||
github.com/spaolacci/murmur3 v1.1.0 // indirect
|
||||
github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 // indirect
|
||||
github.com/yuin/gopher-lua v1.1.0 // indirect
|
||||
go.etcd.io/etcd/api/v3 v3.5.8 // indirect
|
||||
go.etcd.io/etcd/client/pkg/v3 v3.5.8 // indirect
|
||||
|
@ -185,6 +185,8 @@ github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+
|
||||
github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I=
|
||||
github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg=
|
||||
github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk=
|
||||
github.com/gookit/color v1.5.3 h1:twfIhZs4QLCtimkP7MOxlF3A0U/5cDPseRT9M/+2SCE=
|
||||
github.com/gookit/color v1.5.3/go.mod h1:NUzwzeehUfl7GIb36pqId+UGmRfQcU/WiiyTTeNjHtE=
|
||||
github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
|
||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.7.0/go.mod h1:hgWBS7lorOAVIJEQMi4ZsPv9hVvWI6+ch50m39Pf2Ks=
|
||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.15.0 h1:1JYBfzqrWPcCclBwxFCPAou9n+q86mfnu7NAeHfte7A=
|
||||
@ -286,6 +288,8 @@ github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ
|
||||
github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
|
||||
github.com/withfig/autocomplete-tools/integrations/cobra v1.2.1 h1:+dBg5k7nuTE38VVdoroRsT0Z88fmvdYrI2EjzJst35I=
|
||||
github.com/withfig/autocomplete-tools/integrations/cobra v1.2.1/go.mod h1:nmuySobZb4kFgFy6BptpXp/BBw+xFSyvVPP6auoJB4k=
|
||||
github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 h1:QldyIu/L63oPpyvQmHgvgickp1Yw510KJOqX7H24mg8=
|
||||
github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778/go.mod h1:2MuV+tbUrU1zIOPMxZ5EncGwgmMJsa+9ucAQZXxsObs=
|
||||
github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
|
@ -6,7 +6,7 @@ import (
|
||||
"fmt"
|
||||
"text/template"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/util"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/util/pathx"
|
||||
@ -111,7 +111,7 @@ func deploymentCommand(_ *cobra.Command, _ []string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
fmt.Println(aurora.Green("Done."))
|
||||
fmt.Println(color.Green.Render("Done."))
|
||||
return nil
|
||||
}
|
||||
|
||||
|
@ -11,15 +11,13 @@ import (
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"runtime"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/util/console"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/util/ctx"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/vars"
|
||||
)
|
||||
|
||||
const defaultMigrateVersion = "v1.3.0"
|
||||
@ -246,10 +244,7 @@ It's recommended to use the replacement package, do you want to replace?
|
||||
['Y' for yes, 'N' for no, 'A' for all, 'I' for ignore]: `,
|
||||
deprecated, replacement)
|
||||
|
||||
if runtime.GOOS != vars.OsWindows {
|
||||
msg = aurora.Yellow(msg).String()
|
||||
}
|
||||
fmt.Print(msg)
|
||||
fmt.Print(color.Yellow.Render(msg))
|
||||
|
||||
for {
|
||||
var in string
|
||||
|
@ -4,7 +4,7 @@ import (
|
||||
"fmt"
|
||||
"path/filepath"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/zeromicro/go-zero/core/errorx"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/api/apigen"
|
||||
@ -70,8 +70,8 @@ func genTemplates(_ *cobra.Command, _ []string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
fmt.Printf("Templates are generated in %s, %s\n", aurora.Green(abs),
|
||||
aurora.Red("edit on your risk!"))
|
||||
fmt.Printf("Templates are generated in %s, %s\n", color.Green.Render(abs),
|
||||
color.Red.Render("edit on your risk!"))
|
||||
|
||||
return nil
|
||||
}
|
||||
@ -116,7 +116,7 @@ func cleanTemplates(_ *cobra.Command, _ []string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
fmt.Printf("%s\n", aurora.Green("templates are cleaned!"))
|
||||
fmt.Printf("%s\n", color.Green.Render("templates are cleaned!"))
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -131,7 +131,7 @@ func updateTemplates(_ *cobra.Command, _ []string) (err error) {
|
||||
|
||||
defer func() {
|
||||
if err == nil {
|
||||
fmt.Println(aurora.Green(fmt.Sprintf("%s template are update!", category)).String())
|
||||
fmt.Println(color.Green.Sprintf("%s template are update!", category))
|
||||
}
|
||||
}()
|
||||
switch category {
|
||||
@ -170,7 +170,7 @@ func revertTemplates(_ *cobra.Command, _ []string) (err error) {
|
||||
|
||||
defer func() {
|
||||
if err == nil {
|
||||
fmt.Println(aurora.Green(fmt.Sprintf("%s template are reverted!", filename)).String())
|
||||
fmt.Println(color.Green.Sprintf("%s template are reverted!", filename))
|
||||
}
|
||||
}()
|
||||
switch category {
|
||||
|
@ -3,10 +3,8 @@ package console
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
"runtime"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/vars"
|
||||
"github.com/gookit/color"
|
||||
)
|
||||
|
||||
type (
|
||||
@ -63,32 +61,28 @@ func (c *colorConsole) Debug(format string, a ...any) {
|
||||
if !c.enable {
|
||||
return
|
||||
}
|
||||
msg := fmt.Sprintf(format, a...)
|
||||
println(aurora.BrightCyan(msg))
|
||||
println(color.LightCyan.Sprintf(format, a...))
|
||||
}
|
||||
|
||||
func (c *colorConsole) Success(format string, a ...any) {
|
||||
if !c.enable {
|
||||
return
|
||||
}
|
||||
msg := fmt.Sprintf(format, a...)
|
||||
println(aurora.BrightGreen(msg))
|
||||
println(color.LightGreen.Sprintf(format, a...))
|
||||
}
|
||||
|
||||
func (c *colorConsole) Warning(format string, a ...any) {
|
||||
if !c.enable {
|
||||
return
|
||||
}
|
||||
msg := fmt.Sprintf(format, a...)
|
||||
println(aurora.BrightYellow(msg))
|
||||
println(color.LightYellow.Sprintf(format, a...))
|
||||
}
|
||||
|
||||
func (c *colorConsole) Error(format string, a ...any) {
|
||||
if !c.enable {
|
||||
return
|
||||
}
|
||||
msg := fmt.Sprintf(format, a...)
|
||||
println(aurora.BrightRed(msg))
|
||||
println(color.LightRed.Sprintf(format, a...))
|
||||
}
|
||||
|
||||
func (c *colorConsole) Fatalln(format string, a ...any) {
|
||||
@ -126,8 +120,7 @@ func (i *ideaConsole) Info(format string, a ...any) {
|
||||
}
|
||||
|
||||
func (i *ideaConsole) Debug(format string, a ...any) {
|
||||
msg := fmt.Sprintf(format, a...)
|
||||
fmt.Println(aurora.BrightCyan(msg))
|
||||
fmt.Println(color.LightCyan.Sprintf(format, a...))
|
||||
}
|
||||
|
||||
func (i *ideaConsole) Success(format string, a ...any) {
|
||||
@ -161,17 +154,6 @@ func (i *ideaConsole) Must(err error) {
|
||||
}
|
||||
|
||||
func println(msg any) {
|
||||
value, ok := msg.(aurora.Value)
|
||||
if !ok {
|
||||
fmt.Println(msg)
|
||||
}
|
||||
|
||||
goos := runtime.GOOS
|
||||
if goos == vars.OsWindows {
|
||||
fmt.Println(value.Value())
|
||||
return
|
||||
}
|
||||
|
||||
fmt.Println(msg)
|
||||
}
|
||||
|
||||
|
@ -12,7 +12,7 @@ import (
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
"github.com/logrusorgru/aurora"
|
||||
"github.com/gookit/color"
|
||||
"github.com/zeromicro/go-zero/tools/goctl/internal/version"
|
||||
)
|
||||
|
||||
@ -58,7 +58,7 @@ func RemoveOrQuit(filename string) error {
|
||||
}
|
||||
|
||||
fmt.Printf("%s exists, overwrite it?\nEnter to overwrite or Ctrl-C to cancel...",
|
||||
aurora.BgRed(aurora.Bold(filename)))
|
||||
color.New(color.BgRed, color.Bold).Render(filename))
|
||||
bufio.NewReader(os.Stdin).ReadBytes('\n')
|
||||
|
||||
return os.Remove(filename)
|
||||
|
Loading…
Reference in New Issue
Block a user