diff --git a/system/home/emacs/init.el b/system/home/emacs/init.el index 29ba5deb..99260512 100644 --- a/system/home/emacs/init.el +++ b/system/home/emacs/init.el @@ -1101,7 +1101,11 @@ ("C-c c a" . eglot-code-actions) ("C-c c r" . eglot-rename)) :hook ((eglot-managed-mode . (lambda () (add-hook 'flymake-diagnostic-functions 'eglot-flymake-backend nil t))) - (nix-mode . (lambda () (if (executable-find "nixd" t) (eglot-ensure))))) + (nix-mode . (lambda () (if (executable-find "nixd" t) (eglot-ensure)))) + (python-base-mode . (lambda () (if (executable-find "pylsp" nil) (eglot-ensure)))) + ((lua-mode lua-ts-mode) . (lambda () (if (executable-find "lua-language-server" nil) (eglot-ensure)))) + ((rust-mode rust-ts-mode) . (lambda () (if (executable-find "rust-analyzer" nil) (eglot-ensure)))) + (js-ts-mode . (lambda () (if (executable-find "typescript-language-server" nil) (eglot-ensure))))) :custom (eglot-menu-string "lsp") (eglot-send-changes-idle-time 0.5)