Add basic LSP support

Still needs to be documented, but includes support for the following
languages:

+ C/C++/ObjC
+ Go
+ Java
+ Javascript
+ OCaml
+ PHP
+ Python
+ Ruby
+ Scala
+ Swift
+ HTML/CSS

Relevant to #460, #716, #1186
This commit is contained in:
Henrik Lissner 2019-02-21 16:08:27 -05:00
parent d7308799f6
commit cb923eadcc
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
25 changed files with 182 additions and 57 deletions

10
modules/lang/java/+lsp.el Normal file
View file

@ -0,0 +1,10 @@
;;; lang/java/+lsp.el -*- lexical-binding: t; -*-
;;;###if (featurep! +lsp)
(def-package! lsp-java
:after-call java-mode
:init (add-hook 'java-mode-hook #'+lsp|init)
:config
;; TODO keybinds
;; TODO treemacs integration (?)
)

View file

@ -23,7 +23,8 @@ If the depth is 2, the first two directories are removed: net.lissner.game.")
(add-hook 'java-mode-hook #'rainbow-delimiters-mode)
(cond ((featurep! +meghanada) (load! "+meghanada"))
(cond ((featurep! +lsp) (load! "+lsp"))
((featurep! +meghanada) (load! "+meghanada"))
;; TODO lang/java +lsp (lsp-java?)
;; ((featurep! +lsp) (load! "+lsp"))
)

View file

@ -12,3 +12,5 @@
(when (featurep! :completion company)
(package! company-emacs-eclim)))
(when (featurep! +lsp)
(package! lsp-java))