2003-12-14 Daiki Ueno <ueno@unixuser.org>
+ * riece.el (riece): Connect to servers in riece-startup-server-list.
+
+ * riece-000.el (riece-handle-001-message): Ignore entries in
+ riece-startup-channel-list which doesn't match riece-server-name.
+
+ * riece-options.el (riece-startup-server-list): New user option.
+
* riece-async.el (riece-async-max-buffer-size): New user option.
(riece-async-server-program): Use io/nonblock & IO#syswrite to
check whether the write end of pipe (i.e. input to emacs process)
(if (equal riece-server-name "")
(message "Logging in to IRC server...done")
(message "Logging in to %s...done" riece-server-name))
- (let ((channel-list riece-startup-channel-list))
+ (let ((channel-list riece-startup-channel-list)
+ entry identity)
(while channel-list
- (if (listp (car channel-list))
- (riece-command-join (riece-parse-identity (car (car channel-list)))
- (nth 1 (car channel-list)))
- (riece-command-join (riece-parse-identity (car channel-list))))
+ (unless (listp (setq entry (car channel-list)))
+ (setq entry (list (car channel-list))))
+ (if (equal (riece-identity-server
+ (setq identity (riece-parse-identity (car entry))))
+ riece-server-name)
+ (riece-command-join identity (nth 1 entry)))
(setq channel-list (cdr channel-list))))
(run-hooks 'riece-after-login-hook))
(list (string :tag "Channel") (string :tag "Key"))))
:group 'riece-channel)
+(defcustom riece-startup-server-list nil
+ "A list of servers to connect automatically at startup."
+ :type '(repeat (string :tag "Server"))
+ :group 'riece-server)
+
(defcustom riece-retry-with-new-nickname nil
"When nickname has already been in use, grow-tail automatically."
:type 'boolean
(switch-to-buffer riece-command-buffer)
(riece-redisplay-buffers)
(riece-open-server riece-server "")
+ (let ((server-list riece-startup-server-list))
+ (while server-list
+ (riece-command-open-server (car server-list))
+ (setq server-list (cdr server-list))))
(run-hooks 'riece-startup-hook)
(message "%s" (substitute-command-keys
"Type \\[describe-mode] for help"))))