runtime(vim): Update base-syntax, fix function tail comments
Match Vim9-script comments after :def and :enddef and legacy-script comments after :func and :endfunc, in any definition context. Highlight incorrect comment types after these commands as errors. fixes: #15062 closes: #15072 Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
f0e6914420
commit
fc64ac0be2
@ -0,0 +1,44 @@
|
||||
vim9script
|
||||
|
||||
# Vim9 :function and :def tail comment errors
|
||||
# VIM_TEST_SETUP unlet! g:vimsyn_folding
|
||||
|
||||
fun Test1() abort # fun
|
||||
return 1
|
||||
endfun # endfun
|
||||
|
||||
def Test2(): number " def
|
||||
return 2
|
||||
enddef " enddef
|
||||
|
||||
fun Test3() abort # fun
|
||||
fun s:DoTest3() abort # fun
|
||||
return 3
|
||||
endfun # endfun
|
||||
return s:DoTest3()
|
||||
endfun # endfun
|
||||
|
||||
def Test4(): number " def
|
||||
def DoTest4(): number " def
|
||||
return 4
|
||||
enddef " enddef
|
||||
return DoTest4()
|
||||
enddef " enddef
|
||||
|
||||
def Test5(): number " def
|
||||
fun DoTest5() abort # fun
|
||||
return 5
|
||||
endfun # endfun
|
||||
return DoTest5()
|
||||
enddef " enddef
|
||||
|
||||
fun Test6() abort # fun
|
||||
def s:DoTest6(): number " def
|
||||
return 6
|
||||
enddef " enddef
|
||||
return s:DoTest6()
|
||||
endfun # endfun
|
||||
|
||||
for d in range(1, 6)
|
||||
exec $'echo Test{d}()'
|
||||
endfor
|
||||
@ -0,0 +1,44 @@
|
||||
vim9script
|
||||
|
||||
# Vim9 :function and :def tail comments
|
||||
# VIM_TEST_SETUP unlet! g:vimsyn_folding
|
||||
|
||||
fun Test1() abort " fun
|
||||
return 1
|
||||
endfun " endfun
|
||||
|
||||
def Test2(): number # def
|
||||
return 2
|
||||
enddef # enddef
|
||||
|
||||
fun Test3() abort " fun
|
||||
fun s:DoTest3() abort " fun
|
||||
return 3
|
||||
endfun " endfun
|
||||
return s:DoTest3()
|
||||
endfun " endfun
|
||||
|
||||
def Test4(): number # def
|
||||
def DoTest4(): number # def
|
||||
return 4
|
||||
enddef # enddef
|
||||
return DoTest4()
|
||||
enddef # enddef
|
||||
|
||||
def Test5(): number # def
|
||||
fun DoTest5() abort " fun
|
||||
return 5
|
||||
endfun " endfun
|
||||
return DoTest5()
|
||||
enddef # enddef
|
||||
|
||||
fun Test6() abort " fun
|
||||
def s:DoTest6(): number # def
|
||||
return 6
|
||||
enddef # enddef
|
||||
return s:DoTest6()
|
||||
endfun " endfun
|
||||
|
||||
for d in range(1, 6)
|
||||
exec $'echo Test{d}()'
|
||||
endfor
|
||||
@ -85,7 +85,7 @@ def Foo()
|
||||
enddef | echo "Foo"
|
||||
|
||||
def Foo()
|
||||
enddef " comment
|
||||
enddef # comment
|
||||
|
||||
|
||||
" parameters
|
||||
|
||||
@ -86,7 +86,7 @@ def Foo()
|
||||
enddef | echo "Foo"
|
||||
|
||||
def Foo()
|
||||
enddef " comment
|
||||
enddef # comment
|
||||
|
||||
|
||||
" parameters
|
||||
|
||||
@ -0,0 +1,43 @@
|
||||
" Vim :function and :def tail comment errors
|
||||
" VIM_TEST_SETUP unlet! g:vimsyn_folding
|
||||
|
||||
fun s:Test1() abort # fun
|
||||
return 1
|
||||
endfun # endfun
|
||||
|
||||
def s:Test2(): number " def
|
||||
return 2
|
||||
enddef " enddef
|
||||
|
||||
fun s:Test3() abort # fun
|
||||
fun s:DoTest3() abort # fun
|
||||
return 3
|
||||
endfun # endfun
|
||||
return s:DoTest3()
|
||||
endfun # endfun
|
||||
|
||||
def s:Test4(): number " def
|
||||
def DoTest4(): number " def
|
||||
return 4
|
||||
enddef " enddef
|
||||
return DoTest4()
|
||||
enddef " enddef
|
||||
|
||||
def s:Test5(): number " def
|
||||
fun DoTest5() abort # fun
|
||||
return 5
|
||||
endfun # endfun
|
||||
return DoTest5()
|
||||
enddef " enddef
|
||||
|
||||
fun s:Test6() abort # fun
|
||||
def s:DoTest6(): number " def
|
||||
return 6
|
||||
enddef " enddef
|
||||
return s:DoTest6()
|
||||
endfun # endfun
|
||||
|
||||
for d in range(1, 6)->reverse()
|
||||
exec $'echo s:Test{d}()'
|
||||
exec $'delfunction s:Test{d}'
|
||||
endfor
|
||||
@ -0,0 +1,43 @@
|
||||
" Vim :function and :def tail comments
|
||||
" VIM_TEST_SETUP unlet! g:vimsyn_folding
|
||||
|
||||
fun s:Test1() abort " fun
|
||||
return 1
|
||||
endfun " endfun
|
||||
|
||||
def s:Test2(): number # def
|
||||
return 2
|
||||
enddef # enddef
|
||||
|
||||
fun s:Test3() abort " fun
|
||||
fun s:DoTest3() abort " fun
|
||||
return 3
|
||||
endfun " endfun
|
||||
return s:DoTest3()
|
||||
endfun " endfun
|
||||
|
||||
def s:Test4(): number # def
|
||||
def DoTest4(): number # def
|
||||
return 4
|
||||
enddef # enddef
|
||||
return DoTest4()
|
||||
enddef # enddef
|
||||
|
||||
def s:Test5(): number # def
|
||||
fun DoTest5() abort " fun
|
||||
return 5
|
||||
endfun " endfun
|
||||
return DoTest5()
|
||||
enddef # enddef
|
||||
|
||||
fun s:Test6() abort " fun
|
||||
def s:DoTest6(): number # def
|
||||
return 6
|
||||
enddef # enddef
|
||||
return s:DoTest6()
|
||||
endfun " endfun
|
||||
|
||||
for d in range(1, 6)->reverse()
|
||||
exec $'echo s:Test{d}()'
|
||||
exec $'delfunction s:Test{d}'
|
||||
endfor
|
||||
Reference in New Issue
Block a user