0
0
mirror of https://github.com/vim/vim.git synced 2025-09-23 03:43:49 -04:00

patch 8.1.2113: ":help expr-!~?" only works after searching

Problem:    ":help expr-!~?" only works after searching.
Solution:   Escape "~" after "expr-". (closes #5015)
This commit is contained in:
Bram Moolenaar
2019-10-05 11:30:09 +02:00
parent 4c063dde73
commit 9ca250855b
3 changed files with 21 additions and 3 deletions

View File

@@ -5547,12 +5547,22 @@ find_help_tags(
if (STRNICMP(arg, "expr-", 5) == 0)
{
// When the string starting with "expr-" and containing '?' and matches
// the table, it is taken literally. Otherwise '?' is recognized as a
// wildcard.
// the table, it is taken literally (but ~ is escaped). Otherwise '?'
// is recognized as a wildcard.
for (i = (int)(sizeof(expr_table) / sizeof(char *)); --i >= 0; )
if (STRCMP(arg + 5, expr_table[i]) == 0)
{
STRCPY(d, arg);
int si = 0, di = 0;
for (;;)
{
if (arg[si] == '~')
d[di++] = '\\';
d[di++] = arg[si];
if (arg[si] == NUL)
break;
++si;
}
break;
}
}

View File

@@ -20,6 +20,12 @@ func Test_help_errors()
bwipe!
endfunc
func Test_help_expr()
help expr-!~?
call assert_equal('eval.txt', expand('%:t'))
close
endfunc
func Test_help_keyword()
new
set keywordprg=:help

View File

@@ -753,6 +753,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
2113,
/**/
2112,
/**/