summaryrefslogtreecommitdiff
path: root/emacs/inits/30-irc.el
blob: 7d3566f2c8e721b3eda4544631da4be1639ff448 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
;; Time-stamp: <2019-01-26 12:55:41 (tslil@winslow)>

(use-package rcirc
  :ensure t
  :defer
  :hook (rcirc-mode . (lambda ()
                        (rcirc-track-minor-mode)
                        (flyspell-mode-on)
                        (set (make-local-variable 'scroll-conservatively) 8192)))
  :config
  (use-package rcirc-color
    :ensure t
    :if (window-system))
  
  (require 'auth-source)

  (defadvice rcirc (before rcirc-read-from-authinfo activate)
    (unless arg
      (dolist (p (auth-source-search :port '("nickserv"
                                             "bitlbee"
                                             "quakenet")
                                     :require '(:port :user :secret)))
        (let ((secret (plist-get p :secret))
              (method (intern (plist-get p :port))))
          (add-to-list 'rcirc-authinfo
                       (list (plist-get p :host)
                             method
                             (plist-get p :user)
                             (if (functionp secret)
                                 (funcall secret)
                               secret)))))))
  
  (setq rcirc-default-full-name "tslil"
        rcirc-default-nick "maximum_yellow"
        rcirc-default-user-name "maximum_yellow"
        rcirc-time-format "%Y-%m-%d %H:%M "
        rcirc-log-directory "~/irc/"
        rcirc-fill-column 80
        rcirc-log-flag t
        rcirc-server-alist
        '(("irc.freenode.net"
           :port 6697
           :encryption tls
           :channels ("#emacs" "#guix")
           ))))