knews - Online in the Cloud

This is the command knews that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


knews - Karl's threaded newsreader for X

SYNOPSIS


knews [ options ]

DESCRIPTION


Knews is a threaded newsreader with an X Window interface that uses NNTP to get news. This
manual is intended to explain things that are not apparent from the interface, so if you
just want to get started, you probably don't need to read this.

OPTIONS


In addition to the standard X Toolkit options knews accepts the following options, which
set various X resources. For an explanation of what the resources do, see the sections on
resources and the config file.

You don't have to type out the entire name of the option, as long as it is unique.

-nntpServer hostname
Sets the resource 'Knews.nntpServer' to 'hostname'. This will cause knews to
connect to this server on startup.

+/-bell
Sets the resource 'Knews.bell' to True/False.

+/-separate
Sets the resource 'Knews.separateWindows' to True/False.

+/-active
Sets the resource 'Knews.readActiveFile' to True/False.

+/-descriptions
Sets the resource 'Knews.retrieveDescriptions' to True/False.

+/-fill
Sets the resource 'Knews.fillNewsrcFile' to True/False.

+/-keep
Sets the resource 'Knews.keepThreadInfo' to True/False.

-install
This will make knews install its own colormap.

-visual class
-depth bits
These will set the resources 'Knews.visualClass' and 'Knews.visualDepth'.

+/-icase
Will set the resource 'Knews.icaseRegexps' to True/False.

+/-images
This will turn on/off inline images and color allocation.

-ncols number
Sets the resource Knews.nCols to 'number', which is the max number of colors knews
will allocate for inline images.

-version
Prints out the version and compile time to stderr and quits.

THE THREAD TREE


The articles in a thread are displayed as nodes in a tree. A border inside a node
indicates that the article is unread, a border outside a node indicates that the article
is 'tagged', and a dashed branch in the tree indicates a change of subject. By default,
you can scroll around in the tree with the middle mouse button. An empty box in the tree
indicates a 'fake' article, i.e. one that has expired on the server, has not yet arrived
or was posted in a different newsgroup.

TAGGING ARTICLES


Articles in the thread tree can be tagged with the third mouse button. Clicking on a
subject with the third mouse button causes the unread articles in that thread to be tagged
in preorder (depth first). Once you have tagged the articles, you can mark then
read/unread, save or pipe them in order, and so on.

CLICKING ON URLS


Knews supports a simple form of clicking on URLs. It works by selecting a piece of text
in the article text window and clicking on it with the middle mouse button. If there is
no selection, knews will make a crude guess as to what the URL might be. The resource
Knews.urlCommand must be set for this to work, see the section on X resources for details.

DRAG AND DROP


The all groups list and the kill list can be reordered by drag'n'drop. The default
translation is the second mouse button.

ABORT


You may abort the interaction with the NNTP server at any time. This causes the connection
to be closed, and a new one to be opened. Note that this puts a certain load on the
server.

THREAD AHEAD


Knews is capable of threading groups in the background while you are e.g. reading another
group. To do this you click on one or more groups in the group list with the right mouse
button. Knews then opens a second connection to the server and uses it to thread the
selected groups. The status of the thread ahead is shown in the group list as a
character:

- The group is scheduled for thread ahead.
* The group is being threaded.
+ The group has been threaded.

REGULAR EXPRESSIONS


The regular expressions used by knews are POSIX.2 extended regular expressions, similar to
those used by egrep(1), by default case insensitive. Note that these are not anchored by
default, so that e.g. the expression 'alt' will match any string containing the three
character sequence 'alt'. See Henry Spencer's excellent man-page for details, regex(7).

SEARCHING


Article heads and bodies may be searched for regular expressions. Searching applies to
read or unread articles as specified with the 'only unread' toggle, and starts with the
'next' article. The newsgroup list may also be searched.

Note: the 'Stop' button stops the search as soon as the current article has been retrieved
from the server. This is different from 'Abort' which requires closing and reopening the
connection to the server.

It is also possible to use XPAT searching, if the nntp server supports it. To do this,
you fill in the 'Header' field on the search popup with the header you're interested in
(e.g. 'Content-Type') and the wildcard field with a wildcard expression. Pressing
'Submit' then sends this to the server, and after a while it responds with a list of
matching articles. You can then move between those articles with the 'Next' and 'First'
buttons on the search popup.

