speaker as target when priv mode.
* riece-display.el (riece-update-channel-indicator): Decode
riece-current-channel even in priv mode.
* riece-identity.el (riece-decode-identity): Respect prefix-only.
(riece-completing-read-identity): Check if illegal characters in
channel name.
+2003-06-11 Daiki Ueno <ueno@unixuser.org>
+
+ * riece-message.el (riece-message-parent-buffers): Regard message's
+ speaker as target when priv mode.
+
+ * riece-display.el (riece-update-channel-indicator): Decode
+ riece-current-channel even in priv mode.
+
+ * riece-identity.el (riece-decode-identity): Respect prefix-only.
+ (riece-completing-read-identity): Check if illegal characters in
+ channel name.
+
+2003-06-08 Daiki Ueno <ueno@unixuser.org>
+
+ * riece.el (riece-buffer-mode-alist): Add riece-user-list-buffer.
+ * riece-globals.el (riece-user-buffer-format): Abolish.
+ (riece-user-list-buffer): Default to " *Users*".
+ * riece-display.el (riece-user-list-buffer-name): Abolish.
+ (riece-user-list-buffer-create): Abolish.
+
2003-06-08 Daiki Ueno <ueno@unixuser.org>
* riece-filter.el (riece-handle-numeric-reply): Don't decode messages.
(riece-concat-channel-topic
riece-current-channel
(riece-decode-identity riece-current-channel)))
- riece-current-channel)
+ (riece-decode-identity riece-current-channel))
"None")))
(defun riece-update-short-channel-indicator ()
(let ((prefix (riece-decode-coding-string
(riece-identity-prefix identity)))
(server (riece-identity-server identity)))
- (if (equal server "")
+ (if (or prefix-only (equal server ""))
prefix
(concat prefix " " server)))))
(defun riece-completing-read-identity (prompt table
&optional predicate must-match)
- (riece-encode-identity
- (completing-read
- prompt
- (mapcar (lambda (channel)
- (list (riece-decode-identity channel)))
- table)
- predicate must-match)))
+ (let* ((decoded
+ (completing-read
+ prompt
+ (mapcar (lambda (channel)
+ (list (riece-decode-identity channel)))
+ table)
+ predicate must-match))
+ (encoded
+ (riece-encode-identity decoded)))
+ (if (and (not (string-match "[ ,]" decoded))
+ (string-match "[ ,]" encoded)
+ (not (y-or-n-p (format "The encoded channel name contains illegal character \"%s\". continue? "
+ (match-string 0 encoded)))))
+ (error "Invalid channel name!"))
+ encoded))
(provide 'riece-identity)
Normally they are *Dialogue* and/or *Others*."
(if (or (and buffer (riece-frozen buffer))
(and riece-current-channel
- (not (riece-identity-equal
- (riece-message-target message)
- riece-current-channel))))
+ (if (riece-message-private-p message)
+ (not (riece-identity-equal
+ (riece-message-speaker message)
+ riece-current-channel))
+ (not (riece-identity-equal
+ (riece-message-target message)
+ riece-current-channel)))))
(list riece-dialogue-buffer riece-others-buffer)
riece-dialogue-buffer))