~beacon-blink-when-window-changes~, and
~beacon-blink-when-point-moves~.
-- To prevent the beacon from blinking only on some major-modes,
- configure ~beacon-dont-blink-major-modes~. For specific buffers, you
- can do ~(setq-local beacon-mode nil)~. For even more refined
- control, configure ~beacon-dont-blink-predicates~
+- To prevent the beacon from blinking only on specific situations
+ configure ~beacon-dont-blink-major-modes~,
+ ~beacon-dont-blink-predicates~, or ~beacon-dont-blink-commands~. You
+ can also disable it only in specific buffers by doing
+ ~(setq-local beacon-mode nil)~.
- Beacon can also push the mark for you whenever point moves a long
distance. For this, configure ~beacon-push-mark~.
blink."
:type '(repeat symbol))
+(defcustom beacon-dont-blink-commands '(recenter-top-bottom)
+ "A list of commands that should not make the beacon blink.
+Use this for commands that scroll the window in very
+predictable ways, when the blink would be more distracting
+than helpful.."
+ :type '(repeat symbol))
+
\f
;;; Overlays
(defvar beacon--ovs nil)
(beacon--vanish)
(unless (or (not beacon-mode)
(run-hook-with-args-until-success 'beacon-dont-blink-predicates)
- (seq-find #'derived-mode-p beacon-dont-blink-major-modes))
+ (seq-find #'derived-mode-p beacon-dont-blink-major-modes)
+ (memq (or this-command last-command) beacon-dont-blink-commands))
(beacon--shine)
(setq beacon--timer
(run-at-time beacon-blink-delay