From eaaf08e42504f5986b919ca4690d876424cee4e9 Mon Sep 17 00:00:00 2001 From: Gokcehan Date: Sun, 30 May 2021 20:43:17 +0300 Subject: [PATCH] ignore erase line escape code cc #440 --- ui.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ui.go b/ui.go index 54c864b..da93dfb 100644 --- a/ui.go +++ b/ui.go @@ -171,7 +171,7 @@ func printLength(s string) int { r, w := utf8.DecodeRuneInString(s[i:]) if r == gEscapeCode && i+1 < len(s) && s[i+1] == '[' { - j := strings.IndexByte(s[i:min(len(s), i+64)], 'm') + j := strings.IndexAny(s[i:min(len(s), i+64)], "mK") if j == -1 { continue } @@ -199,12 +199,13 @@ func (win *win) print(screen tcell.Screen, x, y int, st tcell.Style, s string) t r, w := utf8.DecodeRuneInString(s[i:]) if r == gEscapeCode && i+1 < len(s) && s[i+1] == '[' { - j := strings.IndexByte(s[i:min(len(s), i+64)], 'm') + j := strings.IndexAny(s[i:min(len(s), i+64)], "mK") if j == -1 { continue } - - st = applyAnsiCodes(s[i+2:i+j], st) + if s[i+j] == 'm' { + st = applyAnsiCodes(s[i+2:i+j], st) + } i += j continue