summaryrefslogtreecommitdiff
path: root/lisp/gnus/message.el
diff options
context:
space:
mode:
authorKatsumi Yamaoka <yamaoka@jpl.org>2013-05-16 23:29:10 +0000
committerKatsumi Yamaoka <yamaoka@jpl.org>2013-05-16 23:29:10 +0000
commitc464dbc379fd84b0f05aaa1a0a6b261995daeb50 (patch)
treec32228e6916c30468eb213f303c29847a36349fc /lisp/gnus/message.el
parentebfe68e85acc390a7f1cebed731d362ef54ff001 (diff)
downloademacs-c464dbc379fd84b0f05aaa1a0a6b261995daeb50.tar.gz
lisp/gnus/message.el (message-expand-group): Decode group names
Diffstat (limited to 'lisp/gnus/message.el')
-rw-r--r--lisp/gnus/message.el36
1 files changed, 23 insertions, 13 deletions
diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el
index 501a2e6f832..2a1ad892c2e 100644
--- a/lisp/gnus/message.el
+++ b/lisp/gnus/message.el
@@ -7960,19 +7960,29 @@ those headers."
(defun message-expand-group ()
"Expand the group name under point."
- (let* ((b (save-excursion
- (save-restriction
- (narrow-to-region
- (save-excursion
- (beginning-of-line)
- (skip-chars-forward "^:")
- (1+ (point)))
- (point))
- (skip-chars-backward "^, \t\n") (point))))
- (completion-ignore-case t)
- (e (progn (skip-chars-forward "^,\t\n ") (point)))
- (hashtb (and (boundp 'gnus-active-hashtb) gnus-active-hashtb)))
- (message-completion-in-region e b hashtb)))
+ (let ((b (save-excursion
+ (save-restriction
+ (narrow-to-region
+ (save-excursion
+ (beginning-of-line)
+ (skip-chars-forward "^:")
+ (1+ (point)))
+ (point))
+ (skip-chars-backward "^, \t\n") (point))))
+ (completion-ignore-case t)
+ (e (progn (skip-chars-forward "^,\t\n ") (point)))
+ group collection)
+ (when (and (boundp 'gnus-active-hashtb)
+ gnus-active-hashtb)
+ (mapatoms
+ (lambda (symbol)
+ (setq group (symbol-name symbol))
+ (push (if (string-match "[^\000-\177]" group)
+ (gnus-group-decoded-name group)
+ group)
+ collection))
+ gnus-active-hashtb))
+ (message-completion-in-region e b collection)))
(defalias 'message-completion-in-region
(if (fboundp 'completion-in-region)