aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-14 15:43:36 -0500
committerCraig Jennings <c@cjennings.net>2026-06-14 15:43:36 -0500
commit79fb0c65195493c7a3f1cc3dfb898cde6e53ffd3 (patch)
tree243e686574b5ed531b4ad2ff1fd975240782f999 /modules
parent6a630b9c31ef2de7553ec3d439fd350c10abfbe7 (diff)
downloaddotemacs-79fb0c65195493c7a3f1cc3dfb898cde6e53ffd3.tar.gz
dotemacs-79fb0c65195493c7a3f1cc3dfb898cde6e53ffd3.zip
fix(erc): one mention notification, real server list, runtime require
Three audit defects. erc-modules carried the built-in notifications module while :config also added cj/erc-notify-on-mention to the same erc-text-matched-hook, so every mention popped two desktop notifications. Dropped notifications from erc-modules and kept the custom one. cj/erc-connected-servers compared a buffer's erc-server-process to itself inside with-current-buffer (always true), so it returned every ERC buffer; it now filters on erc-server-buffer-p and erc-server-process-alive. And user-constants moved from an eval-when-compile-only require to a runtime require, since user-whole-name is read at load time for erc-user-full-name.
Diffstat (limited to 'modules')
-rw-r--r--modules/erc-config.el9
1 files changed, 5 insertions, 4 deletions
diff --git a/modules/erc-config.el b/modules/erc-config.el
index 22ba7f53d..067b1e577 100644
--- a/modules/erc-config.el
+++ b/modules/erc-config.el
@@ -28,8 +28,10 @@
;; Load cl-lib at compile time and runtime (lightweight, already loaded in most configs)
(require 'cl-lib)
(require 'keybindings) ;; provides cj/custom-keymap
-(eval-when-compile (require 'erc)
- (require 'user-constants))
+(eval-when-compile (require 'erc))
+;; user-constants is required at runtime, not just compile time: `user-whole-name'
+;; is read at load time below (erc-user-full-name), so a standalone .elc needs it.
+(require 'user-constants)
;; ------------------------------------ ERC ------------------------------------
;; Server definitions and connection settings
@@ -97,7 +99,7 @@ Change this value to use a different nickname.")
(let ((server-buffers '()))
(dolist (buf (erc-buffer-list))
(with-current-buffer buf
- (when (eq (buffer-local-value 'erc-server-process buf) erc-server-process)
+ (when (and (erc-server-buffer-p) (erc-server-process-alive))
(unless (member (buffer-name) server-buffers)
(push (buffer-name) server-buffers)))))
@@ -222,7 +224,6 @@ Auto-adds # prefix if missing. Offers completion from configured channels."
match
move-to-prompt
noncommands
- notifications
readonly
services
stamp