1
0
forked from aniani/vim

patch 8.2.1257: Vim9: list unpack doesn't work at the script level

Problem:    Vim9: list unpack doesn't work at the script level.
Solution:   Detect unpack assignment better. (closes #6494)
This commit is contained in:
Bram Moolenaar
2020-07-20 22:37:44 +02:00
parent 7892b953e0
commit b31be3f909
3 changed files with 26 additions and 3 deletions

View File

@@ -3282,10 +3282,19 @@ find_ex_command(
// after the "]" by to_name_const_end(): check if a "=" follows.
// If "[...]" has a line break "p" still points at the "[" and it can't
// be an assignment.
if (*eap->cmd == '[' && (p == eap->cmd || *skipwhite(p) != '='))
if (*eap->cmd == '[')
{
eap->cmdidx = CMD_eval;
return eap->cmd;
p = to_name_const_end(eap->cmd);
if (p == eap->cmd || *skipwhite(p) != '=')
{
eap->cmdidx = CMD_eval;
return eap->cmd;
}
if (p > eap->cmd && *skipwhite(p) == '=')
{
eap->cmdidx = CMD_let;
return eap->cmd;
}
}
// Recognize an assignment if we recognize the variable name: