Undo the last change.
[riece] / lisp / riece-300.el
index 499a98f..4ec44e8 100644 (file)
@@ -25,7 +25,6 @@
 ;;; Code:
 
 (require 'riece-misc)
-(require 'riece-commands)
 
 (require 'riece-filter)                        ;riece-default-handle-message
 
                   idle))
          "\n")))))
 
+(defun riece-handle-319-message (prefix number name string)
+  (if (string-match (concat "^\\(" riece-user-regexp "\\) :") string)
+      (let ((user (match-string 1 string))
+           (channels
+            (mapconcat
+             (lambda (channel)
+               (if (string-match
+                    (concat "^\\([@+]?\\)\\(" riece-channel-regexp "\\)")
+                    channel)
+                   (concat
+                    (match-string 1 channel)
+                    (riece-format-identity
+                     (riece-make-identity (match-string 2 channel)
+                                          riece-server-name)
+                     t))))
+             (split-string (substring string (match-end 0)) " ")
+             " ")))
+       (riece-insert-info
+        (list riece-dialogue-buffer riece-others-buffer)
+        (concat
+         (riece-concat-server-name
+          (format "%s: %s"
+                  (riece-format-identity
+                   (riece-make-identity user riece-server-name)
+                   t)
+                  channels))
+         "\n")))))
+
 (defun riece-handle-351-message (prefix number name string)
   (if (string-match "\\([^ ]+\\.[^ ]+\\) \\([^ ]+\\) :" string)
       (riece-insert-info
        (riece-channel-set-topic (riece-get-channel channel) topic)
        (let* ((channel-identity (riece-make-identity channel
                                                      riece-server-name))
-              (buffer (riece-channel-buffer-name channel-identity)))
+              (buffer (riece-channel-buffer channel-identity)))
          (riece-insert-info buffer (concat visible " users, topic: "
                                            topic "\n"))
          (riece-insert-info
             riece-dialogue-buffer)
           (concat
            (riece-concat-server-name
-            (format "%s users on %s, topic: %s" visible
-                    (riece-format-identity channel-identity t) topic))
+            (format "%s: %s users, topic: %s"
+                    (riece-format-identity channel-identity t) visible topic))
            "\n"))))))
 
 (defun riece-handle-324-message (prefix number name string)
          (setq modes (cdr modes)))
        (let* ((channel-identity (riece-make-identity channel
                                                      riece-server-name))
-              (buffer (riece-channel-buffer-name channel-identity)))
+              (buffer (riece-channel-buffer channel-identity)))
          (riece-insert-info buffer (concat "Mode: " mode-string "\n"))
          (riece-insert-info
           (if (and riece-channel-buffer-mode
       (let* ((channel (match-string 1 string))
             (message (substring string (match-end 0)))
             (channel-identity (riece-make-identity channel riece-server-name))
-            (buffer (riece-channel-buffer-name channel-identity)))
+            (buffer (riece-channel-buffer channel-identity)))
        (if remove
            (riece-channel-set-topic (riece-get-channel channel) nil)
          (riece-channel-set-topic (riece-get-channel channel) message)
       (let* ((channel (match-string 1 string))
             (user (substring string (match-end 0)))
             (channel-identity (riece-make-identity channel riece-server-name))
-            (buffer (riece-channel-buffer-name channel-identity)))
+            (buffer (riece-channel-buffer channel-identity)))
        (riece-insert-info buffer (concat "Inviting " user "\n"))
        (riece-insert-info
         (if (and riece-channel-buffer-mode
             (flag (match-string 8 string))
             (hops (match-string 9 string))
             (name (substring string (match-end 0)))
-            (buffer (riece-channel-buffer-name
-                     (riece-make-identity channel riece-server-name)))
+            (buffer (riece-channel-buffer (riece-make-identity
+                                           channel riece-server-name)))
             (info (format "%10s = %s (%s) [%s, %s, %s hops, on %s]"
                           (concat
                            (if (memq flag '(?@ ?+))