---
name: "raggle"
section: "1"
platform: "linux"
package: "raggle"
version: "0.4.4-3"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/raggle"
---

# raggle(1)

Console RSS aggregator.

## NAME

raggle - Console RSS aggregator.

## SYNOPSIS

**raggle** \[**-aAhlvV**\]  \[**--add** \[*url*\]\]  \[**--ascii**\] \[**--default-config**\] \[**--diag**\] \[**--force**\]  \[**--help**\]  \[**--list**\] \[**--lock-title**\] \[**--purge**\]  \[**--save-items**\] \[**--server** \[*port*\]\] \[**--sort**\] \[**--unlock-title**\] \[**--unsave-items**\] \[**--usage**\] \[**--verbose**\] \[**--version**\] \[**-c** *file*\] \[**--config** *file*\] \[**-d** *feed*\] \[**--delete** *feed*\] \[**-e** *feed*\] \[**--edit** *feed*\] \[**--export-opml** *file*\] \[**-f** *string*\] \[**--find-feeds** *string*\] \[**--import-opml** *file*/*uri*\] \[**-i** *feed*\] \[**--invalidate** *feed*\] \[**--max** *num*\] \[**-p** *priority*\] \[**--priority** *priority*\] \[**-r** *refresh\_time*\] \[**--refresh** *refresh\_time*\] \[**-t** *title*\] \[**--title** *title*\] \[**-u** *url*\] \[**--url** *url*\] \[**--U** *feed*\] \[**--update** *feed*\]

## DESCRIPTION

**raggle** is a curses-based RSS aggregator.

The following options are available:

- **-a** \[*url*\] **--add** \[*url*\]

  Add a new feed.  You can optionally specify *url*, otherwise it requires **--url**.

- **-A** **--ascii**

  Use ASCII graphics for windows.

- **-c** *file* **--config** *file*

  Use *file* as an alternate configuration file.

- **-d** *feed* **--delete** *feed*

  Delete *feed* from the feed list.

- **--default-config**

  Print out the default configuration of Raggle in a format suitable for your config.rb file.

- **--diag**

  Print out full stack traces, and other diagnostic information intended for bug hunting.

- **-e** *feed* **--edit** *feed*

  Edit *feed*'s information.

- **--export-opml** *file*

  Export all feeds to *file* in OPML format.

- **-f** *string* **--find** *string*

  Find a feed containing *string* (uses Syndic8).

- **--force**

  Force an edit/addition to succeed even if it wants to do things that are generally unwise.

- **-h** **--help** **--usage**

  Show usage information.

- **--import-opml** *file*/*uri*

  Import feeds from an OPML format *file* or *uri*.

- **-i** *feed* **--invalidate** *feed*

  Invalidate *feed* (force it to be refreshed). If -1 is given as *feed* then all feeds are updated.

- **-l** **--list**

  List current feeds.  Use -v or --verbose to display extra info.

- **--lock-title**

  Lock the title of a feed (blocks updating of a feed's title from data in the feed itself), used with **--add** or **--edit**.

- **--max** *num*

  Set the maximum number of items in a feed to *num*.  Automatically sets --save-items.

- **-p** *priority* **--priority** *priority*

  Set the feed priority to *priority*.  0 is the default, higher values will sort a feed closer to the top.

- **--purge**

  Purge deleted feeds from the feed cache.

- **-r** *refresh\_time* **--refresh** *refresh\_time*

  Set a feed's refresh time to *refresh\_time*; used with **--add** or **--edit**.

- **--save-items**

  Save all old items from a feed rather than replacing them with newly fetched ones; used with **--add** or **--edit**.

- **--server** \[*port*\]

  Run Raggle in HTTP server mode, optionally specifying a *port*.

- **--sort**

  Sort feed list by priority then by title, case-insensitive.

- **-t** *title* **--title** *title*

  Set a feed's title to *title*, used with **--add** or **--edit**.

- **--unlock-title**

  Reverse the actions of **--lock-title**, causing it to be updated from the title stored in the RSS feed; used with **--add** or **--edit**.

- **--unsave-items**

  Reverse the actions of **--save-items**, cause old items to be removed from the feed cache; used with **--add** or **--edit**.

- **-U** *feed* **--update** *feed*

  Update the specified feed (or *all* for all feeds).

- **-u** *url* **--url** *url*

  Set the URL from which to retrieve a feed to *url*, used with **--add** or **--edit**.

- **-v** **--verbose**

  Turns on verbose output, displaying extra info on the command line.

- **-V** **--version**

  Show **raggle** version.

## KEYS: MOTION

- *F12*, *q*

  Quit **raggle**

- *Right Arrow*, *Tab*, *l*

  Move to the next window.

- *Left Arrow*, *h*

  Move to the previous window.

- *Up Arrow*, *k*

  Scroll up.

- *Down Arrow*, *j*

  Scroll down.

- *End*, *$*, *G*

  Scroll to bottom.

- *Home*, *0*, *g*

  Scroll to top.

- *PageUp*

  Scroll up one page.

- *PageDown*

  Scroll down one page.

## KEYS: INTERACTION

- *Return*, *Space*

  Select item.

- *o*

  Open the current feed or item's link in your browser.

- *1* through *9*

  Open a link from the current story in your browser.  Link numbers are given at the bottom of the description window.

- *u*

  Move item up.

- *d*

  Move item down.

- *a*

  Add a feed.  Will add the currently selected feed after a search via *f*, otherwise you will be prompted for the address.

- *O*

  Import or export an OPML copy of your feed list.  If the given name is an existing file or a URI, it will be imported; otherwise, a new OPML file will be created with the given name.

- *e*

  Edit the current feed's options to your liking.

- *I*

  Invalidate the current feed, causing a refresh.

- *Delete*

  Delete feed or item.

- *y*

  Undelete all items in the current feed.

- */*

  Find an entry.

- *f*

  Search for a feed via Syndic8.

- *p*

  Select previous unread item.

- *n*

  Select next unread item.

- *m*

  Mark all items as read.

- *M*

  Mark all items as unread.

- *N*

  Mark current item as unread.

- *s*

  Sort list.

- *r*

  Lower the current feed's sorting priority.

- *R*

  Raise the current feed's sorting priority.

- *c*

  Select a feed category to view.

- *C*

  Close the current window.

## KEYS: SYSTEM

- *!*

  Run a shell in the foreground (exit from it to get back to **raggle**)

- *?*

  Show current key bindings.

- *\\*

  View item source.

- *U*

  Start a manual update of feeds.

- *S*

  Start a manual save of feeds and configuration.

- *C-l*

  Redraw the screen.

## EXAMPLES

Add a feed called "Bar" updating every 2 hours.\
     $ raggle --add -t Bar --url http://foo.com/bar.rss --refresh 120

Add a feed called "Baz" that will sort to the top.\
     $ raggle -a -t "Baz" -u http://foo.com/baz.rss --priority 10

Change the refresh time of the "Bar" feed to update every hour.\
     $ raggle --edit 1 --refresh 60

Don't update feed #1's title from the RSS.\
     $ raggle -e 1 --lock-title

Keep old items associated with feed #16.\
     $ raggle -e 16 --save-items

Update feed #1's title from the RSS info.\
     $ raggle -e 1 --unlock-title

Change the URL of feed #3.\
     $ raggle -e 3 -u http://www.slashdot.org/slashdot.rss

Export all feeds to foo.opml\
     $ raggle --export-opml foo.opml

Import all feeds from foo.opml, and set their refresh time to 90 minutes.\
     $ raggle --import-opml foo.opml -r 90

Import all feeds from foo.opml, and set their refresh time to 90 minutes.\
     $ raggle --import-opml foo.opml -r 90

Find feed matching the string "halffull"\
     $ raggle --find halffull

## ENVIRONMENT

- **BROWSER**

  Used to find a suitable web browser (see **RAGGLE\_BROWSER**).

- **HOME**

  Used to find the Raggle configuration directory.

- **http\_proxy**

  HTTP Proxy server, in the format "http://*host*:*port*/".

- **no\_proxy**

  Comma-delimited list of hosts and domains to connect directly to (only applicable if you're using an HTTP proxy).

- **PATH**

  Used to find a suitable web browser (see **RAGGLE\_BROWSER**).

- **RAGGLE\_BROWSER**

  Path to the web browser Raggle should use when a feed item is  opened.  If **RAGGLE\_BROWSER** isn't set, Raggle checks  **BROWSER**, then looks for common command-line browsers in **PATH**. Note: this behavior can be overridden by setting the 'browser'  config directive in your Raggle configuration file.

- **RAGGLE\_WEB\_DATA**

  Used to find the web interface data files.  If it's not set,  Raggle looks for a directory called "web\_ui" in the configuration  directory.

- **SHELL**

  Shell to launch when invoking a sub-shell.

- **WINDOW**

  Used to determine if Raggle is running in screen.

## BUGS

- **\***

  Pressing Ctrl-C while adding a feed will cause Raggle to exit  unexpectedly, not cancel.

- **\***

  It's possible that feeds.yaml will be mistakenly written as an Array rather than a FeedList for no apparent reason.

- **\***

  Possibly more!  Please report any you find to \<*raggle-dev@raggle.org*\>

## HISTORY

- **raggle** 0.1 was released on 23 Jun, 2003

  - **raggle** 0.2 was released on 17 Aug, 2003

  - **raggle** 0.3 was released on 20 Feb, 2004

  - **raggle** 0.4 was released on 15 Mar, 2005

  ## AUTHORS

- Paul Duncan \<*pabs@pablotron.org*\>,

  - Richard Lowe \<*richlowe@richlowe.net*\>,

  - Ville Aine \<*vaine@cs.helsinki.fi*\>,

  - Thomas Kirchner \<*redshift@halffull.org*\>
