NewsPro Help
NewsPro Help Contents

NewsPro Home Page - selected topics to read first

Main features

Shortcuts

Important subtleties you should know

Tuning the program

Inserting and deleting newsservers or newsgroups.

Newsgroup list

Newsserver list/subscribed newsgroups - export and import

Handling a newsgroup. The newsgroup window. Multiple views.

Virtual newsgroups and folders

Automation issues: watch, download&save, automatic getting headers and scheduler

Global message filters - operating on database as a whole

Wildmats - classical and boolean

Search newsservers for wildmat pattern - the search 'groups'

Viewing articles during and after downloading.

Posting articles and replying to them

Task Manager

Controlling Connection

Bookkeeping - deleted/read headers

Reducing the database size - limiting number of headers in newsgroups

Database backup

Properties - some vital parameters influencing the program perfomance are set here


Database backup

 	Database backup is used for additional database protection in the case of abnormal program termination. If power is accidentally going down or some other application hangs Windows - database state may be inconsistent. If database backup is off, only vital information, such as articles with bodies will be restored. Database backup introduces some time delay during the program launch as well as requires some additional space during the program session, but it allows to restore all data but articles without bodies from the interrupted session. To enable or disable the option check the database backup check box in the properties dialog.


Connection

Connection is controlled through the connect menu.

Connection properties - allow the program to connect. A phone-book entry or phone number should be defined. Also an user name and password are usually required.

Lost connection - defines the program behaviour when the connection is lost.

Suspend&Redial  - all tasks are suspended and an attempt to reconnect is made. No tasks are lost.

Suspend - all tasks are suspended but no reconnection. No tasks are lost.

Ignore    - ignores the connection status. All tasks are lost. This option maybe needed for LAN connections that don't use RAS at all and so the connection properties are useless. If you have a permanent connection - use this option to prevent suspending tasks for some reason.


bookkeeping
Bookkeeping - deleted/read headers

   In the properties dialog the "Remember deleted/read messages for n days" entry has been introduced to handle the issue.

   If the user-defined number of days equals to 0 - the mechanism is disabled. Otherwise the program will remember all deleted/read headers for the number of days even after they left the database.

   Headers now deleted through the database, so cross-posts will be automatically removed from all newsgroups (independently of the number of days).

   Although deleted headers are shown in threads but they have different color.

   The restore deleted headers option has been enhanced to enable easy undeleting some and not necessarilly all deleted headers. It works in this way:

   In a newsgroup press the 'restore deleted headers' toolbar button (Ctrl-Z). You'll see deleted headers appearing with different color. The button remains pressed. Undelete deleted headers with the help of the context menu or shortcuts (Ctrl-J or Alt-J for selected). Click the button one more time and remaining deleted headers will disappear. You have not necessarily to do that - all always will be handled correctly.

   Deleted/read headers leave the database when they are deleted on servers so they free the storage. If they come back - read messages remain read and deleted headers don't enter newsgroups, although they can be seen again among deleted headers. The track of deleted/read headers is lost after they absent from the database for more than the number of days (after last depature from the database).


limiting number of headers
Limiting number of headers in newsgroups

   The 'default' entry defines default settings for newsgroups. You can redefine these settings for each newsgroup. The headers per server entry allows to limit the number of headers that read from a server (there is also the 'all' value). The rest of headers in the newsgroups maybe deleted or retained, for example if newsgroup already contains 800 headers, 500 new headers arrive and Headers/server is equal to 1000 - 300 headers will be deleted or not depending on the value in the 'the rest' column. The last three columns describe how each newsgroup will be open. E.g. for large mp3 newsgroups you can disable threads, enable the partial support and sort by subject for faster newsgroup opening. Actual numbers for number of headers in a newsgroup may be less than the 'header/server' value, when some headers are missing on the server. You need not to reset a newsgroup if you change the settings - the rest of headers will be downloaded even if they are older than the headers in the database.

   Limiting number of headers for non-critical newsgroups reduces the database size - the program works faster. Some servers may keep huge archives for selected newsgroups - and often only recent headers are required.

   My advice is to set for the 'Default' entry 'headers per server' to, say, 1000, 'the rest' to 'Delete'. For your favorite newsgroups set the 'headers per server' to 'all'. The speed will grow greatly and you will still have all recent headers from different servers.


