# HG changeset patch # User Bram Moolenaar # Date 1630941306 -7200 # Node ID 8c4dee4d1ac6d1b2eb674d44d9be4caeee2e13d1 # Parent bd72de88a9f4a6bc2646729621a98cfa48d6cc85 patch 8.2.3405: cannot have a comment line in a {} block of a user command Commit: https://github.com/vim/vim/commit/ec1b0968aa90d408a79b5b5dca465f65e69753a1 Author: Bram Moolenaar Date: Mon Sep 6 17:10:59 2021 +0200 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 https://github.com/vim/vim/issues/8837) diff --git a/src/ex_docmd.c b/src/ex_docmd.c --- 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 --- 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 --- a/src/version.c +++ b/src/version.c @@ -756,6 +756,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 3405, +/**/ 3404, /**/ 3403,