- "RPL_NAMREPLY \"<channel> :[[@|+]<nick> [[@|+]<nick> [...]]]\"."
- (if (string-match "^[=\*@] *\\([^ ]+\\) +:" string)
- (let ((channel (match-string 1 string))
- users)
- (setq string (substring string (match-end 0)))
- (if (string-match " *$" string)
- (setq string (substring string 0 (match-beginning 0))))
- (setq users (split-string string))
- (while users
- (if (eq (aref (car users) 0) ?@)
- (progn
- (riece-naming-assert-join (substring (car users) 1) channel)
- (riece-channel-toggle-operator
- channel (substring (car users) 1) t))
- (if (eq (aref (car users) 0) ?+)
- (progn
- (riece-naming-assert-join (substring (car users) 1) channel)
- (riece-channel-toggle-speaker
- channel (substring (car users) 1) t))
- (riece-naming-assert-join (car users) channel)))
- (setq users (cdr users)))
- (let* ((channel-identity (riece-make-identity channel
- riece-server-name))
- (buffer (riece-channel-buffer channel-identity)))
- (riece-insert-info buffer (concat "Users: " string "\n"))
- (riece-insert-info
- (if (and riece-channel-buffer-mode
- (not (eq buffer riece-channel-buffer)))
- (list riece-dialogue-buffer riece-others-buffer)
- riece-dialogue-buffer)
- (concat
- (riece-concat-server-name
- (format "Users on %s: %s"
- (riece-format-identity channel-identity t) string))
- "\n")))
- (riece-redisplay-buffers))))
-
-(defun riece-handle-322-message (prefix number name string)
- (if (string-match "^\\([^ ]+\\) \\([0-9]+\\) :" string)