Tuning - overview
Tuning the program, i.e. defining maximal numbers of tasks for specific configuration in the properties dialog will significantly improve the program performance. Also see the Tuning the program topic.


Automation issues: watch, automatic getting headers and scheduler
Automation issues: watch, download&save, automatic getting headers and scheduler

   NewsPro automation consist of three completely independent and asynchronous components: watch, automatic getting headers and scheduler - see in properties the watch/auto and scheduler panes.

   Scheduler contains time intervals when program can perform network tasks, automatic getting headers produces get header tasks at user-defined intervals and watch checks headers for satisfying user defined criteria and when they do - it produces article tasks.

   When scheduler blocks program network activity all tasks will remain in pending status, but when the suspend tasks option is disabled it just adjusts bandwidth, for modem users it won't immediately hang-up while tasks are pending (when auto disconnect box is checked). The auto dial option should be checked for modem users and unchecked overwise. The auto disconnect option should be checked  along with the suspends tasks option if phone time is payed on time basis.

   User enters time intervals for scheduler (the list control is set to contain 100 days ahead), defines time intervals for getting headers and lists of fiters for watch on per newsgroup basis.

Download&Save

   The (automatic/manual) downloading and saving attachments capability can be invoked from the download&save attachments entry of the newsgroups context menu and set in the watch for every filter on per newsgroup basis. Since dumping all attachments to one directory would be not a wise approach - the program remembers directories for every manual selection; as to automatic capabilities - there is a possibility to assign a directory to every filter on per newsgroup basis or to use default newsgroup directory. The program maintains persistance between sessions for tasks scheduled for saving, if the save tasks option in the properties (the general pane) is checked.

   The automatic mode is tuned in the properties, the watch/auto pane. The save radio buttons in 'common settings' and for newsgroups in question should be checked, as well as directories should be associated with newsgroup filters. That allows to disable the feature at all or for some newsgroups without affecting the filter list settings.

   Notice that program checks for completed attachments every 5 minutes. To force the procedure immediately or to control other aspects of the process look at the tasks menu.

   The program is conservative to every abnormal condition while saving - it leaves messages in the newsgroups in the case of any problem such as duplicate names etc.

   Text of deleted messages is logged in SavedAttachments.txt in the NewsPro directory if the corresponding option in properties -> general is checked. The 'delete bodies when deleting headers' and 'enable delete on save attachments' options are taken into account during automatic saving; 'ask for delete on save attachments' is ignored.

Scheduler

   Time intervals are set in the following form "StartTime1-EndTime1, StartTime2-EndTime2 ..." comma, semicolon and spaces can be used as separators. Time consist of hours (0-24) and optionally  minutes separated by colon like: 1:20-3:40. To set several days to the same pattern - select desired items, type the pattern and press the 'set' button or type the pattern, select desired items, set focus on the item with the pattern while pressing Ctrl+C and press 'set'.

Watch and automatic getting headers

   Watch and automation properties for now are defined in properties->the watch/auto pane. The pane reminds the filter pane with several differences. Watch for every newsgroup can be switched on/off, also there is a switch for all newsgroups ("Common settings"). For every newsgroup a time interval can be set when getting new headers will be automatically launched. The zero or empty field disables the feature for a given newsgroup (the word 'Off' will be seen for such newsgroups in the GH - get headers/Rescan column). Automatic download of headers can be also generally disabled without affecting settings for particular newsgroups. The rescan every n-th time option means that every n-th time when the automatic getting headers will be launched - rescan will be made instead (default - both rescan and getting new headers). Empty or zero value means no rescan. Partial messages will be marked for download only when all parts available.

   The watch feature is implemented in the following way: with every newsgroup associated a list of filters, each with its own valule of download priority (1-9, 9 is the highest) that will be assigned to articles that match the filter. Filters are checked in the direct order. The first matching filter will be used. You can change the order clicking a filter and using the order spin control (two small arrow buttons at the left of 'Order') to move it in the list. The priority can be changed by using the priority edit box and the set button. Filters added with the add button will also use the value from the box.

   Filters with no priority set (empty or zero priority edit box value) will be ignored. In the priority column 'Off' is displayed.


Shortcuts for toolbar buttons
       General

Ctrl-T	Task manager (show/hide)

Ctrl-F	Find dialog

Ctrl-S	Selection dialog

Ctrl-B	Bookmark dialog

Ctrl-N	Newsgroups and servers window

Ctrl-L	Newsgroup list window

