tin

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
NEWS ADMINISTRATION
SCREEN FORMAT
COMMON MOVING KEYS
COMMON EDITING COMMANDS
GLOBAL COMMANDS
NEWSGROUP SELECTION COMMANDS
GROUP INDEX COMMANDS
THREAD LISTING COMMANDS
ARTICLE VIEWER COMMANDS
GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES
GROUP ATTRIBUTES
FILTERING ARTICLES
POSTING ARTICLES
CUSTOMIZING THE ARTICLE QUOTE STRING
MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES
AUTOMATIC MAILING AND SAVING NEW NEWS
RANGES
SIGNATURES
TIPS AND TRICKS
XTERM BUTTONS
INDEX FILES
ENVIRONMENT VARIABLES
FILES
BUGS
HISTORY
CREDITS
AUTHOR
MAINTAINER

NAME

tin, rtin, tind − A Usenet newsreader

SYNOPSIS

tin [[−h|−H|−V] | [[[−a] [−dlnq|-Q] [−ArzX]] [[−R|-S] -s News-dir] [−cuvUZ] [−N|-M address] [−o|−w]] [−D debug-level] [−G article-limit] [−f newsrc-file] [−g server] [−m Mail-dir] [−p port] [−I index-dir] [newsgroup[,...]]]

rtin [[−h|−H|−V] | [[[−a] [−dlnq|-Q] [−AzX]] [−cvZ] [[-S] -s News-dir] [−N|-M address] [−o|−w]] [−D debug-level] [−G article-limit] [−f newsrc-file] [−g server] [−m Mail-dir] [−p port] [newsgroup[,...]]]

tind [[−h|−H|−V] | [−d|−P|−v] [−D debug-level] [−G article-limit] [−f newsrc-file] [−I index-dir]]

DESCRIPTION

tin is a full-screen easy to use Usenet newsreader. It can read news locally (i.e., /var/spool/news) or remotely (rtin or tin -r option) via a NNTP (Network News Transport Protocol) server. It will automatically utilize NOV (News OVerview) style index files if available locally or via the NNTP XOVER command.

tin has four separate levels of operation: Group selection level, Group level, Thread level and Article level. Use the ‘h’ (help) command to view a list of the commands available at a particular level.

On startup tin will show a list of the newsgroups found in $HOME/.newsrc. An arrow ’->’ or highlighted bar will point to the first newsgroup. Move to a group by using the terminal arrow keys (terminal dependent) or ‘j’ and ‘k’. Use PgUp/PgDn (terminal dependent) or Ctrl-U and Ctrl-D to page up/down. Enter a newsgroup by pressing <RETURN>.

The <TAB> key enters the next newsgroup with unread articles.

OPTIONS

-a

Toggle ANSI color (default is off).

-A

Force authentication on initial connect.

-c

Create/update index files for every group in $HOME/.newsrc or file specified by the ‘‘-f’’ option and mark all articles as read.

-d

Don’t load newsgroup descriptions (interactive mode).

Delete index files for each group before indexing article (tind index daemon only).

-D debug-level

Enter debug-level (1 = NNTP, 2 = all).

-f file

Use the specified file of subscribed to newsgroups in place of $HOME/.newsrc.

-g server

Use the server and newsrc specified in $HOME/.tin/newsrctable.

-G article-limit

Limit the number of articles/group to retrieve from the server.

-h

Help listing all command line options.

-H

Brief introduction to tin that is also shown the first time it is started.

-I dir

Directory in which to store newsgroup index files. Default is $HOME/.tin/.news. This option is disabled if tin is compiled as reading news via NNTP only.

-l

Get number of articles per group from the active file - this might result in incorrect article counts but is usually faster than the default which is to read the active file and then check the article count via a GROUP command ‘‘-ln’’.

-m dir

Mailbox directory to use. Default is $HOME/Mail.

-M user

Mail unread articles to specified user for later reading. For more information read section AUTOMATIC MAILING AND SAVING NEW NEWS.

-n

Only load groups from the active file that are subscribed to in the user’s $HOME/.newsrc. This allows a noticeable speedup when connecting via a slow line, but tin cannot tell which groups are moderated.

-N

Mail unread articles to yourself for later reading. For more information read section AUTOMATIC MAILING AND SAVING NEW NEWS.

-o

Quick post all postponed articles and exit.

-p port

Port to use if reading via NNTP (default is 119). This also overrides the environment variable $NNTPPORT if set.

-P

Purge group index files of articles that no longer exist. Care should be taken when using this command as it checks each and every article in each group that is accessed. On a low speed connection this can have an undesirable effect and it also knocks the hell out of your file-system (tind index daemon only).

-q

Don’t check for new newsgroups.

-Q

Quick start. Start tin as quickly as possible. Currently this is equivalent to ‘‘-nqd’’.

-r

Read news remotely from the default NNTP server specified in the environment variable $NNTPSERVER or contained in the file /etc/nntpserver.

-R

Read news saved by the ‘‘-S’’ option.

-s dir

Save/read articles to/in directory. Default is $HOME/News.

-S

Save unread articles for later reading by the ‘‘-R’’ option. For more information read section AUTOMATIC MAILING AND SAVING NEW NEWS.

-u

Create/update index files for every group in $HOME/.newsrc or file specified by the ‘‘-f’’ option. This option is disabled if tin retrieves its index files via a NNTP server.

-U

Start tin in the background to update index files while reading news in the foreground. This option is disabled if tin retrieves its index files via a NNTP server.

-v

Verbose mode for ‘‘-c’’, ‘‘-M’’, ‘‘-S’’, ‘‘-u’’ and ‘‘-Z’’ options.

-V

Print version and date information.

-w

Quick mode to post an article and then exit. In order for this to be quick, tin is started in the same way as with ‘‘-n’’ and so only those groups in the newsrc are available for posting.

-X

No-overwrite mode. $HOME/.newsrc and files in $HOME/.tin will not be overwritten but may be created if they don’t exist.

-z

Only start tin if there is any new/unread news. If there is news tin will position cursor at first group with unread news. Useful for putting in login file.

-Z

Check if there is any new/unread news and exit with appropriate status. If ‘‘-v’’ option is specified the number of unread articles in each group is printed. An exit code 0 indicates no news, 1 that an error occurred and 2 that new/unread news exists. Useful for writing scripts.

tin can also dynamically change its options by the ‘M’ menu command. Any changes are written to $HOME/.tin/tinrc. For more information see section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES.

The index daemon version, tind, supports the ‘‘-d’’, ‘‘-f’’, ‘‘-h’’, ‘‘-I’’ and ‘‘-v’’ options.

A list of groups can be specified after the other command line options. This can be useful if you wish to yank in or subscribe to a hand-picked subset of the active newsgroups. The list may include the usual newsgroup wildcard characters. It can be comma or space separated, eg:

alt.config news.*,!news.test

If you specify a single group-name, or a wildcard that matches a single group, then you will automatically enter that group. Otherwise the normal group selection screen will appear, but with all the matching groups present too, as though you had yanked just those groups in.

Once you use ‘y’ to yank in all active groups, or ‘r’ to toggle the read/unread status, then the command line groups will be gone. You can use ‘Y’ to reread the active file and get them back.

NB: With the ‘‘-n’’ flag, only unsubscribed groups in the $HOME/.newsrc file (or the newsrc-file given by the ‘‘-f’’ command-line switch or via $HOME/.tin/newsrctable) can be matched.

NEWS ADMINISTRATION

Maintaining Netnews on large networks of machines can be a pretty time consuming job as I discovered when I was given the job of maintaining our news system and news users.

A user starting tin for the first time can be automatically subscribed to a list of newsgroups that are deemed appropriate by the news administrator. The subscriptions file should be created in your news lib directory (i.e., $NEWSLIBDIR/subscriptions) and should have file permissions set to 0644. If you read news via NNTP, then your news server must support the LIST SUBSCRIPTIONS command. It is part of the Common NNTP Extensions and all modern servers should understand it.

SCREEN FORMAT

tin has four separate levels of operation: Selection level, Group level, Thread level and Article level.

At the Group Selection level the title displays (the name of the newsserver and) the number of subscribed groups (containing new unread articles). The newsgroups are displayed in the middle of the screen with the number of unread articles displayed on the same line in front.

->M    1     2  comp.security.announce  Announcements from the CERT abou
  M    2     1  news.admin.announce     Announcements for news adminstra
       3    22  news.software.misc      News-related software other than
       4  1475  news.software.nntp      The Network News Transfer Protoc
  X    5   124  news.software.readers   Discussion of software used to r

There may also be a character prefixing the line. An explanation follows:

u

This group is unsubscribed. To see only your subscribed groups use the ‘r’ or ‘y’ toggle keys.

M

This is a moderated group. Any posts you make will have to be approved by the group administrator before it will be made public. tin will ask for confirmation before you post to a moderated group.

N

This is a new newsgroup which has been created since you last used tin. New newsgroups are not subscribed to by default (However, see the $AUTOSUBSCRIBE / $AUTOUNSUBSCRIBE environment variables). Subscribe to it in the normal way if you wish the group to continue to appear in your Selection Menu. Simply ignore new newsgroups and they will be gone the next time you start tin. You will have to yank in all the groups to find them in a later session.

D

This group no longer exists. If you no longer wish to see this group then unsubscribe from it in the normal way. This flag will only appear if you have set ’strip_bogus’ to "ask" in the Options Menu.

X

You may no longer make posts to this group. Often a group will be superseded by a more appropriately named one.

=

This group has been renamed and you may no longer post to it. If you do, then you will receive an error from your newsserver telling you the correct group to post to.

At the Group level the title contains the name of the group, the number of conversation threads, the threading-method, the total number of articles, the number of killed articles and the number of hot articles. i.e., alt.sources (5T(B) 23A 0K 0H). It might also contain an R if your are in ’show_only_unread’ mode and an M if the group is moderated. (The later does not work with the ‘‘-n’’ command-line switch!). If a thread has unread articles in it it’s marked with a ‘+’ in font of the total number of articles in the thread. If a thread has hot articles in it (see also section FILTERING ARTICLES) it’s marked with a ‘*’ in font of the total number of articles in the thread. There might also be shown the number of lines of the first (unread) article in the thread right before the subject - this is controlled by the ’show_lines’ option.

                de.admin.net-abuse.announce (11T(B) 13A 0K 0HM)

