From 00e357ed560fd0c152afc75091e5cc5278e02b85 Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Mon, 17 Sep 2012 13:37:08 +0200 Subject: [PATCH] PromptMode: fix completion of non-last parameters --- src/client.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/client.cc b/src/client.cc index b7562ada..8e172583 100644 --- a/src/client.cc +++ b/src/client.cc @@ -245,6 +245,7 @@ public: if (not contains(candidates, prefix)) candidates.push_back(std::move(prefix)); } + if (not reverse and ++m_current_completion >= candidates.size()) m_current_completion = 0; if (reverse and --m_current_completion < 0) @@ -252,7 +253,8 @@ public: const String& completion = candidates[m_current_completion]; m_client.menu_select(m_current_completion); - m_result = m_result.substr(0, m_completions.start) + completion; + m_result = m_result.substr(0, m_completions.start) + completion + + m_result.substr(m_cursor_pos); m_cursor_pos = m_completions.start + completion.length(); } else