newsticker.el - A Newsticker for Emacs.


Newsticker provides a newsticker for Emacs. A newsticker is a thing that asynchronously retrieves headlines from a list of news sites, prepares these headlines for reading, and allows for loading the corresponding articles in a web browser.

Headlines consist of a title and (possibly) a small description. They are contained in "RSS" (RDF Site Summary) or "Atom" files.

Newsticker should work with the following RSS formats:

as well as the following Atom formats:

That makes Newsticker.el an "Atom aggregator", "RSS reader", "RSS aggregator", and "Feed Reader".

Newsticker provides several commands for reading headlines, navigating through them, marking them as read/unread, hiding old headlines etc. Headlines can be displayed as plain text or as rendered HTML.

Headlines can be displayed in the echo area, either scrolling like messages in a stock-quote ticker, or just changing.

Newsticker allows for automatic processing of headlines by providing hooks and (sample) functions for automatically downloading images and enclosed files (as delivered by podcasts, e.g.).

Newsticker is part of GNU Emacs (Version 22 and up).

Screen shots

Here are screen shots of version 1.8 and some older screen shots: version 1.7 version 1.6, version 1.5, version 1.4, version 1.3, version 1.0.


Newsticker can be used with GNU Emacs version 21.1 or later as well as XEmacs. It requires an XML-parser (`xml.el') which is part of GNU Emacs. If you are using XEmacs you want to get the `net-utils' package which contains `xml.el' for XEmacs.

Newsticker requires a program which can retrieve files via http and prints them to stdout. By default Newsticker will use wget for this task.


Place Newsticker in a directory where Emacs can find it. Add the following line to your Emacs startup file (`~/.emacs').

(add-to-list 'load-path "/path/to/newsticker/")
(autoload 'newsticker-start "newsticker" "Emacs Newsticker" t)
(autoload 'newsticker-show-news "newsticker" "Emacs Newsticker" t)

Newsticker-mode supports imenu. It allows for navigating with the help of a menu. In order to use this feature you should also add the following.

(add-hook 'newsticker-mode-hook 'imenu-add-menubar-index)

That's it.


The command newsticker-show-news will display all available headlines in a special buffer, called `*newsticker*'. It will also start the asynchronous download of headlines. The modeline in the `*newsticker*' buffer informs whenever new headlines have arrived. Clicking mouse-button 2 or pressing RET in this buffer on a headline will call browse-url to load the corresponding news story in your favourite web browser.

The scrolling, or flashing of headlines in the echo area, can be started with the command newsticker-start-ticker. It can be stopped with newsticker-stop-ticker.

If you just want to start the periodic download of headlines use the command newsticker-start. Calling newsticker-stop will stop the periodic download, but will call newsticker-stop-ticker as well.


All Newsticker options are customizable, i.e. they can be changed with Emacs customization methods: Call the command customize-group and enter `newsticker' for the customization group.

All Newsticker options have reasonable default values, so that in most cases it is not necessary to customize settings before starting Newsticker for the first time.

Newsticker options are organized in the following groups.

Please have a look at the customization buffers for the complete list of options.


This newsticker is designed do its job silently in the background without disturbing you. However, it is probably impossible to prevent such a tool from slightly attenuating your Editor's responsiveness every once in a while.

Byte-compiling newsticker.el is recommended.


newsticker.el is published under the GNU General Public License V2 or later.


The newsticker.el project is hosted at Here is its project page:


Please visit the download page at Savannah for downloading the stable version and the Texinfo manual. The latest stable version is 1.10 (as of 2007-02-06). The corresponding manual is here.

You may try the latest version from the CVS repository, but it could happen that this version shows some unexpected features.