# The Advanced &knode; Features

## Defining and Using Filters

You may already have read about using filters in the chapter explaining the configuration of &knode;; there, we were talking about the built-in filters provided by &knode; there. You can configure the built-in filters like all the others. The screenshot below shows the dialog box for configuring the filters.

While filters and scoring are very powerful and have many uses, one of the most common requirements is simply to add all posts written by someone you don't wish to read to a killfile. At the end of this section is a quick guide to using filters and scores to create such a killfile.

The New Filter dialog
The New Filter dialog

The New Filter dialog

First we will create a new filter. You may, at some point, want to find your own articles amongst all the others; or, you may not want to see the articles posted by a particular person at all: both cases can be solved by a simple filter on the Sender. Here are some examples:

### Do Not Show The Articles by a Particular Person

1. Settings Configure KNode...Reading News Filters

2. Select New...

3. Insert `Do not show idiot` in the Text Box Name

4. To make the filter appear on the menu, check Show in menu.

5. Go to the From area.

6. Choose Does NOT contain from the drop-down box.

7. Insert the name of the person you want to ignore in the now- active Text Box; for example, `Idiot`.

8. Confirm the filter settings with OK.

The filter now shows all articles, except the ones containing Idiot in the From: line.

You can combine the settings of the 'Subject + From' tab with the settings on the other tabs. For example:

### Show only discussion with unread follow-ups on own articles.

1. Settings Configure KNode...Reading News Filters

2. Select the predefined filter threads with own articles

3. Select Copy

4. Insert `My threads with unread` in the Name field.

5. Select the Status tab

6. Select has new followups

7. Select true in the drop-down box next to it.

8. Confirm the filter settings with OK

   This filter shows all the threads your are participating in which have unread messages; also, you have seen the possibility of using existing filters as a base for new ones: this makes life easier for complex filters.

### Show all articles, no older than 3 days, containing KNode in the subject.

1. Settings Configure KNode...Reading News Filters

2. Select Add

3. Insert `Latest KNode threads` in the Name field.

4. To make the filter appear in the menu, check show in menu.

5. From the apply on drop-down box select single articles

6. Go to the Subject area and select does contain in the drop-down box.

7. Insert `knode` in the text box.

8. Change to the Additional tab

9. Select the Age check box

10. Enter the following settings: 0 < days <= 3

11. Confirm the filter settings with OK

    This filter, now, shows all articles, no older than 3 days, containing knode in the subject.

### Creating a Killfile

&knode; offers viewing filters (all, unread only, my posts, &etc;) and scoring filters (threads and articles start with a score of zero and can be adjusted according to author, thread, &etc;).

Using viewing filters you could hide articles according to poster, but this is not really suitable when you want to kill several posters universally.

Using the scoring gives lots of control but filters only at the thread level, i.e. you can watch and ignore threads; the disadvantage of this, however, is that you may lose otherwise-useful threads just because of one poster.

The solution is to use these in combination.

#### Creating a Killfile

1. Go to Settings Configure KNode Reading News Filters.

2. Create a new filter below unread, called `killfile on`. Be sure that Apply to single articles is set and then click on the Additional tab. Set score equal to or less than zero (<=); then click the OK until you have exited the dialog.

3. Open an article whose author should be killed and just type &Ctrl;L (or select, from the Scoring menu, Lower Score for Author). This opens the Rule Editor (a part of scoring). You can optionally give the rule a name that matches the author (`Kook`, for example.) and then, if this is to be permanent, uncheck the Expire rule automatically box; you'll see that this rule will change the author's score to minus ten (or the score you entered); finally, click OK.

4. Go to the menu item View Filter killfile on .

This will cause any articles with scores less than zero will disappear; to kill additional authors you only need repeat the &Ctrl;L part of these instructions.

## The Composer

The &knode; composer provides many features, especially for posting and replying to articles.

### Publish Articles in Multiple Newsgroups

By selecting the Button Browse you can choose additional newsgroups you want to publish your article in.

It is generally undesirable to post articles in multiple newsgroups: please think twice about it; if you are not sure where to post your article ask in one of the possible groups — somebody will tell you were to post.

### Redirect Followups

The main use of this feature is when a thread has gone off topic for the newsgroup in which it is posted; for example, a thread may start in a &kde; newsgroup discussing how to redirect a followup in &knode;, but may leads to a dicussion about graphical and text based newsreaders.

Sometimes it happens that usenet users post an article into the wrong newsgroup; very often those articles are just ignored. If it looks like the author did this unintentionally, you might like to tell them politely and make the followup articles go into the right group.

