From 87f7f436e8e6de98336eb26d695bec93cc5b6b07 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Sat, 15 Mar 2025 18:42:08 +0900 Subject: Fix ghost text with inline info Fix #4312 --- src/terminal.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/terminal.go b/src/terminal.go index 8f8b800a..1d89d235 100644 --- a/src/terminal.go +++ b/src/terminal.go @@ -2485,6 +2485,10 @@ func (t *Terminal) printInfoImpl() { outputPrinter, outputLen = t.ansiLabelPrinter(output, &tui.ColInfo, false) } + shiftLen := t.queryLen[0] + t.queryLen[1] + 1 + if shiftLen == 1 && len(t.ghost) > 0 { + shiftLen = util.StringWidth(t.ghost) + } switch t.infoStyle { case infoDefault: if !move(line+1, 0, t.separatorLen == 0) { @@ -2498,9 +2502,9 @@ func (t *Terminal) printInfoImpl() { return } case infoInlineRight: - pos = t.promptLen + t.queryLen[0] + t.queryLen[1] + 1 + pos = t.promptLen + shiftLen case infoInline: - pos = t.promptLen + t.queryLen[0] + t.queryLen[1] + 1 + pos = t.promptLen + shiftLen printInfoPrefix() } -- cgit v1.2.3