]> git.eshelyaron.com Git - emacs.git/commitdiff
Eglot: minor changes to doc and docstrings
authorJoão Távora <joaotavora@gmail.com>
Wed, 9 Oct 2024 11:26:27 +0000 (06:26 -0500)
committerEshel Yaron <me@eshelyaron.com>
Mon, 14 Oct 2024 17:37:31 +0000 (19:37 +0200)
* doc/misc/eglot.texi (Quick Start): Tweak.
(Setting Up LSP Servers): Tweak.
(Customizing Eglot): Clarify eglot-connect-hook and
eglot-initialized-hook.

* lisp/progmodes/eglot.el (eglot-connect-hook)
(eglot-server-initialized-hook): Rework docstring.

(cherry picked from commit cd36e070c24d7828ea1b9bf62ffa920068ac4d41)

doc/misc/eglot.texi
lisp/progmodes/eglot.el

index fb5b618bd846a1c0d98d2615a16ffce2c4ef15e1..959bbfa6857fb6ef44722fd807d7726b5841ceb3 100644 (file)
@@ -123,14 +123,16 @@ Here's how to start using Eglot with your programming project:
 @item
 Select and install a language server.
 
-Eglot comes pre-configured with many popular language servers, see the
-value of @code{eglot-server-programs}.  If the server(s) mentioned
-there satisfy your needs for the programming language(s) with which
-you want to use Eglot, you just need to make sure those servers are
-installed on your system.  Alternatively, install one or more servers
-of your choice and add them to the value of
+Eglot comes pre-configured for many popular language servers, see the
+value of @code{eglot-server-programs}.  If the server(s) mentioned there
+satisfy your needs for the programming language(s) with which you want
+to use Eglot, you just need to make sure those servers are installed on
+your system and Eglot can find them.
+
+Alternatively, install one or more servers of your choice and tell Eglot
+where to find them.  To do that, you may add to the value of
 @code{eglot-server-programs}, as described in @ref{Setting Up LSP
-Servers}.
+Servers} or have Eglot prompt you about it (@pxref{Eglot Commands}).
 
 @item
 Turn on Eglot for your project.
@@ -197,7 +199,7 @@ particular server(s) you want to install.
 
 To use a language server, Eglot must know how to start it and which
 programming languages each server supports.  This information is
-provided by the variable @code{eglot-server-programs}.
+commonly provided by the variable @code{eglot-server-programs}.
 
 @defvar eglot-server-programs
 This variable associates major modes with names and command-line
@@ -939,12 +941,16 @@ to @w{@code{(disallow-non-standard-keys enforce-required-keys)}}.
 
 @vindex eglot-server-initialized-hook
 @item eglot-server-initialized-hook
-A hook run after the server object is successfully initialized.
+A hook run after the server object is successfully initialized (which
+includes launching the process) but before any LSP communication is
+attempted.  Each function receives a @code{eglot-lsp-server} instance as
+argument.
 
 @vindex eglot-connect-hook
 @item eglot-connect-hook
-A hook run after connection to the server is successfully
-established.  @xref{Starting Eglot}.
+A hook run after the LSP connection to the server is successfully
+established.  Each function receives a @code{eglot-lsp-server} instance
+as argument.  @xref{Starting Eglot}.
 
 @item eglot-managed-mode-hook
 A hook run after Eglot started or stopped managing a buffer.
index d2ab8876c64c577e53a2ad13875386e72b354ba4..510753246321cae7b283e6707d0eb0c0de9c088d 100644 (file)
@@ -1480,18 +1480,21 @@ Use current server's or first available Eglot events buffer."
 
 (defvar eglot-connect-hook
   '(eglot-signal-didChangeConfiguration)
-  "Hook run after connecting in `eglot--connect'.")
+  "Hook run after connecting to a server.
+Each function is passed an `eglot-lsp-server' instance
+as argument.")
 
 (defvar eglot-server-initialized-hook
   '()
   "Hook run after a `eglot-lsp-server' instance is created.
 
-That is before a connection was established.  Use
+That is before a connection is established.  Use
 `eglot-connect-hook' to hook into when a connection was
 successfully established and the server on the other side has
 received the initializing configuration.
 
-Each function is passed the server as an argument")
+Each function is passed an `eglot-lsp-server' instance
+as argument.")
 
 (defun eglot--cmd (contact)
   "Helper for `eglot--connect'."