Another reason for using Followup-To: is a when dealing with articles cross-posted across in multiple newsgroups: you should take care that the replies are only posted in one single newsgroup.

You can activate this by filling the text box Followup-To:; here you can enter the suitable group. If there are multiple newsgroups in the Groups: field, they are shown in the drop-down list.

If you enter `poster` here, instead of a newsgroup, the replies will go directly to the author, not to the newsgroup.

Some people put an email address here, but this is not a valid entry: use `poster` and correctly set your Reply-To address in the normal &knode; settings.

### Working With an External Editor

Using Tools Start External Editor you can start an editor of your choice for editing the reply; this way you can use your preferred Editor for writing articles and e-mails.

### Spelling

By selecting Tools Spelling, you can check the article in the composer for spelling errors.

### Sending Attachments

By selecting Attach Attach File you can open the File Selection Dialog Box; here you can choose the file you want to attach.

Most of the time, &knode; determines the correct MIME type for the attachment; if &knode; detects it incorrectly, you can correct the MIME type manually.

This screenshot shows the Composer with 2 attachments: a text file and a PNG picture.

Sending Attachments
Sending Attachments

Sending Attachments

Only do this if you know what you're doing! An incorrect MIME type could cause the attachment to be sent incorrectly, or mean that the attachment will not be able to be rebuilt after sending.

The English word attachment is used all over the world; you can use it in your language, too.

In most newsgroups, attachments are prohibited: do not send unsolicited attachments; if you are asked to send them, look who is asking for them — normally, the person will want you to send them by email.

The news server will probably reject articles with attachments for most groups anyway; those that do accept attachments normally have the word binaries in their name. Some news servers even stop carrying non-binaries newsgroups that continuously receive attachments.

## Searching for Articles

Sooner or later, you will want to search for one specific article; the &knode; search feature is an easy way to do this.

You can reach the search function by selecting Edit Search Articles... or the by pressing F4. The screenshot below shows the Search Dialog Box.

The Search Dialog Box
The Search Dialog Box

The Search Dialog Box

The Search Dialog Box has four tabs which allow several search criteria: the first tab contains the settings for the Subject and From criteria; the second tab contains the settings for the Message-IDs of an article and its references; the third tab contains the settings for the Status of an article; the fourth tab, Additional, contains the remaining criteria.

You have probably already noticed the similarities between the Filter Dialog Box and the Search Dialog Box: the usage is the same and should not be too complicated if you have already defined your own filters.

&knode; always searches in the currently-active newsgroup; a search in all newsgroups is not possible at the moment. After the Search has finished the articles found appear in the article view; when you close the Search Dialog Box using Close the search results are deleted, and the old view of the newsgroup appears again.

### Search

With this button you start the Search with the search criteria you defined; all articles in the selected newsgroup, fulfilling these criteria, appear in the article view.

### Clear

This button resets all search criteria.

## Supersede and Cancel Articles

This chapter deals with superseding and canceling articles. You will not use these two features very often, but they do exist should you, one day, need them.

Both functions need a news server prepared to handle them; you should also remember that there is no guarantee that no one has already read your article before it is superseded or canceled.

So first think, then post.

### Cancel

Canceling an article means deleting it from the newsgroup.

Why should you want to cancel an article? Perhaps you flamed somebody in a rage and now you want to get this article out of the newsgroup because you regret what you wrote: a personal insult, read by everybody, doesn't look good, especially when you regret it; so, there is only one thing you can do — cancel the article.

Select the article you want to cancel and choose Cancel article from its context menu. If you are sure it is the right article, confirm &knode;s question with Yes. Now you will be asked if you want to send the Cancel message now or later; for this example we decide to send it Later. You will notice the new message in the folder Outbox.

Now we want to look at the so-called cancel message. In the subject you will find something like:

    cancel of <n177m8.1m.ln@konqui.org>

This strange letters between the brackets are the Message-ID of the article you want to cancel. This message tells the newsserver to delete your article: if you look at complete header of this message, by selecting View Headers All Headers, you will notice a line with the name control and the content cancel <xxxxx@ddddd.dd> — this line tells the server that this message is a control message and, in our case, tells the server to cancel your article.

You can still delete the control message from the Outbox should you change your mind.

Keep in mind that articles can only be identified by their Message-IDs; you need this Message-ID if you want to cancel an article. Normally, your article gets a Message-ID when it arrives at the newsserver — that's why you can only cancel an article once it has been published. The articles in the Sent folder have no Message-ID, so you cannot cancel them from there.

