Skip to content

Commit 59f0ea5

Browse files
dkearnschrisbra
authored andcommitted
runtime(vim): Update base syntax, match Vim9 object type constructor
fixes: #18677. closes: #18691 Reported by Aliaksei Budavei. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
1 parent 47c30bb commit 59f0ea5

10 files changed

Lines changed: 181 additions & 11 deletions

runtime/syntax/generator/vim.vim.base

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
" Language: Vim script
33
" Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com>
44
" Doug Kearns <dougkearns@gmail.com>
5-
" Last Change: 2025 Nov 04
5+
" Last Change: 2025 Nov 07
66
" Former Maintainer: Charles E. Campbell
77

88
" DO NOT CHANGE DIRECTLY.
@@ -575,13 +575,20 @@ syn match vimParamType contained ":\s" skipwhite skipnl nextgroup=@vimType conta
575575
syn match vimTypeSep contained ":\%(\s\|\n\)\@=" skipwhite nextgroup=@vimType
576576
syn keyword vimType contained blob bool channel float job number string void
577577
syn keyword vimTypeAny contained any
578+
syn region vimTypeObject contained
579+
\ matchgroup=vimType
580+
\ start="\<object<"
581+
\ end=">"
582+
\ contains=vimTypeAny,vimTypeObject,vimUserType
583+
\ oneline
584+
\ transparent
578585
syn match vimType contained "\<\%(func\)\>"
579586
syn region vimCompoundType contained matchgroup=vimType start="\<func(" end=")" nextgroup=vimTypeSep contains=@vim9Continue,@vimType transparent
580587
syn region vimCompoundType contained matchgroup=vimType start="\<tuple<" end=">" contains=@vim9Continue,@vimType transparent
581588
syn region vimCompoundType contained matchgroup=vimType start="\<\%(list\|dict\)<" end=">" contains=@vimType oneline transparent
582589
syn match vimUserType contained "\<\%(\h\w*\.\)*\u\w*\>"
583590

584-
syn cluster vimType contains=vimType,vimTypeAny,vimCompoundType,vimUserType
591+
syn cluster vimType contains=vimType,vimTypeAny,vimTypeObject,vimCompoundType,vimUserType
585592

586593
" Classes, Enums And Interfaces: {{{2
587594
" =============================
@@ -1130,6 +1137,13 @@ syn region vim9VariableList contained start="\[" end="]" contains=@vimContinue,@
11301137
syn match vim9VariableTypeSep contained "\S\@1<=:\%(\s\|\n\)\@=" skipwhite nextgroup=@vim9VariableType
11311138
syn keyword vim9VariableType contained blob bool channel float job number string void skipwhite nextgroup=vimLetHeredoc
11321139
syn keyword vim9VariableTypeAny contained any skipwhite nextgroup=vimLetHeredoc
1140+
syn region vim9VariableTypeObject contained
1141+
\ matchgroup=vimType
1142+
\ start="\<object<"
1143+
\ end=">"
1144+
\ contains=vimTypeAny,vimTypeObject,vimUserType
1145+
\ oneline
1146+
\ transparent
11331147
syn match vim9VariableType contained "\<\%(func\)\>" skipwhite nextgroup=vimLetHeredoc
11341148
syn region vim9VariableCompoundType contained
11351149
\ matchgroup=vim9VariableType
@@ -1155,7 +1169,7 @@ syn region vim9VariableCompoundType contained
11551169
\ transparent
11561170
syn match vim9VariableUserType contained "\<\%(\h\w*\.\)*\u\w*\>" skipwhite nextgroup=vimLetHeredoc
11571171

1158-
syn cluster vim9VariableType contains=vim9VariableType,vim9VariableTypeAny,vim9VariableCompoundType,vim9VariableUserType
1172+
syn cluster vim9VariableType contains=vim9VariableType,vim9VariableTypeAny,vim9VariableTypeObject,vim9VariableCompoundType,vim9VariableUserType
11591173

