emacs-devel
[Top][All Lists]
Advanced

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

Re: Is it better to add treesitter modes to core?


From: Dmitry Gutov
Subject: Re: Is it better to add treesitter modes to core?
Date: Tue, 9 Jan 2024 19:50:17 +0200
User-agent: Mozilla Thunderbird

On 09/01/2024 07:20, Stefan Kangas wrote:

In my ideal world, we should have basic editing support in place in
Emacs for typical tasks, and packages should provide extensions.  Most
users don't particularly enjoy starting work with installing a bunch of
extras.

The way VS Code works and its level of popularity seem to say
otherwise.

Yes, but VSCode has some niceties that we don't.  When Emacs displays an
unobtrusive little popup in the right corner saying

     "Hello, this looks like $LANGUAGE, do you want to install support
     for that?  [YES/NO]"

then I will agree with you that it's less important to keep stuff in
core.

That seems like the wrong positioning of the cart and the horse, IMHO. As we've observed, moving things out of the core is *hard*.

Take a look at how much better things are elsewhere and weep:

      https://github.com/vim/vim/tree/master/runtime/syntax

Yes, vim is different, their job is easier and so on and so forth.

It is only better if the features provided in there are reasonably
complete and well-maintained.

Do you have any reason to believe that they're not?  For the very small
sample set that I've looked at, they certainly blew the corresponding
Emacs modes out of the water.

It's difficult for me to say, since I'm not really proficient in Vim, so whenever I tried to use it with Ruby, it never quite worked.

Reading the code, it seems one of the most complex ones, though. It even has some sort of basic completion using external program. But FWIW it doesn't look like it'll do much in any non-trivial project, and as for syntax highlighing and indentation, I think we're ahead, feature-wise.

For some of the things listed there, we don't even have a mode.

I'm pretty sure we would have one somewhere, if not in-tree, for the vast majority of cases.

I think historical context matters here.  Ada is not exactly in vogue
these days, but it _is_ supported by GCC, and it has an ISO standard.
It's not some random novelty language for people that feel that
Typescript is not edgy enough, or anything like that.

We also happened to support it in Emacs for ages.

And it's still there in ELPA, available for everybody to install.

Note that I don't mean to belittle Stephen's work, nor have any desire
to throw it away, but the sentiment "it's unmaintained, let's bring it
in the core and see what happens" sounds very wrong to me.

It would be a good idea for the interested parties to pay more attention
to ELPA and improve it there.

I'm not yet convinced that we should add a new ada-ts-mode.el to core.
The fact that it wouldn't have a dedicated maintainer deeply invested in
the language certainly speaks against it.

I think it will be a good idea to have someone check out the ada-ts-mode I linked to previously in this thread, and maybe talk to the author about adding it to ELPA (GNU or NonGNU), if no major problems come up.

So far it looks like it has very little users (judging by the numbers of stars and open/closed issues - which is zero), that's kind of sad.

I'm also not sure that we would want something half-baked in core for a
language with a small user base, since that makes it less likely that an
Emacs mode maintainer will step forward.

The strongest argument for keeping the more venerable languages around
is that their support is super stable, after all.

Agreed.



reply via email to

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