There is one exception: if you have configured &knode; to generate a Message-ID you can cancel you articles in folder Sent too.

&knode; allows only to cancel your own articles: it refuses to cancel articles from other authors.

Since the cancel feature is so easily fooled, by newsreaders that let you cancel any post, many news servers do not acknowledge cancel messages from posters; even if your own ISP accepts the cancel and passes it on, many other servers will ignore it and will not pass it on.

You should consider any previously-sent article, canceled or not, to be published and publicly available.

### Supersede

Supersede overwrites your article with a new version. One reason for doing this could be:

You have written a long article and have already posted it; now, you have found an error in this article: you could cancel this article, and post a new, corrected, article; or, you can use Supersede.

Select the article in the article view. From its context menu select Supersede article.... &knode; will ask you if you really want to overwrite this article; if you confirm with Yes the Composer appears.

In the Composer you can now make the desired corrections and changes. You can then publish this article in the same way as you post every other article; when the newsserver receives this article it reads some special lines in the header which tell the newsserver to supersede the older article. Select File Send Later for now, because we want to look at the article's header in the Outbox.

Activate View Headers All Headers, because we want to see all the headers the newsserver receives. You will notice a line like:

Supersedes: <oggcm8.4n5.ln@konqi.org>

This is the instruction for the newsserver for superseding the article with the Message-ID <oggcm8.4n5.ln@konqi.org> with the new article.

Besides this, Supersede is used for periodical posted articles, &eg; an FAQ. The new article supersedes the old one and the newsgroups do not end up with lots of different versions.

Again, using this function is only possible if the article already has a Message-ID. Normally, articles get their Message-ID from the newsserver: this means that you can only supersede articles which have already been published.

You can configure &knode; to generate this Message-ID, then you can supersede your articles in the folder Sent, too.

&knode; allows you to only supersede your own articles.

As with cancels, supersede messages have been abused in the past, with, for example, certain parties sending hundreds or even thousands of them to overwrite legitimate posts with random computer generated junk; again, as with cancels, many news servers do not honor supersede messages, nor do they pass them on.

## Score, watch, ignore

Score, Watch and Ignore are different names for the same feature.

By scoring a thread, you determine its importance. &knode; allows scores between -100000 and 100000. A normal article will get a score of 0 if you do not change this; threads with a score below 0 are less important than average; threads with a score above 0 are more important than average.

The score is an attribute of the thread and the articles in this thread, so you can use the score for filtering and searching articles; for example, you can define a filter to show only articles with a score > 0, i.e. all articles in which you are specifically interested.

The function Watch sets the score of all article in a thread to 100; this way they get a high score and &knode; labels them with a special icon.

The function Ignore does the opposite: it scores all articles in a thread with -100 so &knode; does not show these articles anymore.

The English word scoring is used in many other countries, too.

You can score an article or a thread manually with the right mouse button or with the Scoring menu — here you can score with Watch Thread and Ignore Thread directly. Apart from scoring manually you can let &knode; score the articles with scoring rules automatically; you can configure these rules at Settings Configure KNode...Reading News Scoring or at Scoring Edit scoring rules... — the only difference between these dialogs is that the last one has the rule-list next to the rule configuration. In the following guide I'm using the editor that appears if Scoring Edit scoring rules... is chosen.

The Rule Editor
The Rule Editor

The Rule Editor

The composer consists of 4 areas: on the left side is the list of the rules; with the buttons below the list you can add, delete or copy an existing rule; below that you have the possibility to limit the rules which are shown — you have the choice whether to show all rules or only the rules for a specific newsgroup.

If you choose a rule-name in the list the rule will be displayed on the right-hand side; now you can edit the rule. At the top you can change the name of the rule and set the newsgroups to which this rule applies. You can choose one or more than one group, note that group names must be separated by a semicolon. You can choose from the subscribed groups with the drop-down list and the Add group button; or you can use regular expressions and wild cards, &eg; .* for all groups. The Expire rule automatically option makes it possible to delete the rule automatically after the configured number of days; this is useful if a specific person behaves badly and you do not want to read anything from this person for a few days.

In the Condition field you enter the condition on which this rule is activated. Normally, you can enter only one condition, but you can change this by pressing the More and Fewer buttons. If you have more than one condition, you must tell knode whether all conditions need to be fulfilled or only one of them; this can be done by choosing Match all conditions or Match any condition respectively.

