0
0
mirror of https://github.com/vim/vim.git synced 2025-09-27 04:14:06 -04:00

patch 8.2.2669: command line completion does not work after "vim9"

Problem:    Command line completion does not work after "vim9".
Solution:   Include the "9". (Naohiro Ono, closes #8025)
This commit is contained in:
Bram Moolenaar
2021-03-28 15:29:43 +02:00
parent f49a1fcdb9
commit df749a2b9c
4 changed files with 10 additions and 3 deletions

View File

@@ -1020,8 +1020,9 @@ set_one_cmd_context(
p = cmd; p = cmd;
while (ASCII_ISALPHA(*p) || *p == '*') // Allow * wild card while (ASCII_ISALPHA(*p) || *p == '*') // Allow * wild card
++p; ++p;
// a user command may contain digits // A user command may contain digits.
if (ASCII_ISUPPER(cmd[0])) // Include "9" for "vim9*" commands; "vim9cmd" and "vim9script".
if (ASCII_ISUPPER(cmd[0]) || STRNCMP("vim9", cmd, 4) == 0)
while (ASCII_ISALNUM(*p) || *p == '*') while (ASCII_ISALNUM(*p) || *p == '*')
++p; ++p;
// for python 3.x: ":py3*" commands completion // for python 3.x: ":py3*" commands completion

View File

@@ -3553,7 +3553,7 @@ find_ex_command(
} }
else if (*p == '9' && STRNCMP("vim9", eap->cmd, 4) == 0) else if (*p == '9' && STRNCMP("vim9", eap->cmd, 4) == 0)
{ {
// include "9" for "vim9script" // include "9" for "vim9*" commands; "vim9cmd" and "vim9script".
++p; ++p;
while (ASCII_ISALPHA(*p)) while (ASCII_ISALPHA(*p))
++p; ++p;

View File

@@ -871,6 +871,10 @@ func Test_cmdline_complete_various()
call feedkeys(":py3\<C-A>\<C-B>\"\<CR>", 'xt') call feedkeys(":py3\<C-A>\<C-B>\"\<CR>", 'xt')
call assert_equal('"py3 py3do py3file', @:) call assert_equal('"py3 py3do py3file', @:)
" completion for the :vim9 commands
call feedkeys(":vim9\<C-A>\<C-B>\"\<CR>", 'xt')
call assert_equal('"vim9cmd vim9script', @:)
" redir @" is not the start of a comment. So complete after that " redir @" is not the start of a comment. So complete after that
call feedkeys(":redir @\" | cwin\t\<C-B>\"\<CR>", 'xt') call feedkeys(":redir @\" | cwin\t\<C-B>\"\<CR>", 'xt')
call assert_equal('"redir @" | cwindow', @:) call assert_equal('"redir @" | cwindow', @:)

View File

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