->   1   +   3  108 bincancels in de.talk.sex        Christopher Lueg <l
     2   +       69 EMP/ECP gecancelt. xynx. BI= 10  Henning Weede <hwee
     3   +       93 EMP gecancelt. SouthBeach/Palms  Henning Weede <hwee
     4   *      368 <1997-11-12> Fremdcancel-FAQ     Thomas Roessler <ro

At the Thread level the screen usually (depends on the threading method used) looks like this:

->   0      [   7]  What is this funny tree in the thr  Robert F. Simmig
     1      [  12]  ‘->                                 Sephan Wagner <s
     2      [ 230]  | ‘->Tin thread-level (was: What is Bob Johnson <bob
     3      [  22]  ‘->tin threading menu               Brian Richardson

At the Article level the page header has the following format:

Sun, 28 Dec 1997 21:21:01   de.admin.news.groups      Thread   20 of 86
Lines 50   Re: EINSPRUCH zu RESULT:de.comm.mobil.ALL   RespNo  47 of 59
Urs Janssen <urs@akk.org>        at Arbeitskreis Kultur und Kommunikati

article-body

COMMON MOVING KEYS

This table shows the common keys used for moving around all levels within tin.

ANSI/vt100 Other Terminals

Beg. of list/article

Home

^ (1)

End of list/article

End

$ (2)

Page Up

PgUp

^U or ^B or b

Page Down

PgDn

^D or ^F or <SPACE>

Line Up

Up arrow

k or ^P (not at article level)

Line Down

Down arrow

j or ^N (not at article level)

(1) also g in the article, config and help menus
(2) also G in the article, config and help menus

COMMON EDITING COMMANDS

An emacs style editing package allows the easy editing of input strings. An history list allows the easy reuse of previously entered strings. In addition to the cursor keys, the following commands are available when editing a string:

^A, ^E

move to beginning or end of line, respectively.

^F, ^B

non-destructive move forward or back one location, respectively.

^D

delete the character currently under the cursor, or send EOF if no characters in the buffer.

^H, <DEL>

delete character left of the cursor.

^K

delete from cursor to end of line.

^P, ^N

move through history, previous and next, respectively.

^L, ^R

redraw the current line.

<CR>

places line on history list if non-blank, appends newline and returns to the caller.

<ESC>

aborts the present editing operation.

GLOBAL COMMANDS

The following commands are available at all 4 menu levels and always have the same effect.

!

Shell escape. ! by itself will launch a shell, ! <command> will run an external <command> This facility may have been disabled by the System Administrator

&

Toggle use of ANSI color.

^L

Redraw the current screen.

^O

Reload postponed article. If your system blocks CTRL-O you must quote it by pressing CTRL-V first. The postpone-menu offers the following actions: ‘y’ = reload and spawn editor; ‘Y’ = post article (without spawning editor); ‘A’ = post all postponed articles (without spawning editor); ‘n’ = skip this article; ‘q’ = quit postponed menu. Currently there is no ’simple’ way to delete a postponed article from the postponed-file, you have to use the following command sequence instead: reload it with ’^O’, enter editor with ’y’, quit editor, discard posting with ’q’. See also ‘‘-o’’ command-line switch.

O

Reload postponed article. See also ‘‘-o’’ command-line switch.

W

List articles posted by user. The date posted, the newsgroup and the subject are listed.

v

Print tin version information.

NEWSGROUP SELECTION COMMANDS

4

Select group 4.

^R

Reset $HOME/.newsrc file. This will destroy all records of which articles have been read, so use this carefully.

#

Choose a range of articles to be affected by the next command. See the section RANGES for more information.

/

Search for a group by name and description (if displayed).

?

Backward search through the group names and descriptions.

<CR>

Read current group.

<TAB>

Enter next group with unread news. Will wrap around to the beginning of the group selection list looking for unread groups.

c

Make current group as all read [after confirmation] and move to the next group in the group selection list.

C

Mark current group as all read [after confirmation] and enter the next unread group in the group selection list.

d

Toggle display to show just the group name or the group name and the group descriptions.

g

Choose a new group by name. This command can be used to access any group, even those not currently yanked in.

h

Help screen of newsgroup selection commands. You can use / and ? to search on this screen.

H

Toggle the display of help mini menu at the bottom of the screen.

i

Toggle the display of the description of the current newsgroup in the last line. This will not be available if tin was started with the -d option.

I

Toggle inverse video.

m

Move the current group within the group selection list. By entering ‘1’ the group will become the first displayed group in the list, by entering ‘8’ the eighth group in the list etc. By entering ‘$’ the group will be the last group displayed.

M

User configurable options menu (for more information see section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES).

n

Enter next group with unread news. This key is identical to <TAB>

N

Positions the cursor on the next group with unread articles in it.

q

Quit tin - ask the user to confirm if ’confirm_to_quit’ is on.

Q

Quit tin - don’t ask the user to confirm.

r

Toggle display of all subscribed to groups and just those groups containing unread articles. Command has no effect if groups were specified on the command line when tin was started.

R

Mail a bug report or comment to <tin-bugs@tin.org>. This is the best way of getting bugs fixed and features added/changed.

s

Subscribe to current group.

S

Subscribe to groups matching user specified pattern.

u

Unsubscribe to current group. This can be used to remove bogus groups. See ’strip_bogus’ in the GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES section.

U

Unsubscribe to groups matching user specified pattern.

w

Post an article to current group. If posting fails for some reason, you’ll get the chance to edit (‘e’) the article again, postpone (‘o’) it for later processing (see also ‘‘-o’’command-line switch) or discard (‘q’) it.

X

Quit tin without saving any changes to the configuration.

y

Yanks in all groups. Toggles the displayed groups between all the groups in the $NEWSLIBDIR/active file and just those that are subscribed to in $HOME/.newsrc.

Y

Reread the active file to see if any new news has arrived since starting tin.

z

Mark all articles in the current group as unread.

Z

Identical to z.

GROUP INDEX COMMANDS

4

Select article 4.

^A

Auto select article(s) using a menu. Read the section FILTERING ARTICLES for more information.

^K

Kill article(s) using a menu. Read the section FILTERING ARTICLES for more information.

#

Choose a range of articles to be affected by the next command. See the section RANGES for more information.

-

Re-enter the last message that was viewed.

/

Search forward for specified subject.

?

Search backward for specified subject.

*

Select current thread for later processing.

+

Perform auto-selection on current group.

.

Toggle selection of current thread. If at least one unread article, (but not every unread article) in the current thread is selected, then all unread articles become selected.

;

For each thread in current group, if it at least one unread article is selected, all unread articles become selected. This is useful for auto-selection on author where reader wants to see entire thread.

=

Prompts for a pattern with which to match on. All threads whose subjects match the pattern will be marked selected. A pattern of ‘‘*’’ will match all subjects. Entering just <CR> will re-use the last pattern that was entered.

@

Reverse all selections on all articles.

~

Undo all selections on all articles. It clears the toggle effect of ‘X’ command. Thus after first doing a ‘X’, one can then do ‘~’ to reset articles. Thus, one can iteratively whittle down uninteresting threads.

|

Pipe current article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles into command. See the section MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES for more information.

[

Auto select article(s) with a single key [after confirmation]. The defaults used for selection are based upon the following four tinrc config variables:

default_filter_select_case
default_filter_select_expire
default_filter_select_global
default_filter_select_header
Read the section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES for a full explanation of these variables and FILTERING ARTICLES for more information on filtering.

]

Kill article(s) with a single key [after confirmation]. The defaults used for killing are based upon the following four tinrc config variables:

default_filter_kill_case
default_filter_kill_expire
default_filter_kill_global
default_filter_kill_header
Read the section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES for a full explanation of these variables and FILTERING ARTICLES for more information on filtering.

<CR>

Read current article.

<TAB>

View next unread article or group.

a

Author forward search. This searches for articles with a specific From: line.

A

Author backward search. Otherwise, see ’a’ above.

B

Search the body of all articles in group (can be slow). You can abort the search using ’q’.

c

Mark all articles as read [after confirmation] then return to the group selection list.

C

Mark all articles as read [after confirmation] and enter the next group with unread news.

d

Cycle the display of the author through all the possible options for the tinrc variable ’show_author’.

g

Choose a new group by name. This command can be used to access any group, even those not currently yanked in.

G

Toggle article/group limit.

h

Help screen of group index commands. You can use / and ? to search on this screen.

H

Toggle the display of help mini menu at the bottom of the screen.

i

Display the subject of the first article in the current thread in the last line.

I

Toggle inverse video.

K

Mark article/thread as read and move onto the next unread article/thread.

l

Open the thread under the current cursor position.

L

Look up article by ‘‘Message:-ID:’’.

m

Mail current article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles to someone. See the section MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES for more information.

M

User configurable options menu (for more information see section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES).

n

Go to next group.

N

Go to next unread article.

o

Send current article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles to printer. See the section MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES for more information.

p

Go to previous group.

P

Go to previous unread article.

q

Return to previous level.

Q

Quit tin - don’t ask the user to confirm.

r

Toggle the display between all articles and unread articles

R

Mail a bug report or comment to <tin-bugs@tin.org>. This is the best way of getting bugs fixed and features added/changed.

s

Save current article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles. See the section MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES for more information.

S

Save tagged articles automatically without further prompting.

t

Toggle tag-status of current article / thread for mailing (‘m’) / piping (‘|’) / printing (‘o’) / saving (‘s’) / reposting (‘x’).

T

Automatically tag in order all the parts of the current multi-part message

u

Cycle the threading mode through no threading, threading by subject, threading by references, threading on both subject and references.

U

Untag all articles that were tagged.

w

Post an article to current group. If posting fails for some reason, you’ll get the chance to edit (‘e’) the article again, postpone (‘o’) it for later processing (see also ‘‘-o’’command-line switch) or discard (‘q’) it.

x

Repost an already posted article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles to another newsgroup(s). Useful for reposting from global to local newsgroups. Do not use this to cross-post your own articles.

X

Mark all unread articles that have not been selected as read, redraw screen to reflect changes and put index at the first thread to begin reading. Pressing ‘X’ again will toggle back to the way it was before. See ‘~’ command for clearing the toggle effect.

z

Mark current article as unread.

Z

Mark current thread as unread.

THREAD LISTING COMMANDS

4

Select article 4 within thread.

#

Choose a range of articles to be affected by the next command. See the section RANGES for more information.

-

Re-enter the last message that was viewed.

/

Search forward for a specified subject.

?

Search backwards for a specified subject.

*

Select the current thread for later processing.

.

Toggle selection of current article.

@

Reverse article selections.

~

Undo all selections on current thread.

<CR>

Read current article within thread.

<TAB>

View next unread article within thread.

a

Author forward search. This searches for articles with a specific From: line. The search will wrap over into the next thread if nothing is found in the current one.

A

Author backward search. Otherwise, see ’a’ above.

B

Search the body of all articles in group (can be slow). You can abort the search using ’q’.

c

Mark thread as read [after confirmation] and return to the group index page.

C

Mark thread as read [after confirmation] and enter the next thread containing unread news.

d

Cycle the display of the author through all the possible options for the tinrc variable ’show_author’.

h

Help screen of thread listing commands. You can use / and ? to search on this screen.

H

Toggle the display of help mini menu at the bottom of the screen.

i

Display the subject of the current article in the last line.

I

Toggle inverse video.

K

Mark thread as read.

L

Look up article by ‘‘Message:-ID:’’.

m

Mail current article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles to someone. See the section MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES for more information.

q

Return to previous level.

Q

Quit tin - don’t ask the user to confirm.

r

Toggle display to show all articles or only unread articles.

R

Mail a bug report or comment to <tin-bugs@tin.org>. This is the best way of getting bugs fixed and features added/changed.

s

Save current article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles. See the section MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES for more information.

S

Save tagged articles automatically without further prompting.

t

Toggle tag status of current article for mailing (‘m’) / piping (‘|’) / printing (‘o’) / saving (‘s’) / reposting (‘x’).

U

Untag all tagged threads

w

Post an article to current group. If posting fails for some reason, you’ll get the chance to edit (‘e’) the article again, postpone (‘o’) it for later processing (see also ‘‘-o’’command-line switch) or discard (‘q’) it.

z

Mark current article in thread as unread.

Z

Mark all articles in thread as unread.

ARTICLE VIEWER COMMANDS

0

Read the first (base) article in this thread.

4

Read response 4 in this thread.

^A

Auto select article(s) using a menu. Read the section FILTERING ARTICLES for more information.

^E

Reply through mail to the author of the current article with a copy of the article with all headers included.

^G

Perform PGP operations on article.

^H

Toggles the display of all the header fields.

^K

Kill article(s) using a menu. Read the section FILTERING ARTICLES for more information.

^T

Toggle the TAB width between 4 and 8 characters.

^W

Post a followup to the current article with a copy of the article with all headers included.

"

Toggle $TEX2ISO decoding for current article.

%

Toggle ROT-13 decoding for this article. This is the same as d.

-

Re-enter the last message that was viewed.

/

Forward search the text of this article.

:

Skip to the end of the quoted text in this article.

<

Goto the first article in the current thread.

>

Goto the last article in the current thread.

_

Toggle word highlighting on/off.

|

Pipe current article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles into command. See the section MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES for more information.

[

Auto select article(s) with a single key. The defaults used for selection are set based upon the following four tinrc config variables:

default_filter_select_case
default_filter_select_expire
default_filter_select_global
default_filter_select_header
Read the section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES for a full explanation of these variables and FILTERING ARTICLES for more information on filtering.

]

Kill article(s) with a single key. The defaults used for killing are based upon the following four tinrc config variables:

default_filter_kill_case
default_filter_kill_expire
default_filter_kill_global
default_filter_kill_header
Read the section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES for a full explanation of these variables and FILTERING ARTICLES for more information on filtering.

<CR>

Goto next base article.

<TAB>

Goto next unread article.

a

Author forward search.

A

Author backward search.

B

Search the body of all articles in group (can be slow). You can abort the search using ’q’.

c

Mark the current thread as read [after confirmation] and return to the group index page.

C

Mark the rest of the current thread as read [after confirmation] and enter the next thread with unread articles. If no unread articles are left in this group, enter the next group with unread news.

d

Toggle ROT-13 decoding for this article.

D

Cancel the current article. It must have been posted by the same user. The cancel message can be seen in the newsgroup ’control’ or ’control.cancel’.

e

Edit the current article. Only available when in a mailgroup.

f

Post a followup to the current article with a copy of the article included.

F

Post a followup to the current article without including a a copy of the article.

g

Goto the start of the article

G

Goto the end of the article

h

Help screen of article pager commands. You can use / and ? to search on this screen.

H

Toggle the display of the mini help menu at the bottom of the screen.

i

Display the subject of the current article in the last line.

I

Toggle inverse video.

k

Mark article as read and move on to next unread article. Behaves identically to N.

K

Mark rest of thread as read and move onto the next unread thread.

l

Show the thread menu that the current article is a part of.

L

Look up article by ‘‘Message:-ID:’’.

m

Mail current article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles to someone. See the section MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES for more information.

M

User configurable options menu (for more information see section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES).

n

Go to the next article.

N

Go to the next unread article.

o

Send current article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles to printer. See the section MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES for more information.

p

Go to the previous article.

P

Go to the previous unread article.

q

Return to the previous level.

Q

Quit tin - don’t ask the user to confirm.

r

Reply through mail to the author of the current article with a copy of the article included.

R

Reply through mail to the author of the current article without including the original article.

s

Save current article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles. See the section MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES for more information.

S

Save tagged articles automatically without further prompting.

t

Toggle tag status of current article for mailing (‘m’) / piping (‘|’) / printing (‘o’) / saving (‘s’) / reposting (‘x’).

T

Return to group selection level.

u

Goto parent article.

w

Post an article to the current group. If posting fails for some reason, you’ll get the chance to edit (‘e’) the article again, postpone (‘o’) it for later processing (see also ‘‘-o’’command-line switch) or discard (‘q’) it.

x

Repost an already posted article / thread / auto-selected (hot) articles / articles matching pattern / tagged articles to another newsgroup(s). Useful for reposting from global to local newsgroups. Do not use this to crosspost your own articles.

z

Mark article as unread.

Z

Mark the current thread as unread.

GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES

At startup, tin reads in the configuration file. This contains a list of variables that can be used to configure the way tin works. If it exists, the global configuration file, /usr/lib/news/tinrc is read. After that, the users own configuration file is read from $HOME/.tin/tinrc. The global file is useful for distributing system-wide defaults to new users who have no private tinrc yet.

The variables are user configurable by editing $HOME/.tin/tinrc directly. Most of them can also be set in the GLOBAL OPTIONS MENU which is accessed by pressing ‘M’ at all levels. It allows the user to customize the behaviour of tin. The options are saved to the file $HOME/.tin/tinrc when you exit tin so don’t edit the file directly whilst tin is running.

In the OPTIONS menu use the cursor keys in the usual way to move around. Use <CR> to ’open’ the option you wish to change. You will need to enter a new value or use <SPACE> to toggle the available options. <CR> will save the new value, <ESCAPE> will abort without saving changes.

As with the other menus, ‘^L’ will redraw the screen. You can use ‘/’ and ‘?’ to search for a specific option. Use ’q’ to exit the OPTIONS menu and keep your changes. Use ’Q’ to exit without keeping your changes.

Here is a full list of all the available variables. The name in braces is the name of the corresponding setting in $HOME/.tin/tinrc.

Add posted articles to filter (add_posted_to_filter)

If ON add posted articles to filter for highlighting follow-ups. Default is ON.

Insert ’User-Agent:’-header (advertising)

Turn ON advertising in header (‘‘User-Agent:’’). Default is ON.

Skip multipart/alternative parts (alternative_handling)

If ON strip multipart/alternative messages automatically.

Character to show deleted articles (art_marked_deleted)

The character used to show that an article was deleted. Default is ’D’.

Character to show inrange articles (art_marked_inrange)

The character used to show that an article is in a range. Default is ’#’.

Character to show articles that will be marked unread (art_marked_return)

The character used to show that an article will return as an unread article when the group is next entered. Default is ’-’.

Character to show selected articles (art_marked_selected)

The character used to show that an article/thread is auto-selected (hot). Default is ’*’.

Character to show unread articles (art_marked_unread)

The character used to show that an article has not been read. Default is ’+’.

Ask before using metamail (ask_for_metamail)

If ON tin will ask before using metamail to display MIME messages. This only occurs if ’use_metamail’ is also switched ON. Default is ON.

Send you a blind cc automatically (auto_bcc)

If ON automatically put your name in the ‘‘Bcc:’’ field when mailing an article. Default is OFF

Send you a cc automatically (auto_cc)

If ON automatically put your name in the ‘‘Cc:’’ field when mailing an article. Default is OFF

List thread using right arrow key (auto_list_thread)

If ON automatically list thread when entering it using right arrow key. Default is ON.

Use Archive-name: header for save (auto_save)

If ON articles/threads with ‘‘Archive-name:’’ in header will be automatically saved with the Archive-name & part/patch no and post processed if process type is not set to none. Default is OFF

Save articles in batch mode (-S) (batch_save)

If set ON articles/threads will be saved in batch mode when save ‘‘-S’’ or mail ‘‘-M’’ is specified on the command line. Default is OFF.

Show mini menu & posting etiquette (beginner_level)

If set ON a mini menu of the most useful commands will be displayed at the bottom of the screen for each level. Also a short posting etiquette will be displayed after composing an article. Default is ON.

Cache NNTP overview files locally (cache_overview_files)

If ON, create local copies of NNTP overview files. This can be used to considerably speed up accessing large groups when using a slow connection.

Catchup read groups when quitting (catchup_read_groups)

If set ON the user is asked when quitting if all groups read during the current session should be marked read. Default is OFF.

Standard background color (col_back)

Standard background color

Color of sender (From:) (col_from)

Color of sender (From:)

col_head

Color of header-lines

col_help

Color of help pages

col_invers_bg

Color of background for inverse text

col_invers_fg

Color of foreground for inverse text

col_markdash

Color of words emphasised like _this_. See also word_h_display_marks

col_markstar

Color of words emphasised like *this*. See also word_h_display_marks

col_minihelp

Color of mini help menu

col_newsheaders

Color of actual news header fields

col_normal

Standard foreground color

col_quote

Color of quoted lines

col_quote2

Color of twice quoted lines

col_quote3

Color of >=3 times quoted lines

col_response

Color of response counter. This is the text that says ’Response x of y’ in the article viewer.

col_signature

Color of signatures

col_subject

Color of article subject

col_text

Color of text-lines

col_title

Color of title text on all the menu screens

Confirm commands before executing (confirm_action)

Ask for confirmation before executing certain dangerous commands (e.g., ‘c’atchup). Default is ON. Commands that this affects are marked in this manual with ’[after confirmation]’.

Confirm before quitting (confirm_to_quit)

If ON you will be asked to confirm that you wish to exit tin when you use the ’q’ command. Default is ON. they are intended for internal use only.

default_art_search

default_author_search

default_config_search

The last article/author/config option that was searched for

default_editor_format

The format string used to create the editor start command with parameters. Default is ’%E +%N %F’ (i.e., /bin/vi +7 .article).

default_filter_days

Default is 28.

default_filter_kill_case

Defaults for quick (1 key) kill filter case. ON = filter case sensitive, OFF = ignore case. Default is OFF.

default_filter_kill_expire

Defaults for quick (1 key) kill filter expire. ON = limit to ’default_filter_days’, OFF = don’t ever expire. Default is OFF.

default_filter_kill_global

Defaults for quick (1 key) kill filter global. ON=apply to all groups OFF=apply to current group. Default is ON.

default_filter_kill_header

Defaults for quick (1 key) kill filter header. 0,1 = ‘‘Subject:’’, 2,3 = ‘‘From:’’, 4 = ‘‘Message-Id:’’ & full ‘‘References:’’ line, 5 = ‘‘Message-Id:’’ & last ‘‘References:’’ entry only, 6 = ‘‘Message-Id:’’ entry only, 7 = ‘‘Lines:’’

default_filter_select_case

Defaults for quick (1 key) auto-selection filter case. ON=filter case sensitive OFF=ignore case. Default is OFF.

default_filter_select_expire

Defaults for quick (1 key) auto-selection filter expire. ON = limit to ’default_filter_days’, OFF = don’t ever expire. Default is OFF.

default_filter_select_global

Defaults for quick (1 key) auto-selection filter global. ON=apply to all groups OFF=apply to current group. Default is ON.

default_filter_select_header

Defaults for quick (1 key) auto-selection filter header. 0,1 = ‘‘Subject:’’, 2,3 = ‘‘From:’’, 4 = ‘‘Message-Id:’’ & full ‘‘References:’’ line, 5 = ‘‘Message-Id:’’ & last ‘‘References:’’ entry only, 6 = ‘‘Message-Id:’’ entry only, 7 = ‘‘Lines:’’

default_goto_group

default_group_search

default_mail_address

Mail directory (default_maildir)

The directory where articles/threads are to be saved in mailbox format. This feature is mainly for use with the Elm mail program. It allows the user to save articles/threads/groups simply by giving ’=’ as the filename to save to. Default is $HOME/Mail.

Invocation of your mail command (default_mailer_format)

The format string used to create the mailer command with parameters that is used for mailing articles to other people. Default is ’%M "%T" < %F’ (i.e., /bin/mail "iain" < .article). The flexible format allows other mailers with different command line parameters to be used such as ’elm -s "%S" "%T" < "%F"’ (i.e., elm -s "subject" "iain" < .article) or ’sendmail -oem -t < %F’ (i.e. sendmail -oem -t < .article).

default_move_group

default_pipe_command

default_post_newsgroups

default_post_subject

Printer program with options (default_printer)

The printer program with options that is to be used to print articles. The default is lpr(1) for BSD machines and lp(1) for SysV machines. Printing from tin may have been disabled by the System Administrator

default_range_group

default_range_select

default_range_thread

default_regex_pattern

default_repost_group

default_save_file

default_save_mode

Directory to save articles/threads in (default_savedir)

Directory where articles/threads are saved. Default is $HOME/News.

default_select_pattern

default_shell_command

Create signature from path/command (default_sigfile)

The path that specifies the signature file to use when posting, following up to or replying to an article. If the path is a directory then the signature will be randomly generated from files that are in the specified directory. Default is $HOME/.Sig.

default_subject_search

Show RFC 2047 ^H-header undecoded (display_mime_allheader_asis)

Similar to display_mime_header_asis, but works on CTRL-h (show all headers) instead of news_headers_to_display.

Show RFC 2047 header undecoded (display_mime_header_asis)

If ON, RFC 1522 (now RFC 2047)-style header fields are displayed without decoding. No effect on header displayed at the top of each page in article mode and summary mode (they are always decoded). Default is OFF so that RFC 1522 (RFC 2047)-style headers (designated in news_header_to_display) will be decoded back to 8bit when displayed.

Draw -> instead of highlighted bar (draw_arrow)

Allows groups/articles to be selected by an arrow ’->’ if set ON or by an highlighted bar if set OFF.

Force redraw after certain commands (force_screen_redraw)

Specifies whether a screen redraw should always be done after certain external commands. Default is OFF.

Scroll full page (OFF=half page) (full_page_scroll)

If set ON scrolling of groups will be a full page at a time, otherwise half a page at a time. Currently this is not implemented in the pager and in the GLOBAL OPTIONS MENU.

Number of articles per group to get (getart_limit)

If use_getart_limit is ON and getart_limit is > 0 not more than getart_limit articles/group are fetched from the server. If use_getart_limit is ON and getart_limit is < 0 tin will start fetching articles from your first unread minus absolute value of getart_limit. Default is 0, which means no limit.

Catchup group using left key (group_catchup_on_exit)

If ON catchup group when leaving with the left arrow key. Default is ON.

Max. length of group names shown (groupname_max_length)

Maximum length of the names of newsgroups to be displayed so that more of the newgroup description can be displayed. Default is 32.

info_in_last_line

If ON, show current group description or article subject in the last line (not in the pager and global menu) - ‘i’ toggles setting. This facility is useful as the full width of the screen is available to display long subjects.

Use inverse video for page headers (inverse_okay)

If ON use inverse video for page headers at different levels. Default is ON.

Keep failed articles in ~/dead.articles (keep_dead_articles)

If ON keep all failed postings in $HOME/dead.articles besides keeping the last failed posting in $HOME/dead.article. Default is ON.

Keep posted articles in ~/Mail/posted (keep_posted_articles)

If ON keep all postings in $HOME/Mail/posted. Default is ON.

Handling of killed articles (kill_level)

This option controls the processing and display of articles that are killed. There are 3 options: 0 (default) is the ’traditional’ behaviour of tin. Only unread articles are killed once only by marking them read. Options 1 and 2 will process all articles in the group and therefore there is a processing overhead when using them. Option 1 will thread killed articles as normal but they will be marked with a ’K’. Option 2 simply does not display killed articles. kill_level was first present is tin-1.2 and has been resurrected for 1.4

Use 8bit characters in mail headers (mail_8bit_header)

Allows 8bit characters unencoded in the header of mail message. Default is OFF. Turning it ON is effective only if mail_mime_encoding is also set to 8bit. Leaving it OFF is safe for most users and compliant to Internet Mail Standard (STD 11/RFC 822 and RFC 2047).

Mail address (mail_address)

User’s mail address (and fullname), if not username@host. This is used when creating articles and sending mail.

MIME encoding in mail messages (mail_mime_encoding)

MIME encoding of the body in mail message, if necessary (8bit, base64, quoted-printable, 7bit) Default is 8bit and no encoding (or charset conversion) is performed (i.e., local charset is used as it is). If set to 7bit, CJK text in 8bit encoding (EUC-CN, EUC-TW, EUC-JP, EUC-KR, Big5, Shift_JIS) is supposed to be converted into ISO-2022-KR/JP/CN. Only EUC-KR to ISO-2022-KR conversion has been implemented, however. Accordingly, setting it to 7bit has no effect on MIME charsets/encodings other than EUC-KR (Korean).

Quote line when mailing (mail_quote_format)

Default is "In article %M you wrote:"

Mark saved articles/threads as read (mark_saved_read)

If ON mark articles that are saved as read. Default is ON.

MM_CHARSET (mm_charset)

Charset supported locally, which is also used for MIME header (charset parameter and charset name in header encoding) in mail and news posting unless local charset/encoding needs to be converted into other charset/encoding as in case of EUC-KR which is converted to ISO-2022-KR if mail_mime_encoding is set to 7bit. Possible values include ISO-8859-X (where X is 1 to 10), EUC-JP, EUC-CN, EUC-KR, EUC-TW, Big5, Shift_JIS, and so forth. If MIME_STRICT_CHARSET is defined at the compile time, text in charset other than the value of this parameter is considered not displayable and represented as ’?’. Otherwise, all character sets are regarded as compatible with the display. If it’s not set, the value of the environment variable $MM_CHARSET is used. US-ASCII or compile-time default is used in case neither of them is defined.

newnews

These are internal timers used by tin to keep track of new newsgroups. Do not change them unless you understand what they are for.

Display these header fields (or *) (news_headers_to_display)

Which news headers you wish to see. If you want to see _all_ the headers, place an ’*’ as this value. This is the only way a wildcard can be used. If you enter ’X-’ as the value, you will see all headers beginning with ’X-’ (like X-Alan or X-Pape). You can list more than one by delimiting with spaces. Not defining anything turns off this option.

Do not display these header fields (news_headers_to_not_display)

Same as news_headers_to_display except it denotes the opposite. An example of using both options might be if you thought X- headers were A Good Thing(tm), but thought Alan and Pape were miscreants...well then you would do something like this: news_headers_to_display=X- news_headers_to_not_display=X-Alan X-Pape Not defining anything turns off this option.

Quote line when following up (news_quote_format)

Format of quote line when posting/following up an article (%A=Address, %D=Date, %F=Addr+Name, %G=Groupname, %M=Message-Id, %N=Name). Default is "%F wrote:"

PgDn goes to next article at EOF (pgdn_goto_next)

If ON the PGDN or DOWN command will goto next article when pressed at end of message

Goto first unread article in group (pos_first_unread)

If ON put cursor at first unread article in group otherwise at last article. Default is ON.

Use 8bit characters in news headers (post_8bit_header)

Allows 8bit characters unencoded in the header of news article. Default is OFF. Only enacted if post_mime_encoding is also set to 8bit. In a number of local hierarchies where 8bit characters are used, using unencoded (raw) 8bit characters in header is acceptable and sometimes even recommended so that you need to check the convention adopted in the local hierarchy of your interest to determine what to do with this and post_mime_encoding.

MIME encoding in news messages (post_mime_encoding)

MIME encoding of the body in news message, if necessary. (8bit, base64, quoted-printable, 7bit) Default is 8bit, which leads to no encoding (or charset conversion, i.e., local charset is posted as it is). If set to 7bit, Chinese and Japanese text (in 8bit encodings such as EUC-CN, EUC-TW, EUC-JP, Shift_JIS, Big5) is supposed to be converted into ISO-2022-CN/JP, but it’s NOT yet implemented. Therefore, currently 7bit has NO effect (i.e. equivalent to 8bit) whatever MIME charset/encoding is chosen.

post_process_command

Full pathname of a command to be run after successfully uudecoding an article / thread. This option should be used in conjunction with post processing type 2=(uudecode) A sample script (for Linux) demonstrates a possible use for this:

# !/bin/bash
# Sample Tin newsreader postprocessor.
# $1 is the filename that has been uudecoded.
#

[ ! -f "$1" ] && exit 1

case ${1##*.} in
    # View pictures in console mode or X
    #
    gif|jpg|GIF|JPG)
        [ -z "$DISPLAY" ] && zgv $1 || xv $1
        ;;
    # List zip archives
    #
    zip)
        unzip -l $1
        ;;
    *)
        echo "Unsupported or missing suffix: ${1##*.}"
        file $1
        ;;
