Sfeed is a RSS and Atom parser (and some format programs).
It converts RSS or Atom feeds from XML to a TAB-separated file. There are formatting programs included to convert this TAB-separated format to various other formats. There are also some programs and scripts included to import and export OPML and to fetch, filter, merge and order feed items.
The above screenshot uses the sfeed_plain format program with »dmenu«. This s.org program outputs the feed items in a compact way per line as plain-text to stdout. The dmenu program reads these lines from stdin and displays them as a X11 list menu. When an item is selected in dmenu it prints this item to stdout. A simple written script can then filter for the URL in this output and do some action, like opening it in some browser or open a podcast in your music player.
For example:
#!/bin/sh url=$(sfeed_plain "$HOME/.sfeed/feeds/"* | dmenu -l 35 -i | \ sed -n 's@^.* \([a-zA-Z]*://\)\(.*\)$@\1\2@p') test -n "${url}" && $BROWSER "${url}"
However this is just one way to format and interact with feed items. See also the README for other practical examples.
Below are some examples of output that are supported by the included format programs:
Here are some videos of other people showcasing some of the functionalities of sfeed, sfeed_plain and sfeed_curses. To the creators: thanks for making these!