Skip to content

Commit 096c596

Browse files
committed
Update and test variable declarations
1 parent fcf0056 commit 096c596

File tree

5 files changed

+94
-21
lines changed

5 files changed

+94
-21
lines changed

client/src/syntaxes/vba.tmLanguage.yaml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -828,7 +828,11 @@ repository:
828828
patterns:
829829
- include: "#kw-storageMe"
830830
2:
831-
name: variable.other.object.vba
831+
patterns:
832+
- name: variable.other.constant
833+
match: ([A-Z][A-Z0-9_]*)
834+
- name: variable.other.readwrite.vba
835+
match: (?i)([a-z][a-z0-9_]*)
832836
3:
833837
patterns:
834838
- include: "#propertyChain"
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
' SYNTAX TEST "source.vba" "declarations"
2+
3+
' Variable, constant, and function declarations.
4+
5+
6+
Dim x As Long, y As Long, z ' Comment
7+
'<------------------------------- meta.variable.declaration.vba
8+
'<--- storage.modifier.declare-variable.vba
9+
' ^ ^ ^ variable.other.readwrite.vba
10+
' ^^ ^^ keyword.control.as.vba
11+
' ^^^^ ^^^^ support.type.primitive.Long.vba
12+
' ^ ^ punctuation.separator.vba
13+
' ^^^^^^^^^ comment.line.apostrophe.vba - meta.variable.declaration.vba
14+
Private x As Long, y As Long, z ' Comment
15+
'<------------------------------- meta.variable.declaration.vba
16+
'<------- storage.modifier.declare-variable.vba
17+
' ^ ^ ^ variable.other.readwrite.vba
18+
' ^^ ^^ keyword.control.as.vba
19+
' ^^^^ ^^^^ support.type.primitive.Long.vba
20+
' ^ ^ punctuation.separator.vba
21+
' ^^^^^^^^^ comment.line.apostrophe.vba - meta.variable.declaration.vba
22+
Public x As Long, y As Long, z ' Comment
23+
'<------------------------------- meta.variable.declaration.vba
24+
'<------ storage.modifier.declare-variable.vba
25+
' ^ ^ ^ variable.other.readwrite.vba
26+
' ^^ ^^ keyword.control.as.vba
27+
' ^^^^ ^^^^ support.type.primitive.Long.vba
28+
' ^ ^ punctuation.separator.vba
29+
' ^^^^^^^^^ comment.line.apostrophe.vba - meta.variable.declaration.vba
30+
Global x As Long, y As Long, z ' Comment
31+
'<------------------------------- meta.variable.declaration.vba
32+
'<------ storage.modifier.declare-variable.vba
33+
' ^ ^ ^ variable.other.readwrite.vba
34+
' ^^ ^^ keyword.control.as.vba
35+
' ^^^^ ^^^^ support.type.primitive.Long.vba
36+
' ^ ^ punctuation.separator.vba
37+
' ^^^^^^^^^ comment.line.apostrophe.vba - meta.variable.declaration.vba
38+
39+
Const X As Long = 0, Y As Long = 0, Z = 0 ' Comment
40+
' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.const.declaration.vba
41+
' ^^^^^ storage.type.vba
42+
' ^ ^ ^ variable.other.constant
43+
' ^^ ^^ keyword.control.as.vba
44+
' ^^^^ ^^^^ support.type.primitive.Long.vba
45+
' ^ ^ punctuation.separator.vba
46+
' ^^^^^^^^^ comment.line.apostrophe.vba - meta.variable.declaration.vba
47+
Private Const X As Long = 0, Y As Long = 0, Z = 0 ' Comment
48+
' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.const.declaration.vba
49+
' ^^^^^ storage.type.vba
50+
' ^ ^ ^ variable.other.constant
51+
' ^^ ^^ keyword.control.as.vba
52+
' ^^^^ ^^^^ support.type.primitive.Long.vba
53+
' ^ ^ punctuation.separator.vba
54+
' ^^^^^^^^^ comment.line.apostrophe.vba - meta.variable.declaration.vba
55+
Public Const X As Long = 0, Y As Long = 0, Z = 0 ' Comment
56+
' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.const.declaration.vba
57+
' ^^^^^ storage.type.vba
58+
' ^ ^ ^ variable.other.constant
59+
' ^^ ^^ keyword.control.as.vba
60+
' ^^^^ ^^^^ support.type.primitive.Long.vba
61+
' ^ ^ punctuation.separator.vba
62+
' ^^^^^^^^^ comment.line.apostrophe.vba - meta.variable.declaration.vba
63+
Global Const X As Long = 0, Y As Long = 0, Z = 0 ' Comment
64+
' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.const.declaration.vba
65+
' ^^^^^ storage.type.vba
66+
' ^ ^ ^ variable.other.constant
67+
' ^^ ^^ keyword.control.as.vba
68+
' ^^^^ ^^^^ support.type.primitive.Long.vba
69+
' ^ ^ punctuation.separator.vba
70+
' ^^^^^^^^^ comment.line.apostrophe.vba - meta.variable.declaration.vba

