[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Tree-sitter, using treesit-range-rules for embedded languages
From: |
Yuan Fu |
Subject: |
Re: Tree-sitter, using treesit-range-rules for embedded languages |
Date: |
Tue, 22 Nov 2022 11:28:48 -0800 |
> On Nov 22, 2022, at 9:24 AM, Wilhelm <wkirschbaum@gmail.com> wrote:
>
> Is there perhaps an example using treesit-range-rules? To following
> attempt to set treesit-range-settings does not seem to have the desired
> effect.
>
> (defvar heex--treesit-range-rules
> (treesit-range-rules
> :embed 'elixir
> :host 'heex
> '((directive (partial_expression_value) @cap)
> (directive (expression_value) @cap)
> (expression (expression_value) @cap))))
>
> (setq-local treesit-range-settings heex--treesit-range-rules)
>
> The following error also pops up when modifying the buffer when removing
> buffer content:
>
> Error during redisplay: (jit-lock-function 1) signaled
> (treesit-range-invalid "RANGE is either overlapping, out-of-order or
> out-of-range" ((11 . 20)))
>
> The full attempt is here:
> https://github.com/wkirschbaum/elixir-mode/blob/main/heex-mode.el
>
Thanks Wilhelm. It would be nice if you can provide some example source file of
heex for me to experiment with. I tried to find some on the internet but didn’t
get very far :-)
Yuan