File: *manpages*, Node: tin, Up: (dir) tin(1) A Usenet newsreader tin(1) NAME tin, rtin, tind - A Usenet newsreader SYNOPSIS tin [[-h|-H|-V] | [[[-a] [-dnq|-Q] [-rzCR]] [-cuvSUZ] [-N|-M address] [-o|-w]] [-D debug-level] [-f newsrc-file] [-g server] [-m Mail-dir] [-p port] [-s News-dir] [-I index-dir] [newsgroup[,...]]] rtin [[-h|-H|-V] | [[[-a] [-dnq|-Q] [-zCR]] [-cvSZ] [-N|-M address] [-o|-w]] [-D debug-level] [-f newsrc-file] [-g server] [-m Mail-dir] [-p port] [-s News-dir] [newsgroup[,...]]] tind [[-h|-H|-V] | [-d|-P|-v] [-D debug-level] [-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 ter- minal 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 . The key advances to the next newsgroup with unread articles and enters it. OPTIONS -a Toggle ANSI color (default is off). -c Create/update index files for every group in $HOME/.newsrc or file specified by the ``-f'' option and mark all articles as read. -C Count articles for each subscribed group at startup. With a large number of groups this will be slow. However the number of unread articles in each group will be accurate. (Not needed if also using ``-n'' option.) -d Don't load newsgroup descriptions (interactive 1.4 January 8th, 1998 1 tin(1) A Usenet newsreader tin(1) 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 news- groups in place of $HOME/.newsrc. -g server Use the server and newsrc specified in $HOME/.tin/newsrctable. -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 read- ing news via NNTP only. -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 sec- tion 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 connect- ing 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 arti- cle 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). 1.4 January 8th, 1998 2 tin(1) A Usenet newsreader tin(1) -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 articles to directory. Default is $HOME/News. -S Save unread articles for later reading by the ``-R'' option. For more information read sec- tion 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. -z Only start tin if there is any new/unread news. If there is news tin will position cur- sor 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 indi- cates no news, 1 that an error occurred and 2 that new/unread news exists. Useful for writ- ing 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. 1.4 January 8th, 1998 3 tin(1) A Usenet newsreader tin(1) 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 news- groups. 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 automati- cally 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 permis- sions 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 dis- played 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 1.4 January 8th, 1998 4 tin(1) A Usenet newsreader tin(1) 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 adminis- trator before it will be made public. tin will ask for confirmation before you post to a moder- ated 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 moder- ated. (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 1.4 January 8th, 1998 5 tin(1) A Usenet newsreader tin(1) 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 Fremdcancel-FAQ Thomas Roessler 0 [ 7] What is this funny tree in the thr Robert F. Simmig 1 [ 12] `-> Sephan Wagner Tin thread-level (was: What is Bob Johnson 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 at Arbeitskreis Kultur und Kommunikati article-body COMMON MOVING KEYS This table shows the common keys/commands for moving at all four levels within tin. ansi/vt100 Other Terminals Beg. of list/article Home 1 (^R or g at article level) End of list/article End $ (also G at article level) Page Up PgUp ^U or ^B or b Page Down PgDn ^D or ^F or Line Up Up arrow k (not at article level) Line Down Down arrow j (not at article level) 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. 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 loca- tion, respectively. ^D delete the character currently under the cursor, 1.4 January 8th, 1998 6 tin(1) A Usenet newsreader tin(1) or send EOF if no characters in the buffer. ^H, delete character left of the cursor. ^K delete from cursor to end of line. ^P, ^N move through history, previous and next, respec- tively. ^L, ^R redraw the current line. places line on history list if non-blank, appends newline and returns to the caller. aborts the present editing operation. NEWSGROUP SELECTION COMMANDS 4 Select group 4. ^L Redraw page. ^O Reload postponed article. If your system blocks CTRL-O you must quote it by pressing CTRL-V first. See also ``-o'' command-line switch. ^R Reset $HOME/.newsrc file. Read current group. View next group with unread news. Will wrap around to the beginning of the group selection list looking for unread groups. & Toggle use of ANSI color. c Mark current group as all read with confirmation and goto next group in group selection list. C Mark current group as all read and goto next unread group in group selection list. d Toggle display to show just the group name or the group name and the groups description. g Choose a new group by name. The position of the group within the group list will also be asked for. By entering `1' the new group will be the first group in the displayed list, by entering `8' the group will be the eighth group in the list etc. By entering `$' the group will be the last group displayed. h Help screen of newsgroup selection commands. 1.4 January 8th, 1998 7 tin(1) A Usenet newsreader tin(1) H Toggle the display of help mini menu at the bot- tom of the screen. i Show description of the current newsgroup at the last line. I Toggle inverse video. m Move the current group within the group selec- tion 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 infor- mation see section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES). O Reload postponed article. See also ``-o'' com- mand-line switch. q Quit tin - ask the user to confirm if 'con- firm_to_quit' is on. Q Quit tin - don't ask the user to confirm. r Toggle display of all subscribed to groups and just the subscribed to groups containing unread articles. Command has no effect if groups were read from the command line when tin was started. R Mail a bug report or comment to . 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 pat- tern. u Unsubscribe to current group. U Unsubscribe to groups matching user specified pattern. v Print tin version information. 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. 1.4 January 8th, 1998 8 tin(1) A Usenet newsreader tin(1) W List articles posted by user. The date posted, the newsgroup and the subject are listed. X Quit tin without saving (changed) configuration. y The first time this command is called it will yank in all groups from $NEWSLIBDIR/active that are not in $HOME/.newsrc. After any groups have been subscribed/unsubscribed to, this command if pressed again will reread $HOME/.newsrc and dis- play only the subscribed groups. 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. / Group forward search. ? Group backward search. GROUP INDEX COMMANDS 4 Select article 4. ^A Auto select article(s) via a menu. Read the sec- tion FILTERING ARTICLES for more information. [ Auto select article(s) with a single key. The defaults used for selection are set via the fol- lowing four tinrc config variables: default_filter_select_header 0,1 = ``Subject:'', 2,3 = ``From:'', 4 = ``Message-Id:'' & full ``References:'' line, 5 = ``Message-Id:'' & last ``Refer- ences:'' entry only, 6 = ``Message-Id:'' entry only, 7 = ``Lines:'' default_filter_select_global ON = apply to all groups, OFF = apply to current group default_filter_select_case ON = filter case sensitive, OFF = ignore case default_filter_select_expire ON = expire after specified time, OFF = always apply the filter Read the section FILTERING ARTICLES for more information. ^K Kill article(s) via a menu. Read the section FILTERING ARTICLES for more information. ] Kill article(s) with a single key. The defaults used for killing are set via the following four 1.4 January 8th, 1998 9 tin(1) A Usenet newsreader tin(1) tinrc config variables: default_filter_kill_header 0,1 = ``Subject:'', 2,3 = ``From:'', 4 = ``Message-Id:'' & full ``References:'' line, 5 = ``Message-Id:'' & last ``Refer- ences:'' entry only, 6 = ``Message-Id:'' entry only, 7 = ``Lines:'' default_filter_kill_global ON = apply to all groups, OFF = apply to current group default_filter_kill_case ON = filter case sensitive, OFF = ignore case default_filter_kill_expire ON = expire after specified time, OFF = always apply the filter Read the section FILTERING ARTICLES for more information. ^L Redraw page. ^O Reload postponed article. If your system blocks CTRL-O you must quote it by pressing CTRL-V first. Read current article. View next unread article or group. a Author forward search. A Author backward search. B Search the body of all articles in group (can be slow). c Mark all articles as read with confirmation. C Mark all articles as read and goto next group with unread news. d Toggle display to show just the subject or the subject and author. g Choose a new group by name. h Help screen of group index commands. H Toggle the display of help mini menu at the bot- tom of the screen. i Display the subject of the first article in the current thread in the last line. 1.4 January 8th, 1998 10 tin(1) A Usenet newsreader tin(1) I Toggle inverse video. K Mark article/thread as read and advance to next unread article/thread. l List the author of each response in current thread and enter thread selection level. m Mail current article / thread / auto selected (hot) articles / articles matching pattern / tagged articles to someone. M User configurable options menu (for more infor- mation see section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES). n Go to next group. N Go to next unread article. o Output current article / thread / auto selected (hot) articles / articles matching pattern / tagged articles to printer. O Reload postponed article. See also ``fB-o'' com- mand-line switch. p Go to previous group. P Go to previous unread article. q Return to previous level. Q Quit tin. s Save current article / thread / auto selected (hot) articles / articles matching pattern / tagged articles to file / files / mailbox. To save to a mailbox enter '=' or '=mailbox' when asked for filename to save to. To save in / format enter '+filename'. Environment variables are allowed within a file- name (i.e., $SOURCES/dir/filename). t Toggle tag-status of current article / thread for mailing (`m') / piping (`|') / printing (`o') / saving (`s') / reposting (`x'). 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. 1.4 January 8th, 1998 11 tin(1) A Usenet newsreader tin(1) v Print tin version information. 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. W List articles posted by user. The date posted, the newsgroup and the subject are listed. x Repost an already posted article / thread / auto selected (hot) articles / articles matching pat- tern / tagged articles to another newsgroup(s). Useful for reposting from global to local news- groups. Do not use this to cross-post your own articles. X Mark all unread articles that have not been selected as read, redo screen to reflect changes and put index at the first thread to begin read- ing. 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. / Search forward for specified subject. ? Search backward for specified subject. # Choose range of articles to be affected by next command. - Show last message. | Pipe current article / thread / auto selected (hot) articles / articles matching pattern / tagged articles into command. * Select current thread for later processing. . Toggle selection of current thread. If at least one unread art, but not all unread arts, in thread is selected, then all unread arts become selected. @ 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 1.4 January 8th, 1998 12 tin(1) A Usenet newsreader tin(1) articles. Thus, one can iteratively whittle down uninteresting threads. + Perform auto-selection on current group. = Prompts for a pattern with which to match on. All threads whose subjects match the pattern will be selected. A pattern of ``*'' will match all subjects. Entering just will cause the previous entered pattern to be used. ; For each thread in current group, if it at least one unread art is selected, all unread arts become selected. This is useful for auto-selec- tion on author where reader wants to see entire thread. THREAD LISTING COMMANDS ^L Redraw page. ^O Reload postponed article. If your system blocks CTRL-O you must quote it by pressing CTRL-V first. Read current article within thread. View next unread article within thread. ^ Choose first article in thread. $ Choose last article in thread. / Choose article by subject string forward search ? Choose article by subject string backward search # Choose range of articles to be affected by next command. 4 Select article 4 within thread. c Mark thread as read after confirmation and return to previous level. d Toggle display to show just the subject or the subject and author. h Help screen of thread listing commands. H Toggle the display of help mini menu at the bot- tom of the screen. I Toggle inverse video. 1.4 January 8th, 1998 13 tin(1) A Usenet newsreader tin(1) K Mark thread as read. O Reload postponed article. See also ``fB-o'' com- mand-line switch. q Return to previous level. Q Quit tin. r Toggle display to show all articles or only unread articles. R Mail a bug report or comment to . This is the best way of getting bugs fixed and features added/changed. s Save article/thread/hot/pattern/tagged articles to file S Save tagged articles automatically without user prompts t Toggle tag status of current article for mailing (`m') / piping (`|') / printing (`o') / saving (`s') / reposting (`x'). U Untag all tagged threads v Print tin version information. z Mark current article in thread as unread. Z Mark all articles in thread as unread. ARTICLE VIEWER COMMANDS 0 Read the base article in this thread. 4 Read response 4 in this thread. ^A Auto select article(s) via a menu. Read the sec- tion FILTERING ARTICLES for more information. [ Auto select article(s) with a single key. The defaults used for selection are set via the fol- lowing four tinrc config variables: default_filter_select_header 0,1 = ``Subject:'', 2,3 = ``From:'', 4 = ``Message-Id:'' & full ``References:'' line, 5 = ``Message-Id:'' & last ``Refer- ences:'' entry only, 6 = ``Message-Id:'' entry only, 7 = ``Lines:'' default_filter_select_global ON = apply to all groups, OFF = apply to current group 1.4 January 8th, 1998 14 tin(1) A Usenet newsreader tin(1) default_filter_select_case ON = filter case sensitive, OFF = ignore case default_filter_select_expire ON = expire after specified time, OFF = always apply the filter Read the section FILTERING ARTICLES for more information. ^G Perform PGP operations on article. ^H Toggle display of all the articles mail header. ^K Kill article(s) via a menu. Read the section FILTERING ARTICLES for more information. ] Kill article(s) with a single key. The defaults used for killing are set via the following four tinrc config variables: default_filter_kill_header 0,1 = ``Subject:'', 2,3 = ``From:'', 4 = ``Message-Id:'' & full ``References:'' line, 5 = ``Message-Id:'' & last ``Refer- ences:'' entry only, 6 = ``Message-Id:'' entry only, 7 = ``Lines:'' default_filter_kill_global ON = apply to all groups, OFF = apply to current group default_filter_kill_case ON = filter case sensitive, OFF = ignore case default_filter_kill_expire ON = expire after specified time, OFF = always apply the filter Read the section FILTERING ARTICLES for more information. ^L Redraw page. ^O Reload postponed article. If your system blocks CTRL-O you must quote it by pressing CTRL-V first. Goto next base article. Goto next unread article. a Author forward search. A Author backward search. B Search the body of all articles in group (can be slow). 1.4 January 8th, 1998 15 tin(1) A Usenet newsreader tin(1) c Mark all articles as read with confirmation and return to group selection level. C Mark current group as all read and goto next unread group in group selection list. d Toggle rot-13 decoding for this article. D Delete 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. ^E Reply through mail to the author of the current article with a copy of the article with all headers included. 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. h Help screen of article page commands. H Toggle the display of help mini menu at the bot- tom 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 advance to next unread article. K Mark thread as read and advance to next unread thread. L Look up article by ``Message:-ID:''. m Mail current article / thread / auto selected (hot) articles / articles matching pattern / tagged articles to someone. M User configurable options menu (for more infor- mation see section GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES). n Go to the next article. N Go to the next unread article. 1.4 January 8th, 1998 16 tin(1) A Usenet newsreader tin(1) o Output current article / thread / auto selected (hot) articles / articles matching pattern / tagged articles to printer. O Reload postponed article. See also ``-o'' com- mand-line switch. p Go to the previous article. P Go to the previous unread article. q Return to previous level. Q Quit tin. 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 to file / files / mailbox. To save to a mailbox enter '=' or '=mailbox' when asked for filename to save to. To save in / format enter '+filename'. Environment variables are allowed within a file- name (i.e., $SOURCES/dir/filename). 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. v Print tin version information. 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. W List articles posted by user. The date posted, the newsgroup and the subject are listed. ^W Post a followup to the current article with a copy of the article with all headers included. x Repost an already posted article / thread / auto selected (hot) articles / articles matching 1.4 January 8th, 1998 17 tin(1) A Usenet newsreader tin(1) pattern / tagged articles to another news- group(s). Useful for reposting from global to local newsgroups. Do not use this to crosspost your own articles. z Mark article as unread. / Article forward search. ? Article backward search ! Shell escape. | Pipe current article / thread / auto selected (hot) articles / articles matching pattern / tagged articles into command. < Goto the first article in the current thread. > Goto the last article in the current thread. * Select current thread for later processing. . Toggle selection of current article. @ Reverse article selections. ~ Undo all selections on current thread. : Skip quoted text. - Display last article viewed. _ Toggle word highlighting on/off. " Toggle $TEX2ISO decoding for current article. GLOBAL OPTIONS MENU AND TINRC CONFIGURABLE VARIABLES At startup, tin reads in the configuration file. This con- tains 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 following variables are user configurable by editing $HOME/.tin/tinrc directly. Most of them can be set in the GLOBAL OPTIONS MENU which is could be accessed by pressing `M' at all levels. It allows the user to customize the behavior of tin. The options are saved to the file $HOME/.tin/tinrc. Use to toggle the required option and to set. Use `/', `?' to 1.4 January 8th, 1998 18 tin(1) A Usenet newsreader tin(1) search for a specific option. 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 automati- cally. 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 returning arts (art_marked_return) The character used to show that an article will return. 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. 1.4 January 8th, 1998 19 tin(1) A Usenet newsreader tin(1) 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 at each level (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. 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 _underdashed_ words. col_markstar Color of *starred* words col_minihelp Color of mini help menu 1.4 January 8th, 1998 20 tin(1) A Usenet newsreader tin(1) col_newsheaders Color of actual news header fields col_normal Standard foreground color col_quote Color of quote-lines col_response Color of response counter col_signature Color of signature col_subject Color of article subject col_text Color of text-lines col_title Color of Help/Mail-Sign Confirm commands before executing (confirm_action) Allows certain commands (i.e., `c' catchup) that require user confirmation to be executed immediately if set OFF. Default is ON. Confirm before quitting (confirm_quit) If ON confirm with ``y''/``n'' before quitting. Default is ON. default_art_search default_author_search default_config_search default_editor_format The format string used to create the editor start com- mand 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 = 1.4 January 8th, 1998 21 tin(1) A Usenet newsreader tin(1) 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., 1.4 January 8th, 1998 22 tin(1) A Usenet newsreader tin(1) /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. Default is lpr for BSD machines and lp for SysV machines. default_range_group default_range_select default_range_thread default_regex_pattern default_repost_group default_save_file default_save_mode Directory to save arts/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 speci- fied directory. Default is $HOME/.Sig. default_subject_search Show RFC 2047 ^H-header undecoded (display_mime_all- header_asis) Similar to display_mime_header_asis, but works on 1.4 January 8th, 1998 23 tin(1) A Usenet newsreader tin(1) CTRL-h (show all headers) instead of news_head- ers_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 dis- played 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 (desig- nated 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. 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 dis- played so that more of the newgroup description can be displayed. Default is 32. info_in_last_line If ON, show current group description or articles sub- ject in the last line (not in the pager and global menu) - `i' toggels setting. Use inverse video for page headers (inverse_okay) If ON use inverse video for page headers at different levels. Default is ON. Keep failed arts 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 arts in ~/Mail/posted (keep_posted_articles) If ON keep all postings in $HOME/Mail/posted. Default is ON. 1.4 January 8th, 1998 24 tin(1) A Usenet newsreader tin(1) 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. Leav- ing 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, if not username@host. MIME encoding in mail messages (mail_mime_encoding) MIME encoding of the body in mail message, if neces- sary (8bit, base64, quoted-printable, 7bit) Default is 8bit and no encoding(or charset conversion) is per- formed (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. Accord- ingly, 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 con- verted 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 under- stand what they are for. Display these header fields (or *) (news_headers_to_dis- play) 1.4 January 8th, 1998 25 tin(1) A Usenet newsreader tin(1) 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 any- thing turns off this option. Do not display these header fields (news_head- ers_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_dis- play=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=Group- name, %M=Message-Id, %N=Name). Default is "%F wrote:" PgDn goes to next artice 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 oth- erwise 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 hiearchies 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 neces- sary. (8bit, base64, quoted-printable, 7bit) Default is 8bit, which leads to no encoding (or charset con- version, i.e., local charset is posted as it is). If set to 7bit, Chinese and Japanese text(in 8bit encod- ings 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. 1.4 January 8th, 1998 26 tin(1) A Usenet newsreader tin(1) post_process_command Full pathname of a command to be run after success- fully uudecoding an article / thread. This option should be used in conjunction with post processing type 2=(uudecode) A sample script (for Linux) demon- strates 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 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 pro- cessing 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 1.4 January 8th, 1998 27 tin(1) A Usenet newsreader tin(1) 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) This allows the complete mail header or only the ``Subject:'' and ``From:'' fields to be output when printing articles. 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 repre- sents 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. 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) If set 'None' (0) only the ``Subject:'' line will be displayed. If set 'Addr' (1) ``Subject:'' line & the address part of the ``From:'' line are displayed. If set 'Name' (2) ``Subject:'' line & the authors full name part of the ``From:'' line are displayed. If set 'Both' (3) ``Subject:'' line & all of the ``From:'' 1.4 January 8th, 1998 28 tin(1) A Usenet newsreader tin(1) lin are displayed. Default is 2, authors full. Show description of each newsgroup (show_description) If ON show a short group description text after news- group name at the group selection level. The ``-d'' commandline flag will override the setting and trun 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 arts (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 -- (sigdashes) If ON prepend the signature with dashes '0 0. 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 fol- lowing 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. 1.4 January 8th, 1998 29 tin(1) A Usenet newsreader tin(1) 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 posi- tioning 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 termi- nal 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 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) Thread articles by 0=(nothing) 1=(Subject) 2=(Refer- ences) 3=(Both) Default is 3, thread by references and subject. 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. 1.4 January 8th, 1998 30 tin(1) A Usenet newsreader tin(1) 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). 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 arti- cles. 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 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 1.4 January 8th, 1998 31 tin(1) A Usenet newsreader tin(1) menu interface to set all the attributes. At present you will have to edit the file with your editor. Note that the scope= 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 specify- ing ON/OFF. Otherwise, these function exactly the same as their global equivalents. The following group attributes are available: scope maildir savedir savefile organization from sigfile followup_to printer auto_select auto_save auto_save_msg batch_save delete_tmp_files show_only_unread thread_arts show_author sort_art_type post_proc_type mailing_list x_headers 1.4 January 8th, 1998 32 tin(1) A Usenet newsreader tin(1) x_body 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 quote_chars 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 arti- cles with specific subjects or from specific authors. 1.4 January 8th, 1998 33 tin(1) A Usenet newsreader tin(1) These instructions are stored in a killfile. This menu is accessed by pressing `^K' at the group and page levels. It allows the user to kill or select an arti- cle 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 news- groups. Once entered the user can abort the command and not save the kill description, edit the kill file or save the kill description. tin. On starting tin the user's killfile $HOME/.tin/filter is read and on entering a newsgroup any kill or select descriptions are applied. Articles that match a kill description are marked killed and are not displayed. Articles that match an auto-select description are marked with a ``*'' when displayed. 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 sub- ject line are displayed. Use the `f' / `F' / `^W' command to post a follow-up arti- cle 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 1.4 January 8th, 1998 34 tin(1) A Usenet newsreader tin(1) 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 dif- ferent 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_for- mat' 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 when used to: On 21 Jul 1992 09:45:51 -0400 in alt.sources you wrote: In , Iain Lea (iain@ecrc.de) wrote: The quoted text section of an article is marked by a pre- ceding 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') articles is the same for ease of use. The initial command 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 regex pattern is selected you are asked to enter a pat- tern (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. 1.4 January 8th, 1998 35 tin(1) A Usenet newsreader tin(1) To save articles to a mailbox with the name of the current newsgroup (i.e., Alt.sources) enter '=' or '=' when asked for the save filename. To save articles in / format enter '+'. 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 pro- cess 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 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 news- groups specified in file newsrc.mail and mark them as read) tin -S -c -f newsrc.save (save any unread articles in news- groups 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. Currently the only commands that understand ranges are 'K', 'z' and 'Z' at the Group level. 1.4 January 8th, 1998 36 tin(1) A Usenet newsreader tin(1) SIGNATURES tin will recognize a signature in either $HOME/.signature or $HOME/.Sig. If $HOME/.signature exists, then the signa- ture 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 accom- plish 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 direc- tory 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 cur- sor 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 con- cerning 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 posi- tioned on. By pressing 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. 1.4 January 8th, 1998 37 tin(1) A Usenet newsreader tin(1) 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 but- ton). 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 cur- sor, 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 . 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 arti- cle (or thread) then: left button reads the article pointed at, just like , 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 config- uration, just like `q'. 1.4 January 8th, 1998 38 tin(1) A Usenet newsreader tin(1) 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 . centre button exits the menu, catching up on the thread if you have 'thread_catchup_on_exit' set in your con- figuration, 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 fore- ground. 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 disadvan- tage 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 1.4 January 8th, 1998 39 tin(1) A Usenet newsreader tin(1) 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. Subse- quent 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 con- tents 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 speci- fied 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 1.4 January 8th, 1998 40 tin(1) A Usenet newsreader tin(1) 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 over- rides $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 1.4 January 8th, 1998 41 tin(1) A Usenet newsreader tin(1) effect as not defining the variable. Use in combi- nation with $ISO2ASC. ISO2ASC Set the ISO to ASCII charset decoding table charac- ter 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. 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 edi- tor (i.e., vi(1)) that is used in all editing oper- ations within tin (i.e., posting `w', replying `r', follow-ups `f', ...). VISUAL If $EDITOR is unset, then this variable is looked up for an 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, set- ting AUTOSUBSCRIBE=comp.os.unix.*,talk.*,!talk.poli- tics.* 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.) 1.4 January 8th, 1998 42 tin(1) A Usenet newsreader tin(1) 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-insensi- tive. Example: SPAMTRAP=spam,delete,remove METAMAIL Set this variable to point to metamail(1) or a replacement (i.e. metamutt). FILES $HOME/.newsrc subscribed to newsgroups. $HOME/.newsauth "nntpserver password [user]" pairs for NNTP servers that require authoriza- tion. $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 direc- tory. $HOME/.tin/active.mail active file of user's mailgroups. $HOME/.tin/active.save active file of user's saved news- groups. $HOME/.tin/filter filtering file for article killing and 1.4 January 8th, 1998 43 tin(1) A Usenet newsreader tin(1) auto-selection. $HOME/.tin/group.times list of last time all groups were updated (used only by tind index dae- mon). $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' com- mand, 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) automati- cally appends this file to your arti- cle 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/active.times Contains list of new newsgroups as they are added to the news history file. /usr/lib/news/newsgroups Short description of all newsgroups. /usr/lib/news/subscriptions List of newsgroups to subscribe first time user to. /usr/lib/news/tinrc Global configuration file. BUGS This manpage is not up to date and really should be 1.4 January 8th, 1998 44 tin(1) A Usenet newsreader tin(1) improved. 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-karl- sruhe.de:/pub/news/clients/tin-unoff/ since March 1996. v1.4 has been available from ftp.tin.org:/pub/news/clients/tin/v1.4 since 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 gener- ation 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 rou- tine. 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. 1.4 January 8th, 1998 45 tin(1) A Usenet newsreader tin(1) 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 sys- tem. 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) sup- port. 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 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, 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, Leila Burrell-Davis, Sean Casey, Peter Castro, Troy Cauble, Andrey A. Chernov, 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, Theo Van Dinter, Ralf Doeblitz, Bryan Dongray, Michael Douglass, Craig Durland, Bernd Eckenfels, Phil Edge, Kirk Edson, Stefan Elf, Rob Engle, Olle Eriks- son, Brent Ermlick, Bernd Ernesti, Ragnar Hojland Espinosa, Jason Faultless, Michael Faurot, Werner Fleck, John M. Flinchbaugh, Andy Gabor, Torsten Gesang, 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, Pieter Immelman, Jarkko Isokungas, Patrick St. Jean, Hal Jespersen, Park 1.4 January 8th, 1998 46 tin(1) A Usenet newsreader tin(1) Sang Jin, Robbin Johnson, Jarkko Jormanainen, Nelson Kad- ing, Geoffrey Keating, Karsten Keil, Fritz Kleeman, Andreas Kies, Janne Kiviluoto, Tomasz Kloczko, Dwarven Knight, Thomas Koenig, Karl-Koenig Koenigsson, Martin Kraemer, Thomas Kroener, Florian Kuehnert, Kris Kugel, Yuri Kuzmenko, Olivier Lacroix, Geoff Lane, Alex Lange, Alain Lasserre, 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, Owen Medd, Soren Moller, Bruce Momjian, Sergio Morales, Michael Morrell, Klaus Mueller, Mike Muise, Udo Munk, Daniel Naber, Torsten Neu- mann, 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, Thomas Quinot, Stefan Rapp, Ted Richards, Steve Robbins, Ollivier Robert, Branden Robin- son, Jim Robinson, 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 Serran- der, Doug Sewell, Philip Shearer, Jungshik Shin, Sergey Shkonda, Andreas Siegert, Mark Smith, Steve Spearman, Cliff Stanford, Steve Starck, Jason Steiner, Ralf Stephan, Helmrich Streitmatter, Michael Stenns, Dieter Stueken, Ed Sznyter, Dean Takemori, Darrell Tangman, Derek Terveer, Carsten Theis, Julian Thompson, David Tiller, Andry Timo- nin, Mark Tomlin, Michael Traub, Adri Verhoef, Paul Vick- ers, Oliver B. Warzecha, Jason Wessel, Cary Whitney, Hen- rik Wist, Greg Woods, Lloyd Wright, Billy Y., Nickolai Zeldovich, Zbigniew Zych AUTHOR Iain Lea MAINTAINER Urs Janssen 1.4 January 8th, 1998 47