diff --git a/lisp/gnus-registry.el b/lisp/gnus-registry.el index 79080f2..629d804 100644 --- a/lisp/gnus-registry.el +++ b/lisp/gnus-registry.el @@ -728,7 +728,10 @@ Consults `gnus-registry-unfollowed-groups' and (defun gnus-registry-simplify-subject (subject) (if (stringp subject) - (gnus-simplify-subject subject) + (progn + (string-match "^\\[[0-9]+:.+/[0-9]+\\] " subject) + (setq subject (substring subject (match-end 0))) + (gnus-simplify-subject subject)) nil)) (defun gnus-registry-fetch-simplified-message-subject-fast (article) diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 9715510..dd97b23 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -9703,6 +9703,7 @@ ACTION can be either `move' (the default), `crosspost' or `copy'." articles) (while articles (setq article (pop articles)) + (let ((gnus-original-newsgroup-name gnus-newsgroup-name)) (setq art-group (cond @@ -9781,7 +9782,7 @@ ACTION can be either `move' (the default), `crosspost' or `copy'." action (gnus-data-header (assoc article (gnus-data-list nil))) - gnus-newsgroup-name nil + gnus-original-newsgroup-name nil select-method))) (t (let* ((pto-group (gnus-group-prefixed-name @@ -9881,7 +9882,7 @@ ACTION can be either `move' (the default), `crosspost' or `copy'." action (gnus-data-header (assoc article (gnus-data-list nil))) - gnus-newsgroup-name + gnus-original-newsgroup-name to-newsgroup select-method)) @@ -9903,7 +9904,7 @@ ACTION can be either `move' (the default), `crosspost' or `copy'." (gnus-kill-buffer copy-buf) (gnus-summary-position-point) - (gnus-set-mode-line 'summary))) + (gnus-set-mode-line 'summary)))) (defun gnus-summary-copy-article (&optional n to-newsgroup select-method) "Copy the current article to some other group. diff --git a/lisp/nnir.el b/lisp/nnir.el index ae6b903..a71f1f3 100644 --- a/lisp/nnir.el +++ b/lisp/nnir.el @@ -453,6 +453,9 @@ result, `gnus-retrieve-headers' will be called instead.") (defvar nnir-extra-parms nil "Internal: stores request for extra search parms") +(defvar gnus-original-newsgroup-name nil + "Internal: stores the real newsgroup name") + ;;; Code: ;; Gnus glue. @@ -596,6 +600,7 @@ result, `gnus-retrieve-headers' will be called instead.") (to-method (gnus-find-method-for-group to-newsgroup)) (from-method (gnus-find-method-for-group artfullgroup)) (move-is-internal (gnus-server-equal from-method to-method))) + (setq gnus-original-newsgroup-name artfullgroup) (gnus-request-move-article artno artfullgroup