mirror of
https://github.com/neovim/neovim.git
synced 2025-09-06 11:28:22 +00:00
vim-patch:9.0.0423: "for" and "while" not recognized after :vim9cmd and :legacy (#24825)
Problem: "for" and "while" not recognized after :vim9cmd and :legacy.
(Emanuele Torre)
Solution: Recognize all the command modifiers. (closes vim/vim#11087)
Add a test to check the list of modifiers.
9132426334
Co-authored-by: Bram Moolenaar <Bram@vim.org>
This commit is contained in:
@@ -2411,7 +2411,7 @@ int parse_command_modifiers(exarg_T *eap, const char **errormsg, cmdmod_T *cmod,
|
|||||||
|
|
||||||
char *p = skip_range(eap->cmd, NULL);
|
char *p = skip_range(eap->cmd, NULL);
|
||||||
switch (*p) {
|
switch (*p) {
|
||||||
// When adding an entry, also modify cmd_exists().
|
// When adding an entry, also modify cmdmods[]
|
||||||
case 'a':
|
case 'a':
|
||||||
if (!checkforcmd(&eap->cmd, "aboveleft", 3)) {
|
if (!checkforcmd(&eap->cmd, "aboveleft", 3)) {
|
||||||
break;
|
break;
|
||||||
@@ -3051,6 +3051,7 @@ static struct cmdmod {
|
|||||||
{ "confirm", 4, false },
|
{ "confirm", 4, false },
|
||||||
{ "filter", 4, false },
|
{ "filter", 4, false },
|
||||||
{ "hide", 3, false },
|
{ "hide", 3, false },
|
||||||
|
{ "horizontal", 3, false },
|
||||||
{ "keepalt", 5, false },
|
{ "keepalt", 5, false },
|
||||||
{ "keepjumps", 5, false },
|
{ "keepjumps", 5, false },
|
||||||
{ "keepmarks", 3, false },
|
{ "keepmarks", 3, false },
|
||||||
|
@@ -146,6 +146,15 @@ func Test_for_over_null_string()
|
|||||||
let &enc = save_enc
|
let &enc = save_enc
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_for_with_modifier()
|
||||||
|
" this checks has_loop_cmd() works with a modifier
|
||||||
|
let result = []
|
||||||
|
horizontal for i in range(3)
|
||||||
|
call extend(result, [i])
|
||||||
|
endfor
|
||||||
|
call assert_equal([0, 1, 2], result)
|
||||||
|
endfunc
|
||||||
|
|
||||||
func Test_for_invalid_line_count()
|
func Test_for_invalid_line_count()
|
||||||
let lines =<< trim END
|
let lines =<< trim END
|
||||||
111111111111111111111111 for line in ['one']
|
111111111111111111111111 for line in ['one']
|
||||||
|
Reference in New Issue
Block a user