aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2025-03-22 06:32:49 +0800
committerzeertzjq <zeertzjq@outlook.com>2025-03-27 07:26:42 +0800
commit0af780e8df849f6d393873124afaa31681ab43ec (patch)
tree6dc54fcd969c977ad35c02fc6ad3c5ce91f74e27
parente39cdafed96813567128c931a6b784b6858dcc13 (diff)
downloadrneovim-0af780e8df849f6d393873124afaa31681ab43ec.tar.gz
rneovim-0af780e8df849f6d393873124afaa31681ab43ec.tar.bz2
rneovim-0af780e8df849f6d393873124afaa31681ab43ec.zip
vim-patch:9.1.1228: completion: current position column wrong after got a match
Problem: The current_pos.col was incorrectly updated to the length of the matching text. This will cause the next search to start from the wrong position. Solution: current_pos has already been updated in search_str_in_line and does not need to be changed (glepnir) closes: vim/vim#16941 https://github.com/vim/vim/commit/5753084042e17d794627d77e4300def031ce5498 Co-authored-by: glepnir <glephunter@gmail.com>
-rw-r--r--src/nvim/search.c1
-rw-r--r--test/old/testdir/test_ins_complete.vim4
2 files changed, 4 insertions, 1 deletions
diff --git a/src/nvim/search.c b/src/nvim/search.c
index 6db5fc159b..b38296ac5c 100644
--- a/src/nvim/search.c
+++ b/src/nvim/search.c
@@ -3749,7 +3749,6 @@ bool search_for_fuzzy_match(buf_T *buf, pos_T *pos, char *pattern, int dir, pos_
}
}
*len = (int)(next_word_end - *ptr);
- current_pos.col = *len;
}
}
*pos = current_pos;
diff --git a/test/old/testdir/test_ins_complete.vim b/test/old/testdir/test_ins_complete.vim
index 135e85b6c2..4bb537c081 100644
--- a/test/old/testdir/test_ins_complete.vim
+++ b/test/old/testdir/test_ins_complete.vim
@@ -2996,6 +2996,10 @@ func Test_complete_fuzzy_collect()
call feedkeys("Sh\<C-X>\<C-K>\<C-N>\<C-N>\<CR>\<Esc>0", 'tx!')
call assert_equal('think', getline(line('.') - 1))
+ call setline(1, ['foo bar fuzzy', 'completefuzzycollect'])
+ call feedkeys("Gofuzzy\<C-X>\<C-N>\<C-N>\<C-N>\<C-Y>\<Esc>0", 'tx!')
+ call assert_equal('completefuzzycollect', getline('.'))
+
bw!
bw!
set dict&