5.3 KiB
Elfeed layer
Description
This layer enables Elfeed, a web feeds client which supports both Atom and RSS
feeds. It'll optionally enable supporting packages, such as elfeed-web
and
elfeed-org
.
Install
Layer
To use this layer, add it to your ~/.spacemacs
(setq-default dotspacemacs-configuration-layers '(elfeed))
By default, elfeed
stores its database under ~/.elfeed
.
Setup feeds
With Org
It is recommended to manage your feeds list and tags via org files, this is possible thanks to elfeed-org package. To define a list of org files:
(elfeed :variables rmh-elfeed-org-files (list "~/.emacs.d/private/elfeed1.org"
"~/.emacs.d/private/elfeed2.org"))
Checkout elfeed-org documentation to see the format of that file.
Here is an example of such a file (note the usage of org tags to tag your feeds)
* Blogs :elfeed:
** entry-title: \(linux\|linus\|ubuntu\|kde\|gnome\) :linux:
** http://git-annex.branchable.com/design/assistant/blog/index.rss :mustread:
** http://feeds.feedburner.com/InformationIsBeautiful
** [[http://orgmode.org][Org Mode Links supported as well]]
** Software Development :dev:
*** Emacs :emacs:mustread:
**** http://www.terminally-incoherent.com/blog/feed
**** http://nullprogram.com/feed
**** entry-title: \(emacs\|org-mode\)
**** http://planet.emacsen.org/atom.xml
*** Web Development :web:
**** http://planet.phpunit.de/atom.xml
**** http://feeds.feedburner.com/symfony/blog
**** http://feeds.feedburner.com/qooxdoo/blog/content
*** Eclipse :eclipse:
**** http://blog.eclipse-tips.com/feeds/posts/default?alt=rss
**** http://ed-merks.blogspot.com/feeds/posts/default
**** http://feeds.feedburner.com/eclipselive
**** http://www.fosslc.org/drupal/rss.xml :video:
Manually
To explicitly setup the list of feeds, set the value of elfeed-feeds
variable
in your .spacemacs
file.
(elfeed :variables
elfeed-feeds '(("http://nullprogram.com/feed/" blog emacs)
"http://www.50ply.com/atom.xml" ; no autotagging
("http://nedroid.com/feed/" webcomic))))
Check documentation for elfeed-feeds
for more information about this variable
(SPC h d v elfeed-feeds RET
).
Server
Elfeed comes with a simple web interface to browse its database. You can manually
start it by calling elfeed-web-start
or by setting elfeed-enable-web-interface
to t
which will start the web automatically when Emacs starts.
(elfeed :variables elfeed-enable-web-interface t)
By default web interface is available on localhost:8080/elfeed. You can change
the default port by changing the value of httpd-port
.
Key Bindings
Key Binding | Description |
---|---|
SPC a f |
start elfeed |
Use SPC ?
to discover major-mode key bindings.
Key Binding | Description |
---|---|
c |
compact feed db |
gr |
update all the feeds |
gR |
force refresh view of the feed listing |
gu |
unjam elfeed if it is slow due to slow connection |
o |
load OPML |
q |
quit main window, or item view buffer. |
w |
start web server |
W |
stop web server |
In elfeed-show
mode, you can use the following bindings:
Key Binding | Description |
---|---|
q |
quit show window |
C-j |
Next entry |
C-k |
Previous entry |
Troubleshooting
Database empty at first start
Be sure that you added some feeds first then load your feeds with gr
in evilified buffer. Or M-x elfeed-update
.
Queue timeout exceeded
If you are getting "Queue timeout exceeded" errors, try increasing
the value of url-queue-timeout
.
(elfeed :variables url-queue-timeout 30)