FILE NAME EXPANSION


In most places where knews uses file names, such as the save/pipe popup, the save/pipe
action procedures, and the newsrcFile options etc, ~ is expanded to $HOME, and the
following %'s are expanded:

%% %
%n The name of the current group.
%N The name of the current group, capitalized.
%g The name of the current group, slashed.
%G The name of the current group, capitalized and slashed.
%s The name of the nntp server.
%p The number of the port the server listens to.
%a The number of the currently selected article.

Slashed means that the dots are replaced with slashes. Note that if you save an entire
thread to a file continaing %a, the number will not change with the article.

THE KILL FILE


The kill file may be used to 'kill' (mark read) or 'hot' (mark interesting) articles,
subjects and threads based on different criteria.

Each line in the kill file specifies an entry according to the following syntax:

(F)(S)(A)[Col] || Group regexp || Field expression

(F)
This is a character specifying to which header this entry applies. Legal values
are:

´M' The 'Message-ID:' header, by far the most efficient.
´S' The 'Subject:' header.
´F' The 'From:' header.
´X' The 'Xref:' header.

Note that 'X' only works if the 'Xref:' header is included in the overview files
from the server. Also note that the 'Re: ' prefix is not considered part of the
subject.

Entries applying to a message-id automatically expire when the relevant article has
expired.

(S)
This is a character specifying the scope of the entry, i.e. what articles are
killed/'hotted' when this entry applies to an article. Legal values are:

´A' This article.
´S' All articles with the same subject.
´T' The entire thread.
´t' The subthread starting with this article.

(A)
This is a character specifying the action of the entry. Legal values are:

´K' Kill, which means mark read.
´H' Hot, which means mark interesting.

[col]
In 'hot' entries, this is the color used to mark the relevant articles with.

||
This two character sequence is used as a separator.

Group regexp
Only newsgroups matching this regular expression will be affected by this entry.
This field is empty in the per-group kill files.

Field expression
If the header field is 'S', 'F' or 'X', this is a regular expression, and the entry
applies to all matching articles. If the header field is 'M', this is a message id;
this id is probably the fastest type of kill entry, since it can be checked with a
single hash lookup.

To see what articles were killed: when you have read all unread articles, or marked them
read, use the 'mark unread, killed' feature on the misc menu.

When a kill rule is applied, hot articles are not killed. Since the entries in the kill
file are processed in order, it is possible to put kills at the beginning, so that the
articles are killed before they have a chance to become hot.

There is one global kill file (~/.knews/.kill-%s by default) and one kill file per group
(~/.knews/%s/%g/KILL by default). The rules in the global kill file are applied before
the per-group kill file.

MIME VIEWERS AND MAILCAP FILES


Knews has internal support for content-types text/plain, message/rfc822, message/partial,
multipart/mixed and multipart/digest. For other types, knews will look for a mailcap
entry for that type (see mailcap(5)). If one is found, a clickable line will be inserted
in the article text window that is used to start the viewer. If there is no viewer, then
if the type is a subtype of text, knews will display it, if it is a subtype of multipart,
knews will treat it as multipart/mixed, and otherwise knews will give the user opportunity
to 'Save or Pipe'.

Mailcap files are found via the environment variable MAILCAPS, which is a colon separated
list of path names. If this variable is not set, a default list of

$HOME/.mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap

will be used. Note that all files found will be merged to produce the mailcap database.

As a hack around miss/over designed mailcap files, knews will ignore entries for
text/plain and multipart/mixed.

TEXT/PLAIN ARTICLES


The following resources determine how knews will display an article of type text/plain
with a particular charset:

Knews.charset.headerFont
Knews.charset.bodyFont
Knews.charset.quoteFont
Knews.charset.listFont
Knews.charset.treeFont
Knews.charset.encoding
Knews.charset.headEncHack

The header, body and quote fonts are used for displaying headers, ordinary text and quoted
text in the article window. Knews also has some support for encoded 16-bit charsets, this
is specified with the encoding resource. Legal values for this are:

utf-7 The encoding specified for unicode in rfc 1642.
16-bit Straight 16-bit network byte order.
hz-gb-2312 The encoding for chinese described in rfc 1842.
ksc-5601 Also called iso-2022-kr, described in rfc 1557.
big5 Another encoding for chinese.

Note that due to the authors non-existent understanding of asian languages these encodings
have not been extensively tested. Lots of guess work here.

For every newsgroup it is possible to specify a default charset (see the section on THE
CONFIG FILE). The fonts for this charset will be used to display articles without proper
MIME-headers. Also, the listFont and treeFont (which may not be encoded) will be used in
the thread list and article tree, respectively.

When specifying an encoded charset as defaultCharset, it may be desirable to still assume
that headers are ascii. This may be accomplished by setting the 'headEncHack' resource
listed above, and setting the headerFont to an ascii (superset) font.

MESSAGE/PARTIAL


Unless the config option assemblePartials is False (see the section on THE CONFIG FILE),
when knews encounters an article of type message/partial, it will be rememberered. When
all the parts have been seen, a notice will be popped up offering to assemble the parts.

There is also an entry on the misc menu that allows a number of articles to be tagged and
processed to look for message/partial articles.

POSTING MIME


When you post an article containing 8 bit characters that doesn't have a Content-Type
header, knews will add such a header with charset equal to the value of the defaultCharset
config option. Also, when quoting articles with Content-Type: text/plain and charset
equal to the defaultCharset, knews will decode the article before quoting. In both these
contexts, the charset iso-8859-1 will be used if defaultCharset is not set.

READING THE SPOOLDIR


Knews supports a rather obscure mechanism for communicating with an arbitrary program
instead of an nntp server. Using knewsd(1), this can be used for reading news
(in)directly from the spool dir, or even mail folders if they are in the correct format.
This is how it works: If the nntp server is given as #str, where str is an arbitrary
string not containing white space or the characters '/', '.' or '*', knews finds the value
of the resource Knews.#str and tries to execute that program. The program has its
standard input and output connected to knews. If you use this resource setting:

Knews.#spool: knewsd -spool /var/spool/news
-active /usr/local/news/active

with the appropriate paths for your system, you can read the spool directory by specifying
the nntp server as '#spool' in e.g. the connect dialogue. This could easily be used to
read mh(1) style mail folders too.

X RESOURCES


There are a number of X resources that affect the behaviour and appearance of knews.
Most widgets in the widget hierarchy has resources named background , foreground ,
shadowWidth , and so on. For more information see the application defaults file Knews.ad
included in the distribution. To get a feeling for resources, try editres(1).

Knews contains a small xpm-file to pixmap converter, so it is possible to use settings
like e.g.

Knews*backgroundPixmap: ~/pixmaps/texture.xpm

Knews.nntpServer
If this resource is set, knews automatically connects to this nntp server on
startup. This overrides the NNTPSERVER environment variable. If the server listens
to a non-standard port, you may specify this e.g as foo.bar:1234. If you don't want
knews to autoconnect, don't set this or $NNTPSERVER.

Knews.editCommand
This resource specifies the editor used to edit posts. Possible values include:

Knews.editCommand: xemacs +%i %s
Knews.editCommand: emacs +%i %s
Knews.editCommand: xterm -e vi +%i %s

%s stands for the name of a temporary file, and %i for the line where editing
should begin. The default value of this resource is a compile time option.

Knews.urlCommand
This command is used for clicking on URLs. %s is expanded to the URL, and the
result is passed to the shell. As a simple security measure, URLs will not be
allowed to contain quotes, parentheses, whitespace or ampersands.

Knews.printCommand
If this resource is set, the misc menu will have a print option which invokes this
command.

Knews.needsTerminal
Knews.copiousOutput
These are two shell command templates that will be used for mailcap viewers that
have the needsterminal or the copiousoutput flag set, respectively. In these, %C
will be expanded to the relevant mailcap command. An example should explain it:

Knews.needsTerminal: exec xterm -e /bin/sh -c '%C'
Knews.copiousOuptut: exec xterm -e /bin/sh '(%C) | less'

Knews.mimeTypes
This should point to a file whose contents maps filename extensions to mime types.
The syntax of this file is examplified by the following list of compiled in types:

image/jpeg jpg jpeg
image/gif gif
application/postscript ps

