mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
vim-patch:8.0.1383: local additions in help skips some files
Problem: Local additions in help skips some files. (joshklod)
Solution: Check the base file name length equals.
35c5e8155d
This commit is contained in:
parent
d4cc4e0871
commit
5c90bbae2a
@ -5017,11 +5017,9 @@ void fix_help_buffer(void)
|
|||||||
const char_u *const f1 = fnames[i1];
|
const char_u *const f1 = fnames[i1];
|
||||||
const char_u *const f2 = fnames[i2];
|
const char_u *const f2 = fnames[i2];
|
||||||
const char_u *const t1 = path_tail(f1);
|
const char_u *const t1 = path_tail(f1);
|
||||||
if (fnamencmp(f1, f2, t1 - f1) != 0) {
|
const char_u *const t2 = path_tail(f2);
|
||||||
continue;
|
|
||||||
}
|
|
||||||
const char_u *const e1 = STRRCHR(t1, '.');
|
const char_u *const e1 = STRRCHR(t1, '.');
|
||||||
const char_u *const e2 = STRRCHR(path_tail(f2), '.');
|
const char_u *const e2 = STRRCHR(t2, '.');
|
||||||
if (e1 == NULL || e2 == NULL) {
|
if (e1 == NULL || e2 == NULL) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -5032,8 +5030,10 @@ void fix_help_buffer(void)
|
|||||||
fnames[i1] = NULL;
|
fnames[i1] = NULL;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (fnamencmp(f1, f2, e1 - f1) != 0)
|
if (e1 - f1 != e2 - f2
|
||||||
|
|| fnamencmp(f1, f2, e1 - f1) != 0) {
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
if (fnamecmp(e1, ".txt") == 0
|
if (fnamecmp(e1, ".txt") == 0
|
||||||
&& fnamecmp(e2, fname + 4) == 0) {
|
&& fnamecmp(e2, fname + 4) == 0) {
|
||||||
/* use .abx instead of .txt */
|
/* use .abx instead of .txt */
|
||||||
|
@ -31,3 +31,22 @@ func Test_help_keyword()
|
|||||||
close
|
close
|
||||||
bwipe!
|
bwipe!
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_help_local_additions()
|
||||||
|
call mkdir('Xruntime/doc', 'p')
|
||||||
|
call writefile(['*mydoc.txt* my awesome doc'], 'Xruntime/doc/mydoc.txt')
|
||||||
|
call writefile(['*mydoc-ext.txt* my extended awesome doc'], 'Xruntime/doc/mydoc-ext.txt')
|
||||||
|
let rtp_save = &rtp
|
||||||
|
set rtp+=./Xruntime
|
||||||
|
help
|
||||||
|
1
|
||||||
|
call search('mydoc.txt')
|
||||||
|
call assert_equal('|mydoc.txt| my awesome doc', getline('.'))
|
||||||
|
1
|
||||||
|
call search('mydoc-ext.txt')
|
||||||
|
call assert_equal('|mydoc-ext.txt| my extended awesome doc', getline('.'))
|
||||||
|
close
|
||||||
|
|
||||||
|
call delete('Xruntime', 'rf')
|
||||||
|
let &rtp = rtp_save
|
||||||
|
endfunc
|
||||||
|
Loading…
Reference in New Issue
Block a user