erc

せっかくだから erc の設定さらし

(setq erc-server-coding-system '(utf-8 . utf-8))
      ;; (lambda (target)
      ;; 	(if (string= target "localhost")
      ;; 	    '(utf-8 . utf-8)
      ;; 	  '(utf-8 . undecided))))

server で使う coding system。 (出力 . 入力) で書く。lambda にすると target に host name 入ってくる。 localhost は bitlbeed を動かしていて、それ以外のとこでは入力は自動判別にしていたので undecided にしてたけど、 undecided だと他人が文字化けしてる時に指摘できないのにやめた。

(require 'erc-join)
(erc-autojoin-mode 1)
(setq erc-autojoin-channels-alist
          '(("freenode.net" 
	     ;;"#emacs" 
	     ;;"#gentoo-bugs" 
	     ;;"#gentoo-sunrise" 
	     ;;"#gentoo-dev-help" 
	     "#gentoo-soc" "#gentoo-bsd"
	     ;;"#gentoo" 
	     "#gentoo-ja" "#emacs-lisp-ja" "#emacs-ja")))
;; "##linux" 

erc 起動時に勝手に join する channel のリストなど。 その時々でコメントはずしたりする。 #emacs と ##linux は人多いから…。

(setq erc-track-exclude-types '("JOIN" "NICK" "PART" "QUIT" "MODE"
				"324" "329" "332" "333" "353" "477"))

通知しない情報の種類。誰さんが入りましたとか誰さんが名前変えたとか出てったとか興味ないので切るということ。

(setq erc-max-buffer-size 40000)
(defvar erc-insert-post-hook)
(add-hook 'erc-insert-post-hook 'erc-truncate-buffer)
(setq erc-truncate-buffer-on-save t)

erc の buffer が大きくなりすぎないように上限設定して定期的に切ってやるようにして2。

(add-hook 'erc-after-connect
          '(lambda (SERVER NICK)
             (cond
              ((string-match "freenode\\.net" SERVER)
               (erc-message "PRIVMSG" "NickServ identify password")))))

freenode の登録nicknameの認証 password のとこを自分のに変えればよろし。