diff options
Diffstat (limited to 'content/emacs/moving-my-rss-reading-to-emacs-with-elfeed.md')
-rw-r--r-- | content/emacs/moving-my-rss-reading-to-emacs-with-elfeed.md | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/content/emacs/moving-my-rss-reading-to-emacs-with-elfeed.md b/content/emacs/moving-my-rss-reading-to-emacs-with-elfeed.md deleted file mode 100644 index a713400..0000000 --- a/content/emacs/moving-my-rss-reading-to-emacs-with-elfeed.md +++ /dev/null @@ -1,80 +0,0 @@ -+++ -title = "Emacs: Moving My RSS Reading to Elfeed" -author = ["MichaĆ Sapka"] -date = 2023-05-19T23:00:00+02:00 -categories = ["emacs"] -draft = false -weight = 2004 -abstract = "Setting up config inside an org file" -aliases = ["/2023/moving-my-rss-reading-to-emacs-with-elfeed/"] -[menu] - [menu.emacs] - weight = 2004 - parent = "guides" - identifier = "elfeed" - name = "Following RSS with Elfeed" -+++ - -Since Emacs became my shell of choice[^fn:1], I am abandoning more and more dedicated applications in favor of different packages. -As it turns out, Emacs packages are very feature rich. -This time: I moved my RSS reading from newsboat[^fn:2] to elfeed[^fn:3]. - -Elfeed has very simple keybindings: - -- g will refresh the items list -- G will refresh the items list and fetch new items -- r will mark currently selected item is read (remove unread tag)[^4] -- b will open item in the browser - -One huge upside of elfeed compared to newsboat is image support. -Emacs is a GUI application, so all images are present in their glory! - -{{< img-c "elfeed-details.png" >}} -Images! -{{< /img-c >}} - -My setup is near stock. -I have a few dozen feeds that are auto-tagged. -Three essential tags are "important", "news", and "company". -I want to read each "important", then I want to see all normal, and finally I can just skim "news" and "company". -Adding auto-tagging is very simple: just define the tag when defining the RSS feed list: - -```emacs-lisp -("https://rubenerd.com/feed/" blog important) -("https://www.pine64.org/feed/" company) -``` - -Now, each new article will be tagged with matching tags. -Elfeed allows to define of custom faces that will be applied to items matching tag[^fn:4]: - -```emacs-lisp -(defface important-elfeed-entry - '((t :foreground "#f77")) - "Marks an important Elfeed entry." - :group 'elfeed) - -(defface nonimportant-elfeed-entry - '((t :foreground "#C0C0C0")) - "Marks an nonimportant Elfeed entry." - :group 'elfeed) - -(push '(important important-elfeed-entry) - elfeed-search-face-alist) -(push '(company nonimportant-elfeed-entry) - elfeed-search-face-alist) -(push '(news nonimportant-elfeed-entry) - elfeed-search-face-alist) -``` - -Now important items will be dark red, while company & news will be dark gray - -{{< img-c "elfeed-list.png" >}} -No important things to read at this moment. -{{< /img-c >}} - -Elfeed has a few packages expanding its functionality, but I found the default behavior to be exactly right. - -[^fn:1]: [Emacs as a Shell](/2023/emacs-as-a-shell/) -[^fn:2]: [Newsboat homepage](https://newsboat.org/) -[^fn:3]: [Elfeed repository on Github](https://github.com/skeeto/elfeed) -[^fn:4]: my elisp-fu not good |