[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/crdt a05eb1e 5/7: refactor hook (un)install
From: |
ELPA Syncer |
Subject: |
[elpa] externals/crdt a05eb1e 5/7: refactor hook (un)install |
Date: |
Sun, 29 Aug 2021 22:57:09 -0400 (EDT) |
branch: externals/crdt
commit a05eb1e981f73c034f208915a3fdca066cb6bbdf
Author: Qiantan Hong <qhong@mit.edu>
Commit: Qiantan Hong <qhong@mit.edu>
refactor hook (un)install
---
crdt.el | 31 +++++++++++++++----------------
1 file changed, 15 insertions(+), 16 deletions(-)
diff --git a/crdt.el b/crdt.el
index 265635f..3603472 100644
--- a/crdt.el
+++ b/crdt.el
@@ -348,21 +348,22 @@ Each element is of the form (CURSOR-OVERLAY .
REGION-OVERLAY).")
;;; crdt-mode
+(defvar crdt--hooks-alist
+ '((after-change-functions . crdt--after-change)
+ (before-change-functions . crdt--before-change)
+ (post-command-hook . crdt--post-command)
+ (deactivate-mark-hook . crdt--post-command)
+ (kill-buffer-hook . crdt--kill-buffer-hook)))
+
(defun crdt--install-hooks ()
"Install the hooks used by CRDT-MODE."
- (add-hook 'after-change-functions #'crdt--after-change nil t)
- (add-hook 'before-change-functions #'crdt--before-change nil t)
- (add-hook 'post-command-hook #'crdt--post-command nil t)
- (add-hook 'deactivate-mark-hook #'crdt--post-command nil t)
- (add-hook 'kill-buffer-hook #'crdt--kill-buffer-hook nil t))
+ (dolist (pair crdt--hooks-alist)
+ (add-hook (car pair) (cdr pair) nil t)))
(defun crdt--uninstall-hooks ()
"Uninstall the hooks used by CRDT-MODE."
- (remove-hook 'after-change-functions #'crdt--after-change t)
- (remove-hook 'before-change-functions #'crdt--before-change t)
- (remove-hook 'post-command-hook #'crdt--post-command t)
- (remove-hook 'deactivate-mark-hook #'crdt--post-command t)
- (remove-hook 'kill-buffer-hook #'crdt--kill-buffer-hook t))
+ (dolist (pair crdt--hooks-alist)
+ (remove-hook (car pair) (cdr pair) t)))
(defsubst crdt--clear-pseudo-cursor-table ()
"Remove all overlays in CRDT--PSEUDO-CURSOR-TABLE.
@@ -2119,14 +2120,12 @@ Join with DISPLAY-NAME."
(defun crdt--install-process-advices ()
"Globally enable advices for simulating remote buffer process.
We don't install them by default because those advices sometimes seem to
interfere with other packages."
- (mapcar (lambda (pair)
- (advice-add (car pair) :around (cdr pair)))
- crdt--process-advice-alist))
+ (dolist (pair crdt--process-advice-alist)
+ (advice-add (car pair) :around (cdr pair))))
(defun crdt--uninstall-process-advices ()
- (mapcar (lambda (pair)
- (advice-remove (car pair) (cdr pair)))
- crdt--process-advice-alist))
+ (dolist (pair crdt--process-advice-alist)
+ (advice-remove (car pair) (cdr pair))))
(cl-defmethod crdt-process-message ((message (head process)) _process)
(cl-destructuring-bind (buffer-name string) (cdr message)
- [elpa] externals/crdt updated (cfe7748 -> 70ae7ba), ELPA Syncer, 2021/08/29
- [elpa] externals/crdt 8c4a3f4 3/7: More fix on narrowing, ELPA Syncer, 2021/08/29
- [elpa] externals/crdt 9f5882c 6/7: Use overlay instead of font-lock-face for crdt-visualize-author-mode, ELPA Syncer, 2021/08/29
- [elpa] externals/crdt 3e64983 1/7: fix narrowing behavior, ELPA Syncer, 2021/08/29
- [elpa] externals/crdt 3122172 2/7: Fix narrowing, ELPA Syncer, 2021/08/29
- [elpa] externals/crdt 301b7b1 4/7: Merge branch 'master' into fix, ELPA Syncer, 2021/08/29
- [elpa] externals/crdt a05eb1e 5/7: refactor hook (un)install,
ELPA Syncer <=
- [elpa] externals/crdt 70ae7ba 7/7: Merge branch 'fix' into 'master', ELPA Syncer, 2021/08/29