patch 9.1.1929: completion: spell completion wrong with fuzzy
Commit:
https://github.com/vim/vim/commit/0e1ab0adb82c352c4fc7aea40ffecf3ef69ba8a7
Author: Maxim Kim <
hab...@gmail.com>
Date: Wed Nov 26 20:23:44 2025 +0000
patch 9.1.1929: completion: spell completion wrong with fuzzy
Problem: completion: spell completion wrong with fuzzy
Solution: Disable fuzzy sort for spell completion
(Maxim Kim)
fixes #18800
closes: #18809
Signed-off-by: Maxim Kim <
hab...@gmail.com>
Signed-off-by: Christian Brabandt <
c...@256bit.org>
diff --git a/src/insexpand.c b/src/insexpand.c
index 8ec549ae0..22caba3df 100644
--- a/src/insexpand.c
+++ b/src/insexpand.c
@@ -5710,7 +5710,7 @@ ins_compl_get_exp(pos_T *ini)
}
may_trigger_modechanged();
- if (match_count > 0)
+ if (match_count > 0 && !ctrl_x_mode_spell())
{
if (is_nearest_active() && !ins_compl_has_preinsert())
sort_compl_match_list(cp_compare_nearest);
diff --git a/src/testdir/test_ins_complete.vim b/src/testdir/test_ins_complete.vim
index 77be5b42e..fbc15e5c1 100644
--- a/src/testdir/test_ins_complete.vim
+++ b/src/testdir/test_ins_complete.vim
@@ -1320,6 +1320,23 @@ func Test_complete_wholeline()
bw!
endfunc
+" Test for using CTRL-X CTRL-S to complete spell suggestions
+func Test_complete_spell()
+ new
+ setlocal spell
+ " without fuzzy
+ call setline(1, 'The rigth thing')
+ exe "normal! A\<C-X>\<C-S>"
+ call assert_equal('The right thing', getline(1))
+ %d
+ " with fuzzy
+ setlocal completeopt+=fuzzy
+ call setline(1, 'The rigth thing')
+ exe "normal! A\<C-X>\<C-S>"
+ call assert_equal('The right thing', getline(1))
+ bw!
+endfunc
+
" Test insert completion with 'cindent' (adjust the indent)
func Test_complete_with_cindent()
new
diff --git a/src/version.c b/src/version.c
index 8210130ee..99a865d2a 100644
--- a/src/version.c
+++ b/src/version.c
@@ -729,6 +729,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 1929,
/**/
1928,
/**/