emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/eglot a261a7b 10/16: Close #33: Bind default-directory


From: João Távora
Subject: [elpa] externals/eglot a261a7b 10/16: Close #33: Bind default-directory when launching servers
Date: Mon, 9 Jul 2018 17:27:14 -0400 (EDT)

branch: externals/eglot
commit a261a7bb6cdd55c90dce9cdd6221f7a33a17c9b3
Author: João Távora <address@hidden>
Commit: João Távora <address@hidden>

    Close #33: Bind default-directory when launching servers
    
    Apparently, not doing so trips some servers, like Scala's.
    
    * eglot.el (eglot--connect): Bind default-directory.
---
 eglot.el | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/eglot.el b/eglot.el
index 01658f9..50733f7 100644
--- a/eglot.el
+++ b/eglot.el
@@ -448,8 +448,8 @@ INTERACTIVE is t if called interactively."
 (defun eglot--connect (managed-major-mode project class contact)
   "Connect to MANAGED-MAJOR-MODE, PROJECT, CLASS and CONTACT.
 This docstring appeases checkdoc, that's all."
-  (let* ((nickname (file-name-base (directory-file-name
-                                    (car (project-roots project)))))
+  (let* ((default-directory (car (project-roots project)))
+         (nickname (file-name-base (directory-file-name default-directory)))
          (readable-name (format "EGLOT (%s/%s)" nickname managed-major-mode))
          autostart-inferior-process
          (initargs
@@ -504,10 +504,8 @@ This docstring appeases checkdoc, that's all."
              :initialize
              (list :processId (unless (eq (jsonrpc-process-type server) 
'network)
                                 (emacs-pid))
-                   :rootPath  (expand-file-name
-                               (car (project-roots project)))
-                   :rootUri  (eglot--path-to-uri
-                              (car (project-roots project)))
+                   :rootPath (expand-file-name default-directory)
+                   :rootUri (eglot--path-to-uri default-directory)
                    :initializationOptions (eglot-initialization-options server)
                    :capabilities (eglot-client-capabilities server)))
           (setf (eglot--capabilities server) capabilities)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]