]> git.eshelyaron.com Git - emacs.git/commitdiff
Add variable to withhold the init req process id
authorMartin Carlson <spearalot@gmail.com>
Tue, 31 Aug 2021 10:24:34 +0000 (12:24 +0200)
committerStefan Kangas <stefankangas@gmail.com>
Sun, 9 Jan 2022 00:54:59 +0000 (01:54 +0100)
* eglot.el (eglot-withhold-process-id): New defvar.
(eglot--connect): Don't send pid to language server if above new
defvar has a non-nil value.

Copyright-paperwork-exempt: Yes
GitHub-reference: fix https://github.com/joaotavora/eglot/issues/722

lisp/progmodes/eglot.el

index e1eb9ed4cedd2ba80a46bee08764e4e9f8588340..712ad172985045ea852687d940ea0081c05e8105 100644 (file)
@@ -295,6 +295,10 @@ let the buffer grow forever."
   "If non-nil, activate Eglot in cross-referenced non-project files."
   :type 'boolean)
 
+(defvar eglot-withhold-process-id nil
+  "If non-nil, Eglot will not send the Emacs process id to the language server.
+This can be useful when using docker to run a language server.")
+
 ;; Customizable via `completion-category-overrides'.
 (when (assoc 'flex completion-styles-alist)
   (add-to-list 'completion-category-defaults '(eglot (styles flex basic))))
@@ -1110,7 +1114,8 @@ This docstring appeases checkdoc, that's all."
                       server
                       :initialize
                       (list :processId
-                            (unless (or (file-remote-p default-directory)
+                            (unless (or eglot-withhold-process-id
+                                        (file-remote-p default-directory)
                                         (eq (jsonrpc-process-type server)
                                             'network))
                               (emacs-pid))