Ruin0x11 / lsp-intellij

Emacs client for lsp-intellij-server
GNU General Public License v3.0
57 stars 11 forks source link

lsp-intellij MELPA

Emacs client for lsp-intellij-server.

Requirements

Optional requirements

Setup

Install the package from MELPA. Then load lsp-mode in your config and put the following hook afterward:

(with-eval-after-load 'lsp-mode
  (require 'lsp-intellij)
  (add-hook 'java-mode-hook #'lsp-intellij-enable))

Finally, start IntelliJ with the server plugin, then visit a .java file tracked by a project you've previously opened in IDEA.

You can enable Kotlin support by installing kotlin-mode, then adding another hook for lsp-intellij-enable in kotlin-mode-hook.

For features like diagnostics and snippet completion, lsp-ui and company-lsp are required. Here are the respective config options for each.

(require 'lsp-ui)
(add-hook 'lsp-after-open-hook #'lsp-ui-mode)

(require 'company-lsp)
(setq company-lsp-enable-snippet t
      company-lsp-cache-candidates t)
(push 'company-lsp company-backends)
(push 'java-mode company-global-modes)
(push 'kotlin-mode company-global-modes) ;; if using Kotlin

Spacemacs layer

See here.