Subject: Re: bug#75609: Hideshow support for treesitter

From: Eli Zaretskii <[email-masked]>
Date: Thu, 23 Jan 2025 20:08:14 +0200

> From: Juri Linkov <[email-masked]>
> Cc: Stefan Monnier <[email-masked]>,  [email-masked],
>   [email-masked]
> Date: Thu, 23 Jan 2025 19:39:17 +0200
> 
> > I'm curious: why do you have to use skip-syntax-forward/backward when
> > tree-sitter already should know where a comment starts and ends?
> > ideally, features that use tree-sitter should not need to consult any
> > syntax tables set up by the major mode.  Or what am I missing?
> 
> tree-sitter has no information about whitespace, but whitespace is
> essential part of the behavior according to the docstring of
> 'forward-comment':
> 
>   Stop scanning if we find something other than a comment or whitespace.
>   If COUNT comments are found as expected, with nothing except whitespace
>   between them, return t; otherwise return nil.
> 
> So treesit should be able to skip whitespace as well:
> 
> default implementation = skip whitespace + check syntax table
> treesit implementation = skip whitespace + check syntax tree

I'm confused: are you saying that (skip-syntax-forward " >") skips
whitespace?  AFAIU, it skips not just whitespace.  And to skip
whitespace we don't need syntax-tables, do we?  I'm probably missing
something.