aboutsummaryrefslogtreecommitdiff
path: root/.emacs.d/lisp/init-eglot.el
diff options
context:
space:
mode:
Diffstat (limited to '.emacs.d/lisp/init-eglot.el')
-rw-r--r--.emacs.d/lisp/init-eglot.el15
1 files changed, 15 insertions, 0 deletions
diff --git a/.emacs.d/lisp/init-eglot.el b/.emacs.d/lisp/init-eglot.el
new file mode 100644
index 0000000..58b4d02
--- /dev/null
+++ b/.emacs.d/lisp/init-eglot.el
@@ -0,0 +1,15 @@
+(defun gx/eglot-format-before-save ()
+ (add-hook 'before-save-hook #'eglot-format nil t))
+
+(defun gx/eglot-code-action-organize-imports-before-save ()
+ (add-hook 'before-save-hook #'eglot-code-action-organize-imports nil t))
+
+(with-eval-after-load 'evil
+ (evil-define-key 'normal 'eglot--managed-mode
+ (kbd "gd") 'xref-find-definitions
+ (kbd "gr") 'xref-find-references
+ (kbd "K") 'eldoc-doc-buffer
+ (kbd "gi") 'eglot-find-implementation
+ (kbd "C-t") 'xref-pop-marker-stack))
+
+(provide 'init-eglot)