1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-01 11:14:55 +00:00

* lisp/net/rcirc.el (defun-rcirc-join): Accept multiple channels.

This commit is contained in:
Deniz Dogan 2011-02-11 07:19:34 +01:00
parent 5935086250
commit e0e36cac4a
2 changed files with 15 additions and 7 deletions

View File

@ -1,3 +1,7 @@
2011-02-11 Deniz Dogan <deniz.a.m.dogan@gmail.com>
* net/rcirc.el (defun-rcirc-join): Accept multiple channels.
2011-02-11 Glenn Morris <rgm@gnu.org>
* emacs-lisp/cl-specs.el (multiple-value-bind): Fix debug spec.

View File

@ -2098,14 +2098,18 @@ activity. Only run if the buffer is not visible and
(when (not existing-buffer)
(rcirc-cmd-whois nick))))
(defun-rcirc-command join (channel)
"Join CHANNEL."
(interactive "sJoin channel: ")
(let ((buffer (rcirc-get-buffer-create process
(car (split-string channel)))))
(rcirc-send-string process (concat "JOIN " channel))
(defun-rcirc-command join (channels)
"Join CHANNELS.
CHANNELS is a comma- or space-separated string of channel names."
(interactive "sJoin channels: ")
(let* ((split-channels (split-string channels "[ ,]" t))
(buffers (mapcar (lambda (ch)
(rcirc-get-buffer-create process ch))
split-channels)))
(rcirc-send-string process (concat "JOIN " channels))
(when (not (eq (selected-window) (minibuffer-window)))
(switch-to-buffer buffer))))
(dolist (b buffers) ;; order the new channel buffers in the buffer list
(switch-to-buffer b)))))
;; TODO: /part #channel reason, or consider removing #channel altogether
(defun-rcirc-command part (channel)