[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#73376: Treesitter does not rescan after indentation
From: |
Yuan Fu |
Subject: |
bug#73376: Treesitter does not rescan after indentation |
Date: |
Sat, 21 Sep 2024 23:35:50 -0700 |
> On Sep 20, 2024, at 9:20 PM, Yuan Fu <casouri@gmail.com> wrote:
>
>
>
>> On Sep 20, 2024, at 12:00 AM, pranshu sharma <pranshusharma366@gmail.com>
>> wrote:
>>
>>
>> After indenting, treesitter does not rescan the region. This causes
>> errors in the concrete syntax tree, which mess up indentation and syntax
>> colouring.
>>
>> The issue I'm having is kind of hard to explain, but in a summary I have
>> the poorly indented code, where what's between '_'(which is not in the
>> code itself) is coloured:
>> ---------------
>> f x =
>> let _a_ = 2
>> _c_ = 1
>> in a
>> --------------
>> Then when I indent it with haskell-ts-mode, I get:
>> ---------------
>> f x =
>> let _a_ = 2
>> c = 1
>> in a
>> --------------
>> When the 2 snippets of code have the exact same meaning. If I revert
>> the buffer then the 'c' becomes coloured again.
>>
>> This is not just problem with syntax highlighting, but if I was to
>> indent the 2nd snippet it would mess it up, as it has the wrong CST.
>>
>
> Hi Pranshu,
>
> Thanks for the report. I can reproduce it. Let me see what’s going on here.
>
> Yuan
Seems to be a tree-sitter or tree-sitter-haskell bug, reported here:
https://github.com/tree-sitter/tree-sitter-haskell/issues/129
Yuan