From 7d62efed037e9e3c10f6ca8024ecf094e1fa1648 Mon Sep 17 00:00:00 2001 From: Martin Polden Date: Fri, 13 Aug 2021 09:49:52 +0200 Subject: eglot: Organize imports before saving --- lisp/init-eglot.el | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'lisp/init-eglot.el') diff --git a/lisp/init-eglot.el b/lisp/init-eglot.el index 3ac6019..9fbc89c 100644 --- a/lisp/init-eglot.el +++ b/lisp/init-eglot.el @@ -5,11 +5,19 @@ (defvar mpolden/inhibit-format-before-save nil "List of modes where `eglot-format' should not be run before saving the buffer.") +(defvar mpolden/inhibit-organize-imports-before-save nil + "List of modes where `eglot-code-action-organize-imports' should not be run before saving the buffer.") + (defun mpolden/format-before-save () - "Format buffer using `eglot-format' unless explicitly inhibited in current mode." + "Format buffer before saving." (unless (member major-mode mpolden/inhibit-format-before-save) (eglot-format))) +(defun mpolden/organize-imports-before-save () + "Organize imports before saving buffer." + (unless (member major-mode mpolden/inhibit-organize-imports-before-save) + (call-interactively 'eglot-code-action-organize-imports))) + (use-package eglot :ensure t :init @@ -25,7 +33,8 @@ (java-mode . eglot-ensure) (python-mode . eglot-ensure) (rust-mode . eglot-ensure) - (before-save . mpolden/format-before-save)) + (before-save . mpolden/format-before-save) + (before-save . mpolden/organize-imports-before-save)) :bind (:map eglot-mode-map ;; C-c r renames identifier -- cgit v1.2.3