diff options
Diffstat (limited to '')
-rw-r--r-- | .emacs.d/lisp/bandali-erc.el | 151 |
1 files changed, 75 insertions, 76 deletions
diff --git a/.emacs.d/lisp/bandali-erc.el b/.emacs.d/lisp/bandali-erc.el index 9a53969..8d1a9ad 100644 --- a/.emacs.d/lisp/bandali-erc.el +++ b/.emacs.d/lisp/bandali-erc.el @@ -24,42 +24,28 @@ ;;; Code: -(use-package erc - :bind - (("C-c w e" . erc-switch-to-buffer-other-window) - ("C-c e l" . (lambda () - (interactive) - (erc :id "soju-libera" - :server "localhost" - :port 6667 - :user "bandali/irc.libera.chat"))) - ("C-c e o" . (lambda () - (interactive) - (erc :id "soju-oftc" - :server "localhost" - :port 6667 - :user "bandali/irc.oftc.net"))) - :map erc-mode-map - ("M-a" . erc-track-switch-buffer)) - :custom - (erc-auto-query 'bury) - (erc-autojoin-domain-only nil) - (erc-dcc-get-default-directory (b/emacs.d "erc-dcc")) - (erc-email-userid "bandali") - ;; (erc-join-buffer 'bury) - ;; (erc-lurker-hide-list '("JOIN" "PART" "QUIT")) - (erc-nick "bandali") - (erc-prompt "erc>") - (erc-prompt-for-password nil) - (erc-query-display 'buffer) - ;; (erc-server-reconnect-attempts 5) - (erc-server-reconnect-timeout 3) - :config +(with-eval-after-load 'erc + (setopt + erc-auto-query 'bury + erc-autojoin-domain-only nil + erc-dcc-get-default-directory (b/emacs.d "erc-dcc") + erc-email-userid "bandali" + ;; erc-join-buffer 'bury + ;; erc-lurker-hide-list '("JOIN" "PART" "QUIT") + erc-nick "bandali" + erc-prompt "erc>" + erc-prompt-for-password nil + erc-query-display 'buffer + ;; erc-server-reconnect-attempts 5 + erc-server-reconnect-timeout 3) + (if (version< erc-version "5.6-git") (setopt erc-format-nick-function #'erc-format-@nick) (setopt erc-show-speaker-membership-status t)) + (unless (version< erc-version "5.5") (setopt erc-rename-buffers t)) + (unless (version< erc-version "5.4") (declare-function erc-message "erc-backend" (message-command line &optional force)) @@ -76,6 +62,7 @@ (defun erc-cmd-DEOPME () "Deop myself in the current channel." (erc-cmd-DEOP (format "%s" (erc-current-nick))))) + (add-to-list 'erc-modules 'keep-place) (when (display-graphic-p) (add-to-list 'erc-modules 'notifications) @@ -83,51 +70,63 @@ (add-to-list 'erc-modules 'spelling) (declare-function erc-update-modules "erc") - (erc-update-modules)) - -(use-package erc-match - :after erc - :custom - (erc-pal-highlight-type 'nick) - (erc-pals - '("corwin" "^gopar" "^iank" "^rwp" "technomancy" "thomzane")) - :config - (set-face-attribute - 'erc-pal-face nil - :foreground 'unspecified - :weight 'unspecified - :inherit 'erc-nick-default-face - :background "#ffffdf")) - -(use-package erc-pcomplete - :after erc - :custom - (erc-pcomplete-nick-postfix ",")) - -(use-package erc-stamp - :after erc - :custom - (erc-timestamp-only-if-changed-flag nil) - (erc-timestamp-format "%T ") - (erc-insert-timestamp-function #'erc-insert-timestamp-left) - :config - (set-face-attribute - 'erc-timestamp-face nil - :foreground "#aaaaaa" - :weight 'unspecified - :background 'unspecified)) - -(use-package erc-track - :after erc - :custom - (erc-track-enable-keybindings nil) - (erc-track-exclude-types - '("JOIN" "MODE" "NICK" "PART" "QUIT" - "324" "329" "332" "333" "353" "477")) - (erc-track-position-in-mode-line t) - (erc-track-priority-faces-only 'all) - (erc-track-shorten-function nil) - (erc-track-showcount t)) + (erc-update-modules) + + (with-eval-after-load 'erc-match + (setopt + erc-pal-highlight-type 'nick + erc-pals + '("corwin" "^gopar" "^iank" "^rwp" "technomancy" "thomzane")) + (set-face-attribute + 'erc-pal-face nil + :foreground 'unspecified + :weight 'unspecified + :inherit 'erc-nick-default-face + :background "#ffffdf")) + + (with-eval-after-load 'erc-pcomplete + (setopt erc-pcomplete-nick-postfix ",")) + + (with-eval-after-load 'erc-stamp + (setopt + erc-timestamp-only-if-changed-flag nil + erc-timestamp-format "%T " + erc-insert-timestamp-function #'erc-insert-timestamp-left) + (set-face-attribute + 'erc-timestamp-face nil + :foreground "#aaaaaa" + :weight 'unspecified + :background 'unspecified)) + + (with-eval-after-load 'erc-track + (setopt + erc-track-enable-keybindings nil + erc-track-exclude-types + '("JOIN" "MODE" "NICK" "PART" "QUIT" + "324" "329" "332" "333" "353" "477") + erc-track-position-in-mode-line t + erc-track-priority-faces-only 'all + erc-track-shorten-function nil + erc-track-showcount t)) + + (b/keymap-global-set "C-c w e" #'erc-switch-to-buffer-other-window) + (b/keymap-set erc-mode-map "M-a" #'erc-track-switch-buffer)) +(b/keymap-global-set + "C-c e l" + (lambda () + (interactive) + (erc :id "soju-libera" + :server "localhost" + :port 6667 + :user "bandali/irc.libera.chat"))) +(b/keymap-global-set + "C-c e o" + (lambda () + (interactive) + (erc :id "soju-oftc" + :server "localhost" + :port 6667 + :user "bandali/irc.oftc.net"))) (provide 'bandali-erc) ;;; bandali-erc.el ends here |