--- Begin Message ---
Subject: |
29.1.50; treesit defun commands broken near beginning of function |
Date: |
Sun, 21 Jan 2024 23:47:08 -0500 |
I've noticed that "defun" related treesit commands/functions do not
appear to work correctly near the beginning of a function. I've seen
this behavior in multiple languages and believe the problem is an issue
in the treesit.el library. Also, I believe the issue occurs on the
first token of the function definition. The following example uses
c-ts-mode to demonstrate the issue.
--8<---------------cut here---------------start------------->8---
// -*- mode: c-ts -*-
void previous (void);
void next (void);
void previous (void) {
}
void main (void) {
previous();
next();
printf("Hello, world!\n");
}
void next (void) {
}
--8<---------------cut here---------------end--------------->8---
To reproduce the issue, place point between the "o" and "i" of the
"void" return type for the "main" function. When point is at this
location, I've noticed incorrect behavior for the following commands:
M-x treesit-beginning-of-defun RET
Moves point to the beginning of the previous function instead of the
beginning of the current (i.e., "main") function.
M-x treesit-end-of-defun RET
This does not move point, when it should move to the end of the current
function.
I've also noticed functions, such as "treesit-defun-at-point" behave
incorrectly here as well (i.e., returns "nil" instead of the function
definition node).
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#68652: 29.1.50; treesit defun commands broken near beginning of function |
Date: |
Sun, 28 Jan 2024 08:49:41 +0200 |
> From: Yuan Fu <casouri@gmail.com>
> Date: Sat, 27 Jan 2024 19:55:52 -0800
> Cc: Troy Brown <brownts@troybrown.dev>,
> 68652@debbugs.gnu.org
>
> > This seems to be already fixed on the master branch, so I think we can
> > close this bug.
> >
> > Yuan, any comments?
>
> I just tried it and yeah it’s fixed on master. I couldn’t find which commit
> fixed it though…
OK, so I'm now closing this bug.
Thanks.
--- End Message ---