11601174
" Lockvar and Unlockvar: {{{2
11611175
" =====================
@@ -2586,6 +2600,7 @@ if !exists("skip_vim_syntax_inits")
25862600
hi def link vimTodo Todo
25872601
hi def link vimType Type
25882602
hi def link vimTypeAny vimType
2603+
hi def link vimTypeObject vimType
25892604
hi def link vimUniq vimCommand
25902605
hi def link vimUniqBang vimBang
25912606
hi def link vimUniqOptions Special
@@ -2677,7 +2692,8 @@ if !exists("skip_vim_syntax_inits")
26772692
hi def link vim9TypeEquals vimOper
26782693
hi def link vim9Variable vimVar
26792694
hi def link vim9VariableType vimType
2680-
hi def link vim9VariableTypeAny vimType
2695+
hi def link vim9VariableTypeAny vimTypeAny
2696+
hi def link vim9VariableTypeObject vimTypeObject
26812697
hi def link vim9Var vimCommand
26822698
hi def link vim9Vim9ScriptArg Special
26832699
hi def link vim9Vim9Script vimCommand

runtime/syntax/testdir/dumps/vim9_types_00.dump

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
>v+0#af5f00255#ffffff0|i|m|9|s|c|r|i|p|t| +0#0000000&@64
22
|#+0#0000e05&| |V|i|m|9| |t|y|p|e|s| +0#0000000&@62
33
|#+0#0000e05&| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i| |l|i|n|k| |v|i|m|T|y|p|e|A|n|y| |T|o|d|o| +0#0000000&@34
4-
|#+0#0000e05&| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i| |l|i|n|k| |v|i|m|V|a|r|i|a|b|l|e|T|y|p|e|A|n|y| |T|o|d|o| +0#0000000&@26
4+
|#+0#0000e05&| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i| |l|i|n|k| |v|i|m|9|V|a|r|i|a|b|l|e|T|y|p|e|A|n|y| |T|o|d|o| +0#0000000&@25
55
@75
66
@75
77
|#+0#0000e05&| |b|u|i|l|t|i|n| |t|y|p|e|s| |(|d|i|s|t|i|n|c|t| |a|n|y| |h|i|g|h|l|i|g|h|t|i|n|g|)| +0#0000000&@31
88
@75
99
|v+0#af5f00255&|a|r| +0#0000000&|f|o@1|:| |b+0#00e0003&|o@1|l| +0#0000000&@61
10-
|v+0#af5f00255&|a|r| +0#0000000&|b|a|r|:| |a+0#00e0003&|n|y| +0#0000000&@62
10+
|v+0#af5f00255&|a|r| +0#0000000&|b|a|r|:| |a+0#0000001#ffff4012|n|y| +0#0000000#ffffff0@62
1111
@75
1212
|d+0#af5f00255&|e|f| +0#0000000&|F|o@1|(+0#e000e06&|a+0#0000000&|r|g|:| |b+0#00e0003&|o@1|l|)+0#e000e06&|:+0#0000000&| |b+0#00e0003&|o@1|l| +0#0000000&@50
1313
|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
>v+0#af5f00255#ffffff0|i|m|9|s|c|r|i|p|t| +0#0000000&@64
2+
|#+0#0000e05&| |V|i|m|9| |o|b|j|e|c|t| |t|y|p|e| |c|o|n|s|t|r|u|c|t|o|r| +0#0000000&@44
3+
|#+0#0000e05&| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i| |l|i|n|k| |v|i|m|T|y|p|e|O|b|j|e|c|t| |T|o|d|o| +0#0000000&@31
4+
|#+0#0000e05&| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i| |l|i|n|k| |v|i|m|9|V|a|r|i|a|b|l|e|T|y|p|e|O|b|j|e|c|t| |T|o|d|o| +0#0000000&@22
5+
@75
6+
@75
7+
|#+0#0000e05&| |I|s@1|u|e| |#|1|8|6|7@1| |(|N|o| |r|e|c|o|g|n|i|t|i|o|n| |o|f| |o|b|j|e|c|t|<|a|n|y|>| |t|y|p|e|s| |-| |A|l|i|a|k|s|e|i| |B|u|d|a|v|e|i|)| +0#0000000&@3
8+
|| @73
9+
|i+0#af5f00255&|n|t|e|r|f|a|c|e| +0#0000000&|I| @63
10+
@2|d+0#af5f00255&|e|f| +0#0000000&|s+0#00e0e07&|t|r|i|n|g|(+0#e000e06&|)|:+0#0000000&| |s+0#00e0003&|t|r|i|n|g| +0#0000000&@52
11+
|e+0#af5f00255&|n|d|i|n|t|e|r|f|a|c|e| +0#0000000&@62
12+
@75
13+
|c+0#af5f00255&|l|a|s@1| +0#0000000&|C| |i+0#af5f00255&|m|p|l|e|m|e|n|t|s| +0#0000000&|I| @54
14+
@2|d+0#af5f00255&|e|f| +0#0000000&|s+0#00e0e07&|t|r|i|n|g|(+0#e000e06&|)|:+0#0000000&| |s+0#00e0003&|t|r|i|n|g| +0#0000000&@52
15+
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|"+0#e000002&|C|"| +0#0000000&@60
16+
@2|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@66
17+
|e+0#af5f00255&|n|d|c|l|a|s@1| +0#0000000&@66
18+
@75
19+
|e+0#af5f00255&|n|u|m| +0#0000000&|E| |i+0#af5f00255&|m|p|l|e|m|e|n|t|s| +0#0000000&|I| @55
20+
@57|1|,|1| @10|T|o|p|
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
| +0&#ffffff0@1|d+0#af5f00255&|e|f| +0#0000000&|s+0#00e0e07&|t|r|i|n|g|(+0#e000e06&|)|:+0#0000000&| |s+0#00e0003&|t|r|i|n|g| +0#0000000&@52
2+
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|"+0#e000002&|C|"| +0#0000000&@60
3+
@2|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@66
4+
|e+0#af5f00255&|n|d|c|l|a|s@1| +0#0000000&@66
5+
@75
6+
>e+0#af5f00255&|n|u|m| +0#0000000&|E| |i+0#af5f00255&|m|p|l|e|m|e|n|t|s| +0#0000000&|I| @55
7+
@2|I|N|S|T|A|N|C|E| @64
8+
@75
9+
@2|d+0#af5f00255&|e|f| +0#0000000&|s+0#00e0e07&|t|r|i|n|g|(+0#e000e06&|)|:+0#0000000&| |s+0#00e0003&|t|r|i|n|g| +0#0000000&@52
10+
@4|r+0#af5f00255&|e|t|u|r|n| +0#0000000&|"+0#e000002&|E|"| +0#0000000&@60
11+
@2|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@66
12+
|e+0#af5f00255&|n|d|e|n|u|m| +0#0000000&@67
13+
@75
14+
|v+0#af5f00255&|a|r| +0#0000000&|c|:| |o+0#00e0003&|b|j|e|c|t|<|C+0#0000000&|>+0#00e0003&| +0#0000000&|=+0#af5f00255&| +0#0000000&|C|.|n+0#00e0e07&|e|w|(+0#e000e06&|)| +0#0000000&@48
15+
|v+0#af5f00255&|a|r| +0#0000000&|e|:| |o+0#00e0003&|b|j|e|c|t|<|E+0#0000000&|>+0#00e0003&| +0#0000000&|=+0#af5f00255&| +0#0000000&|E|.+0#af5f00255&|I+0#0000000&|N|S|T|A|N|C|E| @45
16+
|v+0#af5f00255&|a|r| +0#0000000&|o|s|:| |t+0#00e0003&|u|p|l|e|<|o|b|j|e|c|t|<|a|n|y|>|,+0#0000000&| |o+0#00e0003&|b|j|e|c|t|<|I+0#0000000&|>+0#00e0003&@1| +0#0000000&|=+0#af5f00255&| +0#0000000&|(+0#e000e06&|c+0#0000000&|,| |e|)+0#e000e06&| +0#0000000&@28
17+
|e+0#af5f00255&|c|h|o| +0#0000000&|(+0#e000e06&|c+0#0000000&|,| |e|)+0#e000e06&| +0#0000000&|=+0#af5f00255&@1| +0#0000000&|o|s| @57
18+
@75
19+
|~+0#4040ff13&| @73
20+
| +0#0000000&@56|1|9|,|1| @9|B|o|t|
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
>v+0#af5f00255#ffffff0|i|m|9|s|c|r|i|p|t| +0#0000000&@64
2+
|#+0#0000e05&| |V|i|m|9| |o|b|j|e|c|t| |t|y|p|e| |c|o|n|s|t|r|u|c|t|o|r| +0#0000000&@44
3+
|#+0#0000e05&| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i| |l|i|n|k| |v|i|m|I|y|p|e|O|b|j|e|c|t| |T|o|d|o| +0#0000000&@31
4+
|#+0#0000e05&| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i| |l|i|n|k| |v|i|m|9|V|a|r|i|a|b|l|e|I|y|p|e|O|b|j|e|c|t| |T|o|d|o| +0#0000000&@22
5+
@75
6+
@75
7+
|i+0#af5f00255&|n|t|e|r|f|a|c|e| +0#0000000&|I| @63
8+
|e+0#af5f00255&|n|d|i|n|t|e|r|f|a|c|e| +0#0000000&@62
9+
@75
10+
|v+0#af5f00255&|a|r| +0#0000000&|a|:| |o+0#00e0003&|b|j|e|c|t|<|I+0#0000000&|>+0#00e0003&| +0#0000000&@58
11+
|v+0#af5f00255&|a|r| +0#0000000&|b|:| |o+0#00e0003&|b|j|e|c|t|<|a|n|y|>| +0#0000000&@56
12+
|v+0#af5f00255&|a|r| +0#0000000&|c|:| |o+0#00e0003&|b|j|e|c|t|<|o|b|j|e|c|t|<|I+0#0000000&|>+0#00e0003&@1| +0#0000000&@50
13+
|v+0#af5f00255&|a|r| +0#0000000&|d|:| |o+0#00e0003&|b|j|e|c|t|<|o|b|j|e|c|t|<|a|n|y|>@1| +0#0000000&@48
14+
@75
15+
|d+0#af5f00255&|e|f| +0#0000000&|F|o@1|(+0#e000e06&| +0#0000000&@66
16+
@4|a|r|g|1|:| |o+0#00e0003&|b|j|e|c|t|<|I+0#0000000&|>+0#00e0003&|,+0#0000000&| @54
17+
@4|a|r|g|2|:| |o+0#00e0003&|b|j|e|c|t|<|a|n|y|>|,+0#0000000&| @52
18+
@4|a|r|g|3|:| |o+0#00e0003&|b|j|e|c|t|<|o|b|j|e|c|t|<|I+0#0000000&|>+0#00e0003&@1|,+0#0000000&| @46
19+
@4|a|r|g|4|:| |o+0#00e0003&|b|j|e|c|t|<|o|b|j|e|c|t|<|a|n|y|>@1|)+0#e000e06&| +0#0000000&@44
20+
@57|1|,|1| @10|T|o|p|
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
| +0&#ffffff0@74
2+
|d+0#af5f00255&|e|f| +0#0000000&|F|o@1|(+0#e000e06&| +0#0000000&@66
3+
@4|a|r|g|1|:| |o+0#00e0003&|b|j|e|c|t|<|I+0#0000000&|>+0#00e0003&|,+0#0000000&| @54
4+
@4|a|r|g|2|:| |o+0#00e0003&|b|j|e|c|t|<|a|n|y|>|,+0#0000000&| @52
5+
@4|a|r|g|3|:| |o+0#00e0003&|b|j|e|c|t|<|o|b|j|e|c|t|<|I+0#0000000&|>+0#00e0003&@1|,+0#0000000&| @46
6+
@4>a|r|g|4|:| |o+0#00e0003&|b|j|e|c|t|<|o|b|j|e|c|t|<|a|n|y|>@1|)+0#e000e06&| +0#0000000&@44
7+
|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
8+
@75
9+
|d+0#af5f00255&|e|f| +0#0000000&|B|a|r|(+0#e000e06&|)|:+0#0000000&| |o+0#00e0003&|b|j|e|c|t|<|I+0#0000000&|>+0#00e0003&| +0#0000000&@54
10+
|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
11+
@75
12+
|d+0#af5f00255&|e|f| +0#0000000&|B|a|z|(+0#e000e06&|)|:+0#0000000&| |o+0#00e0003&|b|j|e|c|t|<|o|b|j|e|c|t|<|I+0#0000000&|>+0#00e0003&@1| +0#0000000&@46
13+
|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
14+
@75
15+
|~+0#4040ff13&| @73
16+
|~| @73
17+
|~| @73
18+
|~| @73
19+
|~| @73
20+
| +0#0000000&@56|1|9|,|5| @9|B|o|t|

