Refactor lang/scala #125

+ Autoload ensime after scala-mode
+ Don't let ensime initialize company; let :company-backend do it
+ Fix void-variable imenu-auto-rescan error caused by
  ensime--setup-imenu.
This commit is contained in:
Henrik Lissner 2017-06-27 01:26:40 +02:00
parent 07a3efaaa0
commit 3643d9e16d
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395

View file

@ -3,20 +3,28 @@
(def-package! scala-mode
:mode "\\.s\\(cala\\|bt\\)$"
:config
(add-hook 'scala-mode-hook #'ensime-mode)
(setq scala-indent:align-parameters t)
(set! :company-backend 'scala-mode '(ensime-company company-yasnippet)))
(setq scala-indent:align-parameters t))
(def-package! sbt-mode :after scala-mode)
(def-package! ensime
:after scala-mode
:commands (ensime ensime-mode ensime-scala-mode-hook)
:config
(set! :company-backend 'scala-mode '(ensime-company company-yasnippet))
(setq ensime-startup-snapshot-notification nil
ensime-startup-notification nil
ensime-eldoc-hints t)
ensime-eldoc-hints t
;; let DOOM handle company setup
ensime-completion-style nil)
(add-hook 'ensime-mode-hook #'eldoc-mode))
(add-hook 'scala-mode-hook #'ensime-mode)
(add-hook 'ensime-mode-hook #'eldoc-mode)
;; Fix void-variable imenu-auto-rescan error caused by `ensime--setup-imenu'
;; trying to make imenu variables buffer local before imenu is loaded.
(require 'imenu))