FeederReader User’s Guide
Document Version 0.41A
© 2004-2005 Greg Smith
FeederReader is a program running on a Windows Mobile Pocket PC used for downloading news, blogs, audio, and video directly to your mobile device. Stay informed and entertained by subscribing (free!) to your personal selection of feeds from millions of text, audio, and video news, blogs, and podcasts available on the internet.
Many sources of information are being formatted as RSS feeds and can be downloaded directly to your Pocket PC using FeederReader. No desktop is required! You can update the feeds when the Pocket PC is connected to the internet (through a LAN, Mobile Phone, or ActiveSync) and read them while offline. This User’s Guide describes the how to use the program and its significant features.
If you’re new to RSS Feeds, you may want to review the Glossary and Objects sections in this manual. For an overview of usage, see the Basic Functions section. To learn what each of the menu items do, see the Menus section. For additional Support, How-To’s, and Tips & Tricks, visit www.FeederReader.com.
Enclosures and Podcasts
Full support for downloading enclosures and all podcasts, audio and video.
Easy Reading
Minimal Controls needed for Reading messages, while keeping track of which ones have already been read.
Large Number of feeds
FeederReader is designed for reading a large number of RSS Feeds on your Mobile Device. Included are tools to read and manage feeds and messages as well as updating multiple feeds at the same time in the background.
Integrated Error Display
See what errors occurred on which feeds, and the type of error.
Message Lock
Keep messages from being deleted.
OPML Import and Export
Save your list of feeds for others to use or import other people’s list of feeds.
6.1 Updating (aka “Downloading”)
11 Per-Feed Options / Properties
Here's the 20-second introduction to FeederReader after
installation:
Step 1: Make sure you can connect to the internet using Pocket Internet
Explorer.
Step 2: Use Do | Update All Feeds to check for new messages.
Step 3: Use Do | Update All Enclosures to download any audio/video enclosures
that were found.
Step 4: Tap the "Down Arrow" to go from message to message.
Step 5: Tap Do | Manual Expire/Delete to mark messages for deletion (messages
won't be deleted completely until they are removed from the feed by the feed
producer).
Step 6: Tap Do | Play | Audio (or Video) to play any fully downloaded podcasts.
If nothing plays, the podcasts are not completely downloaded, so go to step 3.

