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

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

[elpa] externals/eglot dc08e8e 134/139: Fix automatic project creation


From: João Távora
Subject: [elpa] externals/eglot dc08e8e 134/139: Fix automatic project creation
Date: Mon, 14 May 2018 09:55:10 -0400 (EDT)

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

    Fix automatic project creation
    
    * eglot.el (eglot): Take PROJECT arg. Return process.
    (eglot--interactive): Returns a project.
---
 eglot.el | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/eglot.el b/eglot.el
index c1b63ea..3d5d492 100644
--- a/eglot.el
+++ b/eglot.el
@@ -292,6 +292,7 @@ INTERACTIVE is t if inside interactive call."
                          "\n" base-prompt)))))
     (list
      managed-mode
+     (or (project-current) `(transient . default-directory))
      (if prompt
          (split-string-and-unquote
           (read-shell-command prompt
@@ -302,11 +303,13 @@ INTERACTIVE is t if inside interactive call."
      t)))
 
 ;;;###autoload
-(defun eglot (managed-major-mode command &optional interactive)
+(defun eglot (managed-major-mode project command &optional interactive)
   "Start a Language Server Protocol server.
 Server is started with COMMAND and manages buffers of
 MANAGED-MAJOR-MODE for the current project.
 
+PROJECT is a project instance as returned by `project-current'.
+
 COMMAND is a list of strings, an executable program and
 optionally its arguments.  If the first and only string in the
 list is of the form \"<host>:<port>\" it is taken as an
@@ -323,8 +326,7 @@ MANAGED-MAJOR-MODE.
 
 INTERACTIVE is t if called interactively."
   (interactive (eglot--interactive))
-  (let* ((project (project-current 'maybe))
-         (short-name (eglot--project-short-name project)))
+  (let* ((short-name (eglot--project-short-name project)))
     (let ((current-process (eglot--current-process)))
       (if (and (process-live-p current-process)
                interactive
@@ -339,7 +341,8 @@ INTERACTIVE is t if called interactively."
                                     interactive)))
           (eglot--message "Connected! Process `%s' now \
 managing `%s' buffers in project `%s'."
-                          proc managed-major-mode short-name))))))
+                          proc managed-major-mode short-name)
+          proc)))))
 
 (defun eglot-reconnect (process &optional interactive)
   "Reconnect to PROCESS.



reply via email to

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