Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update treesit queries #119

Merged
merged 3 commits into from
Aug 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions scripts/get-helix-queries
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,13 @@

set -e

HELIX_DIR="${1:-../helix}"
echo "Make sure you have the latest version of helix checked out in $HELIX_DIR"
tmpdir="$(mktemp -d)"
git clone --depth 1 https://github.com/helix-editor/helix "$tmpdir"

HELIX_DIR="$tmpdir"

find $HELIX_DIR/runtime/queries -name 'textobjects.scm' |
cut -d'/' -f5- |
sed "s|$HELIX_DIR/runtime/queries/||" |
while read -r file; do
dir="$(dirname "$file")"
filename="$(basename "$file")"
Expand Down
6 changes: 6 additions & 0 deletions treesit-queries/_typescript/textobjects.scm
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,9 @@
(type_alias_declaration
value: (_) @class.inner)
] @class.outer

(enum_body
(_) @entry.outer)

(enum_assignment (_) @entry.inner)

21 changes: 21 additions & 0 deletions treesit-queries/ada/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
;; Support for high-level text objects selections.
;; For instance:
;; maf (v)isually select (a) (f)unction or subprogram
;; mif (v)isually select (i)nside a (f)unction or subprogram
;; mai (v)isually select (a) (i)f statement (or loop)
;; mii (v)isually select (i)nside an (i)f statement (or loop)
;;
;; For navigations using textobjects, check link below:
;; https://docs.helix-editor.com/master/usage.html#navigating-using-tree-sitter-textobjects
;;
;; For Textobject queries explaination, check out link below:
;; https://docs.helix-editor.com/master/guides/textobject.html

(subprogram_body) @function.outer
(subprogram_body (non_empty_declarative_part) @function.inner)
(subprogram_body (handled_sequence_of_statements) @function.inner)
(function_specification) @function.outer
(procedure_specification) @function.outer
(package_declaration) @function.outer
(generic_package_declaration) @function.outer
(package_body) @function.outer
1 change: 1 addition & 0 deletions treesit-queries/adl/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
(struct (_) @function.inner) @funtion.outer
3 changes: 3 additions & 0 deletions treesit-queries/bash/textobjects.scm
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,6 @@
(comment) @comment.inner

(comment)+ @comment.outer

(array
(_) @entry.outer)
14 changes: 4 additions & 10 deletions treesit-queries/c/textobjects.scm
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,8 @@

(comment)+ @comment.outer

(for_statement
body: (_) @loop.inner) @loop.outer
(enumerator
(_) @entry.inner) @entry.outer

(while_statement
body: (_) @loop.inner) @loop.outer

(do_statement
body: (_) @loop.inner) @loop.outer

(if_statement
consequence: (_) @conditional.inner) @conditional.outer
(initializer_list
(_) @entry.outer)
74 changes: 73 additions & 1 deletion treesit-queries/cairo/textobjects.scm
Original file line number Diff line number Diff line change
@@ -1 +1,73 @@
; inherits: rust
(function_item
body: (_) @function.inner) @function.outer

(struct_item
body: (_) @class.inner) @class.outer

(enum_item
body: (_) @class.inner) @class.outer

(trait_item
body: (_) @class.inner) @class.outer

(impl_item
body: (_) @class.inner) @class.outer

(parameters
((_) @parameter.inner . ","? @parameter.outer) @parameter.outer)

(type_parameters
((_) @parameter.inner . ","? @parameter.outer) @parameter.outer)

(type_arguments
((_) @parameter.inner . ","? @parameter.outer) @parameter.outer)

(arguments
((_) @parameter.inner . ","? @parameter.outer) @parameter.outer)

(field_initializer_list
((_) @parameter.inner . ","? @parameter.outer) @parameter.outer)

[
(line_comment)
] @comment.inner

(line_comment)+ @comment.outer

