[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/eglot c7b9002 116/139: Only call deferred actions after
From: |
João Távora |
Subject: |
[elpa] externals/eglot c7b9002 116/139: Only call deferred actions after a full message has been received |
Date: |
Mon, 14 May 2018 09:55:05 -0400 (EDT) |
branch: externals/eglot
commit c7b90028bcdc52001849da5355ce48e03caca0f7
Author: João Távora <address@hidden>
Commit: João Távora <address@hidden>
Only call deferred actions after a full message has been received
Otherwise it can be quite wasteful.
* eglot.el (eglot--process-filter): Don't eglot--call-deferred here.
(eglot--process-receive): Do it here.
---
eglot.el | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/eglot.el b/eglot.el
index d49367b..8b8d712 100644
--- a/eglot.el
+++ b/eglot.el
@@ -380,6 +380,7 @@ INTERACTIVE is t if called interactively."
"(sentinel) Not auto-reconnecting, last one didn't last long."
change)))
(delete-process proc))))
+
(defun eglot--process-filter (proc string)
"Called when new data STRING has arrived for PROC."
(when (buffer-live-p (process-buffer proc))
@@ -441,8 +442,7 @@ INTERACTIVE is t if called interactively."
(throw done
:waiting-for-more-bytes-in-this-message))))))))
;; Saved parsing state for next visit to this filter
;;
- (setf (eglot--expected-bytes proc) expected-bytes))))
- (eglot--call-deferred proc)))
+ (setf (eglot--expected-bytes proc) expected-bytes))))))
(defun eglot-events-buffer (process &optional interactive)
"Display events buffer for current LSP connection PROCESS.
@@ -522,6 +522,7 @@ is a symbol saying if this is a client or server
originated."
(funcall (cl-first continuations) res)))))
(id
(eglot--warn "Ooops no continuation for id %s" id)))
+ (eglot--call-deferred proc)
(force-mode-line-update t)))
(defvar eglot--expect-carriage-return nil)
- [elpa] externals/eglot e63dad0 092/139: Simplify mode-line code with a helper., (continued)
- [elpa] externals/eglot e63dad0 092/139: Simplify mode-line code with a helper., João Távora, 2018/05/14
- [elpa] externals/eglot ab575d2 120/139: Rename functions. eglot--request is now the synchronous one, João Távora, 2018/05/14
- [elpa] externals/eglot 41f5922 137/139: Now send willSaveWaitUntil, João Távora, 2018/05/14
- [elpa] externals/eglot 458bc69 110/139: More correctly setup rust-mode-related autoloads, João Távora, 2018/05/14
- [elpa] externals/eglot 9af84a2 124/139: Prepare to sumbit to GNU ELPA, João Távora, 2018/05/14
- [elpa] externals/eglot 0625b6c 123/139: (eglot--xref-make): Fix Use of cl-destructuring-bind., João Távora, 2018/05/14
- [elpa] externals/eglot 589e1ea 138/139: Remove an unused variable, João Távora, 2018/05/14
- [elpa] externals/eglot 49fb02f 135/139: Use RLS in Travis CI and add actual tests, João Távora, 2018/05/14
- [elpa] externals/eglot dc08e8e 134/139: Fix automatic project creation, João Távora, 2018/05/14
- [elpa] externals/eglot e964abe 091/139: Get rid of eglot--buffer-open-count, João Távora, 2018/05/14
- [elpa] externals/eglot c7b9002 116/139: Only call deferred actions after a full message has been received,
João Távora <=
- [elpa] externals/eglot 418412b 131/139: Fix copyright header. Obviously not since 2003, João Távora, 2018/05/14
- [elpa] externals/eglot 714e5be 086/139: Half-baked textDocument/hover support, João Távora, 2018/05/14
- [elpa] externals/eglot bfd82b5 108/139: Fancier RLS spinner, João Távora, 2018/05/14
- [elpa] externals/eglot 8a80fb7 105/139: Simplify `eglot-shutdown`, João Távora, 2018/05/14
- [elpa] externals/eglot af14364 093/139: Only request stuff that server says it's capable of, João Távora, 2018/05/14
- [elpa] externals/eglot 77856c2 130/139: Reinstate the catch/loop/throw idiom in eglot-request, João Távora, 2018/05/14
- [elpa] externals/eglot 29f58a6 127/139: Get rid of catch/loop/throw idiom (suggested by Thien-Thi Nguyen), João Távora, 2018/05/14
- [elpa] externals/eglot d0b7773 117/139: Reduce log chatter, João Távora, 2018/05/14
- [elpa] externals/eglot 8448d9b 133/139: Work with any old directory, no formal project needed, João Távora, 2018/05/14