You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
helix-plus/runtime/queries/ruby/textobjects.scm

45 lines
934 B
Scheme

; Class and Modules
(class
body: (_)? @class.inside) @class.around
(singleton_class
value: (_)
(_)+ @class.inside) @class.around
(call
receiver: (constant) @class_const
method: (identifier) @class_method
(#match? @class_const "Class")
(#match? @class_method "new")
(do_block (_)+ @class.inside)) @class.around
(module
body: (_)? @class.inside) @class.around
; Functions and Blocks
(singleton_method
body: (_)? @function.inside) @function.around
(method
body: (_)? @function.inside) @function.around
(do_block
body: (_)? @function.inside) @function.around
(block
body: (_)? @function.inside) @function.around
; Parameters
(method_parameters
(_) @parameter.inside) @parameter.around
(block_parameters
(_) @parameter.inside) @parameter.around
(lambda_parameters
(_) @parameter.inside) @parameter.around
; Comments
(comment) @comment.inside
(comment)+ @comment.around