This is used to guess the Content-Type of attachments.

Knews.bell
Setting this resource to False will turn off the bell.

Knews.sortGroups
If this is set to True, knews will keep newsgroups alphabetically sorted when new
groups are subscribed.

Knews.separateWindows
Setting this resource to True will make knews use a different top level window for
the article text widget.

Knews.stderrTimeout
When knews starts a pipe or similar, it captures the standard error output and
displays it in a notice popup. This resource is the time in milliseconds this
popup should stay up. The default is 10000. Setting this to 0 means stay up
indefinitely, and negative means no popups.

Knews.showCache
If this is True, knews will show the state of the article caches in a small popup.
See the config options cacheAheadSize and cacheTrailSize for details.

Knews.mailName
If you have a mail address which isn't of the form 'userid@domain.name', you can
set this to the part of the address that goes before the '@', e.g.

Knews.mailName: FirstName.LastName

Note that your userid will still be used for the 'Sender' header if necessary.

Knews.useIcon
If this is set to True (the default), knews will use an icon.

Knews.confirmQuit
Setting this to True will make knews ask for confirmation before disconnecting or
quitting.

Knews.confirmCatchup
If this is set to True, knews will ask for confirmation before catching up a group.

Knews.confirmQuitGroup
If this is set to 'True', knews will ask for confirmation before leaving a group.
If set to 'tagged', knews will ask confirmation when exiting a group if there are
tagged articles.

Knews.visualClass class
Knews.visualDepth bits
If these are set knews will use a visual of the specified class and depth. Typical
values for depth are 8 or 24. Legal values for class are 'StaticGray)',
'GrayScale', 'StaticColor', ´PseudoColor', 'TrueColor' and 'DirectColor'. The
depth will be ignored if no class is specified.

Knews.installCmap
If this is set to True, knews will create its own colormap.

Knews.inlineImages
This boolean resource turns on/off inline images and color allocation. Knews can
show jpeg, gif and png images (if compiled with support for this).

Knews.nCols
This is the maximum number of colors knews will allocate for inline images. The
default is 137 (17 greys and a 5x5x5 color cube minus the 5 greys in that cube).

Knews.colorHack
If this is set to True, knews try to allocate the same colors as other programs
have already allocated, thus increasing the chances for color sharing. The number
of colors is controlled by the resource Knews.nCols.

The following resources can be used to change various color, font and geometry settings:

Knews*grouplist.preferredLines
Knews*grouplist.preferredColumns
These resources specify the number of lines and columns the grouplist widget will
start up with. The default is 14 for lines and 84 for columns.

Knews*text.preferredLines
Knews*text.preferredColumns
These resources specify the number of lines and columns the article text widget
start up with. The default is 32 for lines and 84 for columns.

Knews*ArtTree.nodeColumns
The width of the nodes in the article tree in characters. The default is 16.

Knews*rubberColor
The color used for rubberbanding in one or two widgets. The default is red.

Knews.headerColor
Knews.bodyColor
Knews.quoteColor
The colors used for headers, ordinary text and quoted text respectiely in the
article window.

Knews*innerColor
Knews*innerDashed
The color and line style used for the border of unread articles in the article
tree. The defaults are Red and False.

Knews*outerColor
Knews*outerDashed
The color and line style used for the border of tagged articles in the article
tree. The defaults are foreground and False.

Knews*ScrList.font
The font used in the lists.

Knews.defaultHotColor
The color used for hot entries in the kill file when the specified color is invalid
or cannot be allocated.

Some miscellaneous resources:

Knews.icaseRegexps
Setting this to False will make regular expressions case sensitive. They are case
insensitive by default.

Knews.readActiveFile
Knews.retrieveDescriptions
Knews.fillNewsrcFile
Knews.showNumberLines
Knews.keepThreadInfo
Knews.checkForNewGroups
These set the default values for the corresponding configuration options. Their
main purpose is to allow command line arguments. Read the section on the config
file for details.

Knews.newsrcTemplate
Knews.oldNewsrcTemplate
These set the default values for the configuration options newsrcFile and
oldNewsrcFile, the default values are ~/.newsrc-%s and ~/.oldnewsrc-%s. A value
not containing %s will not be accepted; if you want the traditional ~/.newsrc for a
particular server, see the resource Knews.configNntpServer below.