Ctrl-G	Get new headers

Ctrl-P	Post article

Ctrl-W	Window list

Newsgroup Window

(see the context menu in the newsgroup window for more)

Enter	Show article/Download and show article

Space  Download article

Esc 	Cancel downloading/Clear error mark

F3/F4   Find downward/upward the last search pattern

Del      Delete article body/Delete header

Ctrl+C Copy subject/newsgroup name to the clipboard

Ctrl+Z  Restore deleted headers/Hide deleted headers

Shift+Space Enable/disable threads

Ctrl+Space   Enable/disable auto-partial support

Article Window

(see the context menu in the article window for more)

Esc      Close window

F3/F4   Find downward/upward the last search pattern

Newsgroup/Article Split Window

Tab            Switch focus between the header list and the article view in the split window

Alt+Space  Split/Unsplit newsgroup window

Alt + Up/Down/PgUp/PgDown/Home/End/Left/Right   Moving in the newsgroup/article pane with the focus in the article/newsgroup pane

F5/F6           Moving in the newsgroup pane with preserving the focus

Ctrl+F5/F6   Next/Previous thread or header without replies with preserving the focus

Alt+Ctrl + Up/Down/PgUp/PgDown/Home/End   Moving splitter

F11/F12   Moving in the newsgroup pane among messages with bodies with preserving the focus


Main features

Handling multiple news servers - no default news server

Asynchronous work - no waiting

Working in background - separating opening windows from Internet activity

Automatic support for multipart messages

Message fiters - select, extract, ban groups of headers

Virtual newsgroups and folders

Search newsgroups on servers

Global message filters - operating on all database as a whole

Task manager - control multiple tasks in the program

Posted messages can be reposted and adjusted easily

Jpeg images are displayed. Other types of attachments are easily handled.

Newsgroup List

Bookmarks.


Posted messages
Posted messages are saved. Attachments are encoded automatically. In case of failure to post a message or if there is a need to answer a request to post selected parts of a partial message or selected attachments from a previously sent message - such reposts are straightforward through the context menu in the Posted Messages window or the corresponding combo box in the Post Article window.


Task manager overview
As a rule the program handles a number of tasks simultaneously. Users can control this process. The task manager was designed for this purpose. It contains four diagrams - for getting new headers, getting new newsgroups, articles being downloaded and posted messages. Any task can be cancelled and viewing an article in the process of downloading may be invoked from it. It also has four corresponding pages for reflecting errors that may happen during interaction with newsservers.


Viewing Jpegs; Other types of attachments.
Jpeg images are shown automatically. Other types of attachments appear as icons. Double click on such an icon is followed by launching the corresponding default application. There is a possibility to change the default behaviour and to choose an application to launch in the context menu.


Bookmarks
An easily maintained list of bookmarks, that contains information about Usenet. Entries can be added and deleted. Some initial list of bookmarks is supplied.


Message filters
Every newsgroup may be simutaneously viewed in several views - for example one view that is showing messages with bodies, another view - messages of a particular author etc. In the same way subsets of headers may be banned from being shown in a header list. If defined, a message filter is applied for both existing and arriving headers in the current view.

There are two options to create a new view for newsgroups. The first one is rather usual - all newsgroup headers will be included. The second one (cloning the current view) is creating a new view based on the current view. If a message filter has been defined for the current view - it will be inherited in a newly created view and can be independently dealt with.

There is a possibility to delete messages from newsgroups although they can be restored at any moment without requesting new headers from news servers. Deleting headers doesn't cause deleting corresponding article bodies - the operation is fully reversible.


Newsgroup List

A newsserver may supply list of newsgroups it has. When we deal with a set of newsservers - their newsgroup lists are to be retrieved separately. In NewsPro terms the newsgroup list behaves like a newsgroup - it has a set of servers linked to it, that can be changed by users. When a new server is added - it is automatically linked to the newsgroup list, but you may wish to delete some servers from the list. In the same way you can add a server to the newsgroup list only, like you add a server to a particular newsgroup. If you have no newsservers linked to the newsgroup list - nothing is done when you are trying to retrieve new newsgroups. The Newsgroup List entry is located in the Newsgroup and Servers window.

NewsPro doesn't store information about newsservers that have a particular newsgroup - it would influence the overall performance - so the newsgroup list just accumulates newsgroup names. If you are deleting a server - the newsgroup list remains the same.

