-
Notifications
You must be signed in to change notification settings - Fork 13
/
textobjects.scm
79 lines (60 loc) · 1.74 KB
/
textobjects.scm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
(class_declaration
body: (class_body) @class.inner) @class.outer
(method_declaration) @function.outer
(method_declaration
body: (block . "{" . (_) @function.inner._start @function.inner._end (_)? @function.inner._end . "}"
))
(constructor_declaration) @function.outer
(constructor_declaration
body: (constructor_body . "{" . (_) @function.inner._start @function.inner._end (_)? @function.inner._end . "}"
))
(for_statement
body: (_)? @loop.inner) @loop.outer
(enhanced_for_statement
body: (_)? @loop.inner) @loop.outer
(while_statement
body: (_)? @loop.inner) @loop.outer
(do_statement
body: (_)? @loop.inner) @loop.outer
(if_statement
condition: (_ (parenthesized_expression) @conditional.inner) @conditional.outer)
(if_statement
consequence: (_)? @conditional.inner
alternative: (_)? @conditional.inner
) @conditional.outer
(switch_expression
body: (_)? @conditional.inner) @conditional.outer
;; blocks
(block) @block.outer
(method_invocation) @call.outer
(method_invocation
arguments: (argument_list . "(" . (_) @call.inner._start (_)? @call.inner._end . ")"
))
;; parameters
(formal_parameters
"," @parameter.outer._start .
(formal_parameter) @parameter.inner @parameter.outer._end
)
(formal_parameters
. (formal_parameter) @parameter.inner @parameter.outer._start
. ","? @parameter.outer._end
)
(argument_list
"," @parameter.outer._start .
(_) @parameter.inner @parameter.outer._end
)
(argument_list
. (_) @parameter.inner @parameter.outer._start
. ","? @parameter.outer._end
)
[
(line_comment)
(block_comment)
] @comment.outer
[
(decimal_integer_literal)
(decimal_floating_point_literal)
(hex_integer_literal)
(binary_integer_literal)
(octal_integer_literal)
] @number.inner