Function: erc-handle-irc-url
erc-handle-irc-url is a byte-compiled function defined in erc.el.gz.
Signature
(erc-handle-irc-url HOST PORT CHANNEL USER PASSWORD)
Documentation
Use ERC to IRC on HOST:PORT in CHANNEL as USER with PASSWORD.
If ERC is already connected to HOST:PORT, simply /join CHANNEL. Otherwise, connect to HOST:PORT as USER and /join CHANNEL.
Source Code
;; Defined in /usr/src/emacs/lisp/erc/erc.el.gz
;; Teach url.el how to open irc:// URLs with ERC.
;; To activate, customize `url-irc-function' to `url-irc-erc'.
;;;###autoload
(defun erc-handle-irc-url (host port channel user password)
"Use ERC to IRC on HOST:PORT in CHANNEL as USER with PASSWORD.
If ERC is already connected to HOST:PORT, simply /join CHANNEL.
Otherwise, connect to HOST:PORT as USER and /join CHANNEL."
(let ((server-buffer
(car (erc-buffer-filter
(lambda ()
(and (string-equal erc-session-server host)
(= erc-session-port port)
(erc-open-server-buffer-p)))))))
(with-current-buffer (or server-buffer (current-buffer))
(if (and server-buffer channel)
(erc-cmd-JOIN channel)
(erc-open host port (or user (erc-compute-nick)) (erc-compute-full-name)
(not server-buffer) password nil channel
(when server-buffer
(get-buffer-process server-buffer)))))))