diff options
author | Martin Polden <mpolden@mpolden.no> | 2022-03-16 14:23:36 +0100 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2022-03-16 14:23:36 +0100 |
commit | 775a79ecfd5042c6b19914ff2702e3803bffbb87 (patch) | |
tree | a594dada13bbd21c971f43351e5b1c0e8bae54df /lisp/init-eglot.el | |
parent | 412d15686ad63529ce22d4a828adfc69b4df9612 (diff) |
eglot: Add variable for disabling LSP integration
Diffstat (limited to 'lisp/init-eglot.el')
-rw-r--r-- | lisp/init-eglot.el | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/lisp/init-eglot.el b/lisp/init-eglot.el index 249b868..0f77754 100644 --- a/lisp/init-eglot.el +++ b/lisp/init-eglot.el @@ -8,6 +8,9 @@ (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.") +(defvar mpolden/inhibit-lsp nil + "List of modes where `eglot-ensure' should not be called to enable LSP integration.") + (defun mpolden/format-before-save () "Format buffer before saving." (unless (member major-mode mpolden/inhibit-format-before-save) @@ -20,8 +23,14 @@ (defun mpolden/eglot-before-save () "All actions that may run before saving buffer." - (mpolden/format-before-save) - (mpolden/organize-imports-before-save)) + (unless (member major-mode mpolden/inhibit-lsp) + (mpolden/format-before-save) + (mpolden/organize-imports-before-save))) + +(defun mpolden/eglot-ensure () + "Enable Eglot for current `major-mode'." + (unless (member major-mode mpolden/inhibit-lsp) + (eglot-ensure))) (defun mpolden/gfm-unescape-string (string) "Remove backslash-escape of punctuation characters in STRING." @@ -41,10 +50,10 @@ (setq-default tab-width 4) :hook ;; load eglot automatically for these modes - ((go-mode . eglot-ensure) - (java-mode . eglot-ensure) - (python-mode . eglot-ensure) - (rust-mode . eglot-ensure) + ((go-mode . mpolden/eglot-ensure) + (java-mode . mpolden/eglot-ensure) + (python-mode . mpolden/eglot-ensure) + (rust-mode . mpolden/eglot-ensure) (before-save . mpolden/eglot-before-save)) :bind (:map eglot-mode-map |