From f360671e2abf5a21b9a2db7be6f965dcb8530f6f Mon Sep 17 00:00:00 2001 From: TorchedSammy <38820196+TorchedSammy@users.noreply.github.com> Date: Wed, 20 Apr 2022 18:27:29 -0400 Subject: [PATCH] fix(readline): change input text if it doesnt match supplied prefix for completions --- readline/tab-virtual.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/readline/tab-virtual.go b/readline/tab-virtual.go index fa7318e..32dea47 100644 --- a/readline/tab-virtual.go +++ b/readline/tab-virtual.go @@ -73,7 +73,12 @@ func (rl *Instance) insertCandidate() { // Ensure no indexing error happens with prefix if len(completion) >= prefix { - rl.insert([]rune(completion[prefix:])) + comp := completion[prefix:] + if completion[:prefix] != rl.tcPrefix { + rl.viDeleteByAdjust(-prefix) + comp = completion + } + rl.insert([]rune(comp)) if !cur.TrimSlash && !cur.NoSpace { rl.insert([]rune(" ")) }