Skip to content

Instantly share code, notes, and snippets.

@chumpage
Created September 26, 2011 23:34
Show Gist options
  • Save chumpage/1243771 to your computer and use it in GitHub Desktop.
Save chumpage/1243771 to your computer and use it in GitHub Desktop.
emacs erc setup
(defun erc-needs-tunnel ()
(string= (call-config-script "erc-needs-tunnel.sh") "true"))
(defun erc-default-nick () (if (at-work) "<user1>" "<user2>"))
;; Have erc use a socks proxy when I'm at work to bypass the firewall
(when (and (erc-needs-tunnel)
(require 'socks nil t))
;; !!! fix
;; I shouldn't need this next line, but if I don't have it I get an error when I try
;; to open a socks connection:
;; socks-open-connection: Autoloading failed to define function
;; See socks.el.
(defalias 'socks-original-open-network-stream (symbol-function 'open-network-stream))
(setq socks-server '("Default Server" "localhost" 9200 5))
(setq erc-server-connect-function 'socks-open-network-stream))
(require 'erc-join)
(setq erc-autojoin-channels-alist '(("freenode.net" "#emacs" "#chromium" "#android")
("oftc.net" "#awesome")))
;; autojoin after successful NickServ identification, rather than immediately on connecting
(setq erc-autojoin-timing 'ident)
(require 'erc-services)
(setq erc-nickserv-identify-mode 'both)
(erc-services-mode 1)
(setq erc-prompt-for-nickserv-password nil)
(setq erc-login-alist '(("<user1>" . "<password1>")
("<user2>" . "<password2>")))
(setq erc-nickserv-passwords
`((freenode ,erc-login-alist)
(OFTC ,erc-login-alist)))
(defun erc-init ()
(interactive)
(erc :server "irc.freenode.net" :port 6667 :nick (erc-default-nick))
(erc :server "irc.oftc.net" :port 6667 :nick (erc-default-nick)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment