emacs-devel
[Top][All Lists]
Advanced

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

Re: dash.el [was: Re: Imports / inclusion of s.el into Emacs]


From: João Távora
Subject: Re: dash.el [was: Re: Imports / inclusion of s.el into Emacs]
Date: Sat, 23 May 2020 01:48:16 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.91 (gnu/linux)

Dmitry Gutov <address@hidden> writes:

> On 23.05.2020 03:08, João Távora wrote:
>> Dmitry Gutov <address@hidden> writes:
>> 
>>> I don't think that's what "integrated" means.
>> Why not? You find the Rust file, activate Eglot and it starts
>> working.
>> Some major modes might even automate the second step, if it's cheap.  I
>> know people really like `eglot-ensure`, which that starts up a server
>> automatically.
>
> It's less "integrated" than what that other mode is doing.

I don't see how.  We must be talking about different things.  I'm
talking Emacs -Q, C-x C-f foo.xxx RET and xxx-mode kicks in, sets up and
maybe even starts Eglot.  For that to work, xxx-mdoe has to be in core,
otherwise you need M-x package-install xxx-mode

> So worst case scenario, people will point out that Emacs core has
> released something not entirely complete while there is a package with 
> all batteries included.

You're saying this becasue rust-mode isn't in the core and/or GNU ELPA?
Than it's not a problem of Eglot/LSP at all.  

> Again, examples of much simpler programs. And historically stable. And
> Rubocop has its own, well-documented configuration interface (text
> file) that's expected to be edited by users.

Don't see any reson why an LSP server would be some kind of second-grade
delinquent program.

> And of every major mode author making the effort to familiarize
> themselves with this stuff, apparently.

Same with font-lock and imenu and eldoc and forward-sexp-function.  Mode
authors needn't familizarize themselves with the protocol, only in some
cases with the server program they're setting up.  Like rubocop.

> You might be forgetting that Eglot doesn't exactly support _all_ the
> features that languages servers offer. At least, that's my impression
> of your answer to the question about refactoring actions.

Eglot supports refactoring actions.  Commands and renames and stuff . I
don't know what where you want to go with this.  Give an example.  If
Eglot doesn't support something we can add it.  LSP works by
"capability", what capability are you exactly referring to?  And not all
servers support the same capabilities.

> And take the lsp-rust example again:
> https://github.com/emacs-lsp/lsp-mode/blob/057e8789638a0bf493930637185694b6b09ea58e/lsp-rust.el#L259-L283
>
> There are 24 settings there.

Yuck.  Well they seem to be doing stuff that rust-mode could do in aone
of Eglots variables and a generic function.

I think you should acquaint yourself with Eglot and some of these
servers, and then bring specific problems, here or to the tracker.  I or
some other member of the team will be happy to answer.  Else we're just
speaking in the abstract, you trying to convince me that something
somewhere someday is not going to work.

João



reply via email to

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