From: Bram Moolenaar Date: Mon, 6 Sep 2021 15:10:59 +0000 (+0200) Subject: patch 8.2.3405: cannot have a comment line in a {} block of a user command X-Git-Tag: v8.2.3405 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ec1b0968aa90d408a79b5b5dca465f65e69753a1;p=vim patch 8.2.3405: cannot have a comment line in a {} block of a user command Problem: Cannot have a comment line in a {} block of a user command. Solution: Continue after the line break. (closes #8837) --- diff --git a/src/ex_docmd.c b/src/ex_docmd.c index 58980738f..c58c41410 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -2807,7 +2807,16 @@ parse_command_modifiers( // ignore comment and empty lines if (comment_start(eap->cmd, starts_with_colon)) + { + // a comment ends at a NL + if (eap->nextcmd == NULL) + { + eap->nextcmd = vim_strchr(eap->cmd, '\n'); + if (eap->nextcmd != NULL) + ++eap->nextcmd; + } return FAIL; + } if (*eap->cmd == NUL) { if (!skip_only) diff --git a/src/testdir/test_usercommands.vim b/src/testdir/test_usercommands.vim index 9cb592e23..3f15dc187 100644 --- a/src/testdir/test_usercommands.vim +++ b/src/testdir/test_usercommands.vim @@ -624,7 +624,8 @@ endfunc func Test_usercmd_with_block() command DoSomething { - g:didit = 'yes' + g:didit = 'yes' # comment + # comment line g:didmore = 'more' } DoSomething diff --git a/src/version.c b/src/version.c index cfddf6bad..742f89915 100644 --- a/src/version.c +++ b/src/version.c @@ -755,6 +755,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 3405, /**/ 3404, /**/