@@ -8,9 +8,10 @@ syntax match jsFlowNoise contained /[:;,<>]/
8
8
syntax keyword jsFlowType contained boolean number string null void any mixed JSON array Function object array bool class
9
9
syntax keyword jsFlowTypeof contained typeof skipempty skipwhite nextgroup =jsFlowTypeCustom,jsFlowType
10
10
syntax match jsFlowTypeCustom contained / [0-9a-zA-Z_.]*/ skipwhite skipempty nextgroup =jsFlowGeneric
11
- syntax region jsFlowGeneric matchgroup =jsFlowNoise start =/ \k\@ <=</ end =/ >/ contains =@jsFlowCluster containedin =@jsExpression,jsFlowDeclareBlock
12
- syntax region jsFlowGeneric contained matchgroup =jsFlowNoise start =/ </ end =/ >(\@ =/ oneline contains =@jsFlowCluster containedin =@jsExpression,jsFlowDeclareBlock
13
- syntax region jsFlowObjectGeneric contained matchgroup =jsFlowNoise start =/ \k\@ <=</ end =/ >/ contains =@jsFlowCluster nextgroup =jsFuncArgs
11
+ syntax region jsFlowGeneric matchgroup =jsFlowNoise start =/ \k\@ <=</ end =/ >/ keepend extend contains =@jsFlowCluster containedin =@jsExpression,jsFlowDeclareBlock
12
+ syntax region jsFlowFunctionGeneric contained matchgroup =jsFlowNoise start =/ </ end =/ >(\@ =/ keepend extend oneline contains =@jsFlowCluster nextgroup =jsFuncArgs
13
+ " syntax region jsFlowFunctionGeneric contained matchgroup=jsFlowNoise start=/</ end=/>/ contains=@jsFlowCluster skipwhite skipempty nextgroup=jsFuncArgs
14
+ " syntax region jsFlowObjectGeneric contained matchgroup=jsFlowNoise start=/\k\@<=</ end=/>/ keepend extend contains=@jsFlowCluster nextgroup=jsFuncArgs
14
15
syntax match jsFlowArrow contained / =>/ skipwhite skipempty nextgroup =jsFlowType,jsFlowTypeCustom,jsFlowParens
15
16
syntax match jsFlowObjectKey contained / [0-9a-zA-Z_$?]*\(\s *:\)\@ =/ contains =jsFunctionKey,jsFlowMaybe skipwhite skipempty nextgroup =jsObjectValue containedin =jsObject
16
17
syntax match jsFlowOrOperator contained / |/ skipwhite skipempty nextgroup =@jsFlowCluster
@@ -29,7 +30,6 @@ syntax match jsFlowReturnOrOp contained /\s*|\s*/ skipwhite skipempty next
29
30
syntax match jsFlowWildcardReturn contained / */ skipwhite skipempty nextgroup =jsFuncBlock
30
31
syntax keyword jsFlowTypeofReturn contained typeof skipempty skipwhite nextgroup =@jsFlowReturnCluster
31
32
32
- syntax region jsFlowFunctionGroup contained matchgroup =jsFlowNoise start =/ </ end =/ >/ contains =@jsFlowCluster skipwhite skipempty nextgroup =jsFuncArgs
33
33
syntax region jsFlowClassGroup contained matchgroup =jsFlowNoise start =/ </ end =/ >/ contains =@jsFlowCluster skipwhite skipempty nextgroup =jsClassBlock
34
34
syntax region jsFlowClassFunctionGroup contained matchgroup =jsFlowNoise start =/ </ end =/ >/ contains =@jsFlowCluster skipwhite skipempty nextgroup =jsFuncArgs
35
35
syntax match jsFlowObjectFuncName contained / \<\K\k *<\@ =/ skipwhite skipempty nextgroup =jsFlowObjectGeneric containedin =jsObject
@@ -40,20 +40,23 @@ syntax match jsFlowTypeOperator contained /=/ containedin=jsFlowTypeValue
40
40
syntax match jsFlowTypeOperator contained / =/
41
41
syntax keyword jsFlowTypeKeyword contained type
42
42
43
- syntax keyword jsFlowDeclare declare skipwhite skipempty nextgroup =jsFlowTypeStatement,jsClassDefinition,jsStorageClass,jsFlowModule,jsFlowInterface
43
+ syntax keyword jsFlowDeclare declare skipwhite skipempty nextgroup =jsFlowTypeStatement,jsClassDefinition,jsStorageClass,jsFlowModule,jsFlowInterface,jsFlowExport
44
+ syntax keyword jsFlowInterface interface skipwhite skipempty nextgroup =jsFlowInterfaceName
45
+ syntax match jsFlowInterfaceName contained / \< [0-9a-zA-Z_$]*\> / skipwhite skipempty nextgroup =jsClassBlock
46
+ syntax keyword jsFlowExport export skipwhite skipempty nextgroup =jsFlowTypeStatement,jsClassDefinition,jsStorageClass,jsFlowModule,jsFlowInterface,jsExportDefault
44
47
syntax match jsFlowClassProperty contained / \< [0-9a-zA-Z_$]*\> :\@ =/ skipwhite skipempty nextgroup =jsFlowClassDef containedin =jsClassBlock
45
48
syntax region jsFlowClassDef contained start =/ :/ end =/ \% (\s *[,=;)\n ]\)\@ =/ contains =@jsFlowCluster skipwhite skipempty nextgroup =jsClassValue
46
49
47
50
syntax region jsFlowModule contained start =/ module/ end =/ \% ({\| :\)\@ =/ skipempty skipwhite nextgroup =jsFlowDeclareBlock contains =jsString
48
51
syntax region jsFlowInterface contained start =/ interface/ end =/ {\@ =/ skipempty skipwhite nextgroup =jsFlowInterfaceBlock contains =@jsFlowCluster
49
- syntax region jsFlowDeclareBlock contained matchgroup =jsFlowNoise start =/ {/ end =/ }/ contains =jsFlowDeclare,jsFlowNoise fold
52
+ syntax region jsFlowDeclareBlock contained matchgroup =jsFlowNoise start =/ {/ end =/ }/ contains =jsFlowDeclare,jsFlowNoise,jsComment fold
50
53
51
54
syntax match jsFlowMaybe contained / ?/
52
55
syntax region jsFlowInterfaceBlock contained matchgroup =jsFlowNoise start =/ {/ end =/ }/ contains =jsObjectKey,jsObjectKeyString,jsObjectKeyComputed,jsObjectSeparator,jsObjectFuncName,jsFlowObjectFuncName,jsObjectMethodType,jsGenerator,jsComment,jsObjectStringKey,jsSpreadExpression,jsFlowNoise,jsFlowParens,jsFlowGeneric keepend fold
53
56
54
57
syntax region jsFlowParenAnnotation contained start =/ :/ end =/ [,=)]\@ =/ containedin =jsParen contains =@jsFlowCluster
55
58
56
- syntax cluster jsFlowReturnCluster contains =jsFlowNoise,jsFlowReturnObject,jsFlowReturnArray,jsFlowReturnKeyword,jsFlowReturnGroup,jsFlowReturnMaybe,jsFlowReturnOrOp,jsFlowWildcardReturn,jsFlowReturnArrow,jsFlowTypeofReturn
59
+ syntax cluster jsFlowReturnCluster contains =jsFlowNoise,jsFlowReturnObject,jsFlowReturnArray,jsFlowReturnKeyword,jsFlowReturnGroup,jsFlowReturnMaybe,jsFlowReturnOrOp,jsFlowWildcardReturn,jsFlowReturnArrow,jsFlowTypeofReturn,jsFlowGeneric
57
60
syntax cluster jsFlowCluster contains =jsFlowArray,jsFlowObject,jsFlowExactObject,jsFlowNoise,jsFlowTypeof,jsFlowType,jsFlowGeneric,jsFlowMaybe,jsFlowParens,jsFlowOrOperator,jsFlowWildcard
58
61
59
62
if version >= 508 || ! exists (" did_javascript_syn_inits" )
@@ -75,14 +78,15 @@ if version >= 508 || !exists("did_javascript_syn_inits")
75
78
HiLink jsFlowExactObject PreProc
76
79
HiLink jsFlowParens PreProc
77
80
HiLink jsFlowGeneric PreProc
81
+ HiLink jsFlowFunctionGeneric jsFlowGeneric
78
82
HiLink jsFlowObjectGeneric jsFlowGeneric
79
83
HiLink jsFlowReturn PreProc
80
84
HiLink jsFlowParenAnnotation PreProc
81
85
HiLink jsFlowReturnObject jsFlowReturn
82
86
HiLink jsFlowReturnArray jsFlowArray
83
87
HiLink jsFlowReturnParens jsFlowParens
84
88
HiLink jsFlowReturnGroup jsFlowGeneric
85
- HiLink jsFlowFunctionGroup PreProc
89
+ " HiLink jsFlowFunctionGroup PreProc
86
90
HiLink jsFlowClassGroup PreProc
87
91
HiLink jsFlowClassFunctionGroup PreProc
88
92
HiLink jsFlowArrow PreProc
@@ -94,6 +98,7 @@ if version >= 508 || !exists("did_javascript_syn_inits")
94
98
HiLink jsFlowReturnMaybe PreProc
95
99
HiLink jsFlowClassProperty jsClassProperty
96
100
HiLink jsFlowDeclare PreProc
101
+ HiLink jsFlowExport PreProc
97
102
HiLink jsFlowModule PreProc
98
103
HiLink jsFlowInterface PreProc
99
104
HiLink jsFlowNoise Noise
@@ -104,6 +109,7 @@ if version >= 508 || !exists("did_javascript_syn_inits")
104
109
HiLink jsFlowWildcardReturn PreProc
105
110
HiLink jsFlowImportType PreProc
106
111
HiLink jsFlowTypeValue PreProc
112
+ HiLink jsFlowReturnKeyword PreProc
107
113
HiLink jsFlowObjectFuncName jsObjectFuncName
108
114
delcommand HiLink
109
115
endif
0 commit comments