about summary refs log tree commit diff stats
path: root/.emacs.d/lisp/init-lsp.el
diff options
context:
space:
mode:
authorDavid Morgan <djm_uk@protonmail.com>2021-08-17 12:49:19 +0100
committerDavid Morgan <djm_uk@protonmail.com>2021-08-17 12:49:19 +0100
commitd0db5660caa836755ea8c99471d816484ea9e837 (patch)
treec7d0456a58e450abaf34b489b0b31c58ddbc8557 /.emacs.d/lisp/init-lsp.el
parentc92b18514728245850d31531ce224a74eddfc5a6 (diff)
downloaddotfiles-d0db5660caa836755ea8c99471d816484ea9e837.tar.gz
Add new .emacs.d
Diffstat (limited to '.emacs.d/lisp/init-lsp.el')
-rw-r--r--.emacs.d/lisp/init-lsp.el49
1 files changed, 49 insertions, 0 deletions
diff --git a/.emacs.d/lisp/init-lsp.el b/.emacs.d/lisp/init-lsp.el
new file mode 100644
index 0000000..4b72759
--- /dev/null
+++ b/.emacs.d/lisp/init-lsp.el
@@ -0,0 +1,49 @@
+;;; init-lsp.el --- LSP Configuration File -*- lexical-binding: t -*-
+;;; Commentary:
+;;; Code:
+
+(use-package lsp-ui
+  :config
+  (require 'lsp-ui-imenu))
+
+(use-package lsp-mode
+  :diminish
+  :after key-chord
+  :hook (clojure-mode . lsp)
+  :config
+  (if (eq system-type 'darwin)
+      (setq lsp-keymap-prefix "s-l")
+    (setq lsp-keymap-prefix "C-c C-l"))
+  (setq read-process-output-max (* 1024 1024)
+        lsp-ui-sideline-enable t
+        lsp-ui-peek-enable t
+        lsp-ui-peek-always-show t
+        lsp-ui-doc-delay 1
+        lsp-lens-enable nil
+        lsp-ui-doc-enable t
+        lsp-ui-doc-show-with-cursor t
+        lsp-ui-doc-show-with-mouse t
+        lsp-headerline-breadcrumb-enable nil
+        lsp-enable-symbol-highlighting t
+        lsp-ui-sideline-show-diagnostics t
+        lsp-ui-sideline-show-code-actions nil
+        lsp-modeline-code-actions-enable nil
+        lsp-modeline-diagnostics-enable nil
+        lsp-ui-doc-position 'top
+        lsp-treemacs-theme "Iconless"
+        ;; user cider for indendation and completion instead
+        lsp-enable-indentation nil
+        lsp-completion-enable nil)
+  (key-chord-define-global "QQ" 'lsp-find-references)
+  (key-chord-define-global "PP" 'lsp-peek-find-references)
+  (key-chord-define-global "GG" 'lsp-find-definition)
+  (key-chord-define-global "DD" 'lsp-peek-find-definitions)
+  :bind
+  (:map lsp-ui-mode-map
+        ([remap xref-find-definitions] . lsp-ui-peek-find-definitions)
+        ([remap xref-find-references] . lsp-ui-peek-find-references)))
+
+(use-package lsp-treemacs)
+
+(provide 'init-lsp)
+;;; init-lsp.el ends here