diff --git a/go.mod b/go.mod index 615155332..1a64c445f 100644 --- a/go.mod +++ b/go.mod @@ -15,7 +15,7 @@ require ( github.com/creack/pty v1.1.24 github.com/gdamore/tcell/v3 v3.3.0 github.com/go-errors/errors v1.5.1 - github.com/gookit/color v1.6.0 + github.com/gookit/color v1.6.1 github.com/integrii/flaggy v1.8.0 github.com/jesseduffield/generics v0.0.0-20250517122708-b0b4a53a6f5c github.com/jesseduffield/lazycore v0.0.0-20221012050358-03d2e40243c5 diff --git a/go.sum b/go.sum index 8ac21030f..0fa338e30 100644 --- a/go.sum +++ b/go.sum @@ -44,8 +44,8 @@ github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= github.com/gookit/assert v0.1.1 h1:lh3GcawXe/p+cU7ESTZ5Ui3Sm/x8JWpIis4/1aF0mY0= github.com/gookit/assert v0.1.1/go.mod h1:jS5bmIVQZTIwk42uXl4lyj4iaaxx32tqH16CFj0VX2E= -github.com/gookit/color v1.6.0 h1:JjJXBTk1ETNyqyilJhkTXJYYigHG24TM9Xa2M1xAhRA= -github.com/gookit/color v1.6.0/go.mod h1:9ACFc7/1IpHGBW8RwuDm/0YEnhg3dwwXpoMsmtyHfjs= +github.com/gookit/color v1.6.1 h1:KoTnDxJPRgrL0SoX0f8rCFg2zI0t4E3GZZBMo2nN8LU= +github.com/gookit/color v1.6.1/go.mod h1:9ACFc7/1IpHGBW8RwuDm/0YEnhg3dwwXpoMsmtyHfjs= github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= github.com/integrii/flaggy v1.8.0 h1:tC1qWwg4fhF2Qdaj+MpPK04cxlOSq0+HoMZqAW6Arao= diff --git a/vendor/github.com/gookit/color/.gitignore b/vendor/github.com/gookit/color/.gitignore index 4ce2d4456..e726419b9 100644 --- a/vendor/github.com/gookit/color/.gitignore +++ b/vendor/github.com/gookit/color/.gitignore @@ -19,3 +19,4 @@ .DS_Store app demo +.xenv.toml \ No newline at end of file diff --git a/vendor/github.com/gookit/color/color.go b/vendor/github.com/gookit/color/color.go index 8c204fe9a..a51bde09d 100644 --- a/vendor/github.com/gookit/color/color.go +++ b/vendor/github.com/gookit/color/color.go @@ -227,8 +227,13 @@ func RenderString(code string, str string) string { return ClearCode(str) } - // return fmt.Sprintf(FullColorTpl, code, str) - return StartSet + code + "m" + str + ResetSet + open := StartSet + code + "m" + // If the string contains reset sequences, re-apply our color after each + // reset so that nested colored args don't break the outer color. + if strings.Contains(str, ResetSet) { + str = strings.ReplaceAll(str, ResetSet, ResetSet+open) + } + return open + str + ResetSet } // ClearCode clear color codes. diff --git a/vendor/github.com/gookit/color/convert.go b/vendor/github.com/gookit/color/convert.go index cc1f31cf0..21344e70a 100644 --- a/vendor/github.com/gookit/color/convert.go +++ b/vendor/github.com/gookit/color/convert.go @@ -767,15 +767,15 @@ func RgbStrToHsl(rgbStr string) []float64 { } r, e1 := strconv.ParseInt(strings.TrimSpace(rgbVals[0]), 10, 0) - if e1 != nil { + if e1 != nil || r < 0 || r > 255 { return nil } g, e2 := strconv.ParseInt(strings.TrimSpace(rgbVals[1]), 10, 0) - if e2 != nil { + if e2 != nil || g < 0 || g > 255 { return nil } b, e3 := strconv.ParseInt(strings.TrimSpace(rgbVals[2]), 10, 0) - if e3 != nil { + if e3 != nil || b < 0 || b > 255 { return nil } return RgbToHsl(uint8(r), uint8(g), uint8(b)) diff --git a/vendor/github.com/gookit/color/detect_windows.go b/vendor/github.com/gookit/color/detect_windows.go index 7c331be7c..16b58b9c0 100644 --- a/vendor/github.com/gookit/color/detect_windows.go +++ b/vendor/github.com/gookit/color/detect_windows.go @@ -30,11 +30,8 @@ var ( ) func init() { - // if support color 16+, don't need to enable VTP - if colorLevel > Level16 { - return - } - if !Enable { // disable color + // needVTP=false OR Enable=false: Don't need to enable virtual process + if !needVTP || !Enable { return } @@ -146,7 +143,7 @@ func detectSpecialTermColor(termVal string) (tl Level, needVTP bool) { } // Windows 10 build 14931 is the first release that supports 16m/TrueColor - debugf("support True Color on windows version is >= build 14931") + debugf("support True Color on windows version >= 14931, needVTP=true") return LevelRgb, true } diff --git a/vendor/modules.txt b/vendor/modules.txt index c44cb0e50..4adeb40f0 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -63,7 +63,7 @@ github.com/go-errors/errors github.com/go-logfmt/logfmt # github.com/google/go-cmp v0.7.0 ## explicit; go 1.21 -# github.com/gookit/color v1.6.0 +# github.com/gookit/color v1.6.1 ## explicit; go 1.18 github.com/gookit/color # github.com/hpcloud/tail v1.0.0