GNU bug report logs -
#75164
treesit-font-lock-fontify-region is easy to lost color on parse error. suggest to remain fontify on parse error.
Previous Next
Full log
Message #14 received at 75164 <at> debbugs.gnu.org (full text, mbox):
Yuan Fu <casouri <at> gmail.com> writes:
>> On Dec 29, 2024, at 4:28 PM, Charalampos Mitrodimas <charmitro <at> posteo.net> wrote:
>>
>> Hi,
>>
>> Eval Exec <execvy <at> gmail.com> writes:
>>
>>> Hello.
>>> When I enable rust-ts-mode on a rust file, I found treesitter is easy
>>> to make emacs buffer to lost color.
>>> For example, on the following rust code:
>>> ```rust
>>>
>>> struct Dog {
>>> name: String,
>>> age: u8,
>>> }
>>>
>>>
>>> struct ManyStruct {
>>> a: u8,
>>> }
>>>
>>> fn many_code(){
>>> fn fib(n: u32) -> u32 {
>>> if n == 0 {
>>> return 0;
>>> }
>>> if n == 1 {
>>> return 1;
>>> }
>>> fib(n - 1) + fib(n - 2)
>>> }
>>> }
>>>
>>> fn main() {
>>> // change below `//` to `/` to see the difference
>>> // {
>>> }
>>> ```
>>>
>>> the rust code is right, and the emacs buffer color is right on every
>>> struct/functions.
>>> But, if I change `// {` to `/ {`, then the rust code is wrong, this
>>> buffer will lost all colors.
>>
>> Thanks for reporting this.
>>
>> I attempted to reproduce this, using your example, when I change `// {`
>> to `/{` only "main" from `fn main()` loses color. The rest of the syntax
>> highlighting remains intact in my setup.
>
> It’s indeed strange to see the whole buffer lost fontification. I don’t see it either.
Eval Exec, are there any steps missing in the recipe to reproduce this?
Can you reproduce it starting from emacs -Q?
This bug report was last modified 202 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.