aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--runtime/queries/jinja_inline/highlights.scm16
-rw-r--r--tests/query/highlights/jinja/filters.jinja19
2 files changed, 27 insertions, 8 deletions
diff --git a/runtime/queries/jinja_inline/highlights.scm b/runtime/queries/jinja_inline/highlights.scm
index c072eea66..3a9660471 100644
--- a/runtime/queries/jinja_inline/highlights.scm
+++ b/runtime/queries/jinja_inline/highlights.scm
@@ -125,14 +125,14 @@
"."
(identifier)+ @variable.member)
-; crashes parser: https://github.com/cathaysia/tree-sitter-jinja/issues/37
-; ; jinja filters
-; (binary_expression
-; (binary_operator
-; "|")
-; (unary_expression
-; (primary_expression
-; (identifier) @function.call)))
+; jinja filters
+(binary_expression
+ (binary_operator
+ "|")
+ (unary_expression
+ (primary_expression
+ (identifier) @function.call)))
+
(inline_trans
"_" @function.builtin)
diff --git a/tests/query/highlights/jinja/filters.jinja b/tests/query/highlights/jinja/filters.jinja
new file mode 100644
index 000000000..a084cdc1a
--- /dev/null
+++ b/tests/query/highlights/jinja/filters.jinja
@@ -0,0 +1,19 @@
+{{ name|striptags|title }}
+{# ^^^^ @variable #}
+{# ^^^^^ @function.call #}
+{# ^^^^^ @function.call #}
+
+{{ listx|join(', ') }}
+{# ^^^^^ @variable #}
+{# ^^^^ @function.call #}
+{# ^^^^ @string #}
+
+{{ listx|join(str) }}
+{# ^^^^^ @variable #}
+{# ^^^^ @function.call #}
+{# ^^^ @variable.parameter #}
+
+{{ foo.bar|random }}
+{# ^^^ @variable #}
+{# ^^^ @variable.member #}
+{# ^^^^^^ @function.call #}