emacs-devel
[Top][All Lists]
Advanced

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

Re: Tree-sitter documentation


From: Eli Zaretskii
Subject: Re: Tree-sitter documentation
Date: Tue, 08 Nov 2022 16:40:25 +0200

> From: Yuan Fu <casouri@gmail.com>
> Date: Mon, 7 Nov 2022 12:47:30 -0800
> Cc: emacs-devel@gnu.org
> 
> > In that case, "triplets" is definitely incorrect, but I had no way of
> > understanding that this is possible.
> > 
> > It should be possible top describe this kind of argument list, but
> > does it really have to be so complicated?  These are not internal
> > functions, so Lisp programmers will have to battle with this signature
> > all the time.  Can we make the function's signature easier to
> > document, understand, and use?
> > 
> > For example, what about accepting an alist as the argument, where each
> > alist element specifies a query and its keyword/value pairs that
> > customize the query?
> 
> Alists has too much layers of parenthesizes that is verbose and easy to get 
> wrong. Compare:

I don't share your pessimism about alists.  And the way the functions
are defined now are also very error-prone and complicate the code,
which needs to distinguish between several very different signatures.

How about making the query itself the value of a keyword/value pair?
Like this:

   :language 'python
   :override t
   :feature 'string
   :query '((string :anchor "\"" @python--treesit-fontify-string)
            (string) @contextual)



reply via email to

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