Skip to content

Commit 89ebe73

Browse files
authored
feat(typescript): type and interface as @parameter.* (#779)
Addresses #86 (comment)
1 parent 0f051e9 commit 89ebe73

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed

queries/typescript/textobjects.scm

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,65 @@
3838
.
3939
"}"
4040
(#make-range! "class.inner" @_start @_end)))
41+
42+
; type, interface items as @parameter
43+
; 1. parameter.inner
44+
(property_signature) @parameter.inner
45+
46+
; 2. parameter.outer: Only one element, no comma
47+
(object_type
48+
.
49+
(property_signature) @parameter.outer .)
50+
51+
(interface_body
52+
.
53+
(property_signature) @parameter.outer .)
54+
55+
; 3. parameter.outer: Comma/semicolon before or after
56+
([
57+
(object_type
58+
"," @_start
59+
.
60+
(property_signature) @_end)
61+
(interface_body
62+
"," @_start
63+
.
64+
(property_signature) @_end)
65+
]
66+
(#make-range! "parameter.outer" @_start @_end))
67+
68+
([
69+
(object_type
70+
(property_signature) @_start
71+
.
72+
"," @_end)
73+
(interface_body
74+
(property_signature) @_start
75+
.
76+
"," @_end)
77+
]
78+
(#make-range! "parameter.outer" @_start @_end))
79+
80+
([
81+
(object_type
82+
";" @_start
83+
.
84+
(property_signature) @_end)
85+
(interface_body
86+
";" @_start
87+
.
88+
(property_signature) @_end)
89+
]
90+
(#make-range! "parameter.outer" @_start @_end))
91+
92+
([
93+
(object_type
94+
(property_signature) @_start
95+
.
96+
";" @_end)
97+
(interface_body
98+
(property_signature) @_start
99+
.
100+
";" @_end)
101+
]
102+
(#make-range! "parameter.outer" @_start @_end))

0 commit comments

Comments
 (0)