esac

echo ""
echo "Press <RETURN> to exit."
read ans

# end of sample script

Post process saved art/thread with (post_process_type)

This specifies the default type of post processing to perform on saved articles. The following types of processing are allowed:

—none. —unpacking of multi-part shar files (shell archives). —unpacking of multi-part uuencoded files. —unpacking of multi-part uuencoded files, which produce a *.zoo archive whose contents is listed. —unpacking of multi-part uuencoded files, which produce a *.zoo archive whose contents is extracted. —unpacking of multi-part uuencoded files, which produce a *.zip archive whose contents is listed. —unpacking of multi-part uuencoded files, which produce a *.zip archive whose contents is extracted. —unpacking of multi-part uuencoded files, which produce a *.lha archive whose contents is listed (AmigaOS version only). —unpacking of multi-part uuencoded files, which produce a *.lha archive whose contents is extracted (AmigaOS version only).

Print all headers when printing (print_header)

If ON, then the full article header is sent to the printer. Otherwise only the ‘‘Subject:’’ and ‘‘From:’’ fields are output. Default is OFF.

Process only unread articles (process_only_unread)

If ON only save/print/pipe/mail unread articles (tagged articles excepted). Default is ON.

Show empty Followup-To in editor (prompt_followupto)

If ON show empty Followup-To header when editing an article