runtime/syntax/testdir/input/vim9_types.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
vim9script
22
# Vim9 types
33
# VIM_TEST_SETUP hi link vimTypeAny Todo
4-
# VIM_TEST_SETUP hi link vimVariableTypeAny Todo
4+
# VIM_TEST_SETUP hi link vim9VariableTypeAny Todo
55

66

77
# builtin types (distinct any highlighting)
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
vim9script
2+
# Vim9 object type constructor
3+
# VIM_TEST_SETUP hi link vimTypeObject Todo
4+
# VIM_TEST_SETUP hi link vim9VariableTypeObject Todo
5+
6+
7+
# Issue #18677 (No recognition of object<any> types - Aliaksei Budavei)
8+
9+
interface I
10+
def string(): string
11+
endinterface
12+
13+
class C implements I
14+
def string(): string
15+
return "C"
16+
enddef
17+
endclass
18+
19+
enum E implements I
20+
INSTANCE
21+
22+
def string(): string
23+
return "E"
24+
enddef
25+
endenum
26+
27+
var c: object<C> = C.new()
28+
var e: object<E> = E.INSTANCE
29+
var os: tuple<object<any>, object<I>> = (c, e)
30+
echo (c, e) == os
31+
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
vim9script
2+
# Vim9 object type constructor
3+
# VIM_TEST_SETUP hi link vimIypeObject Todo
4+
# VIM_TEST_SETUP hi link vim9VariableIypeObject Todo
5+
6+
7+
interface I
8+
endinterface
9+
10+
var a: object<I>
11+
var b: object<any>
12+
var c: object<object<I>>
13+
var d: object<object<any>>
14+
15+
def Foo(
16+
arg1: object<I>,
17+
arg2: object<any>,
18+
arg3: object<object<I>>,
19+
arg4: object<object<any>>)
20+
enddef
21+
22+
def Bar(): object<I>
23+
enddef
24+
25+
def Baz(): object<object<I>>
26+
enddef
27+

