patch 9.1.0705: Sorting of fuzzy filename completion is not stable
Problem: Sorting of fuzzy filename completion is not stable
Solution: Compare indexes when scores are equal. Fix some typos.
(zeertzjq)
closes: #15593
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
41ba26566f
commit
58d705238c
@ -3546,7 +3546,8 @@ static int compare_scores(const void *a, const void *b)
|
||||
int idx_b = *(const int *)b;
|
||||
int score_a = compl_fuzzy_scores[idx_a];
|
||||
int score_b = compl_fuzzy_scores[idx_b];
|
||||
return (score_a > score_b) ? -1 : (score_a < score_b) ? 1 : 0;
|
||||
return score_a == score_b ? (idx_a == idx_b ? 0 : (idx_a < idx_b ? -1 : 1))
|
||||
: (score_a > score_b ? -1 : 1);
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
@ -5217,7 +5217,7 @@ search_for_fuzzy_match(
|
||||
{
|
||||
pos_T current_pos = *pos;
|
||||
pos_T circly_end;
|
||||
int found_new_match = FAIL;
|
||||
int found_new_match = FALSE;
|
||||
int looped_around = FALSE;
|
||||
|
||||
if (whole_line)
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
|/+0&#ffffff0|n|o|n|_|e|x|i|t|_|f|o|l|d|e|r> @58
|
||||
|/+0&#ffffff0|n|o|n|_|e|x|i|s|t|i|n|g|_|f|o|l|d|e|r> @54
|
||||
|~+0#4040ff13&| @73
|
||||
|~| @73
|
||||
|~| @73
|
||||
|
||||
@ -1494,7 +1494,7 @@ func Test_pum_highlights_match()
|
||||
call VerifyScreenDump(buf, 'Test_pum_highlights_11', {})
|
||||
|
||||
" issue #15357
|
||||
call term_sendkeys(buf, "\<ESC>S/non_exit_folder\<C-X>\<C-F>")
|
||||
call term_sendkeys(buf, "\<ESC>S/non_existing_folder\<C-X>\<C-F>")
|
||||
call TermWait(buf, 50)
|
||||
call VerifyScreenDump(buf, 'Test_pum_highlights_15', {})
|
||||
|
||||
|
||||
@ -704,6 +704,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
705,
|
||||
/**/
|
||||
704,
|
||||
/**/
|
||||
|
||||
Reference in New Issue
Block a user