mirror of
https://github.com/neovim/neovim.git
synced 2025-09-20 10:18:18 +00:00
vim-patch:8.0.0998: strange error when using K while only spaces are selected
Problem: Strange error when using K while only spaces are selected.
(Christian J. Robinson)
Solution: Check for blank argument.
a4f99f5a8b
This commit is contained in:
@@ -4771,6 +4771,10 @@ static void nv_ident(cmdarg_T *cap)
|
|||||||
assert(*kp != NUL); // option.c:do_set() should default to ":help" if empty.
|
assert(*kp != NUL); // option.c:do_set() should default to ":help" if empty.
|
||||||
bool kp_ex = (*kp == ':'); // 'keywordprg' is an ex command
|
bool kp_ex = (*kp == ':'); // 'keywordprg' is an ex command
|
||||||
bool kp_help = (STRCMP(kp, ":he") == 0 || STRCMP(kp, ":help") == 0);
|
bool kp_help = (STRCMP(kp, ":he") == 0 || STRCMP(kp, ":help") == 0);
|
||||||
|
if (kp_help && *skipwhite(ptr) == NUL) {
|
||||||
|
EMSG(_(e_noident)); // found white space only
|
||||||
|
return;
|
||||||
|
}
|
||||||
size_t buf_size = n * 2 + 30 + STRLEN(kp);
|
size_t buf_size = n * 2 + 30 + STRLEN(kp);
|
||||||
char *buf = xmalloc(buf_size);
|
char *buf = xmalloc(buf_size);
|
||||||
buf[0] = NUL;
|
buf[0] = NUL;
|
||||||
|
@@ -13,4 +13,21 @@ endfunc
|
|||||||
func Test_help_errors()
|
func Test_help_errors()
|
||||||
call assert_fails('help doesnotexist', 'E149:')
|
call assert_fails('help doesnotexist', 'E149:')
|
||||||
call assert_fails('help!', 'E478:')
|
call assert_fails('help!', 'E478:')
|
||||||
|
|
||||||
|
new
|
||||||
|
set keywordprg=:help
|
||||||
|
call setline(1, " ")
|
||||||
|
call assert_fails('normal VK', 'E349:')
|
||||||
|
bwipe!
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
func Test_help_keyword()
|
||||||
|
new
|
||||||
|
set keywordprg=:help
|
||||||
|
call setline(1, " Visual ")
|
||||||
|
normal VK
|
||||||
|
call assert_match('^Visual mode', getline('.'))
|
||||||
|
call assert_equal('help', &ft)
|
||||||
|
close
|
||||||
|
bwipe!
|
||||||
endfunc
|
endfunc
|
||||||
|
Reference in New Issue
Block a user