[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/symbol-overlay 4cf1d3c0d2 024/152: better auto-refresh
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/symbol-overlay 4cf1d3c0d2 024/152: better auto-refresh |
Date: |
Thu, 7 Jul 2022 12:04:08 -0400 (EDT) |
branch: elpa/symbol-overlay
commit 4cf1d3c0d2cb4ace67a6be50f3373ebe3a79eecb
Author: wolray <290061869@qq.com>
Commit: wolray <290061869@qq.com>
better auto-refresh
---
symbol-overlay.el | 27 +++++++++++----------------
1 file changed, 11 insertions(+), 16 deletions(-)
diff --git a/symbol-overlay.el b/symbol-overlay.el
index f73e4a901d..b1be28ced6 100644
--- a/symbol-overlay.el
+++ b/symbol-overlay.el
@@ -364,27 +364,22 @@ If COUNT is non-nil, count at the end."
(symbol-overlay-get-symbol new))))
(defun symbol-overlay-refresh (beg end len)
- "Auto refresh overlays.
-BEG, END and LEN are the beginning, end and length of changed text.
-This function is added to `after-change-functions' hook."
+ "Auto refresh overlays. Installed on `after-change-functions'.
+BEG, END and LEN are the beginning, end and length of changed text."
(unless (or (minibufferp) (not symbol-overlay-keywords-alist))
(let ((case-fold-search nil)
- bounds)
+ (re "\\(\\sw\\|\\s_\\)+"))
(save-excursion
(goto-char end)
- (when (setq bounds (bounds-of-thing-at-point 'symbol))
- (mapc #'(lambda (overlay)
- (and (overlay-get overlay 'symbol)
- (delete-overlay overlay)))
- (overlays-at end))
- (setq end (cdr bounds)))
+ (and (looking-at-p re)
+ (setq end (or (re-search-forward "\\_>" nil t) end)))
(goto-char beg)
- (when (setq bounds (bounds-of-thing-at-point 'symbol))
- (setq beg (car bounds))
- (mapc #'(lambda (overlay)
- (and (overlay-get overlay 'symbol)
- (delete-overlay overlay)))
- (overlays-at beg)))
+ (and (looking-at-p (concat "\\(" re "\\|\\_>\\)"))
+ (setq beg (or (re-search-backward "\\_<" nil t) beg)))
+ (mapc #'(lambda (overlay)
+ (and (overlay-get overlay 'symbol)
+ (delete-overlay overlay)))
+ (overlays-in beg end))
(mapc
#'(lambda (keyword)
(let ((symbol (car keyword)))
- [nongnu] elpa/symbol-overlay 08a6f3d732 035/152: (v3.2) better way to count and filter overlays, (continued)
- [nongnu] elpa/symbol-overlay 08a6f3d732 035/152: (v3.2) better way to count and filter overlays, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay e288067203 039/152: fix documentation and code style, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 191d07ec35 001/152: (init 1.0), ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 3bbbd22852 002/152: (so-overlay-map) (major-version), ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 8330423db6 005/152: add readme.md, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 331b14542c 004/152: rename so-keywords to so-keywords-alist, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 188df4744b 007/152: after auot-insert, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 4da9d67578 008/152: edit the summary, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay e31bbd140a 011/152: Fix some typos, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 8b4e26db1c 014/152: Fix the prefix errors, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 4cf1d3c0d2 024/152: better auto-refresh,
ELPA Syncer <=
- [nongnu] elpa/symbol-overlay 4a297843fd 016/152: v2.1, add 3 commands for switching and renaming symbols, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 06c5a46ef7 017/152: fix some typos, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 3d1811ca31 021/152: (v2.4) a new auto-refresh, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay f68b908cbb 026/152: fix errors in symbol-replacing, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 2650738135 031/152: a new image, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 389cc1519a 040/152: fix missed minibufferp check, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay a5b5e62cad 045/152: change the temp-face, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay f0418dea49 047/152: enable scope in the minor-mode, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay 765e1d3b07 050/152: improvements on refresh, ELPA Syncer, 2022/07/07
- [nongnu] elpa/symbol-overlay dbe35b271d 056/152: bind jump-and-switch keys to p/n, ELPA Syncer, 2022/07/07