Knews.killFileTemplate
This sets the default value of the config option killFile. The default value is
~/.knews/.kill-%s.

Knews.groupKillFileTemplate
This is the template for the per-group kill file. The default is
~/.knews/%s/%g/KILL, so that e.g. the newsgroup news.software.readers will have
~/.knews/%s/news/software/readers/KILL as kill file, where %s is the name of the
server, as usual.

Knews.configFile
The configuration file used by knews. The default value is ~/.knews/config-%s, a
value not containing %s will not be accepted.

Knews.configNntpServer
Knews.configPostingAgent
Setting configNntpServer will make knews Do The Right Thing when the user first
connects to this server, which means setting the newsrc file for this server to
~/.newsrc when creating the config file.

If the configPostingAgent is set this will be used for the postingAgent config
option for the configNntpServer.

Knews.generatePath
If this is set to True, knews will generate a Path header for articles. The header
will be 'Path: d!u' where d and u are such that the From header generated by knews
would be 'From: u@d'.

Knews.autoSubscribe
The value of this resource will be used when creating a new newsrc file. If it
starts with a '/', it is taken as a pathname of a file whose contents will be
inserted into the new newsrc file, otherwise the literal value of this resource
will be inserted into the newsrc file. The default value is

news.answers:\nnews.newusers.questions:\n

Knews.bogusFileSystem
When knews checks for new groups, it uses the atime (time of last access) of the
config file. Some filesystems (e.g. AFS) have no concept of atime, but fakes it
with mtime (time of last modification) instead. Setting this resource to True will
make knews forcibly update the mtime of the config file.

THE CONFIG FILE


When knews connects to an NNTP server it reads a configuration file that will affect its
behavior. This file is by default called ~/.knews/config-%s where %s expands to the name
of the server, but this may be changed with the Knews.configFile resource.

The syntax of the config file is the same as for X resource files. When knews can't find
the configure file, a new one will be created containing some default settings and a few
examples settings that should be sufficient to clue you in as to how it works.

It is possible to used #include statements in the config file to include other files.
Relative pathnames are considered relative to the current working directory, which for
knews is always $HOME. ~ pathnames are not handled in #includes (if you want that you
have to hack Xlib).

The following global (i.e. per server) options exist.

newsrcFile
oldNewsrcFile
These specify the newsrc file and oldnewsrc file for this server. ~ pathnames and
the same % expansions as for saving are handled. If oldnewsrc is set to an empty
string, no backup of the newsrc file will be created.

The default values for these are the values of the resources Knews.newsrcTemplate
and Knews.oldNewsrcTemplate, whose default values are ~/.newsrc-%s and
~/.oldnewsrc-%s, respectively.

For a way of automatically using the standard file ~/.newsrc for a specific server,
see the resource Knews.configNntpServer above.

killFile
The kill file. The default value is the value of the resource
Knews.killFileTemplate, whose default value is ~/.kill-%s.

cacheDir
This directory is used for storing cached articles and thread data for groups. The
default is ~/.knews/cache-%s.

readActiveFile
Setting this to False will stop knews from reading the active file when connecting,
using the groups in the newsrc file instead. This will speed up connection on slow
lines if you don't have too many subscribed groups. The default is the value of
the resource Knews.readActiveFile, whose default is True.

retrieveDescriptions
A boolean option indicating whether to retrieve newsgroup descriptions from the
server. The default is the value of the resource Knews.retrieveDescriptions, whose
default is True. Setting this to False may slightly speed up connection time.

descriptionsFile
If this is set, the given file will be used to cache group descriptions: when
retrieveDescriptions is True, knews saves the descriptions to this file and when
retrieveDescriptions is False, knews reads descriptions from this file instead of
from the server.

fillNewsrcFile
Setting this to True will make knews write all groups it knows about to the newsrc
file, which may be a good idea if the option readActiveFile is set to False. The
default is the value of the resource Knews.fillNewsrcFile, whose default is False,
which means only put information in the newsrc file.

tryListActive
When this is True (the default) and readActiveFile is False, knews will try the
"LIST ACTIVE wildmat" nntp extension. If this fails knews will complain and fall
back to the old "GROUP" stuff.

