From 66ca16f836f70d90ab751dcc804bf158f0c5ae48 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Tue, 11 Feb 2025 23:41:13 +0900 Subject: Truncate wrap signs in extremely narrow preview window --- src/tui/light.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'src/tui/light.go') diff --git a/src/tui/light.go b/src/tui/light.go index bf2a2fd2..aaa9e56f 100644 --- a/src/tui/light.go +++ b/src/tui/light.go @@ -1159,9 +1159,16 @@ func (w *LightWindow) fill(str string, resetCode string) FillReturn { w.Move(w.posy+1, 0) w.renderer.stderr(resetCode) if len(lines) > 1 { - w.stderrInternal(DIM+w.wrapSign, false, resetCode) + sign := w.wrapSign + width := w.wrapSignWidth + if width > w.width-w.posx { + runes, truncatedWidth := util.Truncate(w.wrapSign, w.width-w.posx) + sign = string(runes) + width = truncatedWidth + } + w.stderrInternal(DIM+sign, false, resetCode) w.renderer.stderr(resetCode) - w.Move(w.posy, w.wrapSignWidth) + w.Move(w.posy, width) } } } -- cgit v1.2.3