From 12537f476f56d2ef56850798182ba8f766f900ee Mon Sep 17 00:00:00 2001 From: David Florness Date: Wed, 9 Oct 2019 15:15:32 -0600 Subject: [PATCH] Setup lsp-mode with Scala --- lisp/setup-dev.el | 16 ++++++++++++++++ lisp/setup-scala.el | 12 ++++++++++++ 2 files changed, 28 insertions(+) diff --git a/lisp/setup-dev.el b/lisp/setup-dev.el index 6976b13..73a68e3 100644 --- a/lisp/setup-dev.el +++ b/lisp/setup-dev.el @@ -68,6 +68,22 @@ :defer t) +(use-package lsp-mode + :hook (scala-mode . lsp) + :custom + (lsp-prefer-flymake nil) + :config + (progn + (evil-collection-define-key 'normal 'lsp-mode-map + "gd" 'lsp-find-definition + (kbd "C-t") 'xref-pop-marker-stack + "K" 'lsp-describe-thing-at-point))) + + +(use-package company-lsp + :after (company lsp-mode)) + + (use-package zygospore :bind (("C-x 1" . zygospore-toggle-delete-other-windows))) diff --git a/lisp/setup-scala.el b/lisp/setup-scala.el index 2cdcd35..6f493f1 100644 --- a/lisp/setup-scala.el +++ b/lisp/setup-scala.el @@ -1,3 +1,15 @@ (use-package scala-mode :custom (scala-indent:step 4)) + +(use-package sbt-mode + :commands sbt-start sbt-command + :config + (substitute-key-definition + 'minibuffer-complete-word + 'self-insert-command + minibuffer-local-completion-map)) + +(with-eval-after-load 'eglot + (add-to-list 'eglot-server-programs + '(scala-mode . ("metals-emacs")))) -- 2.38.4