Variable: eglot-server-programs

eglot-server-programs is a variable defined in eglot.el.gz.

Value

Large value
(((rust-ts-mode rust-mode) "rust-analyzer")
 ((cmake-mode cmake-ts-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [(("neocmakelsp" "--stdio") "cmake-language-server")
       current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (vimrc-mode "vim-language-server" "--stdio")
 ((python-mode python-ts-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [("pylsp" "pyls" ("basedpyright-langserver" "--stdio")
	("pyright-langserver" "--stdio") ("pyrefly" "lsp")
	("ty" "server") "jedi-language-server" ("ruff" "server")
	"ruff-lsp")
       current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 ((js-json-mode json-mode json-ts-mode jsonc-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [(("vscode-json-language-server" "--stdio")
	("vscode-json-languageserver" "--stdio")
	("json-languageserver" "--stdio"))
       current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (((js-mode :language-id "javascript")
   (js-ts-mode :language-id "javascript")
   (tsx-ts-mode :language-id "typescriptreact")
   (typescript-ts-mode :language-id "typescript")
   (typescript-mode :language-id "typescript"))
  "typescript-language-server" "--stdio")
 ((bash-ts-mode sh-mode) "bash-language-server" "start")
 ((php-mode phps-mode php-ts-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [(("phpactor" "language-server")
	("php"
	 "vendor/felixfbecker/language-server/bin/php-language-server.php"))
       current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 ((c-mode c-ts-mode c++-mode c++-ts-mode objc-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [("clangd" "ccls") current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (((caml-mode :language-id "ocaml")
   (ocaml-ts-mode :language-id "ocaml")
   (tuareg-mode :language-id "ocaml") reason-mode)
  "ocamllsp")
 ((ruby-mode ruby-ts-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [(("solargraph" "socket" "--port" :autoport) "ruby-lsp")
       current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (haskell-mode "haskell-language-server-wrapper" "--lsp")
 (elm-mode "elm-language-server") (mint-mode "mint" "ls")
 ((kotlin-mode kotlin-ts-mode) "kotlin-language-server")
 ((go-mode go-dot-mod-mode go-dot-work-mode go-ts-mode go-mod-ts-mode
	   go-work-ts-mode)
  "gopls")
 ((R-mode ess-r-mode) "R" "--slave" "-e" "languageserver::run()")
 ((java-mode java-ts-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [("jdtls" "java-language-server") current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 ((dart-mode dart-ts-mode) "dart" "language-server" "--client-id"
  "emacs.eglot-dart")
 ((elixir-mode elixir-ts-mode heex-ts-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [("language_server.sh" "start_lexical.sh") current-prefix-arg
       nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 ((ada-mode ada-ts-mode) "ada_language_server")
 ((gpr-mode gpr-ts-mode) "ada_language_server" "--language-gpr")
 (scala-mode
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [("metals" "metals-emacs") current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (racket-mode "racket" "-l" "racket-langserver")
 ((latex-mode plain-tex-mode context-mode texinfo-mode bibtex-mode
	      tex-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [("digestif" "texlab") current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (erlang-mode "erlang_ls" "--transport" "stdio")
 ((yaml-ts-mode yaml-mode) "yaml-language-server" "--stdio")
 ((toml-ts-mode conf-toml-mode) "tombi" "lsp")
 (nix-mode
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [("nil" "rnix-lsp" "nixd") current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (nickel-mode "nls") ((nushell-mode nushell-ts-mode) "nu" "--lsp")
 (gdscript-mode "localhost" 6008) (fennel-mode "fennel-ls")
 (move-mode "move-analyzer") ((fortran-mode f90-mode) "fortls")
 (futhark-mode "futhark" "lsp")
 ((lua-mode lua-ts-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [("lua-language-server" "lua-lsp") current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (yang-mode "yang-language-server") ((zig-mode zig-ts-mode) "zls")
 ((css-mode css-ts-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [(("vscode-css-language-server" "--stdio")
	("css-languageserver" "--stdio"))
       current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (html-mode
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [(("vscode-html-language-server" "--stdio")
	("html-languageserver" "--stdio"))
       current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 ((dockerfile-mode dockerfile-ts-mode) "docker-langserver" "--stdio")
 ((clojure-mode clojurescript-mode clojurec-mode clojure-ts-mode)
  "clojure-lsp")
 ((csharp-mode csharp-ts-mode)
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [(("omnisharp" "-lsp") ("OmniSharp" "-lsp") ("csharp-ls"))
       current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (purescript-mode "purescript-language-server" "--stdio")
 ((perl-mode cperl-mode) "perl" "-MPerl::LanguageServer" "-e"
  "Perl::LanguageServer::run")
 (markdown-mode
  . #[512
      "\300\302\211:\203\"�@\262<\203�\202�CB\262A\262\202�\266\202\237\303\2030�	\2030�\302\207\203_�\304\305\"\306\302\"\211A\203W�\307\310\311\304\312\"\302\313\302\211@@&\314#A\207\211@A\206^�\302\207\302\211\211\313\302\211:\203\237�@\262\211A\262\242\262\315\313\"\262\203\220�B\262\302\211\262\202\221�\313\203\237�A\262\302\262\202f�\203\252�	!\302\207\207"
      [(("marksman" "server")
	("vscode-markdown-language-server" "--stdio"))
       current-prefix-arg nil
       #[257 "\300\301\302\303\304#\"\207"
	     [error "None of '%s' are valid executables" mapconcat car
		    ", "]
	     7
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2792)]
       mapcar
       #[257 "\300@\301\"\211\205�@ABB\207"
	     [eglot--executable-find t] 5
	     ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	      . 2814)]
       remove assoc completing-read
       "[eglot] More than one server executable available: " car t
       equal eglot--executable-find]
      16
      ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
       . 2750)])
 (graphviz-dot-mode "dot-language-server" "--stdio")
 (terraform-mode "terraform-ls" "serve")
 ((uiua-ts-mode uiua-mode) "uiua" "lsp")
 (sml-mode
  . #[514 "\300\301!D\207" ["millet-ls" project-root] 5
	  ("/nix/store/yvwy8dm26cpa1j12ixgs1dyiaw2abdk9-emacs-snapshot/share/emacs/31.0.50/lisp/progmodes/eglot.elc"
	   . 7618)])
 ((blueprint-mode blueprint-ts-mode) "blueprint-compiler" "lsp")
 ((odin-mode odin-ts-mode) "ols"))

Documentation

How the command eglot guesses the server to start.

An association list of (MAJOR-MODE . CONTACT) pairs. MAJOR-MODE identifies the buffers that are to be managed by a specific language server. The associated CONTACT specifies how to connect to a server for those buffers.

MAJOR-MODE can be:

* In the most common case, a symbol such as c-mode;

* A list (MAJOR-MODE-SYMBOL :LANGUAGE-ID ID) where
  MAJOR-MODE-SYMBOL is the aforementioned symbol and ID is a
  string identifying the language to the server;

* A list combining the previous two alternatives, meaning
  multiple major modes will be associated with a single server
  program. This association is such that the same resulting
  server process will manage buffers of different major modes.

CONTACT can be:

* In the most common case, a list of strings (PROGRAM [ARGS...]).
  PROGRAM is called with ARGS and is expected to serve LSP requests
  over the standard input/output channels.

* A list (PROGRAM [ARGS...] :initializationOptions OPTIONS),
  whereupon PROGRAM is called with ARGS as in the first option,
  and the LSP "initializationOptions" JSON object is
  constructed from OPTIONS. If OPTIONS is a unary function, it
  is called with the server instance and should return a JSON
  object.

* A list (HOST PORT [TCP-ARGS...]) where HOST is a string and
  PORT is a positive integer for connecting to a server via TCP.
  Remaining ARGS are passed to open-network-stream for
  upgrading the connection with encryption or other capabilities.

* A list (PROGRAM [ARGS...] :autoport [MOREARGS...]), whereupon a
  combination of previous options is used. First, an attempt is
  made to find an available server port, then PROGRAM is launched
  with ARGS; the :autoport keyword substituted for that number;
  and MOREARGS. Eglot then attempts to establish a TCP
  connection to that port number on the localhost.

* A cons (CLASS-NAME . INITARGS) where CLASS-NAME is a symbol
  designating a subclass of eglot-lsp-server(var)/eglot-lsp-server(fun), for representing
  experimental LSP servers. INITARGS is a keyword-value plist
  used to initialize the object of CLASS-NAME, or a plain list
  interpreted as the previous descriptions of CONTACT. In the
  latter case that plain list is used to produce a plist with a
  suitable :PROCESS initarg to CLASS-NAME. The class
  eglot-lsp-server(var)/eglot-lsp-server(fun) descends from jsonrpc-process-connection(var)/jsonrpc-process-connection(fun),
  which you should see for the semantics of the mandatory
  :PROCESS argument.

* A function of two arguments (INTERACTIVE PROJECT) producing any
  of the above values for CONTACT. INTERACTIVE will be t if an
  interactive M-x eglot was used, and nil otherwise (e.g. from
  eglot-ensure). Interactive calls may ask the user for hints
  on finding the required programs, etc. PROJECT is whatever
  project Eglot discovered via project-find-functions (which
  see). The function should return nil or signal an error if it
  can't produce a valid CONTACT. The helper function
  eglot-alternatives (which see) can be used to produce a
  function that offers more than one server for a given
  MAJOR-MODE.

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/eglot.el.gz
(defvar eglot-server-programs
  ;; FIXME: Maybe this info should be distributed into the major modes
  ;; themselves where they could set a buffer-local `eglot-server-program'
  ;; instead of keeping this database centralized.
  ;; FIXME: With `derived-mode-add-parents' in Emacs≥30, some of
  ;; those entries can be simplified, but we keep them for when
  ;; `eglot.el' is installed via GNU ELPA in an older Emacs.
  `(((rust-ts-mode rust-mode) . ("rust-analyzer"))
    ((cmake-mode cmake-ts-mode)
     . ,(eglot-alternatives '(("neocmakelsp" "--stdio") "cmake-language-server")))
    (vimrc-mode . ("vim-language-server" "--stdio"))
    ((python-mode python-ts-mode)
     . ,(eglot-alternatives
         '("pylsp" "pyls" ("basedpyright-langserver" "--stdio")
           ("pyright-langserver" "--stdio")
           ("pyrefly" "lsp")
           ("ty" "server")
           "jedi-language-server" ("ruff" "server") "ruff-lsp")))
    ((js-json-mode json-mode json-ts-mode jsonc-mode)
     . ,(eglot-alternatives '(("vscode-json-language-server" "--stdio")
                              ("vscode-json-languageserver" "--stdio")
                              ("json-languageserver" "--stdio"))))
    (((js-mode :language-id "javascript")
      (js-ts-mode :language-id "javascript")
      (tsx-ts-mode :language-id "typescriptreact")
      (typescript-ts-mode :language-id "typescript")
      (typescript-mode :language-id "typescript"))
     . ("typescript-language-server" "--stdio"))
    ((bash-ts-mode sh-mode) . ("bash-language-server" "start"))
    ((php-mode phps-mode php-ts-mode)
     . ,(eglot-alternatives
         '(("phpactor" "language-server")
           ("php" "vendor/felixfbecker/language-server/bin/php-language-server.php"))))
    ((c-mode c-ts-mode c++-mode c++-ts-mode objc-mode)
     . ,(eglot-alternatives
         '("clangd" "ccls")))
    (((caml-mode :language-id "ocaml")
      (ocaml-ts-mode :language-id "ocaml")
      (tuareg-mode :language-id "ocaml") reason-mode)
     . ("ocamllsp"))
    ((ruby-mode ruby-ts-mode)
     . ,(eglot-alternatives
         '(("solargraph" "socket" "--port" :autoport) "ruby-lsp")))
    (haskell-mode
     . ("haskell-language-server-wrapper" "--lsp"))
    (elm-mode . ("elm-language-server"))
    (mint-mode . ("mint" "ls"))
    ((kotlin-mode kotlin-ts-mode) . ("kotlin-language-server"))
    ((go-mode go-dot-mod-mode go-dot-work-mode go-ts-mode go-mod-ts-mode go-work-ts-mode)
     . ("gopls"))
    ((R-mode ess-r-mode) . ("R" "--slave" "-e"
                            "languageserver::run()"))
    ((java-mode java-ts-mode)
     . ,(eglot-alternatives '("jdtls" "java-language-server")))
    ((dart-mode dart-ts-mode)
     . ("dart" "language-server"
        "--client-id" "emacs.eglot-dart"))
    ((elixir-mode elixir-ts-mode heex-ts-mode)
     . ,(if (and (fboundp 'w32-shell-dos-semantics)
                 (w32-shell-dos-semantics))
            '("language_server.bat")
          (eglot-alternatives
           '("language_server.sh" "start_lexical.sh"))))
    ((ada-mode ada-ts-mode) . ("ada_language_server"))
    ((gpr-mode gpr-ts-mode) . ("ada_language_server" "--language-gpr"))
    (scala-mode . ,(eglot-alternatives
                    '("metals" "metals-emacs")))
    (racket-mode . ("racket" "-l" "racket-langserver"))
    ((latex-mode plain-tex-mode context-mode texinfo-mode bibtex-mode tex-mode)
     . ,(eglot-alternatives '("digestif" "texlab")))
    (erlang-mode . ("erlang_ls" "--transport" "stdio"))
    ((yaml-ts-mode yaml-mode) . ("yaml-language-server" "--stdio"))
    ((toml-ts-mode conf-toml-mode) . ("tombi" "lsp"))
    (nix-mode . ,(eglot-alternatives '("nil" "rnix-lsp" "nixd")))
    (nickel-mode . ("nls"))
    ((nushell-mode nushell-ts-mode) . ("nu" "--lsp"))
    (gdscript-mode . ("localhost" 6008))
    (fennel-mode . ("fennel-ls"))
    (move-mode . ("move-analyzer"))
    ((fortran-mode f90-mode) . ("fortls"))
    (futhark-mode . ("futhark" "lsp"))
    ((lua-mode lua-ts-mode) . ,(eglot-alternatives
                                '("lua-language-server" "lua-lsp")))
    (yang-mode . ("yang-language-server"))
    ((zig-mode zig-ts-mode) . ("zls"))
    ((css-mode css-ts-mode)
     . ,(eglot-alternatives '(("vscode-css-language-server" "--stdio")
                              ("css-languageserver" "--stdio"))))
    (html-mode . ,(eglot-alternatives
                   '(("vscode-html-language-server" "--stdio")
                     ("html-languageserver" "--stdio"))))
    ((dockerfile-mode dockerfile-ts-mode) . ("docker-langserver" "--stdio"))
    ((clojure-mode clojurescript-mode clojurec-mode clojure-ts-mode)
     . ("clojure-lsp"))
    ((csharp-mode csharp-ts-mode)
     . ,(eglot-alternatives
         '(("omnisharp" "-lsp")
           ("OmniSharp" "-lsp")
           ("csharp-ls"))))
    (purescript-mode . ("purescript-language-server" "--stdio"))
    ((perl-mode cperl-mode)
     . ("perl" "-MPerl::LanguageServer" "-e" "Perl::LanguageServer::run"))
    (markdown-mode
     . ,(eglot-alternatives
         '(("marksman" "server")
           ("vscode-markdown-language-server" "--stdio"))))
    (graphviz-dot-mode . ("dot-language-server" "--stdio"))
    (terraform-mode . ("terraform-ls" "serve"))
    ((uiua-ts-mode uiua-mode) . ("uiua" "lsp"))
    (sml-mode
     . ,(lambda (_interactive project)
          (list "millet-ls" (project-root project))))
    ((blueprint-mode blueprint-ts-mode) . ("blueprint-compiler" "lsp"))
    ((odin-mode odin-ts-mode) . ("ols")))
  "How the command `eglot' guesses the server to start.
An association list of (MAJOR-MODE . CONTACT) pairs.  MAJOR-MODE
identifies the buffers that are to be managed by a specific
language server.  The associated CONTACT specifies how to connect
to a server for those buffers.

MAJOR-MODE can be:

* In the most common case, a symbol such as `c-mode';

* A list (MAJOR-MODE-SYMBOL :LANGUAGE-ID ID) where
  MAJOR-MODE-SYMBOL is the aforementioned symbol and ID is a
  string identifying the language to the server;

* A list combining the previous two alternatives, meaning
  multiple major modes will be associated with a single server
  program.  This association is such that the same resulting
  server process will manage buffers of different major modes.

CONTACT can be:

* In the most common case, a list of strings (PROGRAM [ARGS...]).
  PROGRAM is called with ARGS and is expected to serve LSP requests
  over the standard input/output channels.

* A list (PROGRAM [ARGS...] :initializationOptions OPTIONS),
  whereupon PROGRAM is called with ARGS as in the first option,
  and the LSP \"initializationOptions\" JSON object is
  constructed from OPTIONS.  If OPTIONS is a unary function, it
  is called with the server instance and should return a JSON
  object.

* A list (HOST PORT [TCP-ARGS...]) where HOST is a string and
  PORT is a positive integer for connecting to a server via TCP.
  Remaining ARGS are passed to `open-network-stream' for
  upgrading the connection with encryption or other capabilities.

* A list (PROGRAM [ARGS...] :autoport [MOREARGS...]), whereupon a
  combination of previous options is used.  First, an attempt is
  made to find an available server port, then PROGRAM is launched
  with ARGS; the `:autoport' keyword substituted for that number;
  and MOREARGS.  Eglot then attempts to establish a TCP
  connection to that port number on the localhost.

* A cons (CLASS-NAME . INITARGS) where CLASS-NAME is a symbol
  designating a subclass of `eglot-lsp-server', for representing
  experimental LSP servers.  INITARGS is a keyword-value plist
  used to initialize the object of CLASS-NAME, or a plain list
  interpreted as the previous descriptions of CONTACT.  In the
  latter case that plain list is used to produce a plist with a
  suitable :PROCESS initarg to CLASS-NAME.  The class
  `eglot-lsp-server' descends from `jsonrpc-process-connection',
  which you should see for the semantics of the mandatory
  :PROCESS argument.

* A function of two arguments (INTERACTIVE PROJECT) producing any
  of the above values for CONTACT.  INTERACTIVE will be t if an
  interactive `M-x eglot' was used, and nil otherwise (e.g. from
  `eglot-ensure').  Interactive calls may ask the user for hints
  on finding the required programs, etc.  PROJECT is whatever
  project Eglot discovered via `project-find-functions' (which
  see).  The function should return nil or signal an error if it
  can't produce a valid CONTACT.  The helper function
  `eglot-alternatives' (which see) can be used to produce a
  function that offers more than one server for a given
  MAJOR-MODE.")