From d37b6be850b8970c5ac0bd720d52d57649100b02 Mon Sep 17 00:00:00 2001 From: Aviv Beeri Date: Sun, 2 May 2021 10:56:42 +0100 Subject: [PATCH 1/2] Adding support for 'as' keyword --- syntax/wren.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/syntax/wren.vim b/syntax/wren.vim index 007dc1e..0dcb0f3 100644 --- a/syntax/wren.vim +++ b/syntax/wren.vim @@ -12,7 +12,7 @@ syntax region wrenString contains=wrenEscape start=/\v"/ skip=/\v\\"/ end=/\v"/ syntax keyword wrenConditional else if syntax keyword wrenRepeat break for while continue -syntax keyword wrenKeyword class in is new return super this var import +syntax keyword wrenKeyword class as in is new return super this var import syntax keyword wrenConstruct construct contained containedin=wrenConstructor syntax keyword wrenStatic static contained containedin=wrenMethod,wrenForeignMethod syntax keyword wrenForeign foreign contained containedin=wrenForeignMethod From 0889220199ed996038b3f7efe68e549c9b6ffa5b Mon Sep 17 00:00:00 2001 From: Aviv Beeri Date: Fri, 15 Oct 2021 13:55:52 +0100 Subject: [PATCH 2/2] Fixing the WrenMethod definition to highlight static fields properly --- syntax/wren.vim | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/syntax/wren.vim b/syntax/wren.vim index 0dcb0f3..a0fc60a 100644 --- a/syntax/wren.vim +++ b/syntax/wren.vim @@ -12,13 +12,13 @@ syntax region wrenString contains=wrenEscape start=/\v"/ skip=/\v\\"/ end=/\v"/ syntax keyword wrenConditional else if syntax keyword wrenRepeat break for while continue -syntax keyword wrenKeyword class as in is new return super this var import +syntax keyword wrenKeyword class in is new return super this var import syntax keyword wrenConstruct construct contained containedin=wrenConstructor syntax keyword wrenStatic static contained containedin=wrenMethod,wrenForeignMethod syntax keyword wrenForeign foreign contained containedin=wrenForeignMethod " The contains= fixes highlighting of indented if, for, and while. -syntax match wrenMethod "\v^\s*(static\s+)?\w+\=?\ze\s*(\([^)]*\))?\s*\{" contains=wrenRepeat,wrenConditional +syntax match wrenMethod "\v^\s*(static\s+)?(\[?\s*\w+\s*\]?|\w+)\s*\=?\ze\s*(\([^)]*\))?\s*\{" contains=wrenRepeat,wrenConditional syntax match wrenConstructor "\v^\s*construct\s+\w+\ze\s*(\([^)]*\))?\s*\{" syntax match wrenForeignMethod "\v^\s*foreign\s+(static\s+)?\w+" syntax match wrenForeignClass "\v^\s*foreign\s+class"