Avoid having to open Gnus and find the right group just to get back to that e-mail you were reading.
Switch branches/tags
Nothing to show
Clone or download

README.org

gnus-recent

Avoid having to open Gnus and find the right Group just to get back to that e-mail you were reading.

Or hit a key while reading one article to pop back through the stack of previously read articles, even if they were in a different Group.

Or insert a link to a recently read e-mail in an org-mode buffer by just picking one with ivy:

gnus-recent-org-mode.gif

Installation

Manual

Just put gnus-recent.el (and optionally gnus-recent-ivy.el) somewhere in load-path.

Usage

After reading some articles in Gnus and then doing whatever, doing gnus-recent-goto-previous will open the last read article and rotate the list, so you can keep calling it to go further back.

Doing gnus-recent-ivy will let you pick an article to re-open. Hitting M-o l will insert an org-mode link to the article instead.

Manual, loading on startup:

To use, require and bind whatever keys you prefer to the interactive function:

(require 'gnus-recent)
(define-key gnus-summary-mode-map (kbd "l") #'gnus-recent-goto-previous) ;
(define-key gnus-group-mode-map (kbd "C-c L") #'gnus-recent-goto-previous)

(require 'gnus-recent-ivy)
(global-set-key (kbd "<f3>") #'gnus-recent-ivy)

With use-package, enabled after org:

If you prefer use-package, the above settings would be:

(use-package gnus-recent
  :load-path "~/src/gnus-recent"       ; wherever you checked this out
  :after gnus
  :config
  (define-key gnus-summary-mode-map (kbd "l") #'gnus-recent-goto-previous)
  (define-key gnus-group-mode-map (kbd "C-c L") #'gnus-recent-goto-previous))

(use-package gnus-recent-ivy
  :load-path "~/src/gnus-recent"       ; wherever you checked this out
  :after gnus
  :bind (("<f3>" . gnus-recent-ivy)))