diff options
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/bandali-erc.el | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/lisp/bandali-erc.el b/lisp/bandali-erc.el new file mode 100644 index 0000000..2d6f496 --- /dev/null +++ b/lisp/bandali-erc.el @@ -0,0 +1,74 @@ +(use-package erc + :bind (("C-c b b" . erc-switch-to-buffer) + :map erc-mode-map + ("M-a" . erc-track-switch-buffer)) + :custom + (erc-join-buffer 'bury) + (erc-lurker-hide-list '("JOIN" "PART" "QUIT")) + (erc-nick "bandali") + (erc-prompt "erc>") + (erc-rename-buffers t) + (erc-server-reconnect-attempts 5) + (erc-server-reconnect-timeout 3) + :config + (defun erc-cmd-OPME () + "Request chanserv to op me." + (erc-message "PRIVMSG" + (format "chanserv op %s %s" + (erc-default-target) + (erc-current-nick)) nil)) + (defun erc-cmd-DEOPME () + "Deop myself from current channel." + (erc-cmd-DEOP (format "%s" (erc-current-nick)))) + (add-to-list 'erc-modules 'keep-place) + (add-to-list 'erc-modules 'notifications) + (add-to-list 'erc-modules 'smiley) + (add-to-list 'erc-modules 'spelling) + (add-to-list 'erc-modules 'scrolltoplace) + (erc-update-modules)) + +(use-package erc-fill + :after erc + :custom + (erc-fill-column 77) + (erc-fill-function 'erc-fill-static) + (erc-fill-static-center 18)) + +(use-package erc-pcomplete + :after erc + :custom + (erc-pcomplete-nick-postfix ", ")) + +(use-package erc-track + :after erc + :bind (("C-c a e t d" . erc-track-disable) + ("C-c a e t e" . erc-track-enable)) + :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)) + +(use-package erc-hl-nicks + :after erc) + +(use-package erc-scrolltoplace + :after erc) + +(use-package znc + :bind (("C-c a e e" . znc-erc) + ("C-c a e a" . znc-all)) + :config + (let ((pwd (let ((auth (auth-source-search :host "znca"))) + (cond + ((null auth) (error "Couldn't find znca's authinfo")) + (t (funcall (plist-get (car auth) :secret))))))) + (setq znc-servers + `(("znc.shemshak.org" 1337 t + ((freenode "amin/freenode" ,pwd))) + ("znc.shemshak.org" 1337 t + ((oftc "amin/oftc" ,pwd))))))) + +(provide 'bandali-erc) |