Characters used as quote-marks (quote_chars)

The character used in quoting included text to article followups and mail replies. The ’_’ character represents a blank character and is replaced with ’ ’ when read. Default is ’>_’.

Quote empty lines (quote_empty_lines)

If ON quote empty lines, too. Default is OFF due to backward compatibility, but it is highly recommended to turn it on as it makes quotes much more readable.

Expression for highlighting quoted text (quote_regex)

A regular expression that will be applied when reading articles. All matching lines are shown in col_quote. If quote_regex is blank, then tin uses a builtin default for this.

Expression for highlighting twice quoted text (quote_regex2)

A regular expression that will be applied when reading articles. All matching lines are shown in col_quote2. If quote_regex2 is blank, then tin uses a builtin default for this.

Expression for highlighting =>3 times quoted text (quote_regex3)

A regular expression that will be applied when reading articles. All matching lines are shown in col_quote3. If quote_regex3 is blank, then tin uses a builtin default for this.

Quote signatures (quote_signatures)

If ON quote signatures, too.

Interval in secs to reread active (reread_active_file_secs)

The news active file is reread at regular intervals to show if any new news has arrived. Default is 1200. Setting this to 0 will disable this feature.

Save mail in MMDF style (save_to_mmdf_mailbox)

Allows articles to be saved to a MMDF style mailbox instead of mbox format. Default is OFF unless reading news on SCO Unix which uses MMDF by default.