Doubleclick on a newsgroup name in the newsgroup list to subscribe for it. Or use more advanced options from the context menu - always keep in mind the analogy between newsgroup names and newsgroup list of headers.

To retrieve new newsgroups you should use the Get New Headers/Newsgroups button on the toolbar while the Newsgroup List window is in focus or use context menus in the Newsgroups and Servers window similar to getting new headers for a newsgroup. The same is valid for stopping this operation.

When you are subscribing through the newsgroup list - all available servers will be linked to the newsgroup(s) in question. Not all servers supply newsgroup lists and if they do - there is no guarantee at all that every newsserver will list all newsgroups it has.

You can involve the Message Filter or Find dialogs to select, extract or ban newsgroup names like you do it for newsgroup headers in the Newsgroup Window. For example you can extract all newsgroups that contain "book" and subscribe to them all in one step through the context menu.


Task Manager

The task manager is a tool for handling multiple tasks that usually are invoked simultaneously in the program. Also errors that appear in the course of the program interaction with newsservers are reflected.

Click the Task Manager button on the toolbar to show/hide the task manager.

Click the left mouse button on the corresponding bar in the Get Articles or Get Headers tasks diagram to see what task it is (the bar becomes red) - the information is displayed below the diagram.

Use the Cancel and View Article buttons to operate on the article that is displayed in the corresponding combo box. You can also view an article by doubleclicking the corresponding bar in the diagram.

The task manager can be closed by pressing the Escape key.


NL overview
The newsgroup list contains newsgroup names, that are accumulated during retrieving newsgroup lists from newsservers.


GMF overview
Global message filters permit operations on the database as a whole, irrespective of newsgroups, for example selecting all messages of a particular author collecting all unsuccessful messages in a separate window to be able to retry them.


newsservers
Unlike the common approach in which there is a default newsserver - NewsPro handles multiple news servers in a way that is completely transparent to users. Articles from all news servers for a particular newsgroup appear in a single list. It is not important from which server an article has been retrieved - naturally an optimal newsserver is chosen for downloading; even if one server is down, too slow or the connection to it is unreliable - the article often still can be retrieved from other servers.

Since every server has its own neighbour servers from which it gets new articles and has its own policy - usually different servers contain essencially different sets of  articles in the same newsgroup. In the most common case if we choose 10 newsservers that have a particular newsgroup in a random way, every article will be repeated 1.3-2 times on the average.

Up to 255 different newsservers are supported. Aliases (some servers may have several different names) are detected and reported.


Global message filters

Global message filters permit operations on the database as a whole, irrespective of newsgroups, for example selecting all messages of a particular author or collecting all unsuccessful messages in a separate window to be able to retry them.

You should be able to handle usual message filters to understand the feature.

Press the Global Message Filter button on the toolbar. A new newsgroup window will appear simultaneously with the Message Filter Dialog. Imagine that you have all records before you and you are manipulating them. For example you can choose the "Message are with bodies" attribute and press the Extract button or/and enter some other operations.

To initiate the (composite) operation on all records that are contained in the database - press the Close button.

Similar to usual message filters - global message filters are dynamically changed based on the current situation. For example you can control all records of some author that are arriving - they appear as soon as they have been retrieved from newsservers.

You can introduce a number of messages filters simultaneously. Their title will be: Global 1, Global 2, etc.

You can operate on a global mesage filter window like you deal with newgroups - even delete headers.


Automultipart
In v1.7 a level of abstraction was added that provide advanced support for multipart messages. They can be dealt with as one message, although the manual methods, for reassembling such messages still may be applied.


Background work
      Starting with v1.7 opening or closing newsgroup windows doesn't influence getting new headers tasks that are active at the moment. Such tasks may be also launched from the workspace window without opening newsgroup windows.


Virtual newsgroups and folders

Folders are implemented in the workspace window - use the corresponding entry in the 'Newsgroups' context menu.

To move newsgroups to a folder - select newsgroups in question and press the right mouse button on the desired folder. Press 'move to folder'.

A folder can be opened like a newsgroup - all messages from newsgroups it contains are merged to create a virtual newsgroup. Such newsgroup can be operated upon like an usual newsgroup (getting new headers etc.).

Several newsgroups can be joined into a virtual newsgroup by selecting newsgroups in question and applying the 'join newsgroups' option from the context menu.


Search servers
Search servers for patterns

