diff options
Diffstat (limited to 'runtime/queries/heex/injections.scm')
-rw-r--r-- | runtime/queries/heex/injections.scm | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/runtime/queries/heex/injections.scm b/runtime/queries/heex/injections.scm new file mode 100644 index 00000000..ad4e4faa --- /dev/null +++ b/runtime/queries/heex/injections.scm @@ -0,0 +1,21 @@ +; https://github.com/connorlay/tree-sitter-heex/blob/592e22292a367312c35e13de7fdb888f029981d6/queries/injections.scm +; directives are standalone tags like '<%= @x %>' +; +; partial_expression_values are elixir code that is part of an expression that +; spans multiple directive nodes, so they must be combined. For example: +; <%= if true do %> +; <p>hello, tree-sitter!</p> +; <% end %> +((directive (partial_expression_value) @injection.content) + (#set! injection.language "elixir") + (#set! injection.include-children) + (#set! injection.combined)) + +; Regular expression_values do not need to be combined +((directive (expression_value) @injection.content) + (#set! injection.language "elixir")) + +; expressions live within HTML tags, and do not need to be combined +; <link href={ Routes.static_path(..) } /> +((expression (expression_value) @injection.content) + (#set! injection.language "elixir")) |