Skip to content

Commit 0bc4ef0

Browse files
elgianoclason
authored andcommitted
fix(supercollider): update queries after breaking change
1 parent a0e182a commit 0bc4ef0

File tree

2 files changed

+73
-34
lines changed

2 files changed

+73
-34
lines changed

BUILTIN_TEXTOBJECTS.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@
153153
<tr>
154154
<td>slang</td><td><span title="@assignment.inner">🟩</span></td> <td><span title="@assignment.lhs">🟩</span></td> <td><span title="@assignment.outer">🟩</span></td> <td><span title="@assignment.rhs">🟩</span></td> <td><span title="@attribute.inner">⬜</span></td> <td><span title="@attribute.outer">⬜</span></td> <td><span title="@block.inner">⬜</span></td> <td><span title="@block.outer">🟩</span></td> <td><span title="@call.inner">🟩</span></td> <td><span title="@call.outer">🟩</span></td> <td><span title="@class.inner">🟩</span></td> <td><span title="@class.outer">🟩</span></td> <td><span title="@comment.inner">⬜</span></td> <td><span title="@comment.outer">🟩</span></td> <td><span title="@conditional.inner">🟩</span></td> <td><span title="@conditional.outer">🟩</span></td> <td><span title="@frame.inner">⬜</span></td> <td><span title="@frame.outer">⬜</span></td> <td><span title="@function.inner">🟩</span></td> <td><span title="@function.outer">🟩</span></td> <td><span title="@loop.inner">🟩</span></td> <td><span title="@loop.outer">🟩</span></td> <td><span title="@number.inner">🟩</span></td> <td><span title="@parameter.inner">🟩</span></td> <td><span title="@parameter.outer">🟩</span></td> <td><span title="@regex.inner">⬜</span></td> <td><span title="@regex.outer">⬜</span></td> <td><span title="@return.inner">🟩</span></td> <td><span title="@return.outer">🟩</span></td> <td><span title="@scopename.inner">⬜</span></td> <td><span title="@statement.outer">🟩</span></td> </tr>
155155
<tr>
156-
<td>supercollider</td><td><span title="@assignment.inner">⬜</span></td> <td><span title="@assignment.lhs">⬜</span></td> <td><span title="@assignment.outer">⬜</span></td> <td><span title="@assignment.rhs">⬜</span></td> <td><span title="@attribute.inner">⬜</span></td> <td><span title="@attribute.outer">⬜</span></td> <td><span title="@block.inner">🟩</span></td> <td><span title="@block.outer">🟩</span></td> <td><span title="@call.inner">⬜</span></td> <td><span title="@call.outer">⬜</span></td> <td><span title="@class.inner">🟩</span></td> <td><span title="@class.outer">🟩</span></td> <td><span title="@comment.inner">⬜</span></td> <td><span title="@comment.outer">🟩</span></td> <td><span title="@conditional.inner">🟩</span></td> <td><span title="@conditional.outer">🟩</span></td> <td><span title="@frame.inner">⬜</span></td> <td><span title="@frame.outer">⬜</span></td> <td><span title="@function.inner">🟩</span></td> <td><span title="@function.outer">🟩</span></td> <td><span title="@loop.inner">🟩</span></td> <td><span title="@loop.outer">🟩</span></td> <td><span title="@number.inner">⬜</span></td> <td><span title="@parameter.inner">🟩</span></td> <td><span title="@parameter.outer">🟩</span></td> <td><span title="@regex.inner">⬜</span></td> <td><span title="@regex.outer">⬜</span></td> <td><span title="@return.inner">⬜</span></td> <td><span title="@return.outer">⬜</span></td> <td><span title="@scopename.inner">⬜</span></td> <td><span title="@statement.outer">⬜</span></td> </tr>
156+
<td>supercollider</td><td><span title="@assignment.inner">🟩</span></td> <td><span title="@assignment.lhs">🟩</span></td> <td><span title="@assignment.outer">🟩</span></td> <td><span title="@assignment.rhs">🟩</span></td> <td><span title="@attribute.inner">⬜</span></td> <td><span title="@attribute.outer">⬜</span></td> <td><span title="@block.inner">🟩</span></td> <td><span title="@block.outer">🟩</span></td> <td><span title="@call.inner">🟩</span></td> <td><span title="@call.outer">🟩</span></td> <td><span title="@class.inner">🟩</span></td> <td><span title="@class.outer">🟩</span></td> <td><span title="@comment.inner">⬜</span></td> <td><span title="@comment.outer">🟩</span></td> <td><span title="@conditional.inner">🟩</span></td> <td><span title="@conditional.outer">🟩</span></td> <td><span title="@frame.inner">⬜</span></td> <td><span title="@frame.outer">⬜</span></td> <td><span title="@function.inner">🟩</span></td> <td><span title="@function.outer">🟩</span></td> <td><span title="@loop.inner">🟩</span></td> <td><span title="@loop.outer">🟩</span></td> <td><span title="@number.inner">🟩</span></td> <td><span title="@parameter.inner">🟩</span></td> <td><span title="@parameter.outer">🟩</span></td> <td><span title="@regex.inner">⬜</span></td> <td><span title="@regex.outer">⬜</span></td> <td><span title="@return.inner">🟩</span></td> <td><span title="@return.outer">🟩</span></td> <td><span title="@scopename.inner">⬜</span></td> <td><span title="@statement.outer">⬜</span></td> </tr>
157157
<tr>
158158
<td>svelte</td><td><span title="@assignment.inner">⬜</span></td> <td><span title="@assignment.lhs">⬜</span></td> <td><span title="@assignment.outer">⬜</span></td> <td><span title="@assignment.rhs">⬜</span></td> <td><span title="@attribute.inner">🟩</span></td> <td><span title="@attribute.outer">🟩</span></td> <td><span title="@block.inner">🟩</span></td> <td><span title="@block.outer">🟩</span></td> <td><span title="@call.inner">⬜</span></td> <td><span title="@call.outer">⬜</span></td> <td><span title="@class.inner">🟩</span></td> <td><span title="@class.outer">🟩</span></td> <td><span title="@comment.inner">⬜</span></td> <td><span title="@comment.outer">🟩</span></td> <td><span title="@conditional.inner">🟩</span></td> <td><span title="@conditional.outer">🟩</span></td> <td><span title="@frame.inner">⬜</span></td> <td><span title="@frame.outer">⬜</span></td> <td><span title="@function.inner">🟩</span></td> <td><span title="@function.outer">🟩</span></td> <td><span title="@loop.inner">🟩</span></td> <td><span title="@loop.outer">🟩</span></td> <td><span title="@number.inner">⬜</span></td> <td><span title="@parameter.inner">⬜</span></td> <td><span title="@parameter.outer">⬜</span></td> <td><span title="@regex.inner">⬜</span></td> <td><span title="@regex.outer">⬜</span></td> <td><span title="@return.inner">⬜</span></td> <td><span title="@return.outer">⬜</span></td> <td><span title="@scopename.inner">⬜</span></td> <td><span title="@statement.outer">⬜</span></td> </tr>
159159
<tr>
Lines changed: 72 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,97 @@
1-
; conditional
2-
(if
3-
true: (function_block)? @conditional.inner
4-
false: (function_block)? @conditional.inner) @conditional.outer
1+
; assignment
2+
(variable_definition
3+
name: (_) @assignment.lhs
4+
value: (_) @assignment.inner @assignment.rhs) @assignment.outer
55