NewsPro makes use of the XPAT command that allows search on newsservers given a (classical) wildmat pattern. To perform a search - create a newsgroup which name starts with '#', e.g. #JavaScriptSearch. Open the newsgroup and press the get new headers button. A dialog will appear. Enter a list of newsgroup (you can make use of the 'newsgroup list' button to switch to the newsgroup list and put selected newsgroup into clipboard with the help the 'copy selected' or 'copy all' entry in the context menu. Enter a wildmat pattern, select a header field and press OK. The program can automatically transform a wildmat pattern to perform a case insensitive search (but letters between brackets remain intact e.g. [a-z] is not transformed to [a-zA-Z]).

You can open as many search 'groups' as necessary each with its own search criteria. If a search criteria is changed during performing a search - already running tasks for the corresponging search group will be finished with the previous search criteria and pending tasks will be eventually scheduled to run with the new search criteria with output to the same search group.

Use the reset option or delete search groups to remove downloaded headers. Deleting headers or marking them read will be applied to all database as in the case with usual newsgroups - in search newsgroups headers are not disappearing by themselves.

One small issue is arising during resetting or restoring the database when headers in search groups do not belong to any subscribed group. In that case the #~TrashBin group will be created which will adopt all such headers.


Insertion and deletion of newsservers and newsgroups
Inserting and deleting  newsservers and newsgroups

Inserting

Press the newsgroups and servers button on the toolbar; The newsgroups and servers window will appear..

Press the new newsgroup (new server) button on the toolbar;

Type in a newsgroup (server) name;

Press the Enter key.

By default a new newsgroup is linked to all previously defined news servers and a new server - to all previously defined newsgroups. You can delete some of them if you like.

You can also insert a new server by doubleclicking the link of the form news://server_name in an article view.

Inserting a newsgroup (server) for a particular newsserver (newsgroup)

Select a newsgroup (newsserver) for which you want to add a new newsserver (newsgroup).

Press the Insert key.

Type in a newsgroup (server) name;

Press the Enter key.

The newsserver (newsgroup) will be added only for this particular newsgroup (newsserver).

Deleting

Set focus on the newsgroup (server) you want to delete;

Press the Delete key.

Answer yes to the prompt dialog that appears.

You can delete either newsgroup with all its servers (server with all its newsgroups) or just one server for a particular newsgroup (one newsgroup for a particular server), that depends where is the node in question in the newsgroups and servers tree.


Important subtleties

Scheduling tasks for download in the off-line mode

The program should be exited by closing its window.

Some toolbar buttons operates on the current window.

Tune the program to match your configuration


Viewing articles during and after downloading

To view an article you can press the Enter key in the newsgroup window or doubleclick the left mouse button. The article view will appear. Click the right mouse button to see the context menu that shows the choice you have.

You can also invoke viewing an article from the task manager through the view article button or by doubleclicking the corresponding bar in the diagram.

To view current articles in split windows, drug up the bar in the bottom of the newsgroup window. To close the view - drag the bar to the bottom of the window.

Press the Delete key to delete the article or cancel its downloading.

Press the Escape key to close the window.


Posting articles and replying to them.
Posting articles and replying to them

Defining a newsserver for posting articles

 	A server for posting in the Properties dialog must be defined to enable posting articles. To define it invoke the dialog by pressing the Properties button on the toolbar, and select a server for posting in the combo box in the Posting section of the dialog. Close the Properties dialog by pressing the OK button.

Composing new articles

  	Press the post a new message button on the toolbar. The Posting window will appear.

 	You can invoke several such windows at the same time. After your message is composed press the post button in the posting window to post the message. The message will be automatically saved in the posted messages window.

The posted messages window

The posted messages window is very similar to the newsgroup window. It can be activated by pressing the posted messages button in the toolbar. Pressing the Enter key or doubleclicking on an entry in the window will activate the posting window for the corresponding message.

Since all posted messages are saved there is no problem in reposting a whole message in the case of an error or reposting parts of it - see the content menu for the posted messages window or the combo box to the right of the post button in the posting message window. For such reposts you must ensure that the posting mode (Uue/Mime) and the split value in the Properties Dialog are the same as they were when the original message was posted. Of course, the attachments also must remain the same.

Replying

To reply to a message you can press the Reply button on the toolbar while the active window is the article window or the newsgroup window. If the active window is the newsgroup window the reply is implied for the focused header.

