patch 9.0.0423: "for" and "while" not recognized after :vim9cmd and :legacy
Problem: "for" and "while" not recognized after :vim9cmd and :legacy.
(Emanuele Torre)
Solution: Recognize all the command modifiers. (closes #11087)
Add a test to check the list of modifiers.
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 0b6b217..0024c99 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -2888,7 +2888,7 @@
switch (*p)
{
- // When adding an entry, also modify cmd_exists().
+ // When adding an entry, also modify cmdmods[].
case 'a': if (!checkforcmd_noparen(&eap->cmd, "aboveleft", 3))
break;
cmod->cmod_split |= WSP_ABOVE;
@@ -3958,11 +3958,13 @@
{"confirm", 4, FALSE},
{"filter", 4, FALSE},
{"hide", 3, FALSE},
+ {"horizontal", 3, FALSE},
{"keepalt", 5, FALSE},
{"keepjumps", 5, FALSE},
{"keepmarks", 3, FALSE},
{"keeppatterns", 5, FALSE},
{"leftabove", 5, FALSE},
+ {"legacy", 3, FALSE},
{"lockmarks", 3, FALSE},
{"noautocmd", 3, FALSE},
{"noswapfile", 3, FALSE},
@@ -3974,6 +3976,7 @@
{"unsilent", 3, FALSE},
{"verbose", 4, TRUE},
{"vertical", 4, FALSE},
+ {"vim9cmd", 4, FALSE},
};
/*