From 16f647393838ea3eb0778a45178323aea21b67a0 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Sun, 21 Jan 2024 02:52:28 +0900 Subject: Change mattn/go-runewidth dependency to rivo/uniseg for accurate results Related #3588 #3588 #3567 --- src/util/util.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/util') diff --git a/src/util/util.go b/src/util/util.go index 91884378..46950812 100644 --- a/src/util/util.go +++ b/src/util/util.go @@ -6,14 +6,13 @@ import ( "strings" "time" - "github.com/junegunn/go-runewidth" + "github.com/junegunn/uniseg" "github.com/mattn/go-isatty" - "github.com/rivo/uniseg" ) // StringWidth returns string width where each CR/LF character takes 1 column func StringWidth(s string) int { - return runewidth.StringWidth(s) + strings.Count(s, "\n") + strings.Count(s, "\r") + return uniseg.StringWidth(s) + strings.Count(s, "\n") + strings.Count(s, "\r") } // RunesWidth returns runes width @@ -165,7 +164,7 @@ func RepeatToFill(str string, length int, limit int) string { output := strings.Repeat(str, times) if rest > 0 { for _, r := range str { - rest -= runewidth.RuneWidth(r) + rest -= uniseg.StringWidth(string(r)) if rest < 0 { break } -- cgit v1.2.3