test/textmate/unit/expressions.vba

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,7 @@ Sub Test()
3535
foo, x = 3, False) ' Comment
3636
' ^^^^^^^^^^^^^^^^^ meta.expression.vba
3737
' ^^^ ^^^^^ ^^^^^ meta.expression.vba meta.expression.vba
38-
' ^^^ variable.other.object.vba
39-
' ^ variable.other.object.vba
38+
' ^^^ ^ variable.other.readwrite.vba
4039
' ^ keyword.operator.comparison.vba
4140
' ^ constant.numeric.vba
4241
' ^^^^^ constant.language.boolean.vba
@@ -45,6 +44,6 @@ Sub Test()
4544
If condA And Not Foo(condB) Then
4645
' ^^^^^^^^^^^^^^^^^^^^^^^^ meta.expression.vba
4746
' ^^^ ^^^ keyword.operator.logical.vba
48-
' ^^^^^ meta.expression.vba meta.expression.vba variable.other.object.vba
47+
' ^^^^^ meta.expression.vba meta.expression.vba variable.other.readwrite.vba
4948
End If
5049
End Sub

test/textmate/unit/methodSignatures.vba

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,17 @@ Public Sub Foo(ByVal x As Long, ByRef y As Long, ParamArray vars() As Variant)
1616
' ^^^^^ storage.type.modifier.vba
1717
' ^ variable.parameter.vba
1818
' ^^ keyword.control.as.vba
19-
' ^^^^ support.type.primitive.vba
19+
' ^^^^ support.type.primitive.Long.vba
2020
' ^ punctuation.separator.vba
2121
' ^^^^^ storage.type.modifier.vba
2222
' ^ variable.parameter.vba
2323
' ^^ keyword.control.as.vba
24-
' ^^^^ support.type.primitive.vba
24+
' ^^^^ support.type.primitive.Long.vba
2525
' ^ punctuation.separator.vba
2626
' ^^^^^^^^^^ storage.type.modifier.vba
2727
' ^^^^ variable.parameter.vba
2828
' ^^ keyword.control.as.vba
29-
' ^^^^^^^ support.type.primitive.vba
29+
' ^^^^^^^ support.type.primitive.Variant.vba
3030
' ^ punctuation.definition.parameters.end.vba
3131
End Sub
3232
'<-------- storage.type.method.close.vba
@@ -38,7 +38,7 @@ Function Foo() As String: Foo = "Hello, World!": End Function
3838
' <-------- storage.type.method.vba
3939
' ^^^ entity.name.function.vba
4040
' ^^ keyword.control.as.vba
41-
' ^^^^^^ support.type.primitive.vba
41+
' ^^^^^^ support.type.primitive.String.vba
4242
' ^^^^^^^^^^^^ storage.type.method.close.vba
4343