6-
(if
7-
(_)? @conditional.inner) @conditional.outer
8-
9-
; loops
10-
(for
11-
(function_block)? @loop.inner) @loop.outer
12-
13-
(while
14-
(function_block)? @loop.inner) @loop.outer
6+
(function_definition
7+
name: (_) @assignment.lhs
8+
value: (_) @assignment.inner @assignment.rhs) @assignment.outer
159

10+
; block
1611
(code_block
17-
(_) @block.inner) @block.outer
12+
(_)* @block.inner) @block.outer
1813

19-
(class) @class.outer
14+
; class
15+
(class_def
16+
(class_def_body) @class.inner) @class.outer
2017

21-
(parameter_call_list
22-
(_)?) @class.inner
18+
; call
19+
(function_call
20+
arguments: (_
21+
.
22+
"("
23+
_+ @call.inner
24+
")")?) @call.outer
2325

26+
; comment
2427
(line_comment) @comment.outer
2528

2629
(block_comment) @comment.outer
2730

28-
(function_block
29-
(_) @function.inner) @function.outer
31+
; conditional:
32+
(function_call
33+
name: (_) @_name
34+
(#eq? @_name "if")
35+
arguments: (parameter_call_list
36+
(_) @conditional.inner)?) @conditional.outer
37+
38+
; function
39+
((function_block) @function.inner @function.outer
40+
(#offset! @function.inner 0 1 0 -1)) ; use offset to skip brackets
41+
42+
; loop
43+
(function_call
44+
name: (identifier) @_fname
45+
(#eq? @_fname "while")
46+
arguments: (parameter_call_list
47+
(_) @loop.inner)?) @loop.outer
48+
49+
(function_call
50+
name: (identifier) @_fname
51+
(#eq? @_fname "for")
52+
arguments: (parameter_call_list
53+
(_) @loop.inner .)?) @loop.outer
54+
55+
(function_call
56+
name: (identifier) @_fname
57+
(#eq? @_fname "forBy")
58+
arguments: (parameter_call_list
59+
(_) @loop.inner .)?) @loop.outer
60+
61+
; number
62+
(number) @number.inner
3063

3164
;parameters
3265
(parameter_call_list
33-
"," @parameter.outer
66+
(_) @parameter.inner @parameter.outer
3467
.
35-
(_) @parameter.inner @parameter.outer)
68+
(",")? @parameter.outer)
3669

3770
(parameter_call_list
71+
"," @parameter.outer
3872
.
73+
(_) @parameter.inner @parameter.outer .)
74+
75+
(parameter_list
3976
(_) @parameter.inner @parameter.outer
4077
.
41-
","? @parameter.outer)
78+
(",")? @parameter.outer)
4279

43-
((symbol)?
44-
(identifier)
80+
(parameter_list
4581
"," @parameter.outer
4682
.
47-
((method_name)
48-
(function_call
49-
(_))) @parameter.inner @parameter.outer)
83+
(_) @parameter.inner @parameter.outer .)
5084

51-
((symbol)?
52-
(identifier)
85+
(collection
86+
(_) @parameter.inner @parameter.outer
5387
.
54-
((method_name)
55-
(function_call
56-
(_))) @parameter.inner @parameter.outer
88+
(",")? @parameter.outer)
89+
90+
(collection
91+
"," @parameter.outer
5792
.
58-
","? @parameter.outer)
93+
(_) @parameter.inner @parameter.outer .)
94+
95+
; return
96+
(return_statement
97+
(_) @return.inner) @return.outer

0 commit comments

Comments
 (0)