The major portions of the screen are the List Window and the View Window separated by a Movable Bar. From the bottom are the Main Toolbar, the Status Bar, and (sometimes) the Enclosure Toolbar. You interact with FeederReader by tapping in the List Window, scrolling up and down in the View Window, and tapping the Main Toolbar icons and menus. Each of the major sections of the program are explained in sections below.
This section describes some of the concepts you’ll need when using FeederReader.
An RSS Feed is generally maintained by one person and/or company and contains messages that are published by that person on the internet and then periodically loaded into a news aggregator to be read by you. Although it appears somewhat like e-mail, which is a “push” system, RSS Feeds are a “pull” system where the news aggregator or reader retrieves the RSS Feed from the URL when you tell it to.
This is a single message or news item consisting of a Title, Link, and Text and contained in an RSS Feed. Messages are generally transient items that are loaded from the RSS Feed during an Update, Read by the user, then Expired, and finally Deleted.
This is like an attachment in email. The message may contain one or more audio or video files called an “enclosure”. Generally an enclosure can be of any file type and is generally of a larger size from several kilobytes to many megabytes. Enclosures are downloaded separately from messages or feeds. The “life cycle” of an enclosure is this: download the message (during a feed update), download the enclosure, listen (or view) the enclosure, and finally delete the enclosure.
There are many items throughout the program provided for enclosure support, including:
Menu Items: Update Enclosures (all / by feed / by category), Statistics Enclosures, List Enclosures, Next/Previous Enclosure.
Message Display: display, download, launch enclosures from message display.
Enclosure List: display, download, launch enclosures from a master list.
Queue: Queue just for enclosures. Downloading enclosures does not stop updating feeds. Download while playing, reading, and updating feeds.
Status Display: Separate Remaining display for enclosure queue, Large status box includes details of active enclosure downloads.
Options: Enclosure Tab.
The generic way for specifying a file on the internet. Uniform Resource Locator is the string that identifies the protocol, host, file path, and file name for files on remote hosts. For this program, the URL is in the form http://hostname/filepath/filename.ext and is the format you enter OPML Files or RSS Feeds in the URL box when retrieving New From Web.
An OPML File is a format used for storing a list of RSS Feeds. These files can be saved and loaded between different users for trading favorite RSS Feeds or for transferring lists of RSS Feeds between different programs.
Commute Mode will force FeederReader to only play the same type of enclosure that is currently playing. This works for ANY type of media or enclosure, but is especially powerful with audio only. On the Do | Play menu you can tap to play Audio or Video. This will automatically play that type of enclosure AND turn on Commute Mode. This means that if you tap Audio, the next AUDIO enclosure will play, AND as you type "Next" or "Delete&Next" icons, FeederReader will go to the next AUDIO enclosure. I've used it for two main purposes: 1) during commuting--I only want to hear audio while driving and 2) trying to reduce memory card usage--I want to view all the videos because they're taking more space on my Compact Flash card. It really works well while commuting, hence the name.
Expert Mode will display additional menus and menu items in the main toolbar. Once you have a handle on the basics of FeederReader, turn on Expert Mode to be able to List Enclosures, gather Statistics, view message and feed details and more.
When Manage RSS Feeds is ON, you will see checkboxes next to each item in the List Window. This will allow you to select as many feeds as you want, then move them using the Move To Popup menu item for feeds and categories. You can also use this selection mechanism for various “group” functions like download enclosures and updating feeds.
The main method of Updating feeds is to use the Do | Update All Feeds menu item.
There are several other ways to Update the data from the feeds in the List View. You can select Update All RSS from the Do toolbar menu to update all feeds. Or you can Update Children of an OPML File or Update Parent of any message. In all of these cases, the chosen Feeds are updated in a background thread that allows you to keep reading messages. You can change some of the parameters of Updating in the Tools | Options… toolbar menu. The Status Bar is automatically displayed (if you’ve turned it off) when you begin an Update. The Status Bar contains status messages from the first thread and the Remaining Box counts down the remaining Feeds to be Updated. To see the status of all Update Threads, click the Remaining Box to bring up the Large Status Box. When all Updates are complete, the Remaining Box displays “0” and the List View is updated to reflect any new Messages.
Writing to the Storage folder occurs during almost every step of the Update. The speed of the storage media can drastically affect the overall speed of the Update.
The Update Queue contains the list of RSS Feeds that are being updated. The Connections option in Tools | Options… | Connections Tab controls the number of simultaneous Updates that can occur. When one Update Thread ends, the next RSS Feed in the Update Queue is then started. The Remaining Box displays the number of RSS Feeds in the Update Queue and that are currently being updated. When all Updates in the Queue are completed, the Remaining Box displays 0.
The Status Bar displays the Status of the first Update Thread. This is useful if there is only one RSS Feed being updated. To view the status of all the Update Threads, click the Remaining Box to display the Large Status Box.
Each of the following stages is represented:
"Reading...X" : writing raw file to storage. X
indicates the number of bytes read.
"Parsing Feed X / Y": writing new children to storage as they are parsed.
X is the number of new messages found, Y is the total number messages found in
the feed.
"Saving Attributes..." : writing feed attributes to storage..
"Rewriting Parent with X children" : writing child links to the
parent.
To clear the Update Queue, press the Red X button on the toolbar. This will clear the queue, but not interrupt currently-updating feeds. The Remaining Box reflects the feeds that are remaining. After this "Stop" you can then add more feeds to the queue in a normal manner. In this way, the stop button really acts as a "Clear Queue" button.
You can move around the List View with the DPAD on your device and read different messages. As the List View node is highlighted, the data from that node, or message, is displayed in the HTML View. You can also move to different nodes in the List View through the Next Arrow drop down menu item. This will allow you to go to the next or previous message that is Unread or Expired. Alternatively, you can press the Next Arrow toolbar menu item. This will take you to the next unread message and keep the focus on the HTML View allowing you to use the DPAD to move around the message text. For normal reading, you will likely want to use the Next Arrow. This combined with the DPAD is the fastest way to read all the messages.
When a message is flagged “Expired” it simply means that the message is scheduled for deletion. Messages can be Expired manually by checking the Expire message menu item or entire feeds can be Expired manually by selecting the Expire All feed menu item. Or you can Expire Messages that have been Read. To Expire messages based on the length of time since they were downloaded, you can select Find Expired, and FeederReader will Expire messages that have existed on your device for a certain period of time. You can modify the behavior of message expiring in the Expire tab of the Tools. | Options… dialog. With Options…, you can set Unread Messages to Expire after one period of time, and Read Messages to Expire after a different amount of time.
A Message has elapsed if it did not exist in the last Update of the Feed. You cannot manually modify the Elapsed Flag.
Once you have deleted a message, all data associated with the message are removed. Generally, you will want to delete Expired messages either automatically or manually.
To delete Messages manually, select Do | Manual Expire/Delete. This will automatically find messages to Expire, and then Delete all Expired messages. To set up FeederReader to automatically Expire messages, choose Tools | Options… | Update Tab | During Update Expire/Delete. Messages are deleted if they meet the age criteria specified on the Tools | Options | More toolbar | Keep Tab.
To prevent a message from being deleted, mark a message with the Keep flag. To do this, tap the “Lock” icon on the toolbar while viewing the message.

