branch: externals/eglot commit 17ec29b4382d8c85190fa541d306ea5c4d38bf8b Author: João Távora <joaotav...@gmail.com> Commit: João Távora <joaotav...@gmail.com>
Per #177: consider mode derivation when guessing servers * eglot.el (eglot-server-programs): Remove js2-mode and rjsx-mode. (eglot--guess-contact): Use provided-mode-derived-p --- eglot.el | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/eglot.el b/eglot.el index 799ab10..2d1c367 100644 --- a/eglot.el +++ b/eglot.el @@ -81,8 +81,6 @@ (defvar eglot-server-programs '((rust-mode . (eglot-rls "rls")) (python-mode . ("pyls")) ((js-mode - js2-mode - rjsx-mode typescript-mode) . ("javascript-typescript-stdio")) (sh-mode . ("bash-language-server" "start")) @@ -635,8 +633,9 @@ be guessed." (project (or (project-current) `(transient . ,default-directory))) (guess (cdr (assoc managed-mode eglot-server-programs (lambda (m1 m2) - (or (eq m1 m2) - (and (listp m1) (memq m2 m1))))))) + (cl-find + m2 (if (listp m1) m1 (list m1)) + :test #'provided-mode-derived-p))))) (guess (if (functionp guess) (funcall guess interactive) guess))