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

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

[elpa] externals/eglot 4693abf 50/69: Fix #258: Allow user to set idle t


From: João Távora
Subject: [elpa] externals/eglot 4693abf 50/69: Fix #258: Allow user to set idle time to wait before processing changes
Date: Sun, 20 Oct 2019 08:21:51 -0400 (EDT)

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

    Fix #258: Allow user to set idle time to wait before processing changes
    
    * eglot.el (eglot-send-changes-idle-time): New defcustom.
    (eglot--after-change): Use it.
    
    Co-authored-by: João Távora <address@hidden>
    Copyright-paperwork-exempt: yes
---
 eglot.el | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/eglot.el b/eglot.el
index 0a9da05..1dc5711 100644
--- a/eglot.el
+++ b/eglot.el
@@ -174,6 +174,10 @@ as 0, i.e. don't block at all."
   "If non-nil, shut down server after killing last managed buffer."
   :type 'boolean)
 
+(defcustom eglot-send-changes-idle-time 0.5
+  "Don't tell server of changes before Emacs's been idle for this many 
seconds."
+  :type 'number)
+
 (defcustom eglot-events-buffer-size 2000000
   "Control the size of the Eglot events buffer.
 If a number, don't let the buffer grow larger than that many
@@ -1591,10 +1595,11 @@ Records BEG, END and PRE-CHANGE-LENGTH locally."
   (let ((buf (current-buffer)))
     (setq eglot--change-idle-timer
           (run-with-idle-timer
-           0.5 nil (lambda () (eglot--with-live-buffer buf
-                                (when eglot--managed-mode
-                                  (eglot--signal-textDocument/didChange)
-                                  (setq eglot--change-idle-timer nil))))))))
+           eglot-send-changes-idle-time
+           nil (lambda () (eglot--with-live-buffer buf
+                            (when eglot--managed-mode
+                              (eglot--signal-textDocument/didChange)
+                              (setq eglot--change-idle-timer nil))))))))
 
 ;; HACK! Launching a deferred sync request with outstanding changes is a
 ;; bad idea, since that might lead to the request never having a



reply via email to

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