(; #[test]
(attribute_item
(attribute
(identifier) @_test_attribute))
; allow other attributes like #[should_panic] and comments
[
(attribute_item)
(line_comment)
]*
; the test function
(function_item
body: (_) @test.inner) @test.outer
(#equal @_test_attribute "test"))

(array_expression
(_) @entry.outer)

(tuple_expression
(_) @entry.outer)

(tuple_pattern
(_) @entry.outer)

; Commonly used vec macro intializer is special cased
(macro_invocation
(identifier) @_id (token_tree (_) @entry.outer)
(#equal @_id "array"))

(enum_variant) @entry.outer

(field_declaration
(_) @entry.inner) @entry.outer

(field_initializer
(_) @entry.inner) @entry.outer

(shorthand_field_initializer) @entry.outer
93 changes: 93 additions & 0 deletions treesit-queries/dart/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
(class_definition
body: (_) @class.inner) @class.outer

(mixin_declaration
(class_body) @class.inner) @class.outer

(extension_declaration
(extension_body) @class.inner) @class.outer

(enum_declaration
body: (_) @class.inner) @class.outer

(type_alias) @class.outer

(_
(
[
(getter_signature)
(setter_signature)
(function_signature)
(method_signature)
(constructor_signature)
]
.
(function_body) @function.inner @function.outer
) @function.outer
)

(declaration
[
(constant_constructor_signature)
(constructor_signature)
(factory_constructor_signature)
(redirecting_factory_constructor_signature)
(getter_signature)
(setter_signature)
(operator_signature)
(function_signature)
]
) @function.outer

(lambda_expression
body: (_) @function.inner
) @function.outer

(function_expression
body: (_) @function.inner
) @function.outer

[
(comment)
(documentation_comment)
] @comment.inner

(comment)+ @comment.outer

(documentation_comment)+ @comment.outer

(formal_parameter_list
(
(formal_parameter) @parameter.inner . ","? @parameter.outer
) @parameter.outer
)

(optional_formal_parameters
(
(formal_parameter) @parameter.inner . ","? @parameter.outer
) @parameter.outer
)

(arguments
(
[
(argument) @parameter.inner
(named_argument (label) . (_)* @parameter.inner)
]
. ","? @parameter.outer
) @parameter.outer
)

(type_arguments
(
((_) . ("." . (_) @parameter.inner @parameter.outer)?) @parameter.inner
. ","? @parameter.outer
) @parameter.outer
)

(expression_statement
((identifier) @_name (#any-of? @_name "test" "testWidgets"))
.
(selector (argument_part (arguments . (_) . (argument) @test.inner)))
) @test.outer

1 change: 1 addition & 0 deletions treesit-queries/docker-compose/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
; inherits: yaml
4 changes: 4 additions & 0 deletions treesit-queries/dockerfile/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
(comment) @comment.inner

(comment)+ @comment.outer

1 change: 1 addition & 0 deletions treesit-queries/earthfile/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
(target (block) @function.inner) @function.outer
9 changes: 9 additions & 0 deletions treesit-queries/ecma/textobjects.scm
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,12 @@
(comment) @comment.inner

(comment)+ @comment.outer

(array
(_) @entry.outer)

(pair
(_) @entry.inner) @entry.outer

(pair_pattern
(_) @entry.inner) @entry.outer
6 changes: 6 additions & 0 deletions treesit-queries/env/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
(comment) @comment.inner

(comment)+ @comment.outer

(variable_assignment
(_) @entry.inner) @entry.outer
11 changes: 11 additions & 0 deletions treesit-queries/gdscript/textobjects.scm
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
(function_definition
(body) @function.inner) @function.outer

(lambda (body) @function.inner) @function.outer

(parameters
[
(identifier)
Expand All @@ -13,5 +15,14 @@
(typed_default_parameter)
] @parameter.inner @parameter.outer)

(arguments (_expression) @parameter.inner @parameter.outer)

[
(const_statement)
(variable_statement)
(pair)
(enumerator)
] @entry.outer

(comment) @comment.inner
(comment)+ @comment.outer
6 changes: 6 additions & 0 deletions treesit-queries/git-config/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
(comment) @comment.inner

(comment)+ @comment.outer

(variable
(_) @entry.inner) @entry.outer
1 change: 1 addition & 0 deletions treesit-queries/gjs/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
; inherits: _gjs,_javascript,ecma
4 changes: 2 additions & 2 deletions treesit-queries/go/textobjects.scm
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
(type_declaration
(type_spec (type_identifier) (struct_type (field_declaration_list (_)?) @class.inner))) @class.outer

(type_declaration
(type_spec (type_identifier) (interface_type (method_spec)+ @class.inner))) @class.outer
;; (type_declaration
;; (type_spec (type_identifier) (interface_type (method_spec)+ @class.inner))) @class.outer

(type_parameter_list
((_) @parameter.inner . ","? @parameter.outer) @parameter.outer)
Expand Down
23 changes: 23 additions & 0 deletions treesit-queries/godot-resource/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
(section
(identifier)
(_)
(property) @class.inner
) @class.outer

(attribute
(identifier)
(_) @parameter.inner) @parameter.outer

(property
(path)
(_) @entry.inner) @entry.outer

(pair
(_) @entry.inner) @entry.outer

(array
(_) @entry.outer)

(comment) @comment.inner

(comment)+ @comment.outer
23 changes: 23 additions & 0 deletions treesit-queries/graphql/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
(type_definition) @class.outer

(executable_definition) @function.outer

(arguments_definition
(input_value_definition) @parameter.inner @parameter.movement)

(arguments
(argument) @parameter.inner @parameter.movement)

(selection
[(field) (fragment_spread)] @entry.outer)

(selection
(field (selection_set) @entry.inner))

(field_definition
(_) @entry.inner) @entry.outer

(input_fields_definition
(input_value_definition ) @entry.outer)

(enum_value) @entry.outer
1 change: 1 addition & 0 deletions treesit-queries/gts/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
; inherits: _gjs,_typescript,ecma
11 changes: 11 additions & 0 deletions treesit-queries/hcl/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
(comment) @comment.inner
(comment)+ @comment.outer

(function_arguments
((_) @parameter.inner . ","? @parameter.outer) @parameter.outer)

(attribute
(_) @entry.inner) @entry.outer

(tuple
(_) @entry.outer)
10 changes: 10 additions & 0 deletions treesit-queries/hocon/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
(comment) @comment.inner

(comment)+ @comment.outer

(pair
(_) @entry.inner) @entry.outer

(array
(_) @entry.outer)

5 changes: 5 additions & 0 deletions treesit-queries/hurl/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
(comment) @comment.inner

(comment)+ @comment.outer

(entry (_) @function.inner) @function.outer
Loading
Loading