checkForNewGroups
This is a boolean option indicating whether to check for new groups when connecting
to this server. The default is True. The atime (time of last access) of the config
file will be used for the check.

threadAheadGroups
This is a white-space separated list of groups to be automatically scheduled for
thread ahead when connecting. The special values 'all' and 'All' may be used to
designate all subscribed groups with unread articles and all subscribed groups,
respectively.

saveThreadInfo
Setting this to True will allow 'thread ahead' data to be saved between sessions:
knews will not remove the files with this data when quitting, and when connecting
knews will check for these files for all subscribed groups. If this is set, the
options threadAheadGroups and keepThreadInfo will be ignored.

rescanTimeout
This indicates the time in minutes between automatic rescans. The default is 60
minutes, 0 means no automatic rescans. Regardless of this, rescans will only be
performed at special points, to prevent a 'rescan-idle-rescan' loop.

groupNameColumns
The width of the group name in the group list, default is 42.

askHowMany
Setting this to True will make knews ask at which article the threading of a group
should start. A hack.

postingAgent
If this is specified, knews will use this for posting, instead of posting via NNTP.
If your server requires some kind of authentication that only inews understands,
you could set this to 'inews -h'. Note that inews appends the signature, so you
don't want knews to add one too.

Also see the resource Knews.configPostingAgent above.

authInfoPass
authInfoUser
These are used to implement the NNTP AUTHINFO USER/PASS protocol if required by the
server. These exist mostly for backward compatibility; authentication is usually
only required when posting, and then it is better to use inews for postingAgent,
since presumably inews knows all about the required authentication.

Here is an example of some settings that will improve things over a slow network
connection:

readActiveFile: False
retrieveDescriptions: False
descriptionsFile: ~/.knews/cache-%s/descriptions
fillNewsrcFile: True

but note that you will probably want to read the active file and group descriptions at
least the first time you connect to a server.

The following resources may be set on a per group basis; they should be prefixed with the
name of the group they apply to.

keepThreadInfo
This tells knews whether to keep thread information in memory after the group is
exited. This will make reentering the group fast. Legal values are: True,
Subscribed and False. 'Subscribed' means only do it if the group is subscribed, and
exists to allow settings such as:

*keepThreadInfo: Subscribed

to keep thread info for all subscribed groups. The default value for this option
is 'Subscribed' if the resource Knews.keepThreadInfo is set to True and 'False'
otherwise.

cacheAheadSize
cacheTrailSize
These two set the sizes of the two article caches, the defaults are 0. The 'ahead
cache' is used to prefetch articles from the server in the background using a
second connection. The 'trail cache' is used to keep articles that you have
already read, so that going back, saving or uudecoding will be faster. The maximum
values for these are 32.

sortThreads
This indicates how the threads should be sorted. A thread consists of several
subjects. These are sorted within the thread according to the order they occur.
Then the threads are sorted according to the setting of this option. The legal
values and their meanings are:

subject Alphabetically by the first subject in the thread.
size Number of unread articles in the thread.
full-size Number of articles in the thread.
hot Number of hot articles in the thread.
date The date of the first unread article.
average-date The average date of unread articles in the thread.
author Alphabetically by the first From: line in the thread.
none No sorting.

All these values may be prefixed with a minus sign to indicate a reversal of the
order, or a plus sign which is a no-op. The default value is none.

expireKills
Setting this to False will stop expirations from the kill file. The default is
True, which means that Message-id kills will expire when you enter a group where
the kill entry would have been applicable, but the article with that message-id was
not found.

attribution
This string is used to attribute quotations when you post a followup. The default
is

In article %m,\n %f writes:

where \n is a newline. The following %'s are expanded:

%% %
%d The date of the quoted article in the form 01 Jan.
%f The From: line of the article replied to.
%i The initials of the previous poster.
%I The initials of the previous poster, capitalized.
%m The message-id of the article replied to.
%n The current newsgroup.
%r The real name of the previous poster.
%s The subject of the quoted article.
%t The time of the quoted article in the form 18:24:02.
%w The week day of the quoted article.
%y The year of the quoted article.

Thus '%w, %d %y %t GMT' will give the date in standard rfc822 format.