runtime/syntax/vim.vim

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
" Language: Vim script
33
" Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com>
44
" Doug Kearns <dougkearns@gmail.com>
5-
" Last Change: 2025 Nov 04
5+
" Last Change: 2025 Nov 07
66
" Former Maintainer: Charles E. Campbell
77

88
" DO NOT CHANGE DIRECTLY.
@@ -629,13 +629,20 @@ syn match vimParamType contained ":\s" skipwhite skipnl nextgroup=@vimType conta
629629
syn match vimTypeSep contained ":\%(\s\|\n\)\@=" skipwhite nextgroup=@vimType
630630
syn keyword vimType contained blob bool channel float job number string void
631631
syn keyword vimTypeAny contained any
632+
syn region vimTypeObject contained
633+
\ matchgroup=vimType
634+
\ start="\<object<"
635+
\ end=">"
636+
\ contains=vimTypeAny,vimTypeObject,vimUserType
637+
\ oneline
638+
\ transparent
632639
syn match vimType contained "\<\%(func\)\>"
633640
syn region vimCompoundType contained matchgroup=vimType start="\<func(" end=")" nextgroup=vimTypeSep contains=@vim9Continue,@vimType transparent
634641
syn region vimCompoundType contained matchgroup=vimType start="\<tuple<" end=">" contains=@vim9Continue,@vimType transparent
635642
syn region vimCompoundType contained matchgroup=vimType start="\<\%(list\|dict\)<" end=">" contains=@vimType oneline transparent
636643
syn match vimUserType contained "\<\%(\h\w*\.\)*\u\w*\>"
637644

