diff options
author | zeertzjq <zeertzjq@outlook.com> | 2023-08-16 07:12:47 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-16 07:12:47 +0800 |
commit | f92bda1dad462de81ec92134dfa9ba637edc7bb7 (patch) | |
tree | 7acd1c0b2eefabf3e0e223daf5b51100ab543ed9 | |
parent | a245dd79a267c8b56866023e84b49d0ecffca65b (diff) | |
download | rneovim-f92bda1dad462de81ec92134dfa9ba637edc7bb7.tar.gz rneovim-f92bda1dad462de81ec92134dfa9ba637edc7bb7.tar.bz2 rneovim-f92bda1dad462de81ec92134dfa9ba637edc7bb7.zip |
vim-patch:9.0.1718: dict-completion does not respect region (#24733)
Problem: dict-completion does not respect region
Solution: respect selected region in dict completion
Set do_region to zero as we don't want a complete dump of the matching
words, we want the code to filter them according to the user's selected
region.
closes: vim/vim#12792
closes: vim/vim#7025
https://github.com/vim/vim/commit/e98fb643ec5f84f9088c8b1434a0bd6ff988dc2d
Co-authored-by: LemonBoy <thatlemon@gmail.com>
-rw-r--r-- | src/nvim/spell.c | 8 | ||||
-rw-r--r-- | test/old/testdir/test_spell.vim | 3 |
2 files changed, 4 insertions, 7 deletions
diff --git a/src/nvim/spell.c b/src/nvim/spell.c index ce0d0dd5de..6725674ca7 100644 --- a/src/nvim/spell.c +++ b/src/nvim/spell.c @@ -3260,11 +3260,9 @@ void spell_dump_compl(char *pat, int ic, Direction *dir, int dumpflags_arg) } } - if (do_region && region_names != NULL) { - if (pat == NULL) { - vim_snprintf(IObuff, IOSIZE, "/regions=%s", region_names); - ml_append(lnum++, IObuff, (colnr_T)0, false); - } + if (do_region && region_names != NULL && pat == NULL) { + vim_snprintf(IObuff, IOSIZE, "/regions=%s", region_names); + ml_append(lnum++, IObuff, (colnr_T)0, false); } else { do_region = false; } diff --git a/test/old/testdir/test_spell.vim b/test/old/testdir/test_spell.vim index 7576e57c3f..93a69dbd1d 100644 --- a/test/old/testdir/test_spell.vim +++ b/test/old/testdir/test_spell.vim @@ -274,8 +274,7 @@ func Test_compl_with_CTRL_X_CTRL_K_using_spell() call assert_equal(['theater'], getline(1, '$')) set spelllang=en_gb call feedkeys("Stheat\<c-x>\<c-k>\<esc>", 'tnx') - " FIXME: commented out, expected theatre bug got theater. See issue #7025. - " call assert_equal(['theatre'], getline(1, '$')) + call assert_equal(['theatre'], getline(1, '$')) bwipe! set spell& spelllang& dictionary& ignorecase& |