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
(function_declaration body: (block)? @function.inside) @function.around (func_literal (_)? @function.inside) @function.around (method_declaration body: (block)? @function.inside) @function.around ;; struct and interface declaration as class textobject? (type_declaration (type_spec (type_identifier) (struct_type (field_declaration_list (_)?) @class.inside))) @class.around (type_declaration (type_spec (type_identifier) (interface_type (method_spec)+ @class.inside))) @class.around (type_parameter_list ((_) @parameter.inside . ","? @parameter.around) @parameter.around) (parameter_list ((_) @parameter.inside . ","? @parameter.around) @parameter.around) (argument_list ((_) @parameter.inside . ","? @parameter.around) @parameter.around) (comment) @comment.inside (comment)+ @comment.around