From bd1d119ba9369804b71fb7e8564a16d98c8a26cd Mon Sep 17 00:00:00 2001 From: Josh Yan Date: Thu, 30 May 2024 10:24:21 -0700 Subject: [PATCH 1/2] fixed japanese characters deleted at end of line --- cmd/cmd.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cmd/cmd.go b/cmd/cmd.go index 12071db9..8709fa7c 100644 --- a/cmd/cmd.go +++ b/cmd/cmd.go @@ -755,7 +755,11 @@ func displayResponse(content string, wordWrap bool, state *displayResponseState) } // backtrack the length of the last word and clear to the end of the line - fmt.Printf("\x1b[%dD\x1b[K\n", runewidth.StringWidth(state.wordBuffer)) + a := runewidth.StringWidth(state.wordBuffer) + if a > 0 { + fmt.Printf("\x1b[%dD", runewidth.StringWidth(state.wordBuffer)) + } + fmt.Printf("\x1b[K\n") fmt.Printf("%s%c", state.wordBuffer, ch) chWidth := runewidth.RuneWidth(ch) From 914f68f02120abf023690b1a257a570c3a5b12c4 Mon Sep 17 00:00:00 2001 From: Josh Yan Date: Thu, 30 May 2024 10:38:07 -0700 Subject: [PATCH 2/2] replaced duplicate call with variable --- cmd/cmd.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/cmd.go b/cmd/cmd.go index 8709fa7c..b285f83c 100644 --- a/cmd/cmd.go +++ b/cmd/cmd.go @@ -757,7 +757,7 @@ func displayResponse(content string, wordWrap bool, state *displayResponseState) // backtrack the length of the last word and clear to the end of the line a := runewidth.StringWidth(state.wordBuffer) if a > 0 { - fmt.Printf("\x1b[%dD", runewidth.StringWidth(state.wordBuffer)) + fmt.Printf("\x1b[%dD", a) } fmt.Printf("\x1b[K\n") fmt.Printf("%s%c", state.wordBuffer, ch)