summaryrefslogtreecommitdiff
path: root/src/ex_docmd.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ex_docmd.c')
-rw-r--r--src/ex_docmd.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 8b9db6812..d31b56c8c 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -3424,6 +3424,16 @@ find_ex_command(
return eap->cmd;
}
}
+
+ // If it is an ID it might be a variable with an operator on the next
+ // line, if the variable exists it can't be an Ex command.
+ if (p > eap->cmd && ends_excmd(*skipwhite(p))
+ && (lookup(eap->cmd, p - eap->cmd, NULL, cctx) == OK
+ || (ASCII_ISALPHA(eap->cmd[0]) && eap->cmd[1] == ':')))
+ {
+ eap->cmdidx = CMD_eval;
+ return eap->cmd;
+ }
}
#endif