When enclosures are in the viewed message, the Enclosure Toolbar will be displayed. With the Enclosure Toolbar you can download, play and delete the enclosures.
In addition to the Enclosure Toolbar, you can get specific information about each enclosure from the message window itself. Each message containing an enclosure will have that enclosure listed below the horizontal line at the end of the message text. Each enclosure will display in the following format:
XX% A_B_C.ext d,ddd,ddd/tt,ttt,ttt
URL
Last Return Codes: rrrrr
XX% : the current percentage downloaded. Clicking this percentage number places the enclosure in the download queue.
A_B_C.ext : the filename of the enclosure data and .ext is the extension of the file. The original file extension from the URL is retained on the file for players or viewers that require it. Clicking this filename will play the file. The program used to play the file is that which is registered in the Registry for playing that file type.
d,ddd,ddd : the current downloaded size of the file, in bytes.
tt,ttt,ttt : the total size of the file, as indicated in the enclosure information.
URL : the full URL of the enclosure file.
rrrrr : the http result codes from the last download from the web.
Here’s an example:
45% 3_13_1.mp3 7,120,790/12,222,694
http://homepage.mac.com/adamcurry/DSC/DSC-2004-11-22.mp3
Last Return Codes: Success
Most of the
time, you will download enclosures by selecting Do | Update All Enclosures
from the Main Toolbar. This will download all enclosures of all feeds and
messages. You can also download specific enclosures by viewing the message
containing the enclosure and tapping the Download icon. This will put the
enclosures of the current message into the download queue.
There are several easy ways to view enclosures. If you just start the program and want to listen to the first audio podcast that has already been downloaded, tap Do | Play | Audio. You can select Video to play the first videocast.
![]()
If you want to listen to or view the enclosure of the message you are currently reading, tap the Play icon in the Enclosure Toolbar. If you want to play the first downloaded enclosure in a specific feed, select the feed in the List View, then tap the Play button and FeederReader will find the first downloaded enclosure.
If you want to
listen to or view the next enclosure after finishing the current one, just tap
the Expire Then Play Next icon. With one tap, this will delete the current (or
last) enclosure and begin the next one. You can use it for audio or video or
both. In Commute Mode, this will continue playing the same type of enclosure.
This is the “all purpose” enclosure icon.
You can force FeederReader to launch a specific downloaded (or partially downloaded) enclosure by tapping the filename within the Message View as described in “Enclosure Display” above.
Enclosure data files are deleted when the message is expired. For details of how to expire messages automatically or manually, see Expiring.
![]()
The
easiest way to delete the enclosure after you just finish listening or viewing
it is to tap the Expire Then Play Next button, which gives you “One-Tap” file
management. Or you can select the message in the List View and tap the Delete
icon on the Enclosure Toolbar.
List WindowThe List Window allows you to quickly traverse the Messages and Feeds available for viewing. The selected Node is displayed in the View Window. When both the List Window and the View Window are displayed, you can tap and drag the line between them to display more or less of each window. The List Window also displays the status of each of the Feeds and Messages. For the Feeds, the icon shows the last error encountered during an Update. For Messages, the icon displays the Flag associated with the Message.
There are several sets of icons depending on whether the List element is a Feed, OPML File, Category, or a Message.
These indicate the type of List Element this is, whether RSS Feed or OPML File if no error has occurred.
|
|
OPML File or Category |
|
|
RSS Feed |
|
|
Unspecified, (also see message icons below) |
This icon set indicates the last error that occurred on the OPML File or RSS Feeds. To see the specific error text, you can tap the Show Errors link in the View Window, or select Display | View Window | Errors from the toolbar. If the last update occurred successfully, you will not see these icons, but the error text from previous errors is still available.
|
|
Error During Initial Connection |
|
|
IO Error During Retrieval |
|
|
Web Error During Retrieval |
|
|
Other Error During Retrieval |
|
|
Error XML Parsing |
|
|
Error Unspecified |
|
|
Error Unspecified |
|
|
File Not Found Error or |
|
|
|
|
|
Web Timeout Error |
|
|
Web Connection or Authorization Error |
The most common errors are connection related. The “H” error in particular occurs when you are not connected to the internet. When this occurs, check your internet connection. If it appears to be connected, make sure you can view web pages with Pocket Internet Explorer. If there still is a problem, you may be using a Proxy that requires Authentication. A few devices from certain manufacturers do not pass Proxy Authentication information to FeederReader. If this seems to be occurring, please post on the FeederReader Forums.
If you see the “Red Circle”, it may be time to try a recovery. First, try to exit and restart FeederReader, then post on the FeederReader Forums for more help.
"F" means some sort of file failure in the storage
area that prevents FR from
retrieving the data. This could result in lost messages, feeds, or flags. This
may be occurring because of corrupted flash memory. Try again to exit and
restart FeederReader. You may need to re-enter the URL for the affected feed.
Generally, "C", “H”, and the “Yellow Clock” are connection-related
errors having to do with your specific internet connection, or unable to find
host, or timeout, etc. “IO” could be connection-related or a
file-storage-related error.
"X" is an XML parsing error. Make sure that the feed validates by tapping the “Validate Feed (Online)” while connected to the internet and review any error messages. Most likely you will see a similar message as the Show Errors will show you. You can email the feed producer to let him/her know of the error, or post on the FeederReader Forums for additional help.
You can get a summary of all errors in all feeds by going to Expert Mode and selecting Tools | Statistics | Errors. This is a good way to get a general idea how well the last update went.
Only one icon is displayed. They will appear in the order shown in the table. For instance, if a Message is marked Keep then it will display the lock regardless of the status of other flags. If a Message is marked Expired and Elapsed, then only the Expired icon is displayed.
|
|
Message Keep |
|
|
Message Expired |
|
|
Message Enclosure “On Hold” |
|
|
Audio Enclosure Read/Unread |
|
|
Video Enclosure Read/Unread |
|
|
Image Enclosure Read/Unread |
|
|
Other Enclosure Read/Unread |
|
|
Message Unread |
|
|
Message Elapsed |
|
|
(blank) Message Read |
The View Window displays data from the selected element in the List Window. This is where you read each of the Messages. The Display | View Window toolbar menu (when in Expert Mode) allows you to change what is displayed in this window, including viewing the Raw File from the feed, or the Raw HTML generated by FeederReader.
The Status Bar
displays various messages during Updating Children or reading messages. While
Updating Children, the status of the first Updating thread is displayed. To
determine the status of more than one thread, use the Large Status Box. On the
right side of the Status Bar, the number of items in Update Queue and the
Enclosure Queue are shown on the right side of the Status Bar.. On the left
side of the Status Bar is displayed the number of warning messages. Tapping on
the number of Warning Messages brings up the Warning List. Tapping on any other
part of the Status Bar brings up the Large Status Box.
The Feed Queue Box is on the right of the Status Bar. It displays the number of Feeds left to download. This number decreases as feeds are updated in the background.
The Enclosure Queue Box is in the right corner of the Status Bar next to the Feed Queue Box. It displays the number of Enclosures left to download. This number decreases as enclosures are updated in the background.
The Large Status Box displays the status of all Updating
threads. It is toggled by tapping on the Remaining Box. For more details of the
Large Status Box, See the Update Queue.
Warning ListThe Warning List displays, in chronological order, the warnings that have occurred in the recent past. At the top of the Warning List are the oldest messages. You can dismiss them one at a time using the Dismiss button or you can Tap-and-Hold on a specific message to delete that message and all prior messages.
This is displayed only during a New from Web command. To the right of the URL Box is either an OPML button or an RSS button, depending on which type of file will be retrieved. When the button is pressed, it and the URL Box disappear behind the List View. To remove the URL Box without downloading a new Feed, tap the X.
The Play
icon plays the enclosure of the currently selected message if there is one. If
not, then the Play icon will play the first enclosure it finds starting with
the currently selected node in the list view.
The Play Next
icon plays the first enclosure it finds after the currently playing enclosure.
The Goto
Playing icon selects the message of the currently-playing enclosure.
The Download
icon will put enclosures of the current message into the download queue.
The Expire
icon will expire the currently selected message, which also deletes the
enclosure.
The Expire
then Play Next icon will expire the currently-playing (or just-finished)
enclosure and begin to play the next enclosure.
The
Stop Enclosure Queue icon will remove all enclosures from the Download queue
and stop the current downloads.
Do
Update All Feeds
Add all RSS Feeds to the Update Queue.
Update All Enclosures
Add all enclosures, that are not at 100%, to the Enclosure Queue.
Manual Expire/Delete
Traverse the elements in the List View and mark messages as Expired that match the Options… | Item toolbar | Keep Tab settings and delete all messages that are Expired and Elapsed.
Play
Audio
Play the first audio enclosure found starting from the message currently being viewed.
Video
Play the first video enclosure found starting from the message currently being viewed.
Commute Mode
Toggle Commute Mode. Commute Mode will force FeederReader to only play the same type of enclosure that is currently playing. This works for ANY type of media or enclosure, but is especially powerful with audio only. On the Do | Play menu you can tap to play Audio or Video. This will automatically play that type of enclosure AND turn on Commute Mode. This means that if you tap Audio, the next AUDIO enclosure will play, AND as you type "Next" or "Delete&Next" icons, FeederReader will go to the next AUDIO enclosure. I've used it for two main purposes: 1) during commuting--I only want to hear audio while driving and 2) trying to reduce memory card usage--I want to view all the videos because they're taking more space on my Compact Flash card. It really works well while commuting, hence the name.
Tools
File
Add RSS Feed
Display the URL Box to allow the entry of a URL locating an RSS File. After entering the URL, tap the RSS Button.
Import Online OPML
Display the URL Box to allow the entry of a URL locating an OPML File. After entering the URL, tap the OPML Button.
New Category
Add a new category in which you can put RSS feeds.
Save as OPML
Save all feeds as an OPML file.
Read OPML File
Display the File Dialog to allow the selection of an OPML File.
Read RSS File
Display the File Dialog to allow the selection of an RSS File.
Options…
Display the Options… dialog that allows you to change the behavior of Updating and Expiring messages.
Expert Mode
Toggles Expert Mode.
Auto Update
Toggles Automatic Update Mode
Manage RSS Feeds
Toggles Manage RSS Feeds Mode. Allows you to select one or more RSS Feeds, move them, or perform specific actions with them.
Statistics
Messages
Display various counts of messages and feeds showing number of Read/Unread, Expired, New, etc.
System Memory
Display memory statistics.
Errors
Display the Update or System Errors that feeds have encountered, and the count of feeds for each.
Enclosures
Display summary information about enclosures.
List
Feeds with Errors
List the feeds that have had errors.
Keep – Titles
List the titles of the messages that have been marked as Keep.
Enclosures
List each enclosure as well as its download status.
More
Delete
Expired
Traverse the elements in the List View and delete all messages marked as Expired, except those not Elapsed if the Keep Until Elapsed option is selected in Tools | Options… .
Read
Traverse the elements in the List View and delete all messages marked as Read, except those not Elapsed if the Keep Until Elapsed option is selected in Tools | Options… .
Elapsed
Delete all messages marked as Elapsed, except those that are marked as Keep.
Images
Delete all images associated with the Feed. If “Image Display in Message” is ON in Tools | Options… | Display Tab, then images will be downloaded for updated feeds on the next Update.
Enclosures
Delete all enclosures, regardless of whether they are expired or not.
Error Files
Delete all Error files that contain the detailed error log (date and message). Error flags are not affected.
Raw Files
Delete all Raw files, which is located in RAM.
All Unnecessary
Execute the following “Delete” functions:
Expire
Find
Applies the Expiration rules to all Children messages of the RSS Feed and marks them Expired. This will not Unexpire any messages.
Read
Expire all messages that have been Read.
Register
Displays information regarding registration.
Recovery
Various menu items related to recovering. This is an experts only menu selection! If you need to execute one of these functions, you will be asked to do so in the FeederReader Forums.
Help
Display the FeederReader Manual, if it is loaded onto the device.
About
Display Version and Copyright information.
Exit
Exit the program. Normally, closing the program just minimizes it. This option allows you to completely exit. After you do this, FeederReader can be restarted and all Messages and Feeds will be reloaded from storage.
Next (Down
Arrow icon)
Clicking the arrow will go to the item indicated by the checked menu item.
Each of the menu items will display the indicated item, select it in the List View and display it in the HTML View. It will keep the focus on the HTML View to allow the device’s DPAD to navigate the message display. This is great for minimal navigation of the indicated items.
Change Arrow
“Save” the next menu selection as the Arrow function. The next menu item selected will become the default action when pressing the arrow button. The selected option will be saved if you go into the Tools | Options… form and click Save.
Next Message
Go to the next message, regardless of its Flags.
Unread
Find the next Unread Message, select it in the List View and display it in the HTML View.
Expired
Find the next Expired Message.
Elapsed
Find the next Expired Message.
Keep
Find the next message marked Keep.
Error
Find the next Feed with an Update or System error.
Newest Unread
Find the newest unread Message using the Published date, if found, or the Downloaded date if the Published date is unavailable.
Enclosure
Go to the next Unexpired message with an Enclosure.
Previous (Up
Arrow icon)
Clicking the arrow will go to the item indicated by the checked menu item. The menu items are identical to the Next Arrow except for the following modifications/notes.
Unread Previous
Find the previous Unread Message. Note that messages are automatically marked Unread after viewing them for a certain amount of time. Because of this, this menu item will not always take you to the previously viewed item.
Oldest Unread
Find the oldest Unread Message using the Published date, if found, or the Downloaded date if the Published date is unavailable.
Keep Button
(Lock icon)
This displays the status of the Keep flag of the currently selected item. Pressing this will toggle the Keep flag.
Display Mode
(Page icon)
Displays the status of the Full Screen mode. Pressing this button toggles between Full Screen View and Both modes. You can also select an option from the Drop Down Menu:
- Both -
Show both the List and the View windows.
Full View
Show the View window in full screen mode.
Full List
Show the List window in full screen mode.
Status
Toggle the Status Bar on or off.
Toolbar
Toggle each custom toolbar on and off with these menu items.
List Window
Expand All
Show all feeds and messages in the List Window.
Collapse All
Collapse all feeds and messages in the List Window, showing only the top-level feeds and categories.
Feeds Only
Hide all messages and show only the feeds. Allows quickly go to feeds beginning with the letter you tap.
View Window
Normal
Display the rendered HTML in the HTML View of the selected List View element.
Details
Display the rendered HTML as well as the additional XML elements and attributes.
Errors
Display the past errors in the HTML View of the selected List View element.
Show HTML
Display the HTML code in the HTML View of the selected List View element.
Raw File
Display the raw file in the HTML View of the selected List View element.
XML
Display the XML Hierarchy of the selected List View element in the View Window. This is “lightly parsed” XML that should help identify the assumed hierarchy of the RSS Feed or the OPML File.
Shrink Mode
Shrink Mode toggles Page/Image Shrinking in the Message View, allowing you to view full-size images.
ClearType
Toggles ClearType on and off in the Message View.
Stop
(Red X icon)
This will clear the Feed queue, but not interrupt currently-updating feeds. The Remaining Box reflects the feeds that are remaining. After this "Stop" you can then add more feeds to the queue in a normal manner. In this way, the stop button really acts as a "Clear Feed Queue" button.
Update Feeds
Update all RSS Feeds under this List Element. This will activate multiple simultaneous downloads of the Children Feeds which is controlled by options in the Tools | Options… | Connection Tab.
Update Enclosures
Begin the download of all Enclosures in this category.
Manual Expire/Delete
Traverse the elements in the List View and mark messages as Expired that match the Options… | Item toolbar | Keep Tab settings and delete all messages that are Expired and Elapsed.
Move To
In
Move selected Feeds (in Manage RSS Feeds Mode) into this Category.
Before
Move selected Feeds (in Manage RSS Feeds Mode) to just before this Category.
After
Move selected Feeds (in Manage RSS Feeds Mode) to just after this Category.
Update OPML
Update the OPML File and add any new feeds listed in the file that do not exist in the List View.
Properties…
Bring up the Properties dialog allowing you to select various update and keep options that will apply to all feeds underneath this category (unless overridden).
More
List Enclosures
Enclosures
List all Enclosures with links allowing you to download, play, or go the message.
Downloaded
List all fully downloaded Enclosures with links allowing you to download, play, or go the message.
Sort Messages
Date (Oldest First)
Sort all messages by date indicated by the feed or, if not specified, by download date.
Date (Newest First)
Sort all messages by date indicated by the feed or, if not specified, by download date.
Change
Name
Change the name of this Category.
Url
Change the URL of this OPML file.
Delete
Delete Category
Deletes the Category and all feeds and messages underneath. This menu item only appears on a Category.
Delete OPML
Deletes the OPML file and all feeds and messages underneath. This menu item only appears on an OPML file.
Expert
Delete All Messages
Delete all messages under all feeds within the Category or OPML File. When the feeds are updated, the messages will reappear.
Update Feed
Add this Feed to the Update Queue.
Update Enclosures
Begin the download of all Enclosures in this feed.
Manual Expire/Delete
Traverse the elements in the List View and mark messages as Expired that match the Options… | Item toolbar | Keep Tab settings then delete all messages that are Expired and Elapsed.
Move To
Move selected Feeds (in Manage RSS Feeds Mode) to just after this Category.
Flags
These menu items mark all messages with the indicated flags.
All Unread
All Read
All Expired
All Unexpired
All Keep
Properties…
Bring up the Properties dialog allowing you to select various update and keep options that will apply to this feed.
More
List Enclosures
Enclosures
List all Enclosures with links allowing you to download, play, or go the message.
Downloaded
List all fully downloaded Enclosures with links allowing you to download, play, or go the message.
Sort Messages
Date (Oldest First)
Sort all messages by date indicated by the feed or, if not specified, by download date.
Date (Newest First)
Sort all messages by date indicated by the feed or, if not specified, by download date.
Change
Name
Change the name of this Feed. This will be overridden when this feed is updated.
Url
Change the URL of this feed.
Delete
Delete RSS
Deletes the RSS Feed and messages underneath.
Expert
Force Update
This updates the feed, temporarily ignoring the “Conditional GET” setting in Options…
Delete Error File
This deletes the error file for this feed. The error file, if it exists, can also be viewed then deleted main View Window as a link.
Delete All Children
Delete all messages under this feed. When the feed is updated, the messages will reappear.
Delete Mixed Feed Items
This attempts to correct a rare error when updating feeds. You will not need to use this unless directed to in the FeederReader Forums.
Update Parent
Place this message’s RSS Feed into the Update Queue. This is identical to selecting the RSS Feed in the List View and selecting Update RSS.
Export
Menu items here will execute the Custom Export commands added by the user.
Keep
This displays and allows you to change the Keep flag of the message. If Checked, this message is marked Keep. Selecting this menu item toggles the Keep flag.
Expire
This displays and allows you to change the Expire flag of the message. If Checked, this message is marked Expire. Selecting this menu item toggles the Expire flag.
Unread
This displays and allows you to change the Unread flag of the message. If Checked, this message is marked Unread. Selecting this menu item toggles the Unread flag. This menu item is not updated with the Message Read timer. Be careful of this interaction.
Mark
This displays and allows you to change the Mark flag of the message. If Checked, this message is marked Mark. Selecting this menu item toggles the Mark flag.
Expert
Remove
This removes the selected messages information and data. If the message still exists in the RSS Feed on the next Update, then this message will reappear.
Program options can be modified from the Tools | Options… dialog. To exit the Options dialog and save your modifications, you must clicks the Save button in the lower right corner. To exit the Options dialog without saving your modifications, click the X button in the upper right corner.
There are two types of Options: global and per-feed. The global options are accessible through the Tools | Options… menu item. The per-feed options are described in the section below.
Display Tab
Message Font and Hdr
The size of the font in the Message body and header (title). These values ranges from 1-7 and is in arbitrary units (see “Use Html Font Size in Pts” below)
List Font Size
The size of the font in the List View in points. This value ranges from . Readable values are from 4 or 5 to 16 or 18. Decent values are in the range 7-12. This along with the List Icon Size will determine the number of feeds displayed in the List View.
List Icon Size
The size of the Icon in the List View in pixels. This along with the List Font Size will determine the number of feeds displayed in the List View.
Detail
Message
Turns on the display of detail message data as well as XML elements and attributes.
Non Message
Turns on the display of detail data for RSS Feeds and OPML files as well as XML elements and attributes.
Image
Turns on the display of Feed images in the message display. When ON, this option also turns on the download of these images. If an image exists in the Storage Directory for an RSS Feed, it is always displayed when viewing the RSS Feed data regardless of this setting.
Launch Links in External Browser
This will launch an external browser when you click on the links within this message. The browser launched is the one associated with html files via the Pocket PC file association mechanism.
Expert:
Read Timer (ms)
Changes the amount of time between displaying the Message data and changing the Message Flag Unread to Read.
Html pre-decode message
When on, each message is parsed once for HTML markup prior to submitting to the FeederReader HTML renderer. For best results, keep this on.
Use Html Font Size in Pts
This forces the Msg Font/Hdr selection boxes to specify the font size in points rather than in arbitrary size units. This only works on WM2003 and later devices.
Update Tab
Place New Messages Before Old
During Update, place new messages at the top of the Feed instead of the bottom. This does not SORT according to date or anything else. It simply adds the new messages to the front of the feed as it parses the RSS.
Add New URLs to Queue
When adding an RSS feed, automatically add the feed to the Queue for update.
During Update: Expire/Delete
Identifies whether messages are marked Expired and/or deleted during the RSS Feed Update based on the Expiration rules.
Expert:
Delete Raw Always
Delete Raw File after it is no longer needed whether there is an error or not.
Delete Raw on Success
Delete Raw File only if there are no errors in the download and processing of the data. This is useful if you want to review the Raw file if there is a download or processing error.
Add To Queue in Sorted Groups
When adding a group of Feeds to the Queue, sort only the added Feeds by Last Update Time. This helps when you stop the queue and then restart, it will essentially put the just-updated feeds at the back of the queue.
Use Conditional GET
When ON, this option will significantly speed up the Update process by not downloading the feed data if it has not been updated. This works with compatible Feeds only. Fortunately, many feeds are compatible.
Use GUIDs
When supplied by the feed producer, FeederReader will use the GUIDs to determine when a specific message is updated. When updated, the message is simply replaced by the new text and title information within the feed.
Storage Tab
Main Feed Folder
This is the main feed folder for storing all feeds and enclosures. After you change this folder, you must press Submit and Save. FeederReader will immediately read the feed data from the new folder. If the new folder does not exist or is empty, it will be created and initialized.
Enclosure Minimum Store (kB)
This is the minimum number of kilobytes that must be available in the Main Feed Folder for FeederReader to continue downloading enclosures.
Feed Minimum Store (kB)
This is the minimum number of kilobytes that must be available in the Main Feed Folder for FeederReader to continue updating feeds.
Minimum RAM (kB)
This is the minimum number of kilobytes that must be available in RAM for FeederReader to continue downloading enclosures and/or feeds.
When RAM reaches this value or lower, the Enclosure Queue is stopped. Note that the RAM check is not a hard value: FeederReader only checks periodically (at the frequency of Tools | Options... | Connection Tab | Thread Poll Time). It then sends a "signal" to the threads that handle the downloading. So if you have a fast connection, you may want to account for this, if necessary, by 1) increasing Minimum RAM value or 2) Decreasing Thread Poll Time.
Set to 0 to disable the check. The default is to stop the queue when RAM is below 1000 KB. Note that with the lazy garbage collection employed by Windows Mobile and the Compact Framework, your device may seem to run out of RAM but actually not be running out of RAM and therefore prematurely stop the queue.
Skin Folder
This is a folder that contains files that change the look of FeederReader.
Warning Tab
Show Feed Name Change
Adds a message to the Warning List when a feeds’ name is changed.
Show Feed Update
Adds a message to the Warning List when a feed is updated and parsed.
Experts
Use Log File
Generates a log file contained detailed information on the update process.
Show Update Progress
Adds messages to the Warning List during many phases of each feeds’ update progress.
Auto Tab
Update Every (minutes)
Feeds are added to the queue after this many minutes has elapsed if the queue is empty.
Update Retry (minutes)
If the Update Queue was not empty, it is checked again in this many minutes. If it is empty, then the feeds are added to the Update Queue.
Enclosure Update
When feeds are added to the Update Queue, any partially-downloaded Enclosures are added to the Enclosure Queue.
Connection Tab
Timeout (s)
The timeout in seconds for HTTP connections used to download feeds.
Encl
The timeout in seconds for HTTP connections for downloading enclosures.
Connections
Specifies the maximum number of simultaneous downloads while Updating. You can modify this parameter during an update. Increasing it will immediately spawn new downloads. Decreasing it will let existing downloads complete, but will not launch new downloads unless there are fewer current downloads than this number. There is no checking of the validity of this number, nor is there robust error recovery if the threads begin to fail due to system constraints. During testing, 10 threads should be viewed as the maximum, while 20 threads started to fail and definitely stretched the device. Recommended setting 2-10.
Encl
Specifies the maximum number of Enclosure downloads that occur at the same time. These connections are separate from the number of connections made by FeederReader for RSS Feed Updates. Thus the total number of HTTP connections is the sum of Connections for Enclosures and Connections for RSS Feeds.
Experts:
Queue Spread Time
Specifies how long to wait between launching threads. This prevents the device from immediately launching the Maximum Connections number of threads. Recommended setting 250-3000.
Thread Poll Time
Specifies how long to wait between checking for the threads to end. This is also the time between checks for RAM and Storage specified on the Storage Tab. A larger number will reduce the load on the system while increasing the amount of time you have to wait before the program notices that a thread has completed (slightly delaying the processing time or the launching of the next thread). Recommended setting 500-5000.
The per-feed options are available in the Popup menu Preferences… menu items on the feeds and categories.
The per-feed properties are hierarchical, which means that
you can set feed properties for a category or an OPML file and all feeds
underneath will adopt those properties. In addition, for any feed you can
override the parents' individual properties. The checkboxes on the left let you
override any properties you wish and leave the other properties as inherited
from the parent.
To access the default feed properties, to go Tools | Options... and tap
"More" on the toolbar. All feeds will adopt these default properties unless
overridden by the feed itself or any of its parents. To override any property
for any feed or category, select the feed or category in the List Window, then
bring up the Popup menu and select "Properties...". This will bring
up the same dialog that is available at the top level (under More), but
this time you're editing the properties for the feed or category. When you are
editing a feed or category property, you must also select the left most box on
the line of the properties you want to override. This allows you to override
some properties, and keep others at the default. This works entirely
hierarchically, so that you can set the default at the top level (using
"Do | Options... | More") then set an entire category properties
(using the Category Popup menu | Properties..."). All feeds within the
category will have their properties set by the combination of the default
"top level" merged with the Category overrides. Then you could (if
you wanted to) set properties for any specific feed within the category to be
different from the rest of the category (using the Feed Popup |
Properties..."). In this last case, the properties for the feed in
question will be the top level properties merged with the category properties
(whichever have the "Override checkbox" selected) and finally merged
with the Feed properties (again, whichever have the "Override
checkbox" selected). The "Override checkbox" on the top level
(under Do | Options... | More) does not currently do anything.
Keep Tab
Item Age: Read
Identifies the amount of time after a Read message was first downloaded that it is marked Expired.
Item Age: Unread
Identifies the amount of time after an Unread message was first downloaded that it is marked Expired.
Items: Number (not implemented)
Enclosures: Age
Identifies the amount of time after an Unread message was first downloaded that it is marked Expired.
Enclosures: Num
On every Update of the feed, the number of Enclosures specified by "Enclosure: Num" are allowed to be NOT "On Hold". The rest are placed "On Hold". If you also set Update: Download enclosures, then those enclosures that are NOT "On Hold" will be placed in the download queue. Then, when you tap "Do | Update All Enclosures", any enclosures NOT "On Hold" and not fully downloaded will be placed in the download queue.
The empty small circle on a message with enclosures indicates that the enclosures in that message are "On Hold". This means that the enclosure will not download automatically when you use a "group" download command like "Do | Update All Enclosures" or from the Category/Feed Popup "Download Enclosures." You can force the download of an enclosure that is On Hold by tapping it's filename in any enclosure list or tapping the Download Enclosure icon on the Enclosure Toolbar. Forcing the download of the enclosure will also turn off the "On Hold" status of that message/enclosure.
Enclosure Size (Meg)
Enclosures of this size or more (in Megabytes) will not be downloaded.
Enclosure Total Size (not implemented)
Elapsed Delete (not implemented)
Partial Encl (not implemented)
Msg (not implemented)
Update Tab
Depth (not implemented)
Title (not implemented)
Inline (not implemented)
Cache: Images
Images embedded in the messages will be downloaded to the Main Storage Folder for display when not connected to the internet.
Update Freq Auto (not implemented)
Update Freq Max (not implemented)
Update: Download Enclosures
This will automatically download enclosures for any new messages. Turn this ON if you don't want to manually download Enclosures from the Message Panel.
Update This (not implemented)
Manual (not implemented)
Auto (not implemented)
Update Children (not implemented)
Manual (not implemented)
Auto (not implemented)
Priority:
Nudge
This will nudge the priority by this amount for all messages underneath this item.
Total (not implemented)
When updating this program, it is possible that the storage file formats will change. If so, this will be indicated in the Release Notes. Because of this, you should save the tree hierarchy as an OPML File before updating. This will retain the structure of the feeds for you, but it will not retain the individual Messages or Message Flags (e.g. Read/Unread). If you want to try not to miss reading anything in your feeds, you should follow these steps:
You can also rename or copy the existing storage directory prior to the program update (by default, this directory is “/FeederReader”). If your program update fails, you can reinstall the older version and rename this directory back to its original state.
FeederReader stores all files and data in the main folder
called “/FeederReader” located on the same storage media as the program
installation directory (for instance:
“/SD Card/FeederReader/”). In addition, a directory in RAM “/FeederReader/RawFiles”
contains all Raw Files. It is generally safe to delete all files in the RawFiles
directory as well as the Preferences file.
For other files, it can be fatal to the program if you modify or delete these files by hand, but it might be useful for you to know how they are stored. In the main folder, the file “hier” contains the information about the top-level elements in the List View. “options” contains the options selected in the Tools | Options… tabs. Data for RSS Feeds and OPML Files are each contained in their own folder.
The folder for an OPML File contains the files “raw”, “children”, and “errors”. “raw” is the direct download from the Internet. “children” is the information about the children RSS Feeds contained in this OPML File. “errors” is the text file containing past error messages. The RSS Feed data is contained at the top-level of the Storage directory.
The folder for an RSS Feed contains the same files as an OPML File. Another file, “children.i2f”, contains additional information about the messages. Message data for each message is contained in separate folders within the RSS Feed folder.
You can delete all Options, OPML Files, RSS Feeds, and Messages by deleting all files in the main folder. You can safely delete Options separately from the other files. But you cannot independently delete folders for OPML Files or RSS Files. Information contained in the “hier” file must be synchronized with the existence or non-existence of these directories, which is difficult to do outside of the FeederReader program.
The top-level directory also contains the preferences you have selected in the file Preferences.xml. This is an editable xml file.It may contain one or more options that you can modify that are not available in the Tools | Options... dialog. The program reads this file each time you bring up the dialog and writes this file each time you close the dialog.
RSS Feed
A single RSS Feed contains messages or news items that are published. These are variously called “Feeds”, “RSS Feeds”, “XML Feeds”,
OPML File
A file format for storing a collection of RSS Feeds.
Message
One of several items in an RSS Feed usually with a Title, Link, and Text. Messages can in fact be news items, blog entries, or other items published collectively in an RSS Feed.
Enclosure
A Message can contain a reference to one or more files that are available on the internet. The enclosure is not included in the file, but a Url “link” that points to the file is included in the message.
Expire
A Message Flag indicating the Message will be deleted. Settings are available to Expire a message after a certain period of time after download and to automatically delete Expired Messages.
Flag
A small bit of information that an OPML File, RSS Feed, or Message is tagged with. A Message, for instance, can be Flagged as Read/Unread, Expired/Unexpired, and Keep/Don’t Keep.
Update
To download an OPML File or RSS Feed through a connection to the internet.
Delete
To remove all traces of an OPML File, RSS Feed, or Message
News Aggregator
A general term for a program that collects the messages from multiple RSS Feeds and presents them to a reader. There are news aggregators that collect Feeds for display through a browser, through an email client, or through the aggregator’s own interface. FeederReader is a news aggregator with a built-in interface.
XML
Stands for “eXtensible Markup Language”. It is the file format in which RSS Feeds and OPML Files are published.