Lsp-mode

From WikEmacs
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
lsp-mode
Description A client to the Language Server Protocol
Author name of author
Maintainer name of maintainer
Source https://github.com/emacs-lsp/lsp-mode
Part of Emacs no

emacs-lsp is an Emacs client/library for the Language Server Protocol.

It aims to provide IDE-like experience by providing optional integration with the most popular Emacs packages like company, flycheck and projectile.


  • Non-blocking asynchronous calls
  • Real-time Diagnostics/linting (via builtin flymake when Emacs > 26 or flycheck/lsp-ui)
  • Code completion - using company-lsp or builtin completion-at-point
  • Hovers - using lsp-ui
  • Code actions - using lsp-execute-code-action or lsp-ui
  • Code outline - using builtin imenu or helm-imenu
  • Code navigation - using builtin xref
  • Code lens (references/implementations) - using builtin xref
  • Highlights
  • Formatting
  • Debugger - dap-mode
  • Helm integration - helm-lsp
  • Treemacs integration - lsp-treemacs


Installation

It is in MELPA:

   M-x package-install [RET] lsp-mode [RET]

See also

Eglot

Eglot is an alternative minimal LSP implementation.