From 2d46cf921c85bc1bc2f3861961e67cbaa4486494 Mon Sep 17 00:00:00 2001 From: Lars Magne Ingebrigtsen Date: Mon, 4 Jul 2011 16:24:06 +0200 Subject: [PATCH] * gnus-group.el (gnus-read-ephemeral-bug-group): Allow fetching several bug reports at once. --- lisp/ChangeLog | 3 +++ lisp/gnus-group.el | 23 ++++++++++++++--------- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 67f4ede05..772543e1c 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -4,6 +4,9 @@ 2011-07-04 Lars Magne Ingebrigtsen + * gnus-group.el (gnus-read-ephemeral-bug-group): Allow fetching several + bug reports at once. + * nnimap.el (nnimap-request-scan): Say that splitting has finished. 2011-07-04 Katsumi Yamaoka diff --git a/lisp/gnus-group.el b/lisp/gnus-group.el index 83383186c..da6550c16 100644 --- a/lisp/gnus-group.el +++ b/lisp/gnus-group.el @@ -2428,25 +2428,28 @@ the bug number, and browsing the URL must return mbox output." :version "24.1" :type '(repeat (cons (symbol) (string :tag "URL format string")))) -(defun gnus-read-ephemeral-bug-group (number mbox-url &optional window-conf) +(defun gnus-read-ephemeral-bug-group (ids mbox-url &optional window-conf) "Browse bug NUMBER as ephemeral group." (interactive (list (read-string "Enter bug number: " (thing-at-point 'word) nil) ;; FIXME: Add completing-read from ;; `gnus-emacs-bug-group-download-format' ... (cdr (assoc 'emacs gnus-bug-group-download-format-alist)))) - (when (stringp number) - (setq number (string-to-number number))) + (when (stringp ids) + (setq ids (string-to-number ids))) + (unless (listp ids) + (setq ids (list ids))) (let ((tmpfile (mm-make-temp-file "gnus-temp-group-")) (coding-system-for-write 'binary) (coding-system-for-read 'binary)) (with-temp-file tmpfile - (url-insert-file-contents (format mbox-url number)) + (dolist (id ids) + (url-insert-file-contents (format mbox-url id))) (goto-char (point-min)) ;; Add the debbugs address so that we can respond to reports easily. (while (re-search-forward "^To: " nil t) (end-of-line) - (insert (format ", %s@%s" number + (insert (format ", %s@%s" (car ids) (gnus-replace-in-string (gnus-replace-in-string mbox-url "^http://" "") "/.*$" "")))) @@ -2466,19 +2469,21 @@ the bug number, and browsing the URL must return mbox output." number (cdr (assoc 'debian gnus-bug-group-download-format-alist)))) -(defun gnus-read-ephemeral-emacs-bug-group (number &optional window-conf) - "Browse Emacs bug NUMBER as ephemeral group." +(defun gnus-read-ephemeral-emacs-bug-group (ids &optional window-conf) + "Browse Emacs bugs IDS as an ephemeral group." (interactive (list (string-to-number (read-string "Enter bug number: " (thing-at-point 'word) nil)))) + (unless (listp ids) + (setq ids (list ids))) (gnus-read-ephemeral-bug-group - number + ids (cdr (assoc 'emacs gnus-bug-group-download-format-alist)) window-conf) (when (boundp 'debbugs-summary-mode) (with-current-buffer (window-buffer (selected-window)) (debbugs-summary-mode 1) - (set (make-local-variable 'debbugs-bug-number) number)))) + (set (make-local-variable 'debbugs-bug-number) (car ids))))) (defun gnus-group-jump-to-group (group &optional prompt) "Jump to newsgroup GROUP. -- 2.25.1