Getting new headers for the posting server

It can be done by pressing the get new headers for the posting server on the toolbar while the newsgroup you are interested in is in focus.


Asynchronous work
As a rule every program feature can be used irrespective of in what activity the program is engaged at every particular moment. E.g. while the program is getting new headers - they can be chosen for downloading immediately as they are appearing on the screen. Or articles can be viewed, posted, selected, deleted etc. - all that at the same time.


Scheduling tasks for download in off-line mode
In the connect menu select the connection properties entry. Check the 'Suspend' radio button. In this mode tasks are suspended while the Internet connection is down and resumed when it is active.


The program should be exited normally
The program should be exited by closing its window, otherwise database integrity will be violated. In this case only articles with bodies and posted messages will be restored although other headers can be read one more time from newsservers. If the database backup is activated - all data but articles without bodies from the interrupted session will be restored. To prevent this scenario don't switch off the computer while the program is running and don't kill the program from the outside.


Handling header lists
Handling Newsgroup Window

How to activate the newsgroup window

Getting new headers; Rescanning headers; Cancelling these operations.

Resetting a newsgroup. Why it is needed for some newsservers.

Message Filters - Sorting, selecting, extracting and banning a subset of records

Message Filters - records that satisfy a criteria and colors

Saving and reusing message filters

Searching

Marking articles for download; the state column in the newsgroup window

Context menu; Downloading articles and other entries

Partial messages - merging several articles into one

Deleting possible duplicates


Properties

To set properties press the Properties button on the toolbar. Some servers cannot handle a large number of tasks simultaneously, so you may wish to diminish it for them. You must select a server for posting articles to be able to post. The properties dialog also can be invoked by pressing the Enter key on a server name or doubleclicking it in the newsgroups and servers window. The properties for the server will be shown in the Servers section of the Properties dialog.


Delay in closing the program
Versions starting from 1.2 should have no essential delay in closing the program.


MF Colors
You see threads as upside-down trees. The topmost node is the root (the original message) and under it its children (replies) are shown.

When you use a message filter - you enter some criteria. A record satisfies the criteria or it doesn't. Threads are always shown with all their children, so a color differentiation is used to distinguish roots or children that satisfy the criteria.

 	The + (-) sign before roots may be grey or blue. And so the branch ends for children. The blue end means that the child conforms the criteria defined in the message filter, the grey end that it doesn't. The blue + (-) means that a child of the root does and the grey + (-) that none child does. The blue + (-) perimeter means that the root conforms  the criteria and the grey perimeter - that it doesn't.


Newsserver lists - import and export
To export or import a newsserver list press the right mouse button on the Servers entry in the Newsgroups and Servers window and select the Export or Import Server List entry. To import a newsserver list - select a newsserver list file in the Open File dialog box that appears. To export a newsserver list - type a file name in the Save dialog box to export newsservers that are currently defined in the program.

The same applies to a newsgroup list - the corresponding function can be found in the context menu of the Newsgroups entry.


Tuning the program

All tunable parameters are located in the properties dialog.

1. Timeouts - if within that time a newsserver doesn't respond - the task will be aborted. The program retries the task 3 times before producing an error message. Normal timeout should be equal 100-200 seconds.

    	Small timeout - if many tasks are running or slow newsservers are present - a situation may be created, in which many tasks are aborted prematurely; 2-3 times more data may be pumped through the connection. In the worst case almost all tasks are aborted while the connection is fully exploited.

Large timeout - if connection with a newsserver is unreliable, a task will be active up to timeout*retries seconds, doing nothing, but being one of active tasks and so preventing other tasks from running.

2. Maximal numbers of tasks in the program - If the number is too big, many newsservers are present - a larger timeout may be required when the connection speed is limited.

3. Maximal numbers of tasks for a new server - this number should be reasonably small to prevent a newsserver from overloading. Some newsservers limit number of connections from one client, so they will not accept more tasks than that number. See corresponding errors panes in the task manager dialog to detect such cases.

4. Hard tasks - get new headers tasks and get new newsgroups (newsgroup list) tasks. The tasks are called hard because they require considerable amount of processor time. If the number of hard tasks is large and connection is fast - a situation may be created, when new headers or new newsgroups are arriving much faster than they could be dealt with, so a big queue will be created. In the conditions of low-memory it might require a lot of hard-disk activity and also may result in delay at shutdown. Excessive number of hard tasks may be detected by monitoring processor usage while only get new headers and get new newsgroup tasks are active. If it is equal to 100% all the time - the maximal number of hard tasks should be reduced. Maximal number of hard tasks depends on amount of memory/database size and processor speed. Naturally hard tasks are counted among other tasks in the program.

