Subject: Re: bug#62238: 30.0.50; Unusual interpretation of "S-expressions" in c-ts-mode

From: Eli Zaretskii <[email-masked]>
Date: Sun, 19 Mar 2023 20:17:46 +0200

> From: Juri Linkov <[email-masked]>
> Cc: Daniel Martín <[email-masked]>,
>   [email-masked],
>   [email-masked],  [email-masked],  [email-masked]
> Date: Sun, 19 Mar 2023 19:28:58 +0200
> 
> After trying to tweak treesit-sexp-type-regexp a few times
> I become convinced it is not up to the task of properly handling
> all sexp operations.  It seems the existing functions that
> implement C-M-f (forward-sexp), C-M-u (backward-up-list), etc.
> should remain in place, and the role of the tree-sitter would be
> only to provide syntax information for them, i.e. just to replace
> syntax tables with tree-sitter wrappers.

It would be good if you could tell more about what you tried and what
you saw, and how you reached this quite radical conclusion.  Maybe you
are right, but without knowing the details, how can we possibly
discuss it and try to reach a common conclusion?  Up front, the
conclusion sounds almost incredible: after all, how can a compiler
recognize blocks and defuns if not by parsing the program source?  If
the compiler does it, why cannot we do the same using the parsing
products?

So please consider making the discussion more useful by telling more.
(Perhaps on emacs-devel, not here.)