Each condition consists of 2 drop-down lists and a text field. In the first list you chose the part of the message which should be used for the condition — this part will be compared with the text field; the second drop-down list tells &knode; how it is to be compared, for example, whether the chosen header should be identical to the text entered in the text field, or if it just needs to match part of it. Regular expressions are allowed, too. If you check Not then the conditions under which the condition is satisfied are reversed, and the condition will be satisfied if the opposite of its shown conditions is true.

Now, let's have a look at some examples.

- Maybe you want to filter away all the postings by Theodor Test; to do this choose the From header line from the first drop-down list, choose is exactly the same as from the second drop-down list, and enter his name in the text field. But, before doing this you should have a look at the header of one of Theodor's articles and see what is in the From line.

- If you do not want to read articles with more than 100 lines, choose the header entry Lines from the first drop-down list, choose greater than from the second, and enter `100` in the text field. You probably, then, want to score down the message.

- Last example: of course, you're very interested in every article that refers to &knode;. Choose the header entry Subject, then contains substring and enter `knode` in the text field. But what do you do if &knode; is not mentioned in the Subject? I suggest using a regular expression: change contains substring to matches regular expression and type `knode|newsreader|usenet` into the text field to match either knode, newsreader or usenet — the `|` symbol means OR. Alternatively, you can make 3 conditions — one that matches knode, one that matches newsreader and so on — and choose Match any condition; but, this needs a lot of space and it is not very elegant, is it?

Once your condition is ready you should set an action down in the Actions section. The most important action is adjust score; if this action is chosen you can raise or lower the score, by the configured value, for articles to which this rule applies. &knode; can also show you a little message when finding such an article or colorize the header in the article list; for example, you could make interesting articles screaming pink so you would notice them very quickly.

When leaving the editor, or when the Scoring Recalculate scores menu item is chosen, the rules are executed; furthermore, the rules are automatically used for new articles. Scoring makes the most sense when used with filters: by scoring some articles down and filtering them away they won't appear in the article list.

## Group identities

With &knode; you can use a different identity with every newsgroup to which you are subscribed; i.e. you can set a name, email address, reply-to address and signature to use with that group.

It is easy to set group identities. First, with the right mouse button, click on the name of the newsgroup in which to have a different identity in; then, select Group Properties from the context menu that appears. In the dialog that appears the second tab contains fields identical to the global identity settings; enter your settings here and click OK to confirm the changes: then, your articles in this group will always posted with this newly-entered identity.

When you unsubscribe from a group you lose its identity settings for this group: if you re-subscribe to the group, you will need to re-enter its identity settings. For new newsgroups, the global identity is used.

## Managing Multiple News Accounts

&knode; can handle an unlimited number of news server accounts in addition to your main news server; most users don't need this feature, but it can be very useful to if your main newsserver does not provide all groups you want to read. Typical cases of this are when support groups for commercial software are hosted on a special, private, server or binary newsgroups, which are only available from some servers.

Another example of why you sometimes need more than one newsserver is that sometimes not all interesting newsgroups are on one server; in fact, there is very often only a selection of newsgroups. For example, many servers do not support binary groups with pictures or programs; if you want such a newsgroup and your newsserver provider does not want to serve it you can configure &knode; to get it from another server.

Or, perhaps you find you are just subscribed to too many newsgroups, and would like to organize them a little better; you could set up several accounts for the same server, perhaps one for groups you read every day, and one for groups you read less often, so that you do not have to search for your everyday groups in a long list of subscribed groups.

In order to add an new account, open the preferences dialog via Settings Configure KNode...Accounts Newsgroup Servers . The New button creates a new account; you then have to enter the same data as for your first account, typically a name for the account, the host name, and a user name and password if the server requires authentication. When this is done the new server will appear both in the configuration dialog and in the group view: you can now subscribe to newsgroups.

You can delete the currently-selected account by pressing the Delete button.

In the Account properties dialog (available from the context menu of the newsserver) you can setup an identity for use only on this newsserver.

## Sign and Verify Articles with PGP

PGP is the most-widespread method used to encrypt or sign data. Using the PGP-signature you can verify if an article is really from the original author or if it has been changed by others. You can find PGP-programs and guides at http://www.pgpi.org.

With &knode; you can sign an article with PGP and to verify PGP-signed article. After you have configured the PGP support, at Settings Configure Knode...Signing/Verifying, you can sign articles in the editor with the Tools Sign article with PGP menu item — you will be asked for your passphrase and after that the article will be signed.

Your GnuPG/PGP ID is automatically built from your name and your email address and is identical to the sender of the message (From-header).