In group menu, show author by (show_author)

—None (0) only the ‘‘Subject:’’ line will be displayed. —Addr (1) ‘‘Subject:’’ line & the address part of the ‘‘From:’’ line are displayed. —Name (2) ‘‘Subject:’’ line & the authors full name part of the ‘‘From:’’ line are displayed. —Both (3) ‘‘Subject:’’ line & all of the ‘‘From:’’ line are displayed.

Default is 2, authors full name.

Show description of each newsgroup (show_description)

If ON show a short group description text after newsgroup name at the group selection level. The ‘‘-d’’ commandline flag will override the setting and turn descriptions off. The text used is taken from the $NEWSLIBDIR/newsgroups file. Default is ON.

Show last line of previous page (show_last_line_prev_page)

The last line of the previous page will be displayed as the first line of next page. Default is OFF.

Show no. of lines in thread listing (show_lines)

Show number of lines of first unread article in thread listing (ON/OFF).

Show only unread articles (show_only_unread)

If ON show only new/unread articles otherwise show all articles. Default is ON.

Show only groups with unread articles (show_only_unread_groups)

If ON show only subscribed to groups that contain unread articles. Default is OFF.

Display signatures (show_signatures)

If OFF don’t show signatures when displaying articles.

Display X-Comment-To: header (show_xcommentto)

If ON, the real name in the ‘‘X-Comment-To:’’ header is displayed in the upper-right corner. Default is OFF.

Prepend signature with ’\n-- \n’ (sigdashes)

If ON prepend the signature with sigdashes. Default is ON.

Add signature when reposting (signature_repost)

If ON add signature to reposted articles.

Sort articles by (sort_article_type)

This specifies how articles should be sorted. The following sort types are allowed:

—don’t sort articles (none=0). —sort articles by ‘‘Subject:’’ field (descending=1 & ascending=2). —sort articles by ‘‘From:’’ field (descending=3 & ascending=4). —sort articles by ‘‘Date:’’ field (descending=5 & ascending=6). —sort articles by filtering score (descending=7 & ascending=8).

Sort by ascending Date (6) is the default.

Spamtrap warning address parts (spamtrap_warning_addresses)

Set this option to a list of comma-separated strings to be warned if you are replying to an article by mail where the e-mail address contains one of these strings. The matching is case-insensitive.

Space goes to next unread article (space_goto_next_unread)

If ON the SPACE command will goto next unread article at article viewer level when the end of the article is reached (rn-style pager)

Start editor with line offset (start_editor_offset)

Set ON if the editor used for posting, follow-ups and bug reports has the capability of starting and positioning the cursor at a specified line within a file. Default is ON.

Strip blanks of end of lines (strip_blanks)

Strips the blanks from the end of each line therefore speeding up the display when reading on a slow terminal or via modem. Default is ON.

Remove bogus groups from newsrc (strip_bogus)

Bogus groups are groups that are present in your .newsrc file that no longer exist on the news server. There are 3 options. 0 means do nothing & always keep bogus groups. 1 means bogus groups will be permanently removed. 2 means that bogus groups will appear on the Group Selection Menu, prefixed with a ’D’. This allows you to unsubscribe from them as and when you wish. Default is 0 (Always Keep).

No unsubscribed groups in newsrc (strip_newsrc)

If ON, then unsubscribed groups will be permanently removed from your .newsrc file. Default is OFF.

Do tab after X automatically (tab_after_X_selection)

If enabled will automatically goto the first unread article after having selected all hot articles and threads with the ‘X’ command at group index level. Default is OFF.

Tab goes to next unread article (tab_goto_next_unread)

If enabled pressing <TAB> at the article viewer level will goto the next unread article immediately instead of first paging through the current one. Default is ON.

Thread articles by (thread_articles)

Defines which threading method to use. The choices are: 0) Don’t thread, 1) Thread on Subject only 2) Thread on References only, 3) Thread on References then Subject (default). It’s also possible to set the threading type on a per group basis by setting the group attribute variable ’thread_arts’ to 0 - 3 in the file $HOME/.tin/attributes. (See also GROUP ATTRIBUTES)

Catchup thread by using left key (thread_catchup_on_exit)

If ON catchup group/thread when leaving with the left arrow key. Default is ON.

Remove ~/.article after posting (unlink_article)

If ON remove ~/.article after posting. Default is ON.

Use builtin inews (use_builtin_inews)

Allows the builtin NNTP inews to be enabled/disabled. This has no effect when reading/posting direct to local spool where external inews(1) will always be used. Default is ON (enabled).

Limit number of articles fetched from server (use_getart_limit)

If enabled tin fetches max. getart_limit articles/group from the server. Default is OFF.

Use ANSI color (use_color)

If enabled tin uses ANSI-colors. Default is OFF.

Use interactive mail reader (use_mailreader_i)

Interactive mailreader: if ON mailreader will be invoked earlier for reply so you can use more of its features (eg. MIME, pgp, ...) this option has to suit default_mailer_format

Use metamail upon MIME articles (use_metamail)

If ON metamail can/will be used to display MIME articles. Default is ON.

Use mouse in xterm (use_mouse)

