Subject: Re: bug#62333: 30.0.50; Issue with tree-sitter syntax tree during certain changes

From: Eli Zaretskii <[email-masked]>
Date: Sat, 25 Mar 2023 18:57:19 +0300

> Date: Sat, 25 Mar 2023 17:25:17 +0200
> Cc: [email-masked], [email-masked], [email-masked]
> From: Dmitry Gutov <[email-masked]>
> 
> On 25/03/2023 16:41, Eli Zaretskii wrote:
> >> Date: Sat, 25 Mar 2023 16:18:12 +0200
> >> Cc: [email-masked], [email-masked], [email-masked]
> >> From: Dmitry Gutov <[email-masked]>
> >>
> >>> mixed-major-mode shouldn't be a problem.
> >>
> >> Why wouldn't it?
> > 
> > Because the sexp ends inside the current mode's block.
> 
> But if the mmm framework narrowed the region to the current mode's 
> block, widening will force tree-sitter to parse the whole buffer.

No, because such a mode mode should already make sure this doesn't
happen.

> >> Okay. But do you advocate all uses of tree-sitter to (widen) first?
> > 
> > No, just in sexp-movement functions, at least for now.  If we discover
> > this is need in many more situations, we might consider more drastic
> > measures.  But I don't think we are there yet.  We've discovered just
> > one such case, in just one such mode, and it's on master.  We still
> > have ample time to see how widespread this is.
> 
> I'm not sure whether tree-sitter is going to be used with mmm-mode (or 
> similar) a lot, since it has its own provisions for mixing languages.
> 
> But I'd also like to consider the other cases where we *don't* want to 
> widen first. Any of them come to mind?

No, not off the top of my head.

I think we should try this in this one case, and see if other cases
come up.