638-
syn cluster vimType contains=vimType,vimTypeAny,vimCompoundType,vimUserType
645+
syn cluster vimType contains=vimType,vimTypeAny,vimTypeObject,vimCompoundType,vimUserType
639646

640647
" Classes, Enums And Interfaces: {{{2
641648
" =============================
@@ -1186,6 +1193,13 @@ syn region vim9VariableList contained start="\[" end="]" contains=@vimContinue,@
11861193
syn match vim9VariableTypeSep contained "\S\@1<=:\%(\s\|\n\)\@=" skipwhite nextgroup=@vim9VariableType
11871194
syn keyword vim9VariableType contained blob bool channel float job number string void skipwhite nextgroup=vimLetHeredoc
11881195
syn keyword vim9VariableTypeAny contained any skipwhite nextgroup=vimLetHeredoc
1196+
syn region vim9VariableTypeObject contained
1197+
\ matchgroup=vimType
1198+
\ start="\<object<"
1199+
\ end=">"
1200+
\ contains=vimTypeAny,vimTypeObject,vimUserType
1201+
\ oneline
1202+
\ transparent
11891203
syn match vim9VariableType contained "\<\%(func\)\>" skipwhite nextgroup=vimLetHeredoc
11901204
syn region vim9VariableCompoundType contained
11911205
\ matchgroup=vim9VariableType
@@ -1211,7 +1225,7 @@ syn region vim9VariableCompoundType contained
12111225
\ transparent
12121226
syn match vim9VariableUserType contained "\<\%(\h\w*\.\)*\u\w*\>" skipwhite nextgroup=vimLetHeredoc
12131227

