5a061b3813
Start to isolate the list of packages. Also we want to define packages function at the top level of an elisp file in order to not prevent emacs from knowing where the functions are defined. This commit has a POC made with elfeed and elixir layers. |
||
---|---|---|
.. | ||
img | ||
config.el | ||
packages-config.el | ||
packages.el | ||
README.org |
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 configuration layer, add it to your ~/.spacemacs
. You will need to
add elfeed
to the existing dotspacemacs-configuration-layers
list in this
file.
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)