5. Deleting headers on server errors - if a server temporarily does not respond and the get new headers operation is invoked at that time, normally its headers are deleted, because it is unknown whether the newsserver is out of service for some time or permanently. This behaviour can be changed by checking the check box.

6. Delete group when on found on server - or detach a newsserver from a newsgroup if the server does not have the newsgroup. If the check box is checked - the automatic deleting will reduce number of error messages in the future. As a complementory measure all servers may be attached to a newsgroup in the newsgroups and servers window by selecting the corresponding entry in the context menu for a newsgroup.


Saving and reusing message filters
To save a message filter for a view of a newsgroup make the view focused and open the Message Filter dialog. Press the Save button. The Save dialog will appear. Type in a filename and press the Save button in the Save dialog. The current filter will be stored.

To reuse a filter make a newsgroup view focused and open the Message Filter dialog. Press the Open button to apply a previously defined message filter to all newsgroup headers or press the Add button to apply a message filter to the headers of the newsgroup view. Doubleclick a filter file in the Open dialog that appears. The filter will be applied.


What is the current newsgroup
The current newsgroup is the newsgroup that has the focus on the screen. Some operations invoked by pressing toolbar buttons such as getting new headers, cancelling getting new headers, using the selection and find dialogs are applied only to the current newsgroup. So, if you want to invoke such an operation on a particular newsgroup - first make it focused by clicking mouse button on its window and after that click the toolbar button for the action needed.


Resetting a newsgroup

The usenet protocol has not an effective procedure for determining expired articles when a newsserver deletes them in a random order. Usually it is not the case and the listed headers reflect situation on newsservers. If a newsserver deletes articles in a random way - the 'No such article' error may become frequent for this newsserver for unique articles it has. To evade this relatively rare cases you can reset a newsgroup or reset a newsgroup for a particular server. Invoke this feature through the context menus in the Newsgroups and Servers window for newsgroups, servers listed under a newsgroup or newsgroups listed under a newsserver. The first option resets a newsgroup for all servers - only articles with bodies remain. The last two options allow to reset a newsgroup for a particular server.

You cannot reset a newsgroup for a server while the get new headers task for the newsgroup and the newsserver is active at the same time - an error message will be displayed. All other combinations are allowed.

Before using this option - try to get new headers for the newsgroup in question - maybe just regular deleting had place and the reset operation is not really necessary.


Deleting possible duplicates
All headers with the same subject and author are deleted but the latest header. Such headers may present when a message has been posted several times - the same message on different newsservers has a world-unique message-id and appears only once in a newsgroup window. The function should be used with care - replies to deleted duplicates are not shown and sometimes someone may send a series of different messages with the same subject. Deleted duplicates can be restored with the restore deleted headers function.


Wildmat patterns - classical and boolean

Here is the description of the 'classical' wildmats (e.g. for server searches):

 Wildmat compares the text against the pattern and returns non-zero if the pattern matches the text. The pattern is interpreted according to rules similar to shell filename wildcards. The pattern is interpreted as follows:

\x

Turns off the special meaning of x and matches it directly; this is used mostly before a question mark or asterisk, and is not special inside square brackets.

?

Matches any single character.

*

Matches any sequence of zero or more characters.

[x...y]

Matches any single character specified by the set x...y. A minus sign may be used to indicate a range of characters. That is, [0-5abc] is a shorthand for [012345abc]. More than one range may appear inside a character set; [0-9a-zA-Z._] matches almost all of the legal characters for a host name. The close bracket, ], may be used if it is the first character in the set. The minus sign, -, may be used if it is either the first or last character in the set.

[^x...y]

This matches any character not in the set x...y, which is interpreted as described above. For example, [^]-] matches any character other than a close bracket or minus sign.

HISTORY

Written by Rich $alz <rsalz@uunet.uu.net> in 1986, and posted to Usenet several times since then, most notably in comp.sources.misc in March, 1991.

