diff options
author | dkearns <dougkearns@gmail.com> | 2024-01-29 04:54:08 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-28 18:54:08 +0100 |
commit | 21ce159e05615fd139c564b734a4bffc9f3fdc4b (patch) | |
tree | 1a56987d736a874adfd899e9e9c1598a49a4fb6c /runtime/syntax/testdir/input | |
parent | 0cc6108fea216f597e38d1a88463fa6f28aded61 (diff) |
runtime(vim): Update syntax and ftplugin files (#13924)
Improve matching of line-continuations and interspersed comments.
These are now also matched in multiline syntax command patterns,
dictionary literals, and parenthesised expressions and argument lists.
Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'runtime/syntax/testdir/input')
-rw-r--r-- | runtime/syntax/testdir/input/vim_line_continuation.vim | 49 | ||||
-rw-r--r-- | runtime/syntax/testdir/input/vim_syntax.vim | 113 |
2 files changed, 150 insertions, 12 deletions
diff --git a/runtime/syntax/testdir/input/vim_line_continuation.vim b/runtime/syntax/testdir/input/vim_line_continuation.vim new file mode 100644 index 0000000000..a32666af34 --- /dev/null +++ b/runtime/syntax/testdir/input/vim_line_continuation.vim @@ -0,0 +1,49 @@ +" Vim line continuations with interspersed comments + +function Foo( + "\ param a + \ a, + "\ param b + \ b, + "\ param c + \ c + \) + echomsg + "\ start string + \ $" + "\ print a + \ a = {a:a}, + "\ print b + \ b = {a:b}, + "\ print c + \ c = {a:c} + "\ end string + \" +endfunction + +call Foo( + "\ arg 1 + \ 11, + "\ arg 2 + \ 22, + "\ arg 3 + \ 33 + \) + +let dict = #{ + "\ pair 1 + \ a: 1, + "\ pair 2 + \ b: 2, + "\ pair 3 + \ c: 3 + \} + +let array = [ + "\ element 1 + \ 1, + "\ element 2 + \ 2, + "\ element 3 + \ 3 + \] diff --git a/runtime/syntax/testdir/input/vim_syntax.vim b/runtime/syntax/testdir/input/vim_syntax.vim index e8c112cea8..197d4ac9d9 100644 --- a/runtime/syntax/testdir/input/vim_syntax.vim +++ b/runtime/syntax/testdir/input/vim_syntax.vim @@ -1,75 +1,164 @@ -" Vim :syntax highlighting +" Vim :syntax command + +syn match testMatch "pattern" contained " tail comment +" NOTE: comments not currently supported +syn keyword testKeyword keyword contained " tail comment +syn region testRegion start="start-pattern" skip="skip-pattern" end="end-pattern" contained " tail comment + +" Multiline commands syn keyword testKeyword + "\ OPTIONS + "\ conceal option \ conceal + "\ cchar option \ cchar=& + "\ contained option \ contained + "\ containedin option \ containedin=testContainer - \ nextgroup=testNext,@testCluster + "\ nextgroup option + \ nextgroup=testNext0,@testCluster + "\ transparent option \ transparent + "\ skipwhite option \ skipwhite + "\ skipempty option \ skipempty + "\ skipnl option \ skipnl + "\ KEYWORDS LIST + "\ keyword 1 \ keyword1 + "\ keyword 2 \ keyword2 + "\ keyword 3 \ keyword3 syn match testMatch - \ "pattern" + "\ MATCH PATTERN + "\ pattern start + \ / + "\ part 1 description + \pat1a .* pat1b + "\ part 2 description + \pat2a .* pat2b + "\ part 3 description + \pat3a .* pat3b + "\ pattern end + \/ + "\ OPTIONS + "\ conceal option \ conceal + "\ cchar option \ cchar=& + "\ contained option \ contained + "\ containedin option \ containedin=testContainer - \ nextgroup=testNext,@testCluster + "\ nextgroup option + \ nextgroup=testNext0,@testCluster + "\ transparent option \ transparent + "\ skipwhite option \ skipwhite + "\ skipempty option \ skipempty + "\ skipnl option \ skipnl + "\ contains option \ contains=testContained1,testContained2 + "\ fold option \ fold + "\ display option \ display + "\ extend option \ extend + "\ excludenl option \ excludenl + "\ keepend option \ keepend syn region testRegion + "\ OPTIONS + "\ start option \ start="start-pattern" - \ end="end-pattern" + "\ skip option \ skip="skip-pattern" - \ contained + "\ end option + \ end="end-pattern" + "\ conceal option \ conceal + "\ cchar option \ cchar=& + "\ contained option \ contained + "\ containedin option \ containedin=testContainer - \ nextgroup=testNext,@testCluster + "\ nextgroup option + \ nextgroup=testNext0,@testCluster + "\ transparent option \ transparent + "\ skipwhite option \ skipwhite + "\ skipempty option \ skipempty + "\ skipnl option \ skipnl + "\ contains option \ contains=testContained1,testContained2 + "\ oneline option \ oneline + "\ fold option \ fold + "\ display option \ display + "\ extend option \ extend + "\ concealends option \ concealends + "\ excludenl option \ excludenl + "\ keepend option \ keepend syn cluster testCluster + "\ OPTIONS + "\ contains option \ contains=testContained1,testContained2,testContained3 syn cluster testCluster + "\ OPTIONS + "\ add option \ add=testAdd + "\ remove option \ remove=testRemove -" check multiline group list +" multiline group list + +syn keyword testNext0 keyword +syn keyword testNext1 keyword +syn keyword testNext2 keyword +syn keyword testNext3 keyword +syn keyword testNext4 keyword +syn keyword testNext5 keyword +syn keyword testNext6 keyword +syn keyword testNext7 keyword +syn keyword testNext8 keyword +syn keyword testNext9 keyword + syn keyword testKeyword + "\ nextgroup option \ nextgroup= - \ testNext , - \ testNext2 , - \ @testCluster - \ skipwhite + "\ a comment + \ testNext0 , testNext1 , + "\ a comment + \ testNext[2-8].* , + "\ a comment + \ testNext9 , @testCluster skipwhite + "\ KEYWORDS LIST \ keyword4 \ keyword5 \ keyword6 + |