Subject: bug#68246: 30.0.50; Add non-TS mode as extra parent of TS modes

From: João Távora <[email-masked]>
Date: Wed, 10 Jan 2024 17:31:50 +0000

On Wed, Jan 10, 2024 at 4:04 PM Stefan Monnier <[email-masked]> wrote:
>
> > I must be out of luck, because Eglot does need "the language" to send
> > as the LSP "languageID" to the server.
>
> No quite "the language": it needs "the language as defined by LSP (or by
> its LSP server)".

As there is almost always a 100% match, I'm happy to have
eglot-emacs-language-to-lsp-language with very few exceptions.

> FWIW, I view centralized mode-indexed databases like
> `eglot-server-programs` generally as a "youth diseases": as a package
> matures this gets replaced by buffer-local vars

Me too.  But it's orthogonal to the "needs to know the language"
problem.

> set by the respective major modes.

...or directory-locals, or whatever hook/interface the user prefers.  So
I'd phrase that as "suggested by the major-mode".  And this major mode
doesn't have to be concrete either.

The foo-base-mode, parent of old-style foo-mode and new-style
foo-ts-mode is an excellent place to suggest that the LSP server
is for "foo" is "fools".

João