Mercurial > vim
changeset 21528:e0aa9b81f6a9 v8.2.1314
patch 8.2.1314: Vim9: rule for comment after :function is confusing
Commit: https://github.com/vim/vim/commit/9898107f54a330c6d9629976250a393169c698ca
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Jul 29 14:40:25 2020 +0200
patch 8.2.1314: Vim9: rule for comment after :function is confusing
Problem: Vim9: rule for comment after :function is confusing.
Solution: Allow double quoted comment after :function in vim9script.
(closes #6556)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 29 Jul 2020 14:45:05 +0200 |
parents | 79aeae3b041f |
children | 984d709ac1ae |
files | src/testdir/test_vim9_script.vim src/userfunc.c src/version.c |
diffstat | 3 files changed, 10 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_vim9_script.vim +++ b/src/testdir/test_vim9_script.vim @@ -2286,6 +2286,10 @@ def Test_vim9_comment() ]) CheckScriptFailure([ 'vim9script', + 'function " comment', + ], 'E129:') + CheckScriptFailure([ + 'vim9script', 'function# comment', ], 'E129:') CheckScriptSuccess([ @@ -2333,11 +2337,11 @@ def Test_vim9_comment() 'func Test() " comment', 'endfunc', ]) - CheckScriptFailure([ + CheckScriptSuccess([ 'vim9script', 'func Test() " comment', 'endfunc', - ], 'E488:') + ]) CheckScriptSuccess([ 'def Test() # comment',
--- a/src/userfunc.c +++ b/src/userfunc.c @@ -2832,7 +2832,8 @@ def_function(exarg_T *eap, char_u *name_ if (*p == '\n') line_arg = p + 1; else if (*p != NUL - && !(*p == '"' && !(vim9script || eap->cmdidx == CMD_def)) + && !(*p == '"' && (!vim9script || eap->cmdidx == CMD_function) + && eap->cmdidx != CMD_def) && !(*p == '#' && (vim9script || eap->cmdidx == CMD_def)) && !eap->skip && !did_emsg)