GNU bug report logs -
#77727
tsx-ts-mode: fill-paragraph doesn't work for doc-comments
Previous Next
Full log
Message #14 received at 77727 <at> debbugs.gnu.org (full text, mbox):
> On Apr 11, 2025, at 4:51 AM, Konstantin Kharlamov <Hi-Angel <at> yandex.ru> wrote:
>
> On Fri, 2025-04-11 at 11:34 +0300, Konstantin Kharlamov wrote:
>> CC: Yuan Fu as the author of the code in question.
>>
>> What happens in the code makes sense: since the comment resides at
>> top-
>> level, the parent of any top-level statement (returned by (treesit-
>> node-parent node)) is, well, beginning of a buffer.
>>
>> So the question is, why the check works that way.
>
> Please see the attached patch, it'd seem this is exactly the fix that's
> expected here. Basically, the problematic check is specific to Rust
> treesitter mode, so shouldn't be executed in other languages. The patch
> factors out the entire check to a separate function and adds additional
> condition of (eq major-mode 'rust-ts-mode).
>
> Tested in tsx-ts-mode, it fixes the problem.
> <1.patch>
Thanks! Your analysis is correct. But I don’t want to hard-code rust-ts-mode in the function, since modes with other names can very well use rust parser. I pushed 9d43715baa5 that operates in the similar vein as your patch. Instead of checking for the current major mode, I tighten the condition by adding an additional check that ensure the parent node is a comment node. So now if the parent node is the root node (as in your initial example), the condition should fail. Please see if it fixes your problem.
Yuan
This bug report was last modified 30 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.