Version 4.0.0 of package Elfeed has just been released in NonGNU ELPA. You can now find it in M-x list-packages RET.
Elfeed describes itself as: ======================= An Atom/RSS feed reader ======================= More at https://elpa.nongnu.org/nongnu/elfeed.html ## Summary: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ELFEED EMACS WEB FEED READER ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Elfeed is an extensible web feed reader for Emacs, supporting Atom, RSS and JSON Feed. It requires Emacs 28.1 and is available for download from [ELPA] or [MELPA]. The Elfeed UI was inspired by [notmuch]. The database format is stable and is never expected to change. <https://github.com/emacs-elfeed/elfeed/blob/screenshots/screenshot.png?raw=true> [ELPA] <https://elpa.nongnu.org/packages/elfeed.html> [MELPA] <https://melpa.org/#/elfeed> [notmuch] <https://notmuchmail.org/> 1 Prerequisites ═══════════════ ## Recent NEWS: ━━━━━━━━━━━━━━━━━━ ELFEED CHANGELOG ━━━━━━━━━━━━━━━━━━ 1 Version 4.0.0 (2026-06-06) ════════════════════════════ 1.1 General ─────────── • `elfeed-entry-point': New customization option to customize `M-x elfeed' to either the search or tree buffer. • `elfeed-search-mode', `elfeed-show-mode', `elfeed-tree-mode': All Elfeed major modes derive from `special-mode'. • Hide irrelevant commands in `M-x' if `read-extended-command-predicate' is set to `command-completion-default-include-p'. • `elfeed-confirm-browse-url': New customization option. • `elfeed-use-libxml': New customization option to enable parsing via `libxml'. • New mouse menus in all Elfeed major modes. • Mouse support in the search buffer and the header line. • Moved elfeed-web.el to the separate repository at <https://github.com/emacs-elfeed/elfeed-web>. • Show title and search filter in Ibuffer via the variable `list-buffers-directory'. • `elfeed-last-update-relative': New option to show last database update in the header line relative to the current time. • `elfeed-csv-export': Marked as autoloaded, `elfeed-csv' is not required anymore. 1.2 Database ──────────── • `elfeed-db-directory': Change default to `~/.config/emacs/elfeed'. The change is backward compatible. If `~/.elfeed' is present, it will be used. • `elfeed-db-cache-timeout': New option to keep archive content cache alive. • `elfeed-db-save', `elfeed-db-pack': Reduce risk for database corruptions by writing to temporary files first and renaming atomically afterwards. • `elfeed-db-gc', `elfeed-db-pack': Scan entry and feed meta data for `elfeed-ref' references. This way other packages can reference content with the reference kept in the metadata. • `elfeed-db-gc': Deduplicate strings in the database to reduce on-disk and in-memory size. 1.3 Feed updates ──────────────── • `elfeed-delete-feed': New command to delete feed with all entries from the db. • `elfeed-fetch-functions': New hook to implement custom feed fetching. This hook can be used by `elfeed-protocol', to generate a feed from an external program, or to modify fetched content. • `elfeed-make-tagger': Support matching on entry categories. • `elfeed-update-background': New function to update Elfeed in the background from a timer. • `elfeed-feeds': Feeds can specify per-feed options as a plist. Currently supported options are `:no-update', `:fetch-link', `:readable' and `:show-entry'. • `elfeed-feeds': Feeds can specify a `:no-update' option to disable feed updates. The feed appears still in the list for manual updates, and you can configure autotags for the entries which are part of the feed. ┌──── │ ;; Do not update this feed │ (setq elfeed-feeds │ '(("https://yhetil.org/emacs-devel/new.atom" :no-update t emacs) │ ...)) └──── • Support for the JSON Feed format. JSON feeds are automatically detected, parsed with the Emacs JSON parser, but otherwise treated like the usual RSS or Atom feeds. 1.4 Tree buffer ─────────────── • New `elfeed-tree-mode' which lists all feeds and tags as a tree structure. • `elfeed-tree': New command which opens an `elfeed-tree-mode' buffer. 1.5 Search buffer ───────────────── • `elfeed-search': New command as entry point. • `elfeed-search-set-filter', `elfeed-search-tag-all': Filter and tag completion using `completing-read-multiple'. Disable completion via the variable `elfeed-search-completion'. • `elfeed-search-set-filter': Support shorter age filter syntax, e.g., `@6months'. • `elfeed-search-date-filter', `elfeed-search-feed-filter' and `elfeed-search-exclude-feed-filter': New commands bound to `@', `=' and `~' to filter for the date or feed at point. • `elfeed-search-(un)tag-all', `elfeed-search-toggle-all', `elfeed-search-(un)tag-all-unread': If prefix argument is given, tag or untag all entries, not only the selected ones. • `elfeed-search-remain-on-entry': Generalized option to configure the commands explicitly that should remain on the entry. • `elfeed-search-mode': Auto-resizing of title column. • `elfeed-search-update-delay': New option to debounce search buffer redraws when … …
