[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Tree-sitter introduction documentation
From: |
Yuan Fu |
Subject: |
Re: Tree-sitter introduction documentation |
Date: |
Sat, 31 Dec 2022 17:12:54 -0800 |
> On Dec 31, 2022, at 2:14 PM, Yuan Fu <casouri@gmail.com> wrote:
>
>
>
>> On Dec 31, 2022, at 1:24 AM, Eli Zaretskii <eliz@gnu.org> wrote:
>>
>>> From: Yuan Fu <casouri@gmail.com>
>>> Date: Fri, 30 Dec 2022 16:03:42 -0800
>>> Cc: Philip Kaludercic <philipk@posteo.net>,
>>> monnier@iro.umontreal.ca,
>>> dgutov@yandex.ru,
>>> theophilusx@gmail.com,
>>> emacs-devel@gnu.org
>>>
>>>> I don't think treesit-language-source-alist is a good idea, especially
>>>> if we don't intend populating it, at least not as a user-facing
>>>> feature. Instead, the command should ask the user for the relevant
>>>> values, and offer recording the values on some file that would be read
>>>> next time the user wants to install an updated library.
>>>
>>> I consider this as a fallback method for installing language grammars.
>>> Because distress might not end up bundle language grammar for us, and even
>>> if they do, they can’t cover every grammar so some user would end up
>>> needing to install some grammar by themselves. If we don’t include this
>>> feature, someone will definitely write something like this and make it a
>>> third-party package (indeed, someone already has). So we might have it in
>>> Emacs and do it right.
>>>
>>> This is the use case that I had in mind when writing this function: some
>>> major mode xxx-mode requires language grammar for xxx, so it has the
>>> following instruction in its readme:
>>>
>>> Add installation recipe of tree-sitter-xxx to your config, and run
>>> treesit-install-language-grammar:
>>>
>>> (add-to-list 'treesit-language-source-alist
>>> '(xxx "https://github.com/xxx/tree-sitter-xxx.git"))
>>
>> This is a user command, so it must comply to some minimal level of
>> usefulness and user-friendliness. Right now, if you invoke the
>> command after just loading treesit.el, you will be stuck at the first
>> prompt, since Emacs says "No match" whatever language you try to type
>> at the front.
>>
>> Why not allow the user to specify all the necessary data needed for a
>> language, if treesit-language-source-alist lacks those details for
>> that language? You can then update the data structure with those
>> details. Wouldn't this be much better and user-friendlier than asking
>> users to read the readme and fill a data structure (which some of them
>> could fill wrongly, not being Lisp programmers) in advance?
>
> Makes sense, I can do that.
Done. Free feel to adjust the wording, etc.
- Re: Tree-sitter introduction documentation, (continued)
- Re: Tree-sitter introduction documentation, Philip Kaludercic, 2022/12/30
- Re: Tree-sitter introduction documentation, Eli Zaretskii, 2022/12/30
- Re: Tree-sitter introduction documentation, Yuan Fu, 2022/12/30
- Re: Tree-sitter introduction documentation, Philip Kaludercic, 2022/12/30
- Re: Tree-sitter introduction documentation, Yuan Fu, 2022/12/31
- Re: Tree-sitter introduction documentation, Yuan Fu, 2022/12/30
- Re: Tree-sitter introduction documentation, Stefan Monnier, 2022/12/30
- Re: Tree-sitter introduction documentation, Yuan Fu, 2022/12/31
- Re: Tree-sitter introduction documentation, Eli Zaretskii, 2022/12/31
- Re: Tree-sitter introduction documentation, Yuan Fu, 2022/12/31
- Re: Tree-sitter introduction documentation,
Yuan Fu <=
- Re: Tree-sitter introduction documentation, Gregory Heytings, 2022/12/30
- Re: Tree-sitter introduction documentation, Richard Stallman, 2022/12/31
- Re: Tree-sitter introduction documentation, Eli Zaretskii, 2022/12/27
- Re: Tree-sitter introduction documentation, Stefan Monnier, 2022/12/27
- Re: Tree-sitter introduction documentation, Eli Zaretskii, 2022/12/27
- Re: Tree-sitter introduction documentation, Stefan Monnier, 2022/12/27
- Re: Tree-sitter introduction documentation, Philip Kaludercic, 2022/12/27
- Re: Tree-sitter introduction documentation, Stefan Monnier, 2022/12/27
- Re: Tree-sitter introduction documentation, Yuan Fu, 2022/12/27
- Re: Tree-sitter introduction documentation, Gregory Heytings, 2022/12/28