diff options
| author | Robert Muir <rmuir@apache.org> | 2025-07-17 22:12:23 -0400 |
|---|---|---|
| committer | Christian Clason <ch.clason+github@icloud.com> | 2025-07-19 18:25:47 +0200 |
| commit | 20d77c2e5ba71315dee7dcf47456557413b1481e (patch) | |
| tree | 55ff0ac403ae62fae13f0d28471727974ca9fa47 /tests | |
| parent | feat(wit)!: update parser and queries (diff) | |
| download | nvim-treesitter-20d77c2e5ba71315dee7dcf47456557413b1481e.tar nvim-treesitter-20d77c2e5ba71315dee7dcf47456557413b1481e.tar.gz nvim-treesitter-20d77c2e5ba71315dee7dcf47456557413b1481e.tar.bz2 nvim-treesitter-20d77c2e5ba71315dee7dcf47456557413b1481e.tar.lz nvim-treesitter-20d77c2e5ba71315dee7dcf47456557413b1481e.tar.xz nvim-treesitter-20d77c2e5ba71315dee7dcf47456557413b1481e.tar.zst nvim-treesitter-20d77c2e5ba71315dee7dcf47456557413b1481e.zip | |
fix(jinja): assign highlights to all variables and functions
The majority of jinja variables aren't assigned any highlights at all.
Assign @variable to all identifiers.
Jinja filters without parameters are not highlighted as functions: add a
query for these.
Refine the existing @variable.member to only capture identifiers instead
of broader nodes.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/query/highlights/jinja/filters.jinja | 19 | ||||
| -rw-r--r-- | tests/query/highlights/jinja/tests.jinja | 13 | ||||
| -rw-r--r-- | tests/query/highlights/jinja/variables.jinja | 21 |
3 files changed, 53 insertions, 0 deletions
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 #} diff --git a/tests/query/highlights/jinja/tests.jinja b/tests/query/highlights/jinja/tests.jinja new file mode 100644 index 000000000..0a138fb80 --- /dev/null +++ b/tests/query/highlights/jinja/tests.jinja @@ -0,0 +1,13 @@ +{% if loop.index is divisibleby 3 %} +{# ^^^^ @variable #} +{# ^^^^^ @variable.member #} +{# ^^^^^^^^^^ @keyword.operator #} + +{% if loop.index is divisibleby(3) %} +{# ^^^^ @variable #} +{# ^^^^^ @variable.member #} + +{% if foo.bar.baz is divisibleby 3 %} +{# ^^^ @variable #} +{# ^^^ @variable.member #} +{# ^^^ @variable.member #} diff --git a/tests/query/highlights/jinja/variables.jinja b/tests/query/highlights/jinja/variables.jinja new file mode 100644 index 000000000..1ab78c35a --- /dev/null +++ b/tests/query/highlights/jinja/variables.jinja @@ -0,0 +1,21 @@ +{{ foo }} +{# ^^^ @variable #} + +{{ foo.bar }} +{# ^^^ @variable #} +{# ^^^ @variable.member #} + +{{ foo['bar'] }} +{# ^^^ @variable #} +{# ^^^^^ @string #} + +{{ foo.bar.baz }} +{# ^^^ @variable #} +{# ^^^ @variable.member #} +{# ^^^ @variable.member #} + +{{ foo.bar + baz.qux }} +{# ^^^ @variable #} +{# ^^^ @variable.member #} +{# ^^^ @variable #} +{# ^^^ @variable.member #} |