1214-
syn cluster vim9VariableType contains=vim9VariableType,vim9VariableTypeAny,vim9VariableCompoundType,vim9VariableUserType
1228+
syn cluster vim9VariableType contains=vim9VariableType,vim9VariableTypeAny,vim9VariableTypeObject,vim9VariableCompoundType,vim9VariableUserType
12151229

12161230
" Lockvar and Unlockvar: {{{2
12171231
" =====================
@@ -2648,6 +2662,7 @@ if !exists("skip_vim_syntax_inits")
26482662
hi def link vimTodo Todo
26492663
hi def link vimType Type
26502664
hi def link vimTypeAny vimType
2665+
hi def link vimTypeObject vimType
26512666
hi def link vimUniq vimCommand
26522667
hi def link vimUniqBang vimBang
26532668
hi def link vimUniqOptions Special
@@ -2739,7 +2754,8 @@ if !exists("skip_vim_syntax_inits")
27392754
hi def link vim9TypeEquals vimOper
27402755
hi def link vim9Variable vimVar
27412756
hi def link vim9VariableType vimType
2742-
hi def link vim9VariableTypeAny vimType
2757+
hi def link vim9VariableTypeAny vimTypeAny
2758+
hi def link vim9VariableTypeObject vimTypeObject
27432759
hi def link vim9Var vimCommand
27442760
hi def link vim9Vim9ScriptArg Special
27452761
hi def link vim9Vim9Script vimCommand

0 commit comments

Comments
 (0)