4444
' Standard function
@@ -50,20 +50,20 @@ Public Function Foo(ByVal x As Long, ByRef y As Long, ParamArray vars() As Varia
5050
' ^^^^^ storage.type.modifier.vba
5151
' ^ variable.parameter.vba
5252
' ^^ keyword.control.as.vba
53-
' ^^^^ support.type.primitive.vba
53+
' ^^^^ support.type.primitive.Long.vba
5454
' ^ punctuation.separator.vba
5555
' ^^^^^ storage.type.modifier.vba
5656
' ^ variable.parameter.vba
5757
' ^^ keyword.control.as.vba
58-
' ^^^^ support.type.primitive.vba
58+
' ^^^^ support.type.primitive.Long.vba
5959
' ^ punctuation.separator.vba
6060
' ^^^^^^^^^^ storage.type.modifier.vba
6161
' ^^^^ variable.parameter.vba
6262
' ^^ keyword.control.as.vba
63-
' ^^^^^^^ support.type.primitive.vba
63+
' ^^^^^^^ support.type.primitive.Variant.vba
6464
' ^ punctuation.definition.parameters.end.vba
6565
' ^^ keyword.control.as.vba
66-
' ^^^^^^ support.type.object.vba
66+
' ^^^^^^ support.type.object.Object.vba
6767
End Function
6868
'<------------- storage.type.method.close.vba
6969

@@ -75,14 +75,14 @@ Public Sub Foo(Optional Bar As String, _
7575
' ^^^^^^^^ storage.type.modifier.vba
7676
' ^^^ variable.parameter.vba
7777
' ^^ keyword.control.as.vba
78-
' ^^^^^^ support.type.primitive.vba
78+
' ^^^^^^ support.type.primitive.String.vba
7979
' ^ punctuation.separator.vba
8080
' ^ punctuation.line-continuation.vba
8181
Optional Biz As String = "Biz", _
8282
' ^^^^^^^^ storage.type.modifier.vba
8383
' ^^^ variable.parameter.vba
8484
' ^^ keyword.control.as.vba
85-
' ^^^^^^ support.type.primitive.vba
85+
' ^^^^^^ support.type.primitive.String.vba
8686
' ^ keyword.operator.assignment.vba
8787
' ^^^^^ string.quoted.double.vba
8888
' ^ punctuation.separator.vba
@@ -91,7 +91,7 @@ Public Sub Foo(Optional Bar As String, _
9191
' ^^^^^^^^ ^^^^^ storage.type.modifier.vba
9292
' ^^^ variable.parameter.vba
9393
' ^^ keyword.control.as.vba
94-
' ^^^^^^^ support.type.primitive.vba
94+
' ^^^^^^^ support.type.primitive.Boolean.vba
9595
' ^ keyword.operator.assignment.vba
9696
' ^^^^ constant.language.boolean.vba
9797
' ^ punctuation.definition.parameters.end.vba
@@ -111,7 +111,7 @@ Public Sub Foo( _
111111
' ^^^^^^^^ storage.type.modifier.vba
112112
' ^^^ variable.parameter.vba
113113
' ^^ keyword.control.as.vba
114-
' ^^^^^^ support.type.primitive.vba
114+
' ^^^^^^ support.type.primitive.String.vba
115115
' ^ keyword.operator.assignment.vba
116116
' ^^^^^^^^^^^ string.quoted.double.vba
117117
' ^ punctuation.separator.vba
@@ -121,7 +121,7 @@ Public Sub Foo( _
121121
' ^ punctuation.line-continuation.vba
122122
As String, _
123123
' ^^ keyword.control.as.vba
124-
' ^^^^^^ support.type.primitive.vba
124+
' ^^^^^^ support.type.primitive.String.vba
125125
' ^ punctuation.separator.vba
126126
' ^ punctuation.line-continuation.vba
127127
Optional _

test/textmate/unit/params.vba

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ Sub SubCallTesting()
77
' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.sub-call.vba
88
' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.arguments.vba
99
' ^^^ entity.name.function.call.vba
10-
' ^^^ meta.variable-or-property.vba variable.other.object.vba
10+
' ^^^ meta.variable-or-property.vba variable.other.readwrite.vba
1111
' ^ ^ ^ ^ punctuation.separator.vba
1212
' ^^^^ constant.language.boolean.vba
1313
' ^^^^^^^^^ string.quoted.double.vba
@@ -18,7 +18,7 @@ Sub SubCallTesting()
1818

1919
Foo bar, _
2020
' ^^^^^^^^^^ meta.sub-call.vba
21-
' ^^^ meta.arguments.vba meta.variable-or-property.vba variable.other.object.vba
21+
' ^^^ meta.arguments.vba meta.variable-or-property.vba variable.other.readwrite.vba
2222
' ^ meta.arguments.vba punctuation.separator.vba
2323
' ^ meta.arguments.vba keyword.control.line-continuation.vba
2424
True, _
@@ -40,7 +40,7 @@ Sub FuncCallTesting()
4040
' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.function.call.vba
4141
' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.arguments.vba
4242
' ^ ^ ^ ^ punctuation.separator.vba
43-
' ^^^ meta.variable-or-property.vba variable.other.object.vba
43+
' ^^^ meta.variable-or-property.vba variable.other.readwrite.vba
4444
' ^^^^ constant.language.boolean.vba
4545
' ^^^^^^^^^ string.quoted.double.vba
4646
' ^^^^^^^^^^^^^^^^^^ meta.function.call.vba
@@ -52,7 +52,7 @@ Sub FuncCallTesting()
5252

5353
x = Foo(bar, _
5454
' ^^^ meta.function.call.vba entity.name.function.call.vba
55-
' ^^^ meta.function.call.vba meta.arguments.vba variable.other.object.vba
55+
' ^^^ meta.function.call.vba meta.arguments.vba variable.other.readwrite.vba
5656
' ^ meta.function.call.vba meta.arguments.vba punctuation.separator.vba
5757
' ^ meta.function.call.vba meta.arguments.vba keyword.control.line-continuation.vba
5858
True, _

0 commit comments

Comments
 (0)