bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#66431: [PATCH] Fix reset treesit--explorer-last-node when explorer b


From: nvp
Subject: bug#66431: [PATCH] Fix reset treesit--explorer-last-node when explorer buffer was killed
Date: Sat, 21 Oct 2023 17:40:40 -0700

Ok that makes sense, thanks for clearing that up for me, your fix looks good. I'm loving this package!

On Sat, Oct 21, 2023 at 11:33 AM Yuan Fu <casouri@gmail.com> wrote:


> On Oct 20, 2023, at 2:22 PM, nvp <noah.v.peart@gmail.com> wrote:
>
> That fixes the problem!
>
> However, the reason I initially put the reset inside the `(unless (buffer-live-p treesit--explorer-buffer) ...)`
> in `treesit-explore-mode` was b/c it looked like there was an optimization happening in
> `treesit--explorer-refresh` where it does this check
>
>            ;; If we didn't edit the buffer nor change the top-level
>            ;; node, don't redraw the whole syntax tree.
>            (highlight-only (treesit-node-eq
>                             top-level treesit--explorer-last-node))
>
> I don't know if that is something you'd want to keep, but just pointing it out in case.  I think
> the initial patch works as well, but still allows that check to work when the explorer buffer hasn't
> been killed.

Oh that’s fine, treesit-explore-mode always wipes everything and start from a clean slate. That optimization is for when the user moves point in the source buffer when explore-mode is on. If you’d like to send a patch that does roughly what I did in the patch I sent, I’d love to merge it. Otherwise I can fix it myself, too.

The initial patch could be a bit confusing to the readers since it sets last-node twice, and it’s not clear why.

Thanks,
Yuan

reply via email to

[Prev in Thread] Current Thread [Next in Thread]