File: org-feed.el.html
This module allows entries to be created and changed in an Org mode
file triggered by items in an RSS feed. The basic functionality
is geared toward simply adding new items found in a feed as
outline nodes to an Org file. Using hooks, arbitrary actions can
be triggered for new or changed items.
Selecting feeds and target locations
------------------------------------
This module is configured through a single variable, org-feed-alist.
Here is an example, using a notes/tasks feed from reQall.com.
(setq org-feed-alist
'(("ReQall"
"http://www.reqall.com/user/feeds/rss/a1b2c3....."
"~/org/feeds.org" "ReQall Entries")
With this setup, the command M-x org-feed-update-all will
collect new entries in the feed at the given URL and create
entries as subheadings under the "ReQall Entries" heading in the
file "~/org/feeds.org". Each feed should normally have its own
heading - however see the :drawer parameter.
Besides these standard elements that need to be specified for each
feed, keyword-value pairs can set additional options. For example,
to de-select transitional entries with a title containing
"reQall is typing what you said",
you could use the :filter argument:
(setq org-feed-alist
'(("ReQall"
"http://www.reqall.com/user/feeds/rss/a1b2c3....."
"~/org/feeds.org" "ReQall Entries"
:filter my-reqall-filter)))
(defun my-reqall-filter (e)
(if (string-match "reQall is typing what you said"
(plist-get e :title))
nil
e))
See the docstring for org-feed-alist for more details.
Keeping track of previously added entries
-----------------------------------------
Since Org allows you to delete, archive, or move outline nodes,
org-feed.el needs to keep track of which feed items have been handled
before, so that they will not be handled again. For this, org-feed.el
stores information in a special drawer, FEEDSTATUS, under the heading
that received the input of the feed.
Acknowledgments
---------------
org-feed.el is based on ideas by Brad Bozarth who implemented a
similar mechanism using shell and awk scripts.
Defined variables (8)
org-feed-after-adding-hook | Hook that is run after new items have been added to a file. |
org-feed-alist | Alist specifying RSS feeds that should create inputs for Org. |
org-feed-before-adding-hook | Hook that is run before adding new feed items to a file. |
org-feed-buffer | The buffer used to retrieve a feed. |
org-feed-default-template | Template for the Org node created from RSS feed items. |
org-feed-drawer | The name of the drawer for feed status information. |
org-feed-retrieve-method | The method to be used to retrieve a feed URL. |
org-feed-save-after-adding | Non-nil means save buffer after adding new feed items. |
Defined functions (16)
org-feed-add-items | (POS ENTRIES) |
org-feed-format-entry | (ENTRY TEMPLATE FORMATTER) |
org-feed-get-feed | (URL) |
org-feed-goto-inbox | (FEED) |
org-feed-goto-inbox-internal | (FILE HEADING) |
org-feed-make-indented-block | (S N) |
org-feed-parse-atom-entry | (ENTRY) |
org-feed-parse-atom-feed | (BUFFER) |
org-feed-parse-rss-entry | (ENTRY) |
org-feed-parse-rss-feed | (BUFFER) |
org-feed-read-previous-status | (POS DRAWER) |
org-feed-show-raw-feed | (FEED) |
org-feed-skip-http-headers | (BUFFER) |
org-feed-update | (FEED &optional RETRIEVE-ONLY) |
org-feed-update-all | () |
org-feed-write-status | (POS DRAWER STATUS) |