[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#59455: 29.0.50; Treesit font lock changes unrelated code
From: |
Theodor Thornhill |
Subject: |
bug#59455: 29.0.50; Treesit font lock changes unrelated code |
Date: |
Mon, 21 Nov 2022 21:12:51 +0100 |
Hi Yuan!
I've noticed some strange behavior with font-lock lately in c-ts-mode,
and also in all the other ts modes.
to reproduce:
emacs -Q
C-x C-f foo.c RET
Insert this:
```
/* lol lol lol lol lol lol lol lol lol lol */
/* lol lol lol lol lol lol lol lol lol lol */
/* lol lol lol lol lol lol lol lol lol lol */
/* lol lol lol lol lol lol lol lol lol lol */
/* lol lol lol lol lol lol lol lol lol lol */
/* lol lol lol lol lol lol lol lol lol lol */
/* lol lol lol lol lol lol lol lol lol lol */
/* lol lol lol lol lol lol lol lol lol lol */
/* lol lol lol lol lol lol lol lol lol lol */
int
foo (void)
{
return 5;
}
int
foo (void)
{
if (x)
{
return 5;
}
}
int
foo (void)
{
return 5;
}
```
M-x c-ts-mode RET
Now on the first line, repeatedly press 'M-c' (capitalize-word) and
watch the highlights of the rest of the file jump around. Then try
undoing the changes by repeatedly pressing 'C-/' until you are back at
the state right after the first insert. Now highlights are messed up.
I'm not sure where to start looking for this, but I do remember there
being some issues in Eglot with these "multi-edit" commands.
If you have some pointers for where to look I can dig around :)
Theo
- bug#59455: 29.0.50; Treesit font lock changes unrelated code,
Theodor Thornhill <=