The program extends wildmats by allowing case-sensitive searches and boolean expressions with nested parentheses which operands are wildmats. '^' means NOT, '|' - OR, '&' - AND. For example: ^(*xxx*|*buy*|*blow*) will ban all articles which contain xxx, buy, blow. But the extended wildmats can be used only inside the program, because newsservers don't understand them, so use them only in the selection, find dialogs and filters. '^' has the highest precedence; '&' has higher precedence than '|'.


<new topic>


How to activate the newsgroup window
In the newsgroups and servers window press the Enter key or doubleclick the left mouse button on the newsgroup you want to work with. The newsgroup window will appear.


Getting new headers; Cancelling this operation.
To start getting new headers press the Get New Headers button on the toolbar. After a while new headers will be filling the newsgroup window. See the Task Manager topic to learn how to monitor the process and to look after errors that arise during it (such as absence of a particular newsgroup on a particular server).

To cancel this operation press the cancel getting new headers button on the toolbar.

Opening or closing newsgroup views doesn't influence downloading new headers.

If you post an article and want to see if it is present on the newsserver for posting articles - you can press the get new headers for the posting server button on the toolbar to get new headers for the server only.

The rescan headers button is located to the right of the get new headers button. It is useful for fast synchronizing between the database and the current situation on servers. The operation deletes headers in the middle which were deleted on servers and adds headers for servers that added headers out of order.


Sorting, selecting and extracting subset of headers
Sorting, selecting, extracting and banning a subset of headers

In the newsgroup window the left column in the header is marked with a downward triangle by default. It means that the header records appear in the order of arriving, i.e. unsorted. You can sort the records by other criteria by pressing on the corresponding column in the header; pressing on the first column shows the records in the unsorted order. Repeated clicking a column in the header results in displaying the messages in the increasing/decreasing order alternatively; in the decreasing order an upward pointed triangle is shown.

You can select records manually like you are used to do it in the Windows Explorer, or you can invoke the selection dialog. In the selection dialog there is a possibility of step-by-step selecting and extracting records in the scope of the current view without influencing the newsgroup internal data; in this way you can see the same newsgroup in different views. Try the selection dialog, especially manipulating with the scope radio buttons to learn using it effectively.

Use the new window button on the toolbar to create a new view of the current newsgroup that contains all the headers available for this newsgroup. Use the clone current view button on the toolbar to create a new view that inherits the selection criteria of the current newsgroup view.

When you close the selection dialog or swithch to another newsgroup view of any newsgroup - the selections and extractions you've made are remaining to be associated with the newsgroup view that has been operated upon. You can switch views while the selection dialog is open.

The selection dialog can be closed by pressing the Escape key.


Searching
Press the Find button on the toolbar. The find dialog is similar to the selection dialog. Using it is straightforward. You can switch views while the find dialog is open. Use the selection dialog for more complex requests and extract subsets of headers conforming certain criteria.

The find dialog can be closed by pressing the Escape key.


Choosing an article for downloading; the state column in the newsgroup window
The left column in the newsgroup window is the state column. Clicking the left mouse button on it starts downloading the corresponding article. If it is not succeeded - the question mark will appear on this  place. If you click the left mouse button in this column while the corresponding article is in the process of downloading - the task will be cancelled.

To mark articles for download in the off-line mode - select the 'Suspend' mode in the connection properties, mark articles for download, then estabilish the connection. After the connection has been estabilished you can select the 'Suspend and Reconnect' mode if you want the lost connection to be restored automatically. Also in the 'Suspend' mode no articles will be lost in the case of the interrupted connection; when the connection is reestabilished - downloading articles will be resumed automatically as well as other kinds of tasks.


Downloading articles and many other entries in the context menu
Press the right mouse button in the newsgroup window. A context menu will appear. Press the Selected Headers entry. A simular submenu will emerge. The former menu is applied to the focused item i.e. to the item that is encircled by the focused rectangle. The latter menu is used for group operations upon selected items. You can use the selection dialog to select the group. You needn't  close the Selection Dialog or Find Dialog to work in the newsgroup window.


Partial messages - merging several articles into one
With the advanced support for partial messages a partial message appears as a one entry. The support can be disabled for selecting parts manually.

For reconstructing a partial message manually select the corresponding headers and click the multipart message entry in the selectied headers submenu of the context menu. A new article will be reassembled and included in the header list.

Incomplete partial messages may be reassembled in the following way - for such an entry use Selected headers > Multipart message (Alt-G) - all that for views with advanced partial support - a new article will be generated, reflecting the current state of the partial message.