hamacs/ha-feed-reader.org
Howard Abrams 2778151656 Convert to SN Pro font for variable pitch fonts
And let's turn it on in more applications.
2024-02-22 16:57:58 -08:00

267 lines
13 KiB
Org Mode
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#+title: My RSS Feeds
#+author: Howard Abrams
#+date: 2018-08-08 August
#+tags: emacs
A literate programming file for configuring =elfeed= in Emacs.
#+begin_src emacs-lisp :exports none
;;; ha-config --- ElFeed configuration. -*- lexical-binding: t; -*-
;;
;; © 2020-2023 Howard X. Abrams
;; Licensed under a Creative Commons Attribution 4.0 International License.
;; See http://creativecommons.org/licenses/by/4.0/
;;
;; Author: Howard X. Abrams <http://gitlab.com/howardabrams>
;; Maintainer: Howard X. Abrams
;; Created: September 10, 2020
;;
;; This file is not part of GNU Emacs.
;;
;; *NB:* Do not edit this file. Instead, edit the original literate file at:
;; ~/other/hamacs/ha-feed-reader.org
;; Using `find-file-at-point', and tangle the file to recreate this one .
;;
;;; Code:
#+end_src
* Configuring Elfeed
Let's get our feeds from a collection of org mode files. By default, Doom configures =rmh-elfeed-org-files= to [[file:~/Dropbox/org/elfeed.org][elfeed.org]] in =org-directory=, so that will be fine.
#+begin_src emacs-lisp
(use-package elfeed
:init
;; While I would like to share the /status/ of my reads, so ...
(setq elfeed-db-directory "~/dropbox/.elfeed/")
;; While not an elfeed-specific variable, this make reading articles
;; with images easier:
(setq pixel-scroll-precision-mode t)
:general
(:states 'normal :keymaps 'elfeed-show-mode-map
"b" 'elfeed-show-visit
"n" 'elfeed-show-next
"p" 'elfeed-show-prev
"y" 'elfeed-show-yank
"q" 'kill-buffer
"o" 'link-hint-open-link ; This is why this package depends on link-hint:
"Q" 'delete-window)
(:states 'normal :keymaps 'elfeed-search-mode-map
"r" 'ha-elfeed-tag-unread
"R" 'elfeed-search-update--force
"u" 'elfeed-update
"U" 'elfeed-unjam))
(defun ha-elfeed-tag-unread ()
(interactive)
(elfeed-search-untag-all 'unread)
(elfeed-search-update))
#+end_src
Lets turn on non-fixed-width fonts to make everything easier to read:
#+begin_src emacs-lisp :tangle no
(use-package elfeed
:hook (elfeed-show-mode . variable-pitch-mode))
#+end_src
According to Ben Maughan and [[http://pragmaticemacs.com/emacs/to-eww-or-not-to-eww/][this Pragmatic Emacs essay]], we could easily browse an article in the GUI browser instead of EWW with capital B:
#+begin_src emacs-lisp
(use-package elfeed
:config
(defun elfeed-show-visit-gui ()
"Wrapper for elfeed-show-visit to use gui browser instead of eww"
(interactive)
(let ((browse-url-generic-program "/usr/bin/open"))
(elfeed-show-visit t)))
:bind (:map elfeed-show-mode-map
("B" . elfeed-show-visit-gui)))
#+end_src
Quick way to start and jump to my world of feeds.
#+begin_src emacs-lisp
(defun ha-elfeed-persp-start ()
"Create an ELFEED workspace and start my ELFEED client."
(interactive)
(persp-switch "feeds")
(elfeed))
(defun ha-elfeed-persp-switch ()
"Switch to the ELFEED workspace and load the next buffer."
(interactive)
(persp-switch "feeds"))
#+end_src
And some global keys to display them in the =apps= menu:
#+begin_src emacs-lisp
(ha-leader
"a f" '("elfeed switch" . ha-elfeed-persp-switch)
"a F" '("elfeed start" . ha-elfeed-persp-start))
#+end_src
* The Feeds :elfeed:
The [[https://github.com/remyhonig/elfeed-org][elfeed-org]] project configures =elfeed= to read the RSS feeds from an Org file … like this one!
#+begin_src emacs-lisp
(use-package elfeed-org
:after elfeed
:config
(setq rmh-elfeed-org-files (list (f-join hamacs-source-dir "ha-feed-reader.org")))
(elfeed-org))
#+end_src
** Personal :personal:
*** [[http://www.howardism.org/index.xml][Howardisms]] :mustread:
Clearly, I know what I write, but often good to see how it displays elsewhere.
*** [[https://getpocket.com/users/howardabrams/feed/all][Get Pocket Choices]]
Interesting articles I find through various channels gets saved here. Not sure if this is the best approach, but...
** Software Development :dev:
*** Emacs :emacs:
**** [[https://planet.emacslife.com/atom.xml][Planet Emacslife]]
Currently the best [[https://planet.emacslife.com/][Emacs weblog]] as an aggregator of all things Emacscy. Lots of duplication with what I already follow, so I may have trim things down.
**** [[http://planet.emacsen.org/atom.xml][Planet Emacsen]]
Was the best overall [[http://planet.emacsen.org/][Emacs weblog]] (in the traditional sense), but has since been replaced. I'll leave it here for a bit.
**** [[http://sachachua.com/blog/category/emacs-news/feed][Sacha Chua]]
Her curated summary of the world of Emacs is quite helpful (to make sure I don't miss something).
**** [[http://www.masteringemacs.org/feed/][Mickey Petersen]]
Wrote the wonderful book, [[https://www.masteringemacs.org/][Mastering Emacs]].
**** [[https://www.with-emacs.com/rss.xml][With-Emacs]]
Has had some good essays with a bent toward modern updates.
**** [[http://emacshorrors.com/feed.atom][Emacs Horrors Blog]]
Lovely peelings of the onion's layers.
**** [[https://xenodium.com/rss.xml][Álvaro Ramírez]]
**** [[http://pragmaticemacs.com/feed/][Ben Maughan]]
The /Pragmatic Emacs/ blog.
**** [[http://endlessparentheses.com/atom.xml][Endless Parentheses]]
Artur Malabarba's blog mostly about Emacs.
**** [[http://emacs-fu.blogspot.com/feeds/posts/default][Emacs Fu]]
As [[http://emacs-fu.blogspot.com/2008/12/welcome-to-emacs-fu.html][stated here]], a blog mostly dedicated to Emacs tips and tricks.
**** [[http://emacsredux.com/atom.xml][Emacs Redux]]
Bozhidar Batsov's [[http://emacsredux.com][Emacs-focused blog]]. While it hasn't been updated in about a year (end of 2017), we'll leave it here, as well as his newer, personally-focused blog.
**** [[http://nullprogram.com/feed/][Christopher Wellons]]
The /null program/ blog, has discussed technical aspects of Emacs, including the use of =elfeed=, which is my current favorite way to read my RSS feeds.
**** [[http://www.lunaryorn.com/feed.atom][Sebastian Wiesner]]
A personal blog of a Scala engineer that uses Emacs on MacOS.
**** [[http://kitchingroup.cheme.cmu.edu/blog/feed/atom][John Kitchin Group]]
**** [[http://orgmode.org][Org Mode Announcements]]
**** [[http://yqrashawn.com/feeds/lazyblorg-all.atom_1.0.links-and-teaser.xml][infin]]
While just starting out, this blogger from China is off to a good start.
**** [[http://mbork.pl/?action=rss][Marcin Borkowski]]
The Emacs Polish professor and author of =mbork.pl=, and new book on intermediate Lisp programming.
**** [[https://irreal.org/blog/?feed=rss2][Irreal]]
Jon Sander's blog mostly on Emacs.
**** [[https://oremacs.com/atom.xml][(or emacs]]
**** [[https://tsdh.org/rss.xml][Tassilo Horn]]
A self-proclaimed Emacs addict and Free Software enthusiast from Koblenz, Germany. While the blog is currently short, I have high hopes.
**** [[https://emacstil.com/feed.xml][Emacs TIL]]
An Emacs-learning blog by Junji Zhi.
**** [[https://lepisma.xyz/atom.xml][(car nil)]]
Abhinav Tushar's blog is heavily Emacs and org-focused.
**** [[https://olddeuteronomy.github.io/index.xml][Emacs Cat]]
A new blog about Emacs.
*** Programming :programming:
**** [[http://swannodette.github.com/atom.xml][David Nolen]] :clojure:clojurescript:
While he hasn't updated the blog in a while, keep an eye on his [[http://swannodette.github.com][Github projects]].
**** [[http://gigasquidsoftware.com/atom.xml][Carin Meyer]] :clojure:
Thoughtful and inspirational, her creative projects are always fun to explore.
**** [[http://blog.fogus.me/feed/][Mike Fogus]] :clojure:clojurescript:
/Send More Paramedics/ blog. Wrote /Functional JavaScript/ and, of course, /The Joy of Clojure/.
**** [[http://batsov.com/atom.xml][Bozhidar Batsov]] :ruby:cider:emacs:
Most prolific engineer, who ran [[http://emacsredux.com][Emacs Redux]], is the principal mind behind the wonderful Cider project.
**** [[https://medium.com/feed/@hlship/][Howard Lewis Ship]] :clojure:
Personal friend who often has fun interesting projects to keep tabs.
**** [[https://cestlaz.github.io/rss.xml][C'est la Z]]
Mike Zamansky's posts on Emacs and computer education.
*** Other
**** [[https://livelaugh.blog/rss][Jenn Schiffer]]
Quirky and fun. Looking forward to her new project.
**** [[http://n-gate.com/index.atom][N-Gate's Webshit Weekly]]
Irreverent and fun. The summary is hilarious, and often sets my mental state correctly before diving into Hacker News.
**** [[http://feeds.feedburner.com/InformationIsBeautiful][Information is Beautiful]]
David McCandless' blog on graphical display of information.
**** [[http://www.filfre.net/feed/][Digitial Antiquarian]]
History of technology that is well researched and personal.
** Science :science:
Do I need more science articles? Perhaps, but most of my news in this arena comes from my Twitter lists...
*** Space
**** [[https://apod.nasa.gov/apod.rss][NASA's Picture of the Day]] :images:
**** [[http://feeds.feedburner.com/out-there?format=xml][Discover Magazine's Out There]]
A pretty good blog of interesting articles that post about once a month.
*** General
**** [[http://understandinguncertainty.org/rss.xml][Understanding Uncertainty]]
Essays on the mathematics of combinatorics.
**** [[http://sciencesushi.com/feed/][Science Sushi]]
An interesting blog from [[http://www.discovermagazine.com][Discover]] that has moved on with retirement. Hopefully, Dr. Christie Wilcox will continue writing.
**** [[http://feeds.feedburner.com/SeriouslyScience?format=xml][Seriously, Science?]]
Another of my favorite science blogs is retiring.
** Geeky :funny:geeky:
*** [[http://xkcd.com/rss.xml][XKCD]]
The penultimate geek cartoon.
*** [[http://www.smbc-comics.com/rss.php][Saturday Morning Breakfast Cereal]]
A daily helping of geeky humor.
*** [[http://feeds.feedburner.com/Foxtrotcom][Foxtrot]]
Regular Sunday features of this long-running comic is now even more geeky
*** [[http://cube-drone.com/rss.xml][Cube Drone]]
Quite geeky.
*** [[http://rockpapercynic.tumblr.com/rss][Rock, Paper, Cynic]]
Oddly drawn, quirky and often geeky.
*** [[http://buttersafe.com/feed/][Buttersafe]]
Odd and quirky.
*** [[http://www.dorktower.com/feed/][Dork Tower]]
A geeky, gaming-theme comic.
*** [[http://www.commitstrip.com/en/feed/][Commit Strip]]
Insightful coding strip.
*** [[http://phdcomics.com/gradfeed.php][PHD Comics]]
Sure, make me wish I had continued my studies...
** Political :funny:political:
*** [[https://www.politicalirony.com/feed/][Political Irony]]
While Iron Knee requires a break, any time he posts, its a joy.
*** [[http://www.newyorker.com/feed/cartoons/daily-cartoon][New Yorker Cartoons]]
Often political, hopefully more political.
*** [[http://feeds.feedburner.com/ScenesFromAMultiverse][Scenes From A Multiverse]]
** Smart and Irreligious :funny:
*** [[http://pbfcomics.com/feed/feed.xml][Perry Bible Fellowship]]
Smart, inventive and usually hilarious
*** [[https://www.comicsrss.com/rss/lio.rss][Lio]]
I've used to enjoy this comic years ago, but had lost track. Love that Mark is still doing work.
*** [[http://feeds.feedburner.com/oatmealfeed][The Oatmeal]]
While funny, sometimes blesses with longer thought pieces.
*** [[https://warandpeas.com/feed/][War and Peas]]
*** [[http://existentialcomics.com/rss.xml][Existential Comics]]
Philosophical, and one would be smarter just by following along (and the Twitter feed too).
*** [[http://www.venganza.org/feed/atom/][Church of the Flying Spaghetti Monster]]
News from the world of religious favoritism.
*** [[http://theatheistpig.com/index.php/feed/][Atheist Pig]]
Irreligious, as one can guess. Hasn't posted for a while. Break?
*** [[http://www.jesusandmo.net/feed/atom/][Jesus and Mo]]
Favorite celebrities arguing with Bar Maid.
** Role Playing Games :rpg:dnd:
Interested in both RPGs and Emacs? Probably.
*** [[https://slyflourish.com/index.xml][Sly Flourish]]
*** [[https://dmdavid.com/feed/][DM David]]
*** [[https://www.themonstersknow.com/feed/][The Monsters Know what they are Doing]]
*** [[https://roleplayingtips.om/feed/][Roleplaying Tips]]
** Misc :misc:
*** [[https://medium.com/feed/the-long-now-foundation][The Long Now]]
Always been fascinated with the ideas associated with making a 10,000 year clock.
*** [[https://waitbutwhy.com/feed][Wait, But Why?]]
Has some good, thought-provoking essays.
* Technical Artifacts :noexport:
Let's /provide/ a name so we can =require= the file:
#+begin_src emacs-lisp :exports none
(provide 'ha-feed-reader)
;;; ha-feed-reader.el ends here
#+end_src
#+DESCRIPTION: A literate programming file for configuring elfeed.
#+PROPERTY: header-args:sh :tangle no
#+PROPERTY: header-args:emacs-lisp :tangle yes
#+PROPERTY: header-args :results none :eval no-export :comments no
#+OPTIONS: num:nil toc:t todo:nil tasks:nil tags:nil date:nil
#+OPTIONS: skip:nil author:nil email:nil creator:nil timestamp:nil
#+INFOJS_OPT: view:nil toc:t ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js