From 389308dfd812a499df5dac86d98c8e1be9604dea Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Tue, 22 Apr 2014 19:31:31 +0100 Subject: Preserve current word in word completion if found elsewhere If occurence count in the buffer if greater that one, do not remove it from the matches. --- src/input_handler.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/input_handler.cc') diff --git a/src/input_handler.cc b/src/input_handler.cc index 037bcdcf..49c02367 100644 --- a/src/input_handler.cc +++ b/src/input_handler.cc @@ -776,11 +776,13 @@ public: String current_word{begin, end}; + auto& word_db = get_word_db(buffer); std::unordered_set matches; - auto bufmatches = get_word_db(buffer).find_prefix(prefix); + auto bufmatches = word_db.find_prefix(prefix); matches.insert(bufmatches.begin(), bufmatches.end()); - matches.erase(current_word); + if (word_db.get_word_occurences(current_word) <= 1) + matches.erase(current_word); if (other_buffers) { -- cgit v1.2.3