-;;; riece-irc.el --- IRC protocol
+;;; riece-irc.el --- IRC protocol -*- lexical-binding: t -*-
;; Copyright (C) 1998-2004 Daiki Ueno
;; Author: Daiki Ueno <ueno@unixuser.org>
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
(require 'riece-filter)
(require 'riece-server)
+(require 'riece-mcat)
(defun riece-irc-open-server (server server-name)
(riece-server-keyword-bind server
(coding-system-for-write 'binary)
process)
(if (equal server-name "")
- (message "Connecting to IRC server...")
- (message "Connecting to %s..." server-name))
+ (message (riece-mcat "Connecting to IRC server..."))
+ (message (riece-mcat "Connecting to %s...") server-name))
(condition-case error
(setq process
(funcall function (riece-server-process-name server-name)
host service))
(error
(if (equal server-name "")
- (message "Connecting to IRC server...failed: %S" error)
- (message "Connecting to %s...failed: %S" server-name error))
+ (message (riece-mcat "Connecting to IRC server...failed: %S")
+ error)
+ (message (riece-mcat "Connecting to %s...failed: %S") server-name
+ error))
(signal (car error) (cdr error))))
(if (equal server-name "")
- (message "Connecting to IRC server...done")
- (message "Connecting to %s...done" server-name))
+ (message (riece-mcat "Connecting to IRC server...done"))
+ (message (riece-mcat "Connecting to %s...done") server-name))
(riece-reset-process-buffer process)
(with-current-buffer (process-buffer process)
(setq riece-server-name server-name))
(set-process-sentinel process 'riece-sentinel)
(set-process-filter process 'riece-filter)
(if (equal server-name "")
- (message "Logging in to IRC server...")
- (message "Logging in to %s..." server-name))
+ (message (riece-mcat "Logging in to IRC server..."))
+ (message (riece-mcat "Logging in to %s...") server-name))
(if riece-reconnect-with-password ;password incorrect or not set.
(unwind-protect
(setq password
(condition-case nil
(let (inhibit-quit)
(if (equal server-name "")
- (riece-read-passwd "Password: ")
- (riece-read-passwd (format "Password for %s: "
- server-name))))
+ (riece-read-passwd (riece-mcat "Password: "))
+ (riece-read-passwd
+ (format (riece-mcat "Password for %s: ")
+ server-name))))
(quit
(if (equal server-name "")
- (message "Password: Quit")
- (message "Password for %s: " server-name))
+ (message (riece-mcat "Password: Quit"))
+ (message (riece-mcat "Password for %s: Quit")
+ server-name))
'quit)))
(setq riece-reconnect-with-password nil)))
(if (eq password 'quit)
(if password
(riece-process-send-string process
(format "PASS %s\r\n" password)))
+ (riece-process-send-string process (format "NICK %s\r\n" nickname))
+ (unless realname
+ (setq realname (riece-mcat "No information given")))
+ (if coding
+ (setq realname (encode-coding-string realname
+ (if (consp coding)
+ (cdr coding)
+ coding))))
(riece-process-send-string process
(format "USER %s * * :%s\r\n"
- (user-real-login-name)
(or username
- "No information given")))
- (riece-process-send-string process (format "NICK %s\r\n" nickname))
+ (user-real-login-name))
+ realname))
(with-current-buffer (process-buffer process)
(setq riece-last-nickname riece-real-nickname
riece-nick-accepted 'sent
(let ((server-name (with-current-buffer (process-buffer process)
riece-server-name)))
(if (equal server-name "")
- (message "Sending QUIT...")
- (message "Sending QUIT to \"%s\"..." server-name))
+ (message (riece-mcat "Sending QUIT..."))
+ (message (riece-mcat "Sending QUIT to \"%s\"...") server-name))
(riece-process-send-string process
(if message
(format "QUIT :%s\r\n" message)
"QUIT\r\n"))
(if (equal server-name "")
- (message "Sending QUIT...done")
- (message "Sending QUIT to \"%s\"...done" server-name))))
+ (message (riece-mcat "Sending QUIT...done"))
+ (message (riece-mcat "Sending QUIT to \"%s\"...done") server-name))))
(provide 'riece-irc)