fullName
This is the full name used in the 'From:' header in the articles you post. The
default is $NAME, if set, otherwise the gecos field from the password file,
suitably truncated.

headerFormat
A colon and white-space separated list specifying which headers to show in the
article window, and in what order. The default is

Subject:Newsgroups:Followup-To:Reply-To:
Content-Description:Date:Organization:From:

If the name of the header starts with a captial letter (From: as opposed to from:),
knews will decode rfc1522 encoded words encountered in this header. (Those are the
weird things that look like =?iso-8859-1?q?stuff_here?=.) Encoded 16-bit charsets
are not decoded in headers yet.

assemblePartials
This boolean tells whether message/partial articles will be remembered and offered
for assembly.

quoteRegexp
Lines in an article matching this regular expression will be considered quoted
lines, and may be marked with a different color and font. The default is

^[ \t]*[:>|]

which matches lines beginning with an arbitrary amount of white space (the \t
denotes a tab, note that \t won't actually work) followed by a >, : or | character.

You will probably want to have this expression anchored...

defaultCharset
The fonts for this charset will be used to display articles that lack MIME-headers.
If this is not set, us-ascii will be assumed.

Also, rfc1522 encodings of this charset in the From and Subject header will be
decoded when displayed in the article tree and the thread list. In this case,
iso-8859-1 is the default.

showNumberLines
A boolean option indicating whether to show the number of lines in articles in the
thread tree. The default is the value of the resource Knews.showNumberLines, whose
default is False.

signatureFile
The contents of this file will be used to sign the articles you post (before
editing). The default is ~/.signature.

subjectColumns
The width of the subject in the thread list, default is 56.

quoteString
quoteQuoteString
These strings are used for quoting when posting a followup article; the first one
are used to quote lines that were not quoted in the original article, and the
second one is used for lines that were already quoted. What lines are considered
quoted is determined by the quoteRegexp. The defaults are "> " and ">"
respectively. In these strings, %i is expanded to the initials of the previous
author and %I to the initials, capitalized.

postedAndMailed
This string will be instered into articles that are also mailed to the previous
author. The default is "[posted and mailed]".

distribution
If this is set, it will be used as the content of a 'Distribution' header. The
default value is the value of the environment variable DEFNEWSDIS if set, otherwise
empty.

fullHeader
A boolean specifying whether to show all headers in the article window. It also
means turn off all MIME transformations. The default is False.

replyTo
A string used to construct the 'Reply-To:' header in the articles you post. The
default is the value of the environment variable REPLYTO if set, otherwise empty.

organization
A string used to construct the 'Organization:' header in the articles you post. The
default is $NEWSORG if set, otherwise $ORGANIZATION if set, otherwise nothing.

processXrefs
If this boolean is True, as it is by default, articles that are crossposted will be
marked read in all groups when you read them, mark them read, kill them or catch
them up.

Note that this only applies to subscribed groups, and will only work if the
server's overview file contains the Xref: headers.

extraHeaders
This string is inserted into the head of all articles you post (before editing).
The default is empty. This could be used to put in Mime headers, like this:

*extraHeaders: Content-Type: text/plain; charset=iso-8859-1

followupHeaders
This is a combination of extraHeaders and attribution: it is inserted in the
headers of replies and followups and the same %'s as in attribution are expanded.
An example:

*followupHeaders: X-Comment-To: %r

uuDir
Uudecoded files will end up in this directory. Or rather, the forked off
uudecoding process will be given this as its current working directory. The
default is ~/News.

uuProgram
This program will be used to uudecode files: it will be given the bodies of the
relevant articles on standard input. The default is NULL, which means that knews
will do its best to filter out garbage and then pipe the rest to 'uudecode'.

Here is an example of how to set different signatures for different newsgroups:

swnet*signatureFile: ~/.signature-svensk
de*signatureFile: ~/.signature-deutsch
*linux*signatureFile: ~/.signature-linux

The first sets the file ~/.signature-svensk for all groups in the swnet hierarchy, the
second one sets the file ~/.signature-deutsch for the de hierarchy, and the last one sets
the file ~/.signature-linux for any group containing linux as a component (not merely a
substring). The file ~/.signature will be used for all other groups.

ACTIONS


Knews defines a number of actions that can be tied to keys and buttons via translations.
For the default translations, see the application defaults file.

do-the-right-thing()
Does the right thing.

kill-append(field, scope [, color])
kill-prepend(field, scope [, color])
These action procedures append and prepend respectively entries to the kill file
for the current group according to the currently selected article.

Valid values for the 'field' parameter are "From", "Subject" and "Message-Id", and
valid values for 'scope' are "Thread", "Subthread" and "Subject". If the color
parameter is present, the entry added is a hot-entry with that color, otherwise it
is a kill-entry.

It is probably a good idea to use these with field = "message-id", since message-id
kills are very efficient and expire with the corresponding article.

popup-kill([group])
This will popup a kill file editor for the supplied group. If no group is given,
the editor for the global kill file is popped up.

mime-hack(content-type, content-transfer-encoding)
This action procedure reloads the current article, pretending it had the specified
Content-Type and Content-Transfer-Encoding headers. For example mime-
hack(image/jpeg, uue) reloads the current article pretending it has Content-Type
image/jpeg and is uuencoded, thus makeing knews display it as an inline image.

The default key-bindings have the following:
ctrl-J mime-hack(image/jpeg, uue)
ctrl-G mime-hack(image/gif, uue)
ctrl-P mime-hack(image/png, uue)

tree-up(arg)
tree-down(arg)
tree-left(arg)
tree-right(arg)
tree-down-right(arg)
These move around in the thread tree. If the arg is 'read', they will also read in
the relevant article, if arg is 'fake', they will also try to read 'fake' articles.

list-up(arg)
list-down(arg)
These move up and down in the lists. If arg is given, it is the number of steps, or
if it contains a '.', the fraction of the window to move.

enter-mode()
exit-mode()
These two actions moves between modes.

tree-or-list-up(arg)
tree-or-list-down(arg)
tree-left-or-exit-mode(arg)
tree-right-or-enter-mode(arg)
These are combination actions. E.g. tree-or-list-up(arg) does tree-up or list-
up(1), depending on which is relevant.

read-article(arg)
This rereads the current article. If arg is given, the article is displayed with
full header and no MIME transformations.

view-thread(arg)
This moves between the subject list and the thread tree. If arg is 'toggle', it
toggles, if arg is 'yes' it goes to the tree, and if arg is 'no', it goes to the
subject list.

followup(arg)
reply(arg)
followup-and-reply(arg)
post-new()
These correspond to the options on the post menu. If arg is given as 'yes' or 'no',
it indicates whether to include quoted text.

uudecode()
clear-tagged()
mark-read-article()
mark-read-subject()
mark-read-thread()
mark-read-subthread()
mark-read-to-current()
mark-read-all()
mark-read-tagged()
mark-read-non-tagged()
mark-read-cold()
mark-unread-article()
mark-unread-subject()
mark-unread-thread()
mark-unread-subthread()
mark-unread-all()
mark-unread-tagged()
mark-unread-killed()
These perform the corresponding functions on the misc menu.

pipe(command, parts [, scope])
save(filename, parts [, scope])
Pipe and save actions. The argument 'parts' is a combination of the characters
'f', 's', 'h', 'b', 'e', corresponding to the 'bogus from', 'bogus subject',
'head', 'body' and 'empty line' options on the save popup window. The 'scope'
parameter is optional, and is one of 'window', 'article', 'subject', 'thread',
'subthread' and 'tagged', corresponding to those options on the save popup.

tag-thread([all])
tag-subject([all])
These tag the unread articles in a thread or subject. If 'all' is specified, they
tag all articles in the thread or subject.

untag-thread()
untag-subject()
These untag the tagged articles in a thread or subject.

tag-hot()
This action tags all unread hot articles, same as on the misc menu.

catchup()
unsubscribe()
subscribe()
Guess what.

change-size(pixels)
Changes the size of the upper portion of the main window by the specified number of
pixels.

schedule-thread-ahead()
Causes a group to be scheduled for 'thread ahead'.

popup-find-group()
Popups the 'find group' popup, same as the 'find group' option on the misc menu.

WIDGETS


The X interface of knews is built with its own widget set plus the Layout Widget. You are
welcome to use it if you like. Unfortunately there is no documentation.

Use knews online using onworks.net services



Latest Linux & Windows online programs