> From: Stephen Leake <stephen_leake@stephe-leake.org>
> Date: Sun, 23 Oct 2022 10:46:08 -0700
>
> I'm calling `eglot' from lisp. The doc string says the first argument
> `managed-major-mode' is an atom, not a list. But it is passed to
> eglot--connect as the first argument, which is expected to be a list of
> major modes. When called interactively, `managed-major-mode' is set by
> (eglot--guess-contact t), which returns a list.
>
> So when not interactive, `eglot' must convert `managed-major-mode' into
> a list:
>
> -------------------
> diff --git a/lisp/progmodes/eglot.el b/lisp/progmodes/eglot.el
> index 71001ba680..dee88db022 100644
> --- a/lisp/progmodes/eglot.el
> +++ b/lisp/progmodes/eglot.el
> @@ -1078,6 +1078,8 @@ eglot
>
> INTERACTIVE is t if called interactively."
> (interactive (append (eglot--guess-contact t) '(t)))
> + (unless (listp managed-major-mode)
> + (setq managed-major-mode (list managed-major-mode)))
> (let* ((current-server (eglot-current-server))
> (live-p (and current-server (jsonrpc-running-p current-server))))
> (if (and live-p
> ------------------
João, any comments?