Skip to content

Gripes about lsp-mode/elgot comparison #180

@yyoncho

Description

@yyoncho

Most of the statements in lsp-mode/eglot comparison are either out of date, wrong or misleading. For example:

  1. new versions of lsp-mode have single entry point
  2. lsp-mode startup is also asynchronous
  3. lsp-mode supports flymake
  4. lsp has tests against real servers(~ at least 7 months).
  5. lsp-mode and eglot are comparable in size having in mind that the parser of eglot is in separate package and that lsp-mode core supports more functionality(real multifolder support, support for multiple servers in single file, etc.)
  6. lsp-mode is as minimal as eglot and it also works out of the box. Even more, lsp-mode does not depend neither on projectile/project.el since it uses the same root resolving logic as the reference LSP client implementation - VSCode.
  7. lsp-mode similar to eglot does not require any configuration and it automatically detects if the extension modules are present and it automatically configure them.
  8. lsp-mode automatically handles crashing servers

In addition to these base features lsp-mode has (in separate packages):

  1. Visual debugger integration via dap-mode
  2. Better support for the complex server. For example, Java LS has 40+ extension methods and none of them is exposed by eglot.
  3. Supports multiple servers in single file
  4. Third party integration with packages like flycheck, treemacs(and much more will be added in the near future).
  5. "Fancy" UI features provided by lsp-ui
  6. Spacemacs integration.

There are a lot of small things that are not included in the list, but this is the general overview.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions