Skip to content

Commit

Permalink
re-add indent and textobject queries for perl (helix-editor#7947)
Browse files Browse the repository at this point in the history
* bump tree-sitter-perl version

need some grammar tweaks for the indent queries to function properly

* add indent queries for perl

* add textobject queries for perl
  • Loading branch information
doy authored and dgkf committed Jan 30, 2024
1 parent 485afed commit 82a36d2
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 2 deletions.
2 changes: 1 addition & 1 deletion book/src/generated/lang-support.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@
| pascal ||| | `pasls` |
| passwd || | | |
| pem || | | |
| perl || | | `perlnavigator` |
| perl || | | `perlnavigator` |
| php |||| `intelephense` |
| po ||| | |
| pod || | | |
Expand Down
2 changes: 1 addition & 1 deletion languages.toml
Original file line number Diff line number Diff line change
Expand Up @@ -1119,7 +1119,7 @@ indent = { tab-width = 2, unit = " " }

[[grammar]]
name = "perl"
source = { git = "https://github.com/tree-sitter-perl/tree-sitter-perl", rev = "ed21ecbcc128a6688770ebafd3ef68a1c9bc1ea9" }
source = { git = "https://github.com/tree-sitter-perl/tree-sitter-perl", rev = "9f3166800d40267fa68ed8273e96baf74f390517" }

[[language]]
name = "pod"
Expand Down
29 changes: 29 additions & 0 deletions runtime/queries/perl/indents.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
[
(block)
(conditional_statement)
(loop_statement)
(cstyle_for_statement)
(for_statement)
(elsif)
(array_element_expression)
(hash_element_expression)
(coderef_call_expression)
(anonymous_slice_expression)
(slice_expression)
(keyval_expression)
(anonymous_array_expression)
(anonymous_hash_expression)
(stub_expression)
(func0op_call_expression)
(func1op_call_expression)
(map_grep_expression)
(function_call_expression)
(method_call_expression)
(attribute)
] @indent

[
"}"
"]"
")"
] @outdent
14 changes: 14 additions & 0 deletions runtime/queries/perl/textobjects.scm
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
(subroutine_declaration_statement
body: (_) @function.inside) @function.around
(anonymous_subroutine_expression
body: (_) @function.inside) @function.around

(package_statement) @class.around
(package_statement
(block) @class.inside)

(list_expression
(_) @parameter.inside)

(comment) @comment.around
(pod) @comment.around

0 comments on commit 82a36d2

Please sign in to comment.