Elfeed

Those of you who have been paying attention know that I’ve been threatening to complete my move to (almost) all-things-in-Emacs by switching to elfeed for my RSS feeds. It doesn’t really have a good iOS solution but it is easy to keep two or more laptops/desktops in sync so there was no reason for me not to give it a try.

I started with the configuration from Mike Zamansky’s first elfeed video and made a couple of small tweaks for my local situation. I also added a bit of Elisp to have elfeed run in a single large window and then restore the previous window configuration when I quit. That’s because I usually have two windows open in Emacs and things are easier with just one when I’m reading my feeds.

I’ve long been an admirer of Chris Wellons and have written about some of his posts before. Elfeed is just what I’d expect from him. It’s beautifully written and reimagines the process in terms of searching rather than a simple list of posts to read. You can search on tags or titles or times to get the exact list of topics you want to see. Take a look at Wellon’s README to get a good overview and watch Zamansky’s three videos on Elfeed to see it in action.

For the time being I haven’t implemented the very nice searching solution that Zamansky shows in the second two videos but I probably will. I decided to get used to Elfeed and get the basics the way I like them first.

I’ve already noticed a change in the way I read the feeds. Before, I used to read everything at once at the end of the day using Feedly in Safari. Now I find myself bringing up elfeed several times during the day and reading a few at a time—usually whatever has come in since my last session. It’s comfortable, mouseless, and built right into Emacs. I really like it.

This entry was posted in General and tagged . Bookmark the permalink.
  • Ag ibragimov

    There's one problem though - I also read things on my phone and other laptop. Feedly let's me do that - once I've read something it doesn't appear unread. Is there a way to sync Elfeed's feed across multiple devices?

    • jcs

      You can sync between devices pretty easil (using Dropbox, say, or some other synchronization software) but there isn't really a good remote solution. If you're on Android there appears to be a way but not for iOS, as far as I can tell.

      Take a look at Mike Zamansky's videos or the Pragmatic Emacs posts that he links to for more details.

  • elfeed doesn't integrate with org-capture which annoys me. Easy enough to fix, though:

    ```
    (defun elfeed-entry-as-html-link ()
    "Store an http link to an elfeed entry"
    (when (equal major-mode 'elfeed-show-mode)
    (let ((description (elfeed-entry-title elfeed-show-entry))
    (link (elfeed-entry-link elfeed-show-entry)))
    (org-store-link-props
    :type "http"
    :link link
    :description description))))
    (org-link-set-parameters "elfeed" :follow #'browse-url :store #'elfeed-entry-as-html-link)
    ```