Mercurial > vim
changeset 12236:55cf556d8ce1 v8.0.0998
patch 8.0.0998: strange error when using K while only spaces are selected
commit https://github.com/vim/vim/commit/a4f99f5a8b827162a26ca4e4d59f4f224503398a
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Aug 26 16:25:32 2017 +0200
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.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 26 Aug 2017 16:30:04 +0200 |
parents | ab43482fc551 |
children | 6dac7d6ad877 |
files | src/normal.c src/testdir/test_help.vim src/version.c |
diffstat | 3 files changed, 24 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/normal.c +++ b/src/normal.c @@ -5648,6 +5648,11 @@ nv_ident(cmdarg_T *cap) kp = (*curbuf->b_p_kp == NUL ? p_kp : curbuf->b_p_kp); kp_help = (*kp == NUL || STRCMP(kp, ":he") == 0 || STRCMP(kp, ":help") == 0); + if (kp_help && *skipwhite(ptr) == NUL) + { + EMSG(_(e_noident)); /* found white space only */ + return; + } kp_ex = (*kp == ':'); buflen = (unsigned)(n * 2 + 30 + STRLEN(kp)); buf = alloc(buflen);
--- a/src/testdir/test_help.vim +++ b/src/testdir/test_help.vim @@ -12,4 +12,21 @@ endfunc func Test_help_errors() call assert_fails('help doesnotexist', 'E149:') 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