Allows the mouse key support in a xterm(1x) to be enabled/disabled. Default is OFF.

Wildcard matching (wildcard)

Allows you to select how tin matches strings. The default is 0 and uses the wildmat notation, which is how this has traditionally been handled. Setting this to 1 allows you to use full POSIX regular expressions. You will probably want to update your filter file if you use this regularly. NB: Newsgroup names will always be matched using the wildmat notation.

What to display instead of mark (word_h_display_marks)

Should the leading and ending stars and dashes also be displayed, even when they are highlighting marks? 0 - no 1 - yes, display mark 2 - print a space instead 3 - print a space, but only in signatures

Word highlighting in message body (word_highlight)

Enable word highlighting. See word_h_display_marks for the options available is this is enabled.

Quote line when cross-posting (xpost_quote_format)

Format is the same as for news_quote_format, this is used when answering to a crossposting to several groups with no ‘‘Followup-To:’’ set

GROUP ATTRIBUTES

tin allows certain attributes to be set on a per group basis. These group attributes are read from the file $HOME/.tin/attributes. A later version will provide a menu interface to set all the attributes. At present you will have to edit the file with your editor.

Note that the scope=<groupname> line has to be specified before the attributes are specified for that group. All attributes are set to a reasonable default so you only have to specify the attribute that you want to change (i.e., savedir). All toggle attributes are set by specifying ON/OFF. Otherwise, these function exactly the same as their global equivalents. The following group attributes are available:

scope

maildir

Identical to the tinrc variable default_maildir

savedir

Identical to the tinrc variable default_savedir

savefile

organization

from

Identical to the tinrc variable mail_address

sigfile

followup_to

printer

auto_select

auto_save

batch_save

delete_tmp_files

show_only_unread

Identical to the tinrc variable of the same name

thread_arts

Identical to the tinrc variable thread_articles

show_author

Identical to the tinrc variable of the same name

sort_art_type

Identical to the tinrc variable sort_article_type

post_proc_type

Identical to the tinrc variable post_process_type

mailing_list

Used when a group is a mailing list. All responses to the group will be directed to this email address instead

x_headers

A list of headers that will be automatically added when posting

x_body

A piece of text that will be added at the start of a message body. If this string starts with a / or ~ then it is assumed to be the name of a file containing the text to insert.

quick_kill_scope

quick_kill_expire

quick_kill_case

quick_kill_header

quick_select_scope

quick_select_expire

quick_select_case

quick_select_header

x_comment_to

news_quote_format

Identical to the tinrc variable of the same name

quote_chars

Identical to the tinrc variable of the same name

ispell

Examples:

# in *sources* set post process type to shar
scope=*sources*
post_proc_type=1

# in *binaries* set post process type to uudecode
# remove tmp files and set Followup-To: poster
scope=*binaries*
post_proc_type=2
delete_tmp_files=ON
followup_to=poster

# in fido.* newsgroups change quote_chars
# and add X-Comment-To: line
scope=fido.*
quote_chars=%s>_
x_comment_to=ON

# in *.test newsgroups, don’t append signature
# and preset Subject
scope=*.test
sigfile=--none
x_headers=Subject: test - ignore - no reply

FILTERING ARTICLES

When there is a subject or an author which you are either very interested in, or find completely uninteresting, you can easily instruct tin to auto-select or auto-kill articles that match rules that you specify. This can be anything from the name of the author to the number of lines in an article.

When tin starts up the user’s killfile $HOME/.tin/filter is read. Each time a newsgroup is entered the rules are applied and articles killed or selected when they meet certain criteria.

The degree to which rules are applied depend on the kill_level tinrc setting. By default killed articles will only be marked read. Adjust kill_level for more agressive processing. Articles that match an auto-selection rule are marked with a ‘‘*’’.

Filtering rules can be manually entered into $HOME/.tin/filter (but don’t do this whilst running tin else you will lose your changes) or by using an on screen menu within tin.

The filtering capabilities of tin have been significantly enhanced over previous versions to include scoring and better pattern matching. It is recommended that you read the file filtering in the tin documentation directory.

The on screen filtering menu is accessed by pressing ‘^K’ at the group and page levels. It allows the user to kill or select an article that matches the current ‘‘Subject:’’ line, ‘‘From:’’ line or a string entered by the user. The user entered string can be applied to the ‘‘Subject:’’ or ‘‘From:’’ lines of an article. The kill description can be limited to the current newsgroup or it can apply to all newsgroups. Once entered the user can abort the command and not save the kill description, edit the kill file or save the kill description.

POSTING ARTICLES

tin allows posting of articles, follow-up to already posted articles and replying direct through mail to the author of an article.

Use the ‘w’ command to post an article to a newsgroup. After entering the post subject the default editor (i.e., vi) or the editor specified by the $EDITOR environment variable will be started and the article can be entered. To crosspost articles simply add a comma and the name of the newsgroup(s) to the end of the ‘‘Newsgroups:’’ line at the beginning of the article. After saving and exiting the editor you are asked if you wish to a)bort posting the article, e)dit the article again or p)ost the article to the specified newsgroup(s).

Use the ‘W’ command to display a history of the articles you have posted. The date the article was posted, which newsgroups the article was posted to and the articles subject line are displayed.

Use the ‘f’ / ‘F’ / ‘^W’ command to post a follow-up article to an already posted article. The ‘f’ command will copy the text of the original article into the editor. The ‘^W’ command will copy the text and all headers of the original article into the editor. The editing procedure is the same as when posting an article with the ‘w’ command.

Use the ‘r’ / ‘R’ / ‘^E’ command to reply direct through mail to the author of an already posted article. The ‘r’ command will copy the text of the original article into the editor. The ‘^E’ command will copy the text and all headers of the original article into the editor. The editing procedure is the same as when posting an article with the ‘w’ command. After saving and exiting the editor you are asked if you wish to a)bort sending the article, e)dit the article again or s)end the article to the author.

CUSTOMIZING THE ARTICLE QUOTE STRING

When posting a followup to an article or replying direct to the author of an article via email the text of the article can be quoted. The beginning of the quoted text can contain information about the quoted article (i.e., Name and the Message Id of the article). To allow for different situations certain information from the article can be used in the quoted string. The following variables are expanded if found in the tinrc variables ’mail_quote_format’ or ’news_quote_format’:

%A Address (Email)

%D

Date

%F

Full address (%N (%A))

%G

Groupname

%M

Message Id

%N

Name of user

i.e.,

mail_quote_format=On %D in %G you wrote:
news_quote_format=In %M, %F wrote:

would expand to:

On 21 Jul 1992 09:45:51 -0400 in alt.sources you wrote:
In <abcINN123@ecrc.de>, Iain Lea (iain@ecrc.de) wrote:

The quoted text section of an article is marked by a preceding quote string at the beginning of each quoted line. The default quote string is set to ’>_’. The default can be changed by setting the tinrc variable ’quote_chars’ to ones own preference. (note that ’_’ underline is used to represent a space).

MAILING PIPING PRINTING REPOSTING AND SAVING ARTICLES

The command interface to mail (‘m’), pipe (‘|’), print (‘o’), repost (‘x’) and save (‘s’ and ’S’) articles is the same for ease of use.

Auto-saving with ’S’ is a special case and operates only on tagged articles. They will processed without any further prompting according to the default save paramters defined in tinrc or by any attributes set for the current group.

Otherwise, the initial prompt will ask you to select which a)rticle, t)hread, h)ot (auto-selected) r)egex pattern, t)agged articles you wish to mail, pipe etc.

Tagged articles must have already been tagged with the ‘t’ command. All tagged articles can be untagged by the ’U’ untag command.

If a regex pattern is selected you are asked to enter a pattern (i.e., to match all articles subject lines containing ’net News’ you enter "net News"). Any articles that match the entered expression will be mailed, piped etc. See also the wildcard= tinrc variable for advanced pattern matching options.

To save articles to a mailbox with the name of the current newsgroup (i.e., Alt.sources) enter ’=’ or ’=<mailbox name>’ when asked for the save filename.

To save in <news.group.name>/<filename> format enter ’+<filename>’. Environment variables are allowed within a filename (i.e., $SOURCES/dir/filename).

When saving articles you can specify whether the saved files should be post processed (i.e., unshar(1) shell archive, uudecode(1) multiple parts etc). A default process type can be set by the ’Process type:’ in the ‘M’ options menu.

AUTOMATIC MAILING AND SAVING NEW NEWS

tin allows new/unread news articles to be mailed (‘‘-M’’ and ‘‘-N’’ option) or saved (‘‘-S’’ option) in batch mode for later reading. Useful when going on holiday and you don’t want to return and find that expire has removed a whole load of unread articles. Best to run from crontab everyday while away, after which you will be mailed a report of which articles were mailed/saved from which newsgroups and the total number of articles mailed/saved. Articles are saved in a private news structure under your <savedir> directory (default is $HOME/News). Be careful of using this option if you read a lot of groups because you could overflow your file system. If you only want to save a few groups it would be best to backup your full $HOME/.newsrc and create a new one that only contains the newsgroups you want to mail/save. Saved news can be read later by tin -R.

tin -M iain -c -f newsrc.mail

(mail any unread articles in newsgroups specified in file newsrc.mail and mark them as read)

tin -S -c -f newsrc.save

(save any unread articles in newsgroups specified in file newsrc.save and mark them as read)

tin -R

(read any articles saved by tin -S)

RANGES

