[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/mct 29015a1699 37/64: Fix performance issues by avoidin
From: |
ELPA Syncer |
Subject: |
[elpa] externals/mct 29015a1699 37/64: Fix performance issues by avoiding recursion |
Date: |
Thu, 30 Dec 2021 23:57:59 -0500 (EST) |
branch: externals/mct
commit 29015a169944e71eee846c496d8ba11d3d4678cc
Author: Protesilaos Stavrou <info@protesilaos.com>
Commit: Protesilaos Stavrou <info@protesilaos.com>
Fix performance issues by avoiding recursion
---
mct.el | 18 +++++++-----------
1 file changed, 7 insertions(+), 11 deletions(-)
diff --git a/mct.el b/mct.el
index d0e5f59a31..1ecad71fa5 100644
--- a/mct.el
+++ b/mct.el
@@ -1138,11 +1138,13 @@ region.")
(defun mct--region-live-completions (&rest _)
"Update the *Completions* buffer.
Meant to be added to `after-change-functions'."
- (while-no-input
- (condition-case nil
- (save-match-data
- (mct--show-completions))
- (quit (keyboard-quit)))))
+ (let ((buf (window-buffer (mct--get-completion-window))))
+ (when (and mct--region-buf (not (eq (current-buffer) buf)))
+ (while-no-input
+ (condition-case nil
+ (save-match-data
+ (mct--show-completions))
+ (quit (keyboard-quit)))))))
(defun mct--region-live-update ()
"Hook up `mct--region-live-completions'."
@@ -1172,12 +1174,6 @@ Meant to be added to `after-change-functions'."
;; Teardown
(remove-hook 'after-change-functions #'mct--region-live-completions t)))
-;; FIXME 2021-12-05: Something affects performance. In a clean
-;; *scratch* buffer, type "def TAB" and select "defalias". It expands
-;; right away. Try the same in a larger elisp file like this one and
-;; the text expansion is considerably slower. Try it on modus-themes.el
-;; and you might as well prepare dinner while waiting.
-
(defun mct-choose-completion-in-region ()
"Choose candidate at point and quit completion in region.
This is the counterpart of `mct-choose-completion-exit' when the
- [elpa] externals/mct 2413746369 11/64: Merge 'main' into experiment-completion-in-region, (continued)
- [elpa] externals/mct 2413746369 11/64: Merge 'main' into experiment-completion-in-region, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 90aa42f432 13/64: Style the completions regardless of mct variant, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 236e03fd5e 08/64: Install advice to silence messages in region, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 8958528d2e 21/64: Merge branch 'main' into experiment-completion-in-region, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 53dc6be137 20/64: Write routines for next/prev/directional motions, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 639add9b8e 25/64: Merge 'main' into experiment-completion-in-region, ELPA Syncer, 2021/12/30
- [elpa] externals/mct eaf0f98d55 26/64: Merge branch 'main' into experiment-completion-in-region, ELPA Syncer, 2021/12/30
- [elpa] externals/mct d48e6baae5 27/64: Minor correction in outline heading, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 6bbad9f046 31/64: Remove outdated FIXME, ELPA Syncer, 2021/12/30
- [elpa] externals/mct ca958cba65 32/64: Remove comments on quirky behaviour, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 29015a1699 37/64: Fix performance issues by avoiding recursion,
ELPA Syncer <=
- [elpa] externals/mct d45cf4ee26 30/64: Handle current buffer of in-region completion, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 95a37bc66d 36/64: Merge 'main' into experiment-completion-in-region, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 523f84e9ee 39/64: Remove note on mct-region-mode---it works (?) now, ELPA Syncer, 2021/12/30
- [elpa] externals/mct bb44658a8b 43/64: Inhibit messages directly in mct--show-completions, ELPA Syncer, 2021/12/30
- [elpa] externals/mct f2d2fb0ec7 42/64: Fixes and TODOS, ELPA Syncer, 2021/12/30
- [elpa] externals/mct e617bfd0aa 45/64: Remove mct--quit-completion-in-region, ELPA Syncer, 2021/12/30
- [elpa] externals/mct f1b1a5c76e 46/64: Remove mct-choose-completion-in-region, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 7974ae0450 40/64: Remove needless call to fit completions to window, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 14059afa44 41/64: Make mct-region-mode advice completions window, ELPA Syncer, 2021/12/30
- [elpa] externals/mct 13839537f2 29/64: Remove outdated comment, ELPA Syncer, 2021/12/30