A range is simply a group of items marked using the range (’#’) key. Certain tin commands will operate on a range if one exists rather than just the current item. A range is an expression of the form <min>-<max>, eg. 10-15 will highlight items 10 through 15 on the current screen. Other than absolute numeric positions, ’.’ can be used in place of the current cursor position and ’$’ can be used to mean the highest number available. Currently the only commands that understand ranges are ’K’, ’z’ and ’Z’ at the Group level.

SIGNATURES

tin will recognize a signature in either $HOME/.signature or $HOME/.Sig. If $HOME/.signature exists, then the signature will be pulled into the editor for mail commands. A signature in $HOME/.signature will not be pulled into the editor for posting commands since inews(1) will append the signature itself.

A signature in $HOME/.Sig will be pulled into the editor for both posting and mailing commands.

The following is an example of a $HOME/.Sig file:

NAMES  Iain Lea    iain@ecrc.de
SNAIL  Bruecken Str 12, 90419 Nuernberg 90, Germany

tin also has the capability to generate random signatures on a per newsgroup basis if so desired. The way to accomplish this is to specify the default signature or the group attribute sigfile as a directory. If for example the sigfile path is /usr/iain/.sigs and .sigs is a directory then tin will select a random signature from any file that is in the directory .sigs (note: one signature per numbered file). A random signature can also consist of a fixed part signature that can contain your name, address etc. followed by the random sig. The fixed part of the random sig is read from the file $HOME/.sigfixed.

TIPS AND TRICKS

tin can be pretty much be navigated by using the four cursor keys. The left arrow key goes up a level, the right arrow key goes down a level, the up arrow key goes up a line (page at article viewer level) and the down arrow key goes down a line (page at article viewer level).

The following newsgroups provide useful information concerning news software:

—news.software.readers (info. about news user agents tin, rn, nn, vn etc.) —news.software.nntp (info. about NNTP) —news.software.b (info. about news transport agents Bnews, Cnews and INN) —news.answers (Frequently Asked Questions (FAQ) about many different themes)

Many prompts (i.e., ’Mark everything as read? (y/n): y’) within tin offer a default choice that the cursor is positioned on. By pressing <CR> the default value is taken.

Many prompts (i.e., ’Post subject []>’) within tin can be aborted by pressing ESC.

When tin is run in an xterm(1x) it will resize itself each time the xterm(1x) is resized.

tin will reread the active file at set intervals to show any newly arrived news.

If you find large number of New newsgroups cluttering up your screen, pressing ’r’ will make them go away.

XTERM BUTTONS

If the environment variable $TERM is set to xterm(1x), then button pressing can be used to select groups and articles. In this discussion, the buttons are assumed to be assigned conventionally (i.e., Button1 is the left button).

In general (i.e., for the group, thread and article menus),

Button1 (left)

enters next (lower) level if you click on a article, otherwise pages down.

Button2 (centre)

returns to the previous (upper) level if you click on a article, otherwise pages up.

Button3 (right)

positions on the article line under mouse cursor, or pages down if you’ve clicked outside the list of articles.

In the group selection menu, if the mouse is pointing at a group then:

left button

moves to and selects the group pointed at, just like <CR>.

centre button

quits the program, just like ‘q’.

right button

moves to the group pointed at.

In the article menu, if the mouse is pointing at an article (or thread) then:

left button

reads the article pointed at, just like <CR>, or the thread, just like ‘l’.

centre button

exits the menu, catching up on the group if you have ‘group_catchup_on_exit‘ set in your configuration, just like ‘q’.

right button

moves to the article (or thread) pointed at.

In the thread menu, if the mouse is pointing at an article then:

left button

reads article pointed at, just like <CR>.

centre button

exits the menu, catching up on the thread if you have ’thread_catchup_on_exit’ set in your configuration, just like ‘q’.

right button

moves to the article pointed at.

In other menus and areas button pressing reverts back to usual cut and paste of xterm(1x), but after one click of any button.

INDEX FILES

If your news server supports NOV index files (most modern installations will), then this section can be ignored.

If your news server doesn’t support NOV index files, tin will maintain an index for each newsgroup. There are a number of methods in which index files can be created and updated.

The simplest method is that each user creates/updates his/her own index files that are stored in $HOME/.tin/.news. This has the advantage that any user can compile and install tin, but the disadvantage is that each user is going to be creating duplicate files and using precious disk space. A good way to keep index files updated is by doing a tin -U that will update index files in the background while you are reading news in the foreground. You can also update index files via the system batcher cron with the ‘‘-u’’ option:

30 6 * * * /usr/local/bin/tin -u

A slightly better method is to set tin setuid news and have all index files created and updated in the news spool directory (i.e., /var/spool/news/.news). This has the advantage that there will only be one copy of the index files on each machine on your network, but the disadvantage is that you will have tin running setuid news.

A better method is to install the tind index file updating daemon and have it create and update index files for all groups in your active file at regular intervals in the news spool directory (i.e., /var/spool/news/.news). This has the advantage that there will only be one copy of the index files on each machine on your network and tin must not be setuid news, but the disadvantage is that you will have to have news permissions to install tind and root permissions to install an entry in the cron batcher system to have tind regularly update index files.

The best method is to install the tind index file updating daemon on your NNTP server and have it create and update index files for all groups in your active file at regular intervals in the news spool directory (i.e., /var/spool/news/.news). This has the advantage that there will only be one copy of the index files on the NNTP server for the whole of your network, but the disadvantage is that you will have to install my NNTP server patches to allow tin to retrieve index file from your NNTP server and and you must install an entry in the cron batcher system to have tind regularly update index files.

Entering a group the first time tends to be slow because the index file must be built from scratch unless the tind update daemon is being used. To alleviate the slowness start tin to create all index files for the groups you subscribe to with tin -u -v and go for a coffee. Subsequent readings of a group will cause incremental updating of the index file.

If reading news remotely and updating index files locally, operation will be somewhat slower because the articles must be retrieved from the NNTP server.

ENVIRONMENT VARIABLES

TINRC

Define this variable if you want to specify command line options that tin should be started with to save typing them each time it is started. The contents of the environment variable are added to the front of the command line options before it is parsed therefore allowing an option specified on the command line to override the same option specified in the environment. Note that environment variables that are used to set message header lines can also be set by adding the header name and value to the $HOME/.tin/headers file.

TIN_HOMEDIR

Define this variable if you do not want the .tin directory in $HOME/.tin. (i.e., if you want all tin’s private files in /tmp/.tin you would set $TIN_HOMEDIR to /tmp.

TIN_INDEX_NEWSDIR

Define this variable if you do not want the .news directory in $HOME/.tin/.news. (i.e., if you want all tin’s news index files in /tmp/.news you would set $TIN_INDEX_NEWSDIR to /tmp.

TIN_INDEX_MAILDIR

Define this variable if you do not want the .mail directory in $HOME/.tin/.mail. (i.e., if you want all tin’s mail index files in /tmp/.mail you would set $TIN_INDEX_MAILDIR to /tmp.

TIN_INDEX_SAVEDIR

Define this variable if you do not want the .save directory in $HOME/.tin/.save. (i.e., if you want all tin’s save index files in /tmp/.save you would set $TIN_INDEX_SAVEDIR to /tmp.

TIN_LIBDIR

Define this variable if you want to override the NEWSLIBDIR path that was compiled into the tin binary via the Makefile.

TIN_SPOOLDIR

Define this variable if you want to override the SPOOLDIR path that was compiled into the tin binary via the Makefile.

TIN_NOVROOTDIR

Define this variable if you want to override the NOVROOTDIR path that was compiled into the tin binary via the Makefile.

TIN_ACTIVEFILE

Define this variable if you want to override the NEWSLIBDIR/active path that was compiled into the tin binary via the Makefile.

NNTPSERVER

The default NNTP server to remotely read news from. This variable only needs to be set if the ‘‘-r’’ command line option is specified and the file /etc/nntpserver does not exist.

NNTPPORT

The NNTP tcp port to read news from. This variable only needs to be set if the the tcp port is not the default 119. The ‘‘-p’’ command line option overrides $NNTPPORT.

DISTRIBUTION

Set the article header field ‘‘Distribution:’’ to the contents of the variable instead of the system default.

TEX2ISO

Set the article viewer to decode German style umlaut codes to ISO latin1. Value 0 has the same effect as not defining the variable. Use in combination with $ISO2ASC.

ISO2ASC

Set the ISO to ASCII charset decoding table character to use in decoding an articles text. Values can range from 0 to 6.

ORGANIZATION

Set the article header field ‘‘Organization:’’ to the contents of the variable instead of the system default. If reading news on an Apollo DomainOS machine the environment variable $NEWSORG has to be used instead of $ORGANIZATION.

REPLYTO

Set the article header field ‘‘Reply-To:’’ to the return address specified by the variable. This is useful if the machine is not registered in the UUCP mail maps or if you wish to receive replies at a different machine.

NAME

Overrides the fullname given in the gecos-files in /etc/passwd, see also mail_address.

MAILER

This variable has precedence over the default mailer that is used in all mailing operations within tin.

EDITOR

This variable has precedence over the default editor (i.e., vi(1)) that is used in all editing operations within tin (i.e., posting ‘w’, replying ‘r’, follow-ups ‘f’, ...).

VISUAL

If $EDITOR is unset, then this variable is looked up for a default editor. If $EDITOR and $VISUAL are both unset, tin will uses the systems default editor (i.e. vi(1) on UNIX-systems).

AUTOSUBSCRIBE

tin interprets this variable similarly to rn. It contains a list of patterns, separated by commas and possibly prefixed with exclamation points. A new group is checked against the list of patterns; if it matches, tin subscribes the user to the group without further query. An exclamation point negates the meaning of a match on this pattern, and can be used to cancel certain matches. For example, setting

AUTOSUBSCRIBE=comp.os.unix.*,talk.*,!talk.politics.*

will automatically subscribe the user to all new groups in the comp.os.unix hierarchy, and all talk groups other than talk.politics groups (which will be queried for as usual.)

AUTOUNSUBSCRIBE

tin interprets this variable similarly to rn. It is handled like the $AUTOSUBSCRIBE variable, but groups matching the list are unsubscribed from without further query. For example, setting

AUTOUNSUBSCRIBE=alt.flame.*,u*,!uk.*

will automatically unsubscribe the user from all new alt.flame groups and all groups starting with u (university groups) other than UK groups (which will be queried for as usual.)

SPAMTRAP

Set this variable to a list of comma-separated strings to be warned if you are replying to an article by mail where the e-mail address contains one of these strings. The matching is case-insensitive. Example:

SPAMTRAP=spam,delete,remove

METAMAIL

Set this variable to point to metamail(1) or a replacement (i.e. metamutt).

ISPELL

Set this variable to point to ispell(1) or a

replacement and it’s cmd-line options.

FILES

$HOME/.newsrc

subscribed to newsgroups.

$HOME/.newsauth

"nntpserver password [user]" pairs for NNTP servers that require authorization.

$HOME/.tin/tinrc

options.

$HOME/.tin/attributes

contains user specified group attributes.

$HOME/.tin/.news

newsgroups index files directory.

$HOME/.tin/.mail

mailgroups index files directory.

$HOME/.tin/.save

saved newsgroups index files directory.

$HOME/.tin/active.mail

active file of user’s mailgroups.

$HOME/.tin/active.save

active file of user’s saved newsgroups.

$HOME/.tin/filter

filtering file for article killing and auto-selection.

$HOME/.tin/group.times

list of last time all groups were updated (used only by tind index daemon).

$HOME/.tin/headers

extra header lines to be added to each article to be posted.

$HOME/.tin/posted

history of articles posted by user.

$HOME/.tin/newsrctable

"nntpserver newsrc shortname [...]" pairs to use with ‘‘-g’’ command-line switch.

$HOME/.tin/.inputhistory

history of last used strings.

$HOME/.tin/postponed.articles

postponed articles from the ‘o’ command, reuse via ‘‘-o’’ command-line switch or via CTRL-O from within tin.

$HOME/.signature

signature. If you are not using use_builtin_inews, inews(1) automatically appends this file to your article after composing it (you won’t see your signature in the $EDITOR). See also section SIGNATURES.

$HOME/.Sig

signature. Same as above, but inews(1) won’t include it.

$HOME/.sigfixed

fixed part of a randomly generated signature.

/usr/lib/news/tinrc

Global configuration file.

/etc/tin/tin.defaults

Global configuration file.

/var/lib/news/active.times

Contains list of new newsgroups as they are added to the news history file. This file is only present on the news-server.

/var/lib/news/newsgroups

Short description of all newsgroups. This file is only present on the news-server.

/var/lib/news/subscriptions

List of newsgroups to subscribe first time user to. This file is only present on the news-server.

BUGS

See the TODO-file which comes with the source.

HISTORY

Based on the tass newsreader that was developed by Rich Skrenta and posted to alt.sources in March 1991. Tass was itself heavily influenced by NOTES which was developed at the University of Illinois by Ray Essick and Rob Kolstad in 1982.

v1.0 PL0 (full) was posted in 8 parts to alt.sources on 23 Aug 1991.
v1.1 PL0 (full) was posted in 11 parts to alt.sources on 13 Feb 1992.
v1.2 PL0 (full) was posted in 14 parts to alt.sources on 25 May 1993.
v1.2 PL1 (patch) was posted in 8 parts to alt.sources on 14 Jul 1993.
v1.2 PL2 (patch) was posted in 5 parts to alt.sources on 25 Sep 1993.
v1.3 PL0 beta has been available from ftp.scn.de:/pub/news/tin/ since April 1995.
v1.3-unoff-beta has been available from ftp.akk.uni-karlsruhe.de:/pub/news/clients/tin-unoff/ since March 1996.
v1.4.0 has been available from ftp.tin.org:/pub/news/clients/tin/v1.4/ since November 13th 1999.
v1.4.1 has been available from ftp.tin.org:/pub/news/clients/tin/v1.4/ since December 1st 1999.

CREDITS

Rich Skrenta

author of tass v3.2 which this newsreader used as its base.

Bill Davidsen

author of envarg.c environment variable reading routine.

Mike Gleason

author of sigfile.c random signature generation routines.

Paul Kramer

author of tin v1.2 intro.txt and cmdref.txt beginners documentation.

Markus Kuhn

author of charset.c and iso2asc.txt ISO-8859-1 documentation.

Arnold Robbins

author of strftime.c date formatting routine.

Jim Robinson

co-author of original kill.c article kill and auto-selection routines.

Rich Salz

author of wildmat.c pattern matching and parsdate.y date parsing routines.

Rich Stephan

for translating the manual page to german.

Dave Taylor

author of curses.c from the elm mailreader.

Chris Thewalt

author of getline.c emacs style editing routine.

Mark Tomlinson

for porting tin to the AmigaOS operating system.

Andreas Wrede

for porting tin to the OS/2 operating system.

Nigel Ellis & Piers Haken

for porting tin to the Windows/NT operating system.

Andrew Greer

for porting tin to the VAX/VMS operating system.

Steven Madsen

for adding pgp (Pretty Good Privacy) support.

Dieter Becker

for generously posting certain releases for me when my net connection was removed by a group of very short sighted people.

Philip Hazel <ph10@cam.ac.uk>

for libpcre (Perl-compatible regular expression library).

I wish to thank the following people for supplying patches:

David Abbott, Earle Ake, Orbby S. Arka, Joachim Astel, Anton Aylward, Jens Chr. Bachem, George Baltz, Volker Barthelmann, Kirk Bauer, Paul Bauwens, Dieter Becker, Wolfgang Behrens, Fabrice Bellet, Greg Berigan, Enrik Berkhan, Juergen Bernau, Dan Berry, David Binderman, Andrey Blochintsev, Chris Blum, Fokke de Boer, Andreas Borchert, Mark Boucher, Bill Brolik, Herman ten Brugge, Martin Buck, Jeremy Buhler, Leila Burrell-Davis, Sean Casey, Peter Castro, Troy Cauble, Andrey A. Chernov, Albert Chin-A-Young, Tan Kwee Chuan, Boleslaw Ciesielski, Robert Claeson, Steven Cogswell, Don Costello, Bryan Curnutt, Ned Danieley, Lars Dannenberg, Chris Davies, John Davis, Borislav Deianov, Thomas E. Dickey, Olaf Dietrich, Theo Van Dinter, Ralf Doeblitz, Bryan Dongray, Michael Douglass, Craig Durland, Bernd Eckenfels, Phil Edge, Kirk Edson, Nick Efthymiou, Stefan Elf, Rob Engle, Olle Eriksson, Brent Ermlick, Bernd Ernesti, Ragnar Hojland Espinosa, Jason Faultless, Michael Faurot, Werner Fleck, John M. Flinchbaugh, Andy Gabor, Torsten Gesang, Ruediger Geys, Callum Gibson, Mike Glendinning, Philippe Goujard, Dan Greenspan, Karlo Gross, Carl Hage, Paul Halsema, Ed Hanway, Scott Hauck, Christian Haul, Per Headland, Arnold Hendriks, Daniel Hermans, Jose Herrero, Dave Hill, Tom Hite, Torsten Homeyer, Ulli Horlacher, Keith Howell, Tommy Hsieh, Shih-Kun Huang, Steve Hunt, Jeff Hurwitt, Jeon Hyoung-Jo, Pieter Immelman, Jarkko Isokungas, Patrick St. Jean, Hal Jespersen, Park Sang Jin, Robbin Johnson, Jarkko Jormanainen, Nelson Kading, Geoffrey Keating, Karsten Keil, Charles S. Kerr, Fritz Kleeman, Andreas Kies, Janne Kiviluoto, Tomasz Kloczko, Dwarven Knight, Thomas Koenig, Karl-Koenig Koenigsson, Martin Kraemer, Thomas Kroener, Florian Kuehnert, Kris Kugel, Manoj Kumar, Dawid Kuroczko, Yuri Kuzmenko, Olivier Lacroix, Geoff Lane, Alex Lange, Alain Lasserre, Stanislav Latishko, Hannu Laurila, Vincent Lefevre, Alexander Lehmann, Marty Leisner, Thomas Leitner, Hakan Lennestal, Kevin Lentin, Chua Choon Leong, Chris Lewis, Andreas Ley, David-Michael Lincke, Otto Lind, Richard Lloyd, Florian Lohoff, Reinhard Luebke, Clifford Luke, Michael Lupp, David MacKenzie, Hugh Mahon, Giuseppe De Marco, Dmitri A. Martynoff, Kazushi Marukawa, William McBrine, Owen Medd, Philipp Mergenthaler, Arkadiusz Miskiewicz, Soren Moller, Bruce Momjian, Sergio Morales, Michael Morrell, Klaus Mueller, Mike Muise, Udo Munk, John R. Myers, Daniel Naber, Torsten Neumann, Dirk Nimmich, James Nugen, David E. O’Brien, Michael O’Reilly, Oleg Ohotnikov, Ronald Orr, Julien Oster, Jeb Palmer, Neil Parker, Tom Parry, Jim Patterson, Sven Paulus, Walter Pelissero, Cameron Perkins, Colin Perkins, Eric Peterson, Tim Pierce, Bill Poitras, Scott W. Powers, Wolfgang Prediger, GianPiero Puccioni, Thomas Quinot, Stefan Rapp, Martin Reising, Kyle Rhorer, Ted Richards, Steve Robbins, Ollivier Robert, Branden Robinson, Jim Robinson, Erik van Roode, Meelis Roos, Stephen Roseman, Roland Rosenfeld, Peter Van Rossem, Clifton Royston, Rich Salz, Gary Sanders, Nickolay Saukh, John Sauter, Christopher Sawtell, Holger Schif, Volker Schmidt, John Schmitz, Torsten Schneider, Stefan Scholl, Rainer Scholz, Juergen Schroeder, Larry Schwimmer, Bart Sears, Karl-Olav Serrander, Doug Sewell, Philip Shearer, Jungshik Shin, Sergey Shkonda, Andreas Siegert, Mark Smith, Steve Spearman, Helmut Springer, Cliff Stanford, Steve Starck, Jason Steiner, Ralf Stephan, Michael Stenns, Helmrich Streitmatter, Hans Werner Strube, Dieter Stueken, Ed Sznyter, Dean Takemori, Darrell Tangman, Derek Terveer, Carsten Theis, Julian Thompson, David Tiller, Andry Timonin, Mark Tomlin, Michael Traub, Adri Verhoef, Paul Vickers, Oliver B. Warzecha, Jason Wessel, Cary Whitney, Henrik Wist, Greg Woods, Lloyd Wright, Jens Wuepper, Billy Y., Nickolai Zeldovich, Zbigniew Zych

AUTHOR

Iain Lea <iain@bricbrac.de>

MAINTAINER

Urs Janssen <urs@tin.org>