nn man page on Slackware

Man page or keyword search:  
man Server   14563 pages
apropos Keyword Search (all sections)
Output format
Slackware logo
[printable version]

NN(1)									 NN(1)

NAME
       nn - efficient net news interface (No News is good news)

SYNOPSIS
       nn [ options ] [ newsgroup  |  +folder  |  file ]...
       nn -g [ -r ]
       nn -a0 [ newsgroup ]...

DESCRIPTION
       Net news is a world-wide information exchange service covering numerous
       topics in  science  and	every  day  life.   Topics  are	 organized  in
       news groups,  and  these groups are open for everybody to post articles
       on a subject related to the topic of the group.

       Nn is a `point-and-shoot' net news interface program, or a news	reader
       for  short  (not	 to be confused with the human news reader).  When you
       use nn, you can decide which of the many news groups you are interested
       in, and you can unsubscribe to those which don't interest you.  nn will
       let you read the new (and old) articles in each of the groups you  sub‐
       scribe  to  using  a  menu based article selection prior to reading the
       articles in the news group.

       When a news group is entered, nn will locate all the  presently	unread
       articles	 in  the  group,  and extract their sender, subject, and other
       relevant information.  This information is then rearranged, sorted, and
       marked  in  various  ways  to give it a pleasant format when it is pre‐
       sented on the screen.

       This will be done very quickly, because nn uses the  NOV	 database  via
       the  NNTP  XOVER	 command.  The news server to use can be overridden by
       setting the environment variable $NNTPSERVER to the name of the	system
       (such  as  news.newserver.com),	or by setting the variable nntp-server
       (on the command line only, since it is looked at before the init file),
       as  "nntp-server=news.some.domain").   If you use multiple servers, you
       probably want to set the nn-directory and newsrc variables on the  com‐
       mand  line  to an alternate names as well, since some of the data files
       are server dependent.  If you are using a slow tcp link	(such  as  ppp
       over  a	modem) and NNTP, see the NOTES section at the end of this man‐
       ual.

       When the article menu appears on the screen,  nn	 will  be  in  a  mode
       called  selection  mode.	  In this mode, the articles which seems to be
       interesting can be selected by single keystrokes (using	the  keys  a-z
       and  0-9).   When all the interesting articles among the ones presently
       displayed have been selected, the space bar is hit, which causes nn  to
       enter reading mode.

       In  reading mode, each of the selected articles will be presented.  You
       use the space bar to go on to the next page of the current article,  or
       to  the	next  article.	 Of course, there are all sorts of commands to
       scroll text up and down, skip to the next  article,  responding	to  an
       article, decrypt an article, and so on.

       When all the selected articles in the current group have been read, the
       last hit on the space bar will cause nn will continue to the next group
       with unread articles, and enter selection mode on that group.

FREQUENTLY USED OPTIONS
       nn  accepts a lot of command line options, but here only the frequently
       used options are described.  Options can also  be  set  permanently  by
       including  appropriate  variable	 settings  in  the init file described
       later.  All options are	described  in  the  section  on	 Command  Line
       Options towards the end of this manual.

       The frequently used command line options are:

       -a0    Catch  up on unread articles and groups.	See the section "Catch
	      up" below.

       -g     Prompt for the name of a news group  or  folder  to  be  entered
	      (with completion).

       -r     Used with -g to repeatedly prompt for groups to enter.

       -lN    Print  only  the first N lines of the first page of each article
	      before prompting to continue.  This is useful on slow  terminals
	      and  modem lines to be able to see the first few lines of longer
	      articles.

       -sWORD Collect only articles which contain the  string  WORD  in	 their
	      subject  (case  is ignored).  This is normally combined with the
	      -x and -m options to find all articles on a specific subject.

       -s/regexp
	      Collect only articles whose subject matches the regular  expres‐
	      sion  regexp.   This  is	normally  combined  with the -x and -m
	      options to find all articles on a specific subject.

       -nWORD or -n/regexp
	      Same as -s except that it matches on the sender's	 name  instead
	      of the article's subject.	 This is normally combined with the -x
	      and -m options to find all articles from a specific author.   It
	      cannot be mixed with the -s option!

       -i     Normally	searches  with	-n and -s are case independent.	 Using
	      this option, the case becomes significant.

       -m     Merge all articles into one `meta group' instead of showing them
	      one group at a time.  This is normally used together with the -x
	      and -s options to get all the articles  on  a  specific  subject
	      presented	 on  a	single	menu  (when you don't care about which
	      group they belong to).  When -m is used,	no  articles  will  be
	      marked as read.

       -x[N]  Present  (or  scan)  all	(or the last N) unread as well as read
	      articles.	 When this option is used, nn will never  mark	unread
	      articles as read (i.e. .newsrc is not updated).

       -X     Read/scan	 unsubscribed  groups  also.  Most useful when looking
	      for a specific subject in all groups, e.g.
		   nn -mxX -sSubject all

       news.group  or  file  or	 +folder
	      If none of these arguments are given, all subscribed news groups
	      will  be used.  Otherwise, only the specified news groups and/or
	      files will be collected and presented.   In  specifying  a  news
	      groups, the following `meta notation' can be used:
	      If  the news group ends with a `.' (or `.all'), all subgroups of
	      the news group will be collected, e.g.
		   comp.sources.
	      If a news group starts with a `.' (or `all.'), all the  matching
	      subgroups will be collected, e.g.
		   .sources.unix
	      The argument `all' identifies all (subscribed) news groups.

COMMAND INPUT
       In  general,  nn	 commands  consist  of	one or two key-strokes, and nn
       reacts instantly to the commands you give it; you don't have  to	 enter
       return after each command (except where explicitly stated).

       Some  commands  have more serious effects than others, and therefore nn
       requests you to confirm the command.  You confirm by hitting the the  y
       key, and reject by hitting the n key.  Some `trivial' requests may also
       be confirmed simply by hitting space.  For example, to confirm the cre‐
       ation  of  a  save file, just hit space, but if one or more directories
       also have to be created, you must enter y.

       Many commands will require that you enter a line of text, e.g.  a  file
       name  or a shell command.  If you enter space as the first character on
       a line, the line will be	 filled	 with  a  default  value  (if  one  is
       defined).   For	example, the default value for a file name is the last
       file name you have entered, and the default shell command is your  pre‐
       vious  shell  command.	You  can  edit this default value as well as a
       directly typed text, using the following editing commands.  The	erase,
       kill,  and  interrupt keys are the keys defined by the current tty set‐
       tings.  On systems without job control, the suspend key	will  be  con‐
       trol-Z  while  it  is  the current suspend character on system with job
       control.

       erase
	      Delete the last character on the line.

       delete-word   (normally ^W)
	      Delete the last word or component of the input.

       kill
	      Delete all characters on the line.

       interrupt  and  control-G
	      Cancel the command which needs the input.

       suspend
	      Suspend nn if supported by  the  system.	 Otherwise,  spawn  an
	      interactive shell.

       return
	      Terminate the line, and continue with the command.

       Related	variables: erase-key, flow-control, flush-typeahead, help-key,
       kill-key, word-key.

BASIC COMMANDS
       There are numerous commands in nn, and most of them can be invoked by a
       single  keystroke.   The	 descriptions  in this manual are based on the
       standard bindings of the commands to the keys, but it  is  possible  to
       customize these using the map command described later.  For each of the
       keystroke commands described in this manual, the corresponding  command
       name will also be shown in curly braces, e.g. {command}.

       The following commands work in both selection mode and in reading mode.
       The notation ^X means `control X':

       ?    {help}
	      Help.  Gives a one page overview of the  commands	 available  in
	      the current mode.

       ^L   {redraw}
	      Redraw screen.

       ^R   {redraw}
	      Redraw screen (Same as ^L).

       ^P   {message}
	      Repeat  the last message shown on the message line.  The command
	      can be repeated to successively show previous messages (the max‐
	      imum number of saved messages is controlled via the message-his‐
	      tory variable.)

       !    {shell}
	      Shell escape.  The user is prompted for a command which is  exe‐
	      cuted  by	 your  favorite shell (see the shell variable).	 Shell
	      escapes are described in detail later on.

       Q    {quit}
	      Quit nn.	When you use this command,  you	 neither  lose	unread
	      articles	in the current group nor the selections you might have
	      made (unless  the	 articles  are	expired	 in  the  meantime  of
	      course).

       V    {version}
	      Print release and version information.

       :command	 {command}
	      Execute  the  command  by name.  This form can be used to invoke
	      any of nn's commands, also those which cannot be bound to a  key
	      (such  as	 :coredump),  or those which are not bound to a key by
	      default (such as post and unshar).

       Related and basic variables: backup, backup-suffix,  confirm-auto-quit,
       expert, mail, message-history, new-group-action, newsrc, quick-count.

SELECTION MODE
       In  selection  mode,  the screen is divided into four parts: the header
       line showing the name of the news group and the number of articles, the
       menu  lines  which  show the collected articles - one article per line,
       the prompt line where you enter commands, and the message line where nn
       prints various messages to you.

       Each  menu  line begins with an article id which is a unique letter (or
       digit if your screen can show more than 26 menu lines).	To  select  an
       articles	 for  reading,	you simply enter the corresponding id, and the
       menu line  will	be  high-lighted  to  indicate	that  the  article  is
       selected.   When	 you have selected all the interesting articles on the
       present menu, you simply hit space.

       If there are more articles collected for the current group  than	 could
       be  presented  on one screenful of text, you will be presented with the
       next portion of articles to select from.	 When you have had the	oppor‐
       tunity  to  select  among  all the articles in the group, hitting space
       will enter reading mode.

       If no articles have been selected in the current group,	hitting	 space
       will  enter  selection  mode  on the next news group, or exit nn if the
       current group was the last news group with unread articles. It is  thus
       possible	 to  go	 through  ALL  unread articles (without reading any of
       them) just by hitting space a few times.

       The articles will be presented on the menu using one of	the  following
       layouts:

       0:     x Name.........  Subject.............. +123

       1:     x Name.........	123  Subject..............

       2:     x 123  Subject...................................

       3:     x Subject...........................................

       4:     x	   Subject........................................

       Here  x is the letter or digit that must be entered to select the arti‐
       cle, Name is the real name of the sender (or the mail  address  if  the
       real  name  cannot be found), Subject is the contents of the "Subject:"
       line in the article, and 123 is the number of lines in the article.

       Layout 0 and 1 are just two ways to present the same information, while
       layout  2  and  3 are intended for groups whose articles have very long
       subject lines, e.g. comp.sources.

       Layout 4 is a hybrid between layout 1 and 3.  It will normally use lay‐
       out  1,	but  it will use layout 3 (with a little indentation) for menu
       lines where the subject is longer than the space available with	layout
       1.

       Layout  1 is the default layout, and an alternative menu line layout is
       selected using the -L option or by setting the layout  variable.	  Once
       nn  is  started	the  layout can be changed at any time using the " key
       {layout}.

       The Name is limited to 16 characters, and to make maximum use  of  this
       space,  nn  will	 perform a series of simplifications on the name, e.g.
       changing first names into initials, removing  domain  names  from  mail
       addresses (if the real name is not found) etc.  It does a good job, but
       some people on the net put weird things into the From: field (or	 actu‐
       ally into their password file) which result in nn producing quite cryp‐
       tic, and sometimes funny "names".

       One a usual 80 column terminal, the Subject  is	limited	 to  about  60
       characters  (75	in  layout 3) and is thus only an approximation to the
       actual subject line which may be much longer.  To get as	 much  out  of
       this space, Re: prefixes (in various forms) are recognized and replaced
       by a single `>' character (see the re-layout variable).

       Since articles are sorted according to the subject, two or  more	 adja‐
       cent  articles may share the same subject (ignoring any `>'s).  In this
       case, only the first article will show the subject of the article;  the
       rest will only show the `>' character in the subject field (or a `-' if
       there is no `>' at the beginning of the line).	A  typical  menu  will
       thus  only show each subject once, saving a lot of time in scanning the
       news articles.

       If consolidated menus (see section below) are enabled,  adjacent	 arti‐
       cles  sharing  the same subject will be shown with a single line on the
       menu corresponding to the first of the articles.	 The number  of	 arti‐
       cles  with the same subject will be shown as a braketed number in front
       of the subject, e.g. with layout 1:
	    x Name.........   123  [4] Subject..............
       For further information see the section on consolidated menus below.

       Related variables: collapse-subject, columns,  confirm-entry,  confirm-
       entry-limit,  entry-report-limit,  fsort,  kill,	 layout, limit, lines,
       long-menu, re-layout, repeat, slow-mode, sort, sort-mode,  split,  sub‐
       ject-match-limit,  subject-match-offset,	 subject-match-parts, subject-
       match-minimum.

ARTICLE ATTRIBUTES
       While nn is running and between invocations, nn associates an attribute
       with each article on your system.  These attributes are used to differ‐
       entiate between read and unread articles, selected  articles,  articles
       marked  for  later  treatment, etc.  Depending on how nn is configured,
       these attributes can be saved between invocations of  nn,  or  some  of
       them may only be used while nn is running.

       The attribute is shown on the menu using either a single character fol‐
       lowing the article id or by high-lighting the menu line,	 depending  on
       the  attribute  and  the	 capabilities  of  the terminal.  You can also
       change the attributes to your own taste (see the attributes variable).

       The attribute of an article can be changed explicitly using the	selec‐
       tion mode commands described below, or it will change automatically for
       example when you have read or saved a selected article.	If  a  command
       may  change any article attributes, it will be noted in the description
       of the command.	The following descriptions of the attributes will only
       mention	the  most  important  commands	that may set (or preserve) the
       attribute.

       The following attributes may be associated with an article:

       read   Menu attribute "." - indicates that the article has been read or
	      saved.   When you leave the group, these articles will be marked
	      permanently read, and are not presented the next time you	 enter
	      the group.

       seen   Menu  attribute  "," - indicates that the article is unread, but
	      that it has been presented on a menu.  Depending on  how	nn  is
	      configured,  these  articles  will  automatically be marked read
	      when you leave the group, they may remain seen, or they may just
	      be  unread the next time you enter the group (see the auto-junk-
	      seen, confirm-junk-seen, and retain-seen-status variables).
	      Only the commands continue (space) and read-skip (X)  will  mark
	      unread  articles on the current (or all) menu pages as seen when
	      they are used.  Other commands  that  scroll  through  the  menu
	      pages  or	 enter	reading	 mode  will let unread articles remain
	      unread.

       unread Menu attribute " " - indicates an unread article.	  These	 arti‐
	      cles were unread when you entered the group, and they may remain
	      unread when you leave the group, unless they  have  been	marked
	      seen  by	the  command that you used to leave the group or enter
	      reading mode.

       selected
	      Menu line high-lighted (or menu attribute "*") - indicates  that
	      you  have	 selected  the	article.   If you leave the group, the
	      selected articles will remain selected the next time  you	 enter
	      the group.  When you have read a selected article, the attribute
	      will automatically change to read.

       auto-selected
	      These articles have the same appearance as selected articles  on
	      the  menu,  and  the only difference is that these articles have
	      been selected  automatically  via	 the  auto-selection  facility
	      rather  than  manually  by you.  Very few commands differentiate
	      between these attributes and if they do, it is explicitly stated
	      in  this manual.	The main difference is that these articles are
	      only marked as unread when you leave the group  (supposing  they
	      will also be auto-selected the next the group is entered).  This
	      simplifies the house-keeping between invocations of nn.

       leave  Menu attribute "+" - indicates that the article  is  marked  for
	      later  treatment	by the leave-article (l) command.  These arti‐
	      cles may be selected (on demand) when you have read all selected
	      articles	in  a  group.  However, if you do not select them then
	      immediately,  they  are  stored  as  the	leave-next   attribute
	      described below.

       leave-next
	      Menu  attribute  "="  - indicates that the article is marked for
	      later treatment by the leave-next (L) command.  This is a perma‐
	      nent  attribute,	which  will  remain  on	 the article until you
	      either read the article, change the attribute, or it is expired.
	      So  assinging this attribute to an article will effectively keep
	      it unread until you do something.	 If the variable select-leave-
	      next  is	set,  nn  will	ask  whether  these articles should be
	      selected on entry to a  group  (but  naturally,  doing  so  will
	      change the leave-next attribute to select).

       cancelled
	      Menu  attribute  "#"  - indicates that the article has been can‐
	      celled.  This is mainly useful when tidying a folder; it is  set
	      by  the  cancel  (C)  command, and can be cleared by any command
	      that change attributes, e.g. you can  select  and	 deselect  the
	      article.

       killed Menu  attribute "!" - indicates that the article has been killed
	      (e.g.  by the K {kill-select}  command).	 Killed	 articles  are
	      immediately  removed  from  the menu, so you should not normally
	      see articles with this attribute.	 If you do,  report  it	 as  a
	      bug!

       The  attributes	are  saved  in	two files: .newsrc (read articles) and
       .nn/select (other attributes).  Plain unread articles are saved by  not
       occurring  in  either of these files.  Both files are described in more
       detail later on.

       Related	variables:  attributes,	  auto-junk-seen,   confirm-junk-seen,
       retain-seen-status, select-leave-next.

SELECTION MODE COMMANDS
       The  primary  purpose  of the selection mode is of course to select the
       articles to be read, but numerous other commands may also be  performed
       in this mode: saving of articles in files, replying and following up on
       articles, mailing/forwarding articles, shell escapes etc.

       As described above, the selected articles are marked either by  showing
       the corresponding menu line in standout mode (reverse video), or if the
       terminal does not have this capability by placing an asterisk (*) after
       the selection letter or digit.

       Most  commands  which  are  used to select articles will work as toggle
       commands.  If the article is  not  already  selected,  the  selectedat‐
       tribute on the article(s), independent on the previous attribute.  Oth‐
       erwise, the article(s) will be deselected and  marked  unread.	Conse‐
       quently, any article can be marked unread simply be selecting and dese‐
       lecting it.

       During selection, the cursor will normally be  placed  on  the  article
       following  the  last article whose attribute was changed (initially the
       first article).	The article pointed out by the cursor  is  called  the
       current	article,  and the following commands work relative to the cur‐
       rent article and cursor position.

       abc...z 01..9  {article N}
	      The article with the given identification	 letter	 or  digit  is
	      selected	or deselected.	The following article becomes the cur‐
	      rent article.  If the variable auto-select-subject is  set,  all
	      articles	with  the  same	 subject  as  the  given  article  are
	      selected.

       .    {select}
	      Select or deselect the current article and move  the  cursor  to
	      the next article.

       ,    {line+1}
	      Move the cursor to the next article.  You can use the down arrow
	      as well.

       /    {line-1}
	      Move cursor to previous article.	You can use the	 up  arrow  as
	      well.

       *    {select-subject}
	      Select  or  deselect  all	 articles with same subject as current
	      article.	This will work across several menu pages if necessary.

       -x   {select-range}
	      Select or deselect the range of  articles	 between  the  current
	      article  and  the	 article  specified by x.  For example you can
	      select all articles from e to k by simply typing e-k.

       The following commands may change the attributes on all articles on the
       current menu page, or on all articles on all menu pages.

       @    {select-invert}
	      Reverse  selections.   All selected articles on the current page
	      are deselected, and vice-versa.  (Use the find command to select
	      all articles.)

       ~    {unselect-all}
	      Deselect	all  auto-selected  articles  in the group (this works
	      across all menu pages).  If the command is executed  twice,  the
	      selected articles will also be deselected.

       +    {select-auto}
	      Perform  auto-selections	in the group (see the section on "auto
	      kill/select" below).

       =    {find}
	      Prompts for a regular expression, and selects  all  articles  on
	      the  menu	 (all  pages)  which  matches  the regular expression.
	      Depending on the variable select-on-sender matching is performed
	      against the subject (default) or the sender of the articles.  An
	      empty answer (= return)  will  reuse  the	 previous  expression.
	      Example:	The command = . return will select all articles in the
	      group.

       J    {junk-articles}
	      This is a very versatile command which can be  used  to  perform
	      all  sorts  of attribute changes, either on individual articles,
	      all articles on the current menu page, all articles with a  spe‐
	      cific  attribute,	 or all available articles.  To access all the
	      functions of this command, the J key may have to be  hit	up  to
	      four  times, to loop through different one-line menus.  The full
	      functionality of the junk-articles command  is  described	 in  a
	      separate section below.

       L    {leave-next}
	      This  is	a specialized version of the generic J {junk-articles}
	      command to set the leave-next attribute on a subset of the arti‐
	      cles on the menu.	 It is also described further below.

       The  following  commands	 move  between the pages belonging to the same
       news group when there are more articles than will fit on a single page.
       These commands will not change any article attributes.

       >    {page+1}
	      Goto next menu page.

       <    {page-1}
	      Goto  previous  menu page, or to last menu page if on first menu
	      page.

       $    {page=$}
	      Goto last menu page.

       ^    {page=1}
	      Goto first menu page.

       The following commands are used to enter reading mode for the  selected
       articles,  and  to  move between news groups (in selection mode).  They
       may change article attributes if noted below.

       space	 {continue}
	      Continue to next menu page, or if on last menu  page,  read  the
	      selected	articles.  If no articles have been selected, continue
	      to the next news group.  The unread articles on the current menu
	      page will automatically be marked seen.

       return	 {continue-no-mark}
	      Identical	 to the continue command, except that the unread arti‐
	      cles on the current menu page will remain unread.	 (The  newline
	      key has the same effect).

       Z    {read-return}
	      Enter reading mode immediately with the currently selected arti‐
	      cles.  When all articles have been  read,	 return	 to  selection
	      mode  in the current group.  It will mark selected articles read
	      as they are read, but unread articles are not  normally  changed
	      (can be controlled with the variable marked-by-read-return.)

       X    {read-skip}
	      Mark  all unmarked articles seen on all menu pages (or the pages
	      defined by the marked-by-read-skip variable), and enter  reading
	      mode  immediately	 with the currently selected articles.	As the
	      selected articles are read, they	are  marked  read.   When  all
	      selected	articles  have been read, nn will enter selection mode
	      in the next news group.  When no articles are selected, it  goes
	      directly	to  the	 next group.  This can be used to skip all the
	      articles in a large news group without having to go through  all
	      the menu pages.

       If  you	don't  want to read the current group now, but want to keep it
       for later, you can use the following commands which will only mark seen
       and  read  articles as read.  Currently selected articles will still be
       selected the next time you enter the group.   None  of  these  commands
       will change any attributes themselves (by default).

       N    {next-group}
	      Go  forward  to the next group in the presentation sequence.  If
	      the variable marked-by-next-group is set articles	 on  the  menu
	      can optionally be marked seen

       P    {previous}
	      Go  back	to the previous group.	This command will enter selec‐
	      tion mode on the last active group (two P commands  in  sequence
	      will  bring  you to the current group).  If there are still some
	      unread articles in the group, only those articles will be shown.
	      Otherwise,  all  the  articles  which  were  unread  when nn was
	      invoked will be shown marked with the read attribute (which  can
	      be changed as usual).

       As  described  in  the  "Article Attributes" section, the read and seen
       articles will normally be marked read when you  leave  the  group,  and
       these articles are not shown the next time you enter the group.

       In  all	releases prior to release 6.4, it was impossible to have indi‐
       vidual articles in a group marked unread when you left a group, and the
       default	behaviour of release 6.4 onwards will closely match the tradi‐
       tional behaviour.  This means that  the	seen  and  read	 articles  are
       treated	alike  for  most  practical purposes with the default variable
       settings.

       If you don't like nn to silently mark the seen articles read,  you  can
       set  the variable confirm-junk-seen to get nn to prompt you for confir‐
       mation before doing this, or you can unset the variable	auto-junk-seen
       to simply keep the seen articles for the next time you enter the group.
       You then have to use the J {junk-articles} to mark articles read.

       Using return {continue-no-mark} will also allow you  to	keep  articles
       unread  rather  than  marking them seen when scrolling through the menu
       pages and entering reading mode.	 If this  is  your  preferred  reading
       style, you can remap space to this command.

       Related	variables: auto-junk-seen, auto-preview-mode, auto-select-sub‐
       ject, case-fold-search, confirm-auto-quit, confirm-entry, confirm-junk-
       seen, marked-by-next-group, marked-by-read-return, marked-by-read-skip,
       retain-seen-status, select-on-sender.

CONSOLIDATED MENUS
       Normally, nn will use one menu line for each article, so if  there  are
       many articles with identical subjects, each menu page will only contain
       a few different subjects.  To have each subject occur only once on  the
       menu,  nn  can  operate with consolidated menus by setting the variable
       consolidated-menu.

       When consolidated menus are used, nn operates with two  kinds  of  sub‐
       jects: open and closed.

       An open subject is a subject which is shown in the traditional way with
       one menu line for each article with the given subject.  In other words,
       when  consolidated  menus  are  not  used,  all	subjects  are open (by
       default).

       A closed subject is a multi-article subject which  is  presented	 by  a
       single menu line.  This line will be the normal menu line for the first
       (oldest) article with the subject, but with the subject field annotated
       with  a	bracketed number showing the number of articles with that sub‐
       ject, e.g.
	    a Kim F. Storm     12  [4] Future plans for nn
	    b.Kim F. Storm     43  [3] More plans for nn
       In this example, there are four unread articles	with  subject  `a'  of
       which  the  first  is  posted  by me and has 12 lines.  The rest of the
       articles are hidden, and will  only  be	shown  on  request.   The  `.'
       marker on subject `b' shows that all three articles within that subject
       have been read (or seen).

       To select (or deselect) ALL the articles within a closed subject,  sim‐
       ply  select  the	 article  shown	 on  the menu; this will automatically
       select (or deselect) the rest (see auto-select-closed).	When  all  the
       unread  articles	 within	 a  closed subject are selected, the menu line
       will be high-lighted.

       If you want to view the individual articles  in	a  subject  (maybe  to
       select  individual  articles),  you  can open the subject with the com‐
       mands:

       (x     Open subject x on menu.

       ((     Open current subject.

       When you have completed viewing the opened subject, you	can  close  it
       again using the commands:

       )x     Close subject x on menu (x is any article with the subject).

       ))     Close current subject.

       In  the	basic  layout  of  the menu line for a closed subject as shown
       above, ALL articles in the closed subject are supposed to be either:

       unread The menu line is not high-lighted.

       selected
	      Menu line is fully high-lighted (if all UNREAD are selected).

       read/seen
	      There is a `.' (read attribute) following the article id.

       If neither of these cases apply, i.e. there is  a  mixture  of  unread,
       selected, and seen/read articles, the bracketed number will have one of
       the following formats:

       [U:T]  There are U unread articles of T total (U<T).

       [S/T]  There are S selected articles of T total (S<U=T).

       [S/U:T]
	      There are S selected of U unread of T total (S<U<T).

       If there are any selected articles (S>0), the information  between  the
       brackets	 will be high-lighted (to show that something is selected, but
       not all the unread articles).

       Notice:	Consolidated menus only work with the `subject' and  `lexical'
       sorting methods.

       Variables  related  to consolidated menus are: auto-select-closed, con‐
       solidated-menu, counter-delim-left,  counter-delim-right,  counter-pad‐
       ding, save-closed-mode.

THE JUNK-ARTICLES AND LEAVE-NEXT COMMANDS
       The J {junk-articles} command is a very flexible command which can per‐
       form all sorts of attribute changes, either on individual articles, all
       articles	 on  the  current  menu	 page,	all  articles  with a specific
       attribute, or all available articles.

       To access all the functions of this command, the J key may have	to  be
       hit up to four times, to loop through different one-line menus:

       Mark Read
	      This submenu allows you to mark articles read.

       Unmark This submenu allows you to mark articles unread.

       Select This  submenu  allows  you  to  select  articles	based on their
	      attribute.

       Kill   This submenu allows you to mark articles read  and  remove  them
	      from the menu based on their attribute.

       The  L  {leave-next}  command  is  an extension of the J command with a
       fifth menu:

       Leave  This menu allows you to mark articles for	 later	handling  with
	      the  leave-next  attribute  which	 will  keep the article unread
	      until you explicitly change the attribute (e.g. by  reading  it)
	      or it is expired.

       For each of these submenus, nn will list the most plausible choices you
       may use, but all of the following answers can be used at all  submenus.
       When  you  have	entered	 a  choice,  nn will afterward ask whether the
       change should be made to all menu pages or only the current page.

       J      Show next submenu.

       L      Change attribute on all leave articles.

       N      Change attribute on all leave-next articles.

       R      Change attribute on all read articles.

       S      Change attribute on all seen articles.

       U      Change attribute on all unmarked (i.e. unread) articles.

       A      Change  attribute	 on  all  articles  no	matter	their  current
	      attribute.

       *      Change attribute on all selected articles on the current page.

       +      Change attribute on all selected articles on all pages.

       a-z0-9 Change attribute on one or more specific articles on the current
	      page.  You end the list of articles by a space or by  using  one
	      of the other choices described above.

       .      Change attribute on current article.

       , /    Move  the	 current  article down or up the menu without changing
	      any attributes.

READING MODE COMMANDS
       In reading mode, the selected articles are  presented  one  page	 at  a
       time.   To  get the next page of an article, simply hit space, and when
       you are on the last page of an article, hit space to get	 to  the  next
       selected article.  Articles are normally marked read when you go to the
       next article, while going back to the  menu,  quitting  nn,  etc.  will
       retain the attribute on the current article.

       When  you  are on the last page of the last article, hit space to enter
       selection mode on the next group (or the current group if reading  mode
       was entered using the Z command).

       To  read	 an  article, the following text scrolling commands are avail‐
       able:

       space	 {continue}
	      Scroll one page forward or continue with	the  next  article  or
	      group as described above.

       backspace / delete  {page-1}
	      Go one page backwards in article.

       d    {page+1/2}
	      Scroll one half page forward.

       u    {page-1/2}
	      Go one half page backwards.

       return	 {line+1}
	      Scroll one line forward in the article.

       tab  {skip-lines}
	      Skip  over  lines	 starting  with the same character as the last
	      line on the current page.	 This is useful to skip over  included
	      text or to the next file in a shell archive.

       ^    {page=1}
	      Move to the first page (excluding the header) of the article.

       $    {page=$}
	      Move to the last page of the article.

       gN   {line=@}
	      Move to line N in the article.

       /regexp	 {find}
	      Search  forward  for text matching the regular expression regexp
	      in the article.  If a matching text is found, it will  be	 high-
	      lighted.

       .    {find-next}
	      Repeat search for last regular expression.

       h    {page=0}
	      Show the header of the article, and continue from the top of the
	      article.

       H    {full-digest}
	      If the current article is extracted  from	 a  digest,  show  the
	      entire  digest  article including its header.  Another H command
	      will return to the current subarticle.

       D    {rot13}
	      Turn rot13 (caesar) decryption on and off for the current	 arti‐
	      cle,  and redraw current page.  If the article is saved while it
	      is decrypted on the screen, it will be saved in  decrypted  form
	      as well!

       c    {compress}
	      Turn  compression	 on and off for the current article and redraw
	      current page.  With compression turned on, multiple  spaces  and
	      tabs  are shown as a single space.  This makes it much easier to
	      read right justified text which separate words with several spa‐
	      ces.  (See also the compress variable)

       The following commands are used to move among the selected articles.

       n    {next-article}
	      Move  to	next selected article.	This command skips the rest of
	      the current article, marks it read, and jumps  directly  to  the
	      first page of the next selected article (or to the next group if
	      it was the last selected article).

       l    {leave-article}
	      Mark the current article with the leave attribute	 and  continue
	      with  the next selected article.	When all the selected articles
	      in the current group have been read, these  left	over  articles
	      can be automatically selected and shown once more, or the treat‐
	      ment can be postponed to the next time you enter the group.
		This is particularly useful if you see an  article  which  you
	      may  want	 to  respond  to  unless one the following articles is
	      already saying what you intended to say.

       L    {leave-next}
	      Mark the current article with the leave-next attribute and  con‐
	      tinue with the next selected article.

       p    {previous}
	      Goto previous article.

       k    {next-subject}
	      Kill  subject.  Skips rest of current article, and all following
	      articles with the same subject.  The skipped articles are marked
	      read.  To kill a subject permanently use the K command.

       *    {select-subject}
	      Show  next  article  with	 same  subject	(even  if  it  is  not
	      selected).  This command will select all following articles with
	      the same subject as the current article (similar to the `*' com‐
	      mand in selection mode).	This can be used to  select  only  the
	      first  article  on  a subject in selection mode, and then select
	      all follow-ups in reading mode if you find the article interest‐
	      ing.

       a    {advance-article}
	      Goto  the	 following  article  on	 the  menu  even  if it is not
	      selected.	 This command skips the rest of	 the  current  article
	      and  jumps  directly  to	the first page of the next article (it
	      will not skip to the next group if it is the last article).  The
	      attribute	 on  the  current article will be restored, except for
	      the unread attribute which will be changed to seen.

       b    {back-article}
	      Goto the article before current article on the menu even	if  it
	      is  not  selected.  This is similar to the a command, except for
	      the direction.

       The following commands perform an immediate return from reading mode to
       selection mode in the current group or skip to the next group.

       =    {goto-menu}
	      Return to selection mode in the current group (think of = as the
	      "icon" of the selection menu).  The articles read so far will be
	      marked read.

       N    {next-group}
	      Skip the rest of the selected and unread articles in the current
	      group and go directly to the next group.	 Only  the  read  (and
	      seen) articles in the current group are marked as read.

       X    {read-skip}
	      Mark  all	 articles in the current group as read and go directly
	      to the next group.  (You will be asked to confirm this command.)

       Related	variables:  case-fold-search,  charset,	 compress,  data-bits,
       date,  header-lines, mark-overlap, monitor, overlap, scroll-clear-page,
       stop, trusted-escape-codes, wrap-header-margin.

PREVIEWING ARTICLES IN SELECTION MODE
       In selection mode, it is possible to read a  specific  article  on  the
       menu without entering reading mode for all the selected articles on the
       menu.  Using the commands described below will enter reading  mode  for
       one  article  only,  and then return to the menu mode immediately after
       (depending on the setting of the preview-continuation variable).

       If there are more than 5 free lines at the bottom of the	 menu  screen,
       nn  will	 use  that space to show the article (a minimal preview window
       can be permanently allocated with the window variable).	Otherwise, the
       screen will be cleared to show the article.

       After  previewing  an  article, it will be marked read (if the preview-
       mark-read variable is set), and the following article will  become  the
       current article.

       %x   {preview}
	      Preview article x.

       %%   {preview}
	      Preview the current article.

       When  the  article  is being shown, the following reading mode commands
       are very useful:

       =    {goto-menu}
	      Skip the rest of the current article, and return to menu mode.

       n    {next-article}
	      Skip the rest of the current article, and preview the next arti‐
	      cle.

       l    {leave-article}
	      Mark  the article as selected (!) on the menu for handling later
	      on.  Then skip the rest of the current article, and preview  the
	      next article.

       %y   {preview}
	      Preview article y .

       If  the	variable auto-preview-mode is set, just hitting the article id
       in menu mode will enter preview mode on the specified article.

       Related variables: auto-preview-mode, min-window, preview-continuation,
       preview-mark-read, window.

SAVING ARTICLES
       The  following  commands are used to save articles in files, unpack ar‐
       chives, decode binaries, etc.  It is possible to use  the  commands  in
       both  reading mode to save the current article and in selection mode to
       save one or more articles on the menu.

       The saved articles will be appended to the specified  file(s)  followed
       by  an  empty line each.	 Both files and directories will be created as
       needed.	When an article has been saved in a file, a message  reporting
       the  number of lines saved will be shown if the save-report variable is
       set (default on).

       S    {save-full}
	      Save articles including the full article header.

       O    {save-short}
	      Save articles with a short header containing only	 the  name  of
	      the sender, the subject, and the posting date of the article.

       E    {save-header}
	      Save only the header of the articles.

       W    {save-body}
	      Write article without a header.

       :print	 {print}
	      Print article.  Instead of a file name, this command will prompt
	      for the print command to	which  the  current  article  will  be
	      piped.   The default print command is specified at compile time,
	      but it can be changed by setting the printer variable.  The out‐
	      put will be identical to that of the O command.

       :patch	 {patch}
	      Send  articles  through  patch(1) (or the program defined in the
	      patch-command variable).	Instead of a file name,	 you  will  be
	      prompted for the name of a directory in which you want the patch
	      command to be executed.  nn will then pipe the body of the arti‐
	      cle through the patch command.
		The  output from the patch process will be shown on the screen
	      and also appended to a file  named  Patch.Result	in  the	 patch
	      directory.

       :unshar	 {unshar}
	      Unshar  articles.	 You will be prompted for the name of a direc‐
	      tory in which you want nn to unshar the articles.	 nn will  then
	      pipe  the	 proper	 parts of the article body into a Bourne Shell
	      whose working directory will be set to the specified directory.
		During the  unpacking,	the  normal  output  from  the	unshar
	      process  will appear on the screen, and the menu or article text
	      will be redrawn when the process is finished.
		The output is also appended to a file named  Unshar.Result  in
	      the unshar directory.
		The    file    specified    in	 unshar-header-file   (default
	      "Unshar.Headers") in  the	 unshar	 directory  will  contain  the
	      header and initial text (before the shar data) from the article.
	      You can  use  the	 `G'  {goto-group}  command  to	 look  at  the
	      Unshar.Headers file.

       :decode	 {decode}
	      Decode  uuencoded	 articles  into	 binary	 files.	  You  will be
	      prompted for the name of a directory in which  you  want	nn  to
	      place  the  decoded  binary files (the file names are taken from
	      the uuencoded data).
		nn will combine several articles into single files as  needed,
	      and you can even decode unrelated packages (into the same direc‐
	      tory) with one decode command.
		To be able to decode a binary file which spans	several	 arti‐
	      cles,  nn	 may have to ignore lines which fail the normal sanity
	      checks on uuencoded data instead of treating them	 as  transmis‐
	      sion  errors.  Consequently, it is strongly recommended to check
	      the resulting decoded file using the checksum which is  normally
	      contained in the original article.  (Actually, you are also sup‐
	      posed to do this after decoding with a stand-alone uudecode pro‐
	      gram).
		The header and initial information in the decoded articles are
	      saved in	the  file  specified  in  decode-header-file  (default
	      "Decode.Headers") in the same directory as the decoded files.
		If  decode-skip-prefix	is  non-null,  :decode will attempt to
	      ignore up to that many characters	 on  each  line	 to  find  the
	      encoded  data.   This  is	 particularly  useful in some binaries
	      groups where files are both uuencoded and packed with  shar;  nn
	      will  ignore  the prefix added to each line by shar, and thus be
	      able to unshar,  concatenate,  and  decode  multi-part  postings
	      automatically.

       In reading mode, the following keys can also be used to invoke the save
       commands:

       s      Same as S.

       o      Same as O.

       w      Same as W.

       P      Same as :print.

       The save commands will prompt for a file name which is expanded accord‐
       ing to the rules described in the section on file name expansion below.
       For each group, it is possible to specify a default save	 file  in  the
       init file, either in connection with the group presentation sequence or
       in a separate save-files section (see below).  If a default  save  file
       is  specified  for the group, nn will show this on the prompt line when
       it prompts for the file name.  You can edit this name as usual, but  if
       you  kill the entire name immediately, nn will replace the default name
       with the last file name you entered.  If you kill this as well, nn will
       leave you with a blank line.

       If  the quick-save variable is set, nn will only prompt for a save file
       name when the current  article  is  inside  a  folder;  otherwise,  the
       default	save  file  defined in the init file will be used uncondition‐
       ally.

       If the file (and directories in the path) does not exist, nn  will  ask
       whether the file (and the directories) should be created.

       If the file name contains an asterisk, e.g.
	    part*.shar
       nn  will	 save each of the articles in uniquely named files constructed
       by replacing the asterisk by numbers from the sequence 1,  2,  3,  etc.
       The  format  of	the string that replaces the * can be changed with the
       save-counter variable, and the first number to use can be  changed  via
       save-counter-offset.

       In selection mode, nn will prompt you for the identifier of one or more
       articles you want to save.  When you don't want to save more  articles,
       just hit space.	The saved articles will be marked read.

       If  you	enter  an asterisk `*' when you are prompted for an article to
       save, nn will automatically save all the selected articles on the  cur‐
       rent menu page and mark them read.

       Likewise,  if you enter a plus `+', nn will save all the selected arti‐
       cles on all menu pages and mark them read.

       This is very useful to unpack an entire package using the  :unshar  and
       :decode	commands.   It	can  also be used in combination with the save
       selected articles feature to save a selection of articles in  separate,
       successively  numbered  files.	But do not confuse these two concepts!
       The S* and S+ commands can be used to save the selected articles	 in  a
       single  file  as	 well  as  in separate files, and the save in separate
       files feature can be used also when saving individual articles,	either
       in the selection mode, or in the article reading mode.

       When  articles  are  saved in a file with a full or partial header, any
       header lines in the body of the article will  be	 escaped  by  a	 tilde
       (e.g.  ~From: ...) to enable nn to split the folder into separate arti‐
       cles.  The escape string can  be	 redefined  via	 the  embedded-header-
       escape variable.

       Articles	 can  optionally be saved in MAIL or MMDF compatible format by
       setting the mail-format and  mmdf-format	 variables.   These  variables
       only  specify the format used when creating a new folder, while append‐
       ing to an existing folder will be done in  the  format  of  the	folder
       (unless folder-format-check is false).

       Related	variables: confirm-append, confirm-create, decode-header-file,
       decode-skip-prefix,  default-save-file,	folder-save-file,  edit-patch-
       command,	 edit-print-command,  edit-unshar-command, folder, folder-for‐
       mat-check, mail-format,	mmdf-format,  patch-command,  printer,	quick-
       save,  save-counter, save-counter-offset, save-report, suggest-default-
       save, unshar-command, unshar-header-file.

FOLDER MAINTENANCE
       When more than one article is saved in a folder, nn is  able  to	 split
       the  folder, and each article in the folder can be treated like a sepa‐
       rate article.

       This means that you can save, decode, reply, follow-up,	etc.  just  as
       with the original article.

       You  can also cancel (delete) individual articles in a folder using the
       normal C {cancel} command described later.   When  you  quit  from  the
       folder, you will then be given the option to remove the cancelled arti‐
       cles from the folder.

       The original folder is saved in a file named `BackupFolder~' in the .nn
       directory  (see the backup-folder-path variable) by renaming or copying
       the old folder as appropriate.  When the folder	has  been  compressed,
       the  backup  folder  will  be  removed unless the variable keep-backup-
       folder is set.

       If all articles in a folder are cancelled, the folder will  be  removed
       or  truncated to zero length (whatever is allowed by directory and file
       permissions).  In this case no backup  folder  is  retained  even  when
       keep-backup-folder is set!

       If  the	variable trace-folder-packing is set, nn will show which arti‐
       cles are kept and which are removed as the folder is rewritten.

       Folders are rewritten in the format of the original  folder,  i.e.  the
       mail-format and mmdf-format variables are ignored.

       Related	 variables:   backup-folder-path,  keep-backup-folder,	trace-
       folder-packing.

FILE NAME EXPANSION
       When the save commands prompts for a file name, the following file name
       expansions are performed on the file name you enter:

       +folder
	      The  +  is  replaced  by	the  contents  of  the folder variable
	      (default value "~/News/") resulting in the name of a file in the
	      folder directory.	 Examples:
		   +emacs, +nn, +sources/shar/nn

       +      A single plus is replaced by the expansion of the file name con‐
	      tained in the default-save-file variable (or by folder-save-file
	      when saving from a folder).

       ~/file The  ~  is  replaced by the contents of the environment variable
	      HOME, i.e. the path name of your home directory.	Examples:
		   ~/News/emacs, ~/News/nn, ~/src/shar/nn

       ~user/file
	      The ~user part is replaced  by  the  user's  home	 directory  as
	      defined in the /etc/passwd file.

       |command-line
	      Instead  of  writing  to	a  file, the articles are piped to the
	      given shell (/bin/sh) command-line.  Each save or write  command
	      will  create  a separate pipe, but all articles saved or written
	      in one command (in selection mode) are given  as	input  to  the
	      same shell command.  Example:
		   | pr | lp
	      This will print the articles on the printer after they have been
	      piped through pr.
		  It is possible to create separate pipes for each saved arti‐
	      cle  by  using a double pipe symbol in the beginning of the com‐
	      mand, e.g.
		   || cd ~/src/nn ; patch

       The following symbols are expanded in a file name or command:

       $F     will be expanded to the name of the current group with the peri‐
	      ods replaced by slashes, e.g. rec/music/synth.

       $G     will be expanded to the name of the current group.

       $L     will  be	expanded to the last component of the name of the cur‐
	      rent group.  You may use this to create default save file	 names
	      like +src/$L in the comp.sources groups.

       $N     will  be	expanded to the (local) article number, e.g. 1099.  In
	      selection mode it is only allowed at the end of the file name!

       $(VAR) is replaced by the string value of the environment variable VAR.

       Using these symbols, a simple naming scheme for `default	 folder	 name'
       is +$G which will use the group name as folder name.  Another possibil‐
       ity is +$F/$N.

       As mentioned above, you can also instruct nn to save a series of	 files
       in  separate, unique files.  All that is required is that the file name
       contains an asterisk, e.g.
	    +src/hype/part*.shar
       This will cause each of the articles to be saved	 in  separate,	unique
       files  named  part1.shar, part2.shar, and so on, always choosing a part
       number that results in a unique	file  name  (i.e.  if  part1.shar  did
       already exist, the first article would be saved in part2.shar, the next
       in part3.shar, and so on).

       Related variables: default-save-file, folder,  folder-save-file,	 save-
       counter, save-counter-offset.

FILE AND GROUP NAME COMPLETION
       When  entering  a  file	name or a news group name, a simple completion
       feature is available using the space, tab, and ? keys.

       Hitting space anywhere during input will complete the current component
       of the file name or group name with the first available possibility.

       If  this	 possibility  is  not  the one you want, keep on hitting space
       until it appears.

       When the right completion has appeared, you can	just  continue	typing
       the  file  or  group name, or you can hit tab to fix the current compo‐
       nent, and get the first possibility for the next	 component,  and  then
       use space to go through the other possible completions.

       The  ?  key will produce a list of the possible completions of the cur‐
       rent component.	If the list is too long for  the  available  space  on
       screen, the key can be repeated to get the next part of the list.

       The current completion can be deleted with the erase key.

       The  default  value  for	 a  file  name	is the last file name you have
       entered, so if you enter a space	 as  the  first	 character  after  the
       prompt, the last file name will be repeated (and you can edit it if you
       like).  In some cases, a string will already be written for you in  the
       prompt  line, and to get the default value in these cases, use the kill
       key.  This also means that if you neither want the initial  value,  nor
       the  default  value, you will have to hit the kill twice to get a clean
       prompt line.

       Related variables:  comp1-key,  comp2-key,  help-key,  suggest-default-
       save.

POSTING AND RESPONDING TO ARTICLES
       In both selection mode and reading mode you can post new articles, post
       follow-ups to articles, send replies to the author of an	 article,  and
       you can send mail to another user with the option of including an arti‐
       cle in the letter.  In reading mode, a response is made to the  current
       article, while in selection mode you will be prompted for an article to
       respond to.

       The following commands are available (the  lower-case  equivalents  are
       also available in reading mode):

       R    {reply}
	      Reply  through  mail  to the author of the article.  This is the
	      preferred way to respond to an article  unless  you  think  your
	      reply is of general interest.

       F    {follow}
	      Follow-up	 with  an  article  in	the  same newsgroup (unless an
	      alternative group is specified in the article header).  The dis‐
	      tribution	 of the follow-up is normally the same as the original
	      article, but this can be modified	 via  the  follow-distribution
	      variable.

       M    {mail}
	      Mail  a  letter or forward an article to a single recipient.  In
	      selection mode, you will be prompted for an article  to  include
	      in  your	letter,	 and  in reading mode you will be asked if the
	      current article should be included in the letter.	 You will then
	      be  prompted  for the recipient of the letter (default recipient
	      is yourself) and the subject of the letter  (if  an  article  is
	      included,	 you may hit space to get the default subject which is
	      the subject of the included article).
		The header of the article is only included in the posted  let‐
	      ter  if  it  is  forwarded (i.e. not edited), or if the variable
	      include-full-header is set.

       :post	 {post}
	      Post a new article to any newsgroup.  This command  will	prompt
	      you  for	a  comma-separated  list of newsgroups to post to (you
	      cannot enter a space because space is used for group  name  com‐
	      pletion as described below).
		If you enter ? {help-key} as the first key, nn will show you a
	      list of all available news groups and their purpose.  While pag‐
	      ing  through  this  list, you can enter q to quit looking at the
	      list.  You can also enter / followed  by	a  regular  expression
	      (typically  a  single  word) which will cause nn to show a (much
	      shorter) list containing only the	 lines	matching  the  regular
	      expression.
		 Normally,  you	 will  be prompted for the distribution of the
	      article with the default	take  from  default-distribution,  but
	      this can be changed via the post-distribution variable.

       Generally,  nn will construct a file with a suitable header, optionally
       include a copy of the article in the file with each non-empty line pre‐
       fixed by a `>' character (except in mail mode), and invoke an editor of
       your choice (using the EDITOR environment variable) on this file, posi‐
       tioning	you  on the first line of the body of the article (if it knows
       the editor).

       When you have completed editing the message, it will compare it to  the
       unedited	 file,	and  if	 they are identical (i.e. you did not make any
       changes to the file), or it is empty, the operation is cancelled.  Oth‐
       erwise  you  will  be prompted for an action to take on the constructed
       article (enter first letter followed by return, or just return to  take
       the default action):
	   a)bort c)c e)dit h)old i)spell m)ail p)ost r)eedit s)end v)iew w)rite 7)bit
	   Action: (post article)
       You now have the opportunity to perform one of the following actions:

	 a    throw the response away (will ask for confirmation),
	 c    mail a copy of a follow-up to the poster of the article,
	 e    edit the file again,
	 h    hold response for later completion,
	 i    run an (interactive) spell-checker on the text,
	 m    mail a (blind) copy to a specified recipient,
	 n    same as abort (no don't post),
	 p    post article (same as send),
	 r    throw away the edited text and edit the original text,
	 s    send the article or letter,
	 v    view the article (through the pager),
	 w    append it to a file (before you send it),
	 y    confirm default answer (e.g. yes post it), or
	 7    strip the high-order bit from all characters in the message

       If  you	have selected a 7-bit character set (this is determined by the
       values of the charset and data-bits variables), nn will not  allow  you
       to post an article or send a letter whose body contains characters with
       the high-order bit set. It will warn you after you  have	 first	edited
       the  message and disable the c)c, m)ail, p)ost, s)end and y)es actions.
       You can then either e)dit the message to delete those  characters,  use
       7)bit to strip the high-order bits, a)bort the message, or h)old it and
       select an 8-bit character set from nn.

       To complete an unfinished response saved by the h)old  command,	simply
       enter any response action, e.g. R {reply}.  This will notice the unfin‐
       ished response and ask you whether you want to complete it  now.	  Only
       one  unfinished response can exist at a time.  Notice that the $A envi‐
       ronment variable may no longer be valid as a path to the original arti‐
       cle when the response is completed.

       If  your message contains 8-bit characters, the charset variable is not
       set to "unknown" and the message does not already have  a  MIME-Version
       or  Content-XXX	header, nn will add the following headers to your mes‐
       sage before sending it:
	    MIME-Version: 1.0
	    Content-Type: text/plain; charset=charset
	    Content-Transfer-Encoding: 8bit
       It must be noted that sending 8-bit characters over  the	 current  news
       and mail networks is risky at best; although large parts of the network
       will pass through such characters unchanged, high-order bits may	 occa‐
       sionally be stripped. Although the MIME standard provides solutions for
       this by encoding the characters, this  is  not  yet  supported  by  nn.
       Adding the above headers is an interim solution that is compatible with
       current practice and is much better than just sending the message with‐
       out any hints about the character set used.

       Related	  variables:   append-signature-mail,	append-signature-post,
       charset, data-bits,  default-distribution,  follow-distribution,	 post-
       distribution,  edit-response-check,  editor,  include-art-id,  include-
       full-header,  included-mark,  mail-header,  mail-record,	  mail-script,
       mailer, mailer-pipe-input, news-header, news-record, news-script, orig-
       to-include-mask, pager, query-signature, record,	 response-check-pause,
       response-default-answer,	  save-counter,	  save-counter-offset,	 save-
       report, spell-checker.

JUMPING TO OTHER GROUPS
       By default nn will present the news groups  in  a  predefined  sequence
       (see  the section on Presentation Sequence later on).  To override this
       sequence and have a look at any other group the G {goto-group}  command
       available in both selection and reading mode enables you to move freely
       between all the newsgroups.

       Furthermore, the G command enables you to open folders and other files,
       to  read	 old articles you have read before, and to grep for a specific
       subject in a group.

       It is important to notice that normally the goto command is  recursive,
       i.e.  a new menu level is created when the specified group or folder is
       presented, and when it has been read, nn will continue the activity  in
       the  group  that	 was  presented	 before the goto command was executed.
       However, if there are unread articles in the target group you can avoid
       entering	 a  new	 menu level by using the j reply described below.  The
       current menu level (i.e. number of nested goto commands) will be	 shown
       in the prompt line as "<N>" (in reverse video).

       The  goto command is very powerful, but unfortunately also a little bit
       tricky at first sight, because the facilities it provides depend on the
       context in which the command is used.

       When  executed,	the  goto  command will prompt you for the name of the
       newsgroup, folder, or file to open.  It will use the first  letter  you
       enter to distinguish these three possibilities:

       return An empty answer is equivalent to the current newsgroup.

       letter The  answer  is  taken to be the name of a newsgroup.  If a news
	      group with the given name does not  exist,  nn  will  treat  the
	      answer as a regular expression and locate the first group in the
	      presentation sequence (or among all groups) whose	 name  matches
	      the expression.

       +
	      The  answer is taken to be the name of a folder.	If only `+' is
	      entered, it is equivalent to the default save file for the  cur‐
	      rent group.

       / or ./ or ~/
	      The answer is taken to be the name of a file, either relative to
	      the current directory, relative to your home  directory,	or  an
	      absolute path name for the file.

       %      In  reading  mode, this reply corresponds to reading the current
	      article (and splitting it as a digest).  In selection  mode,  it
	      will prompt for an article on the menu to read.

       @      This  choice  is	equivalent to the archive file for the current
	      group.

       = and number
	      These answers are equivalent to the same answers described below
	      applied to the current group (e.g. G return = and G = are equiv‐
	      alent).

       Specifying a folder, a file, or an article (with %) will	 cause	nn  to
       treat  the  file like a digest and split it into separate articles (not
       physically!)  which are then presented on a  menu  in  the  usual  way,
       allowing you to read or save individual subarticles from the folder.

       When  you  enter a group name, nn will ask you how many articles in the
       group you want to see on the menu.  You can give the following answers:

       a number N
	      In this case you will get the newest N articles in the group, or
	      if  you  specified  the  current group (by hitting return to the
	      group name prompt or entering the number directly), you will get
	      that many extra articles included on the same menu (without cre‐
	      ating a new menu level).

       j      This answer can only be given if there are  unread  articles  in
	      the  group.   It will instruct nn to jump directly to the speci‐
	      fied group in the presentation sequence without creating	a  new
	      menu level.

       u      This  instructs  nn  to present the unread articles in the group
	      (if there are any).  If you have already read the group (in  the
	      current  invocation  of  nn),  the  u answer will instruct nn to
	      present the articles that were unread when you entered nn.

       a      This instruct nn to present all articles in the group.

       sword or =word
	      This instructs nn to search all articles in the groups, but only
	      present  the  articles  containing the word word in the subject.
	      Notice that case is ignored when searching for the word  in  the
	      subject lines.

       nword  Same  as	the  s form except that it searched for articles where
	      the sender name matches word.

       eword  Same as the s form except that it Psearched for  articles	 where
	      either the subject or the sender name matches word.

       word = /regexp
	      When  the	 first	character of the word specified with the s, n,
	      and e forms is a slash `/', the rest of the input is interpreted
	      as  a  regular  expression  to  search for.  Notice that regular
	      expression matching is case insensitive when case-fold-search is
	      set (default).

       return The  meaning of an empty answer depends on the context: if there
	      are unread articles in the specified group the  unread  articles
	      will  be	presented, otherwise all articles in the group will be
	      included in the menu.

       If you specified the current group, and the menu already	 contains  all
       the  available  articles,  nn will directly prompt for a word to search
       for in the subject of all articles (the prompt will be an equal sign.)

       When the goto command creates a new menu level,	nn  will  not  perform
       auto kill or selection in the group.  You can use the + command in menu
       mode to perform the auto-selections.

       There are three commands in the goto family:

       G    {goto-group}
	      This is the general goto command described above.

       B    {back-group}
	      Backup one or more groups.  You can hit this  key	 one  or  more
	      times  to	 go  back  in  the groups already presented (including
	      those without new articles); when you have found the  group  you
	      are looking for, hit space to enter it.

       A    {advance-group}
	      Advance  one  or	more groups.  This command is similar to the B
	      command, but operates in the opposite direction.

       N    {next-group}
	      When used within an A or B command, it skips forward to the next
	      group  in	 the sequence with unread articles or which has previ‐
	      ously been visited.

       P    {previous}
	      When used within an A or B command, it skips  backwards  to  the
	      preceding	 group	in  the sequence with unread articles or which
	      has previously been visited.

       Once you have entered an A or Bcommand, you can freely mix the A, B, P,
       and  N  commands to find the group you want, and you can also use the G
       command to be prompted for a group name.

       To show the use of the goto command some typical examples  on  its  use
       are given below:

       Present the unread articles in the dk.general group
	    G dk.general return u

       Jump directly to the gnu.emacs group and continue from there
	    G gnu.emacs return j

       Include the last 10 READ articles in the current group menu
	    G 10 return

       Find all articles in rec.music.misc on the subject Floyd
	    G rec.music.misc return
	    = floyd return

       Open the folder +nn
	    G +nn return

       Split current article as a digest (in reading mode)
	    G %

       Related	variables:  case-fold-search,  default-save-file, folder-save-
       file

AUTOMATIC KILL AND SELECTION
       When there is a subject or an author which you are either  very	inter‐
       ested  in, or find completely uninteresting, you can easily instruct nn
       to auto-select or auto-kill articles with  specific  subjects  or  from
       specific	 authors.   These  instructions are stored in a kill file, and
       the most common types of entries can be	created	 using	the  following
       command:

       K    {kill-select}
	      Create an entry in your personal kill file.  The contents of the
	      entry is specified during a short dialog that  is	 described  in
	      details  below.  This command is available in both selection and
	      reading mode.

       Entries in the kill file may apply to a	single	newsgroup  or  to  all
       newsgroups.   Furthermore,  entries  may	 be  permanent	or they may be
       expired a given number of days after their entry.

       To increase performance, nn uses a compiled version of  the  kill  file
       which is read in when nn is invoked.  The compiled kill file will auto‐
       matically be updated if the normal kill file has been modified.

       The following dialog is used to build the kill file entry:

       AUTO (k)ill or (s)elect (CR => Kill subject 30 days)
	      If you simply want nn to kill all articles with the  subject  of
	      the  current  article  (in  reading  mode) or a specific article
	      (which nn will prompt for in selection mode), just  hit  return.
	      This  will  cause nn to create an entry in the kill file to kill
	      the current (or specified) subject in the current	 group	for  a
	      period  of 30 days (which should be enough for the discussion to
	      die out).
	      You can control the default kill period, or  change  it  into  a
	      "select" period via the default-kill-select variable.
	      If  this	"default  behaviour" is not what you want, just answer
	      either k or s to kill or select  articles,  respectively,	 which
	      will bring you on to the rest of the questions.

       AUTO SELECT on (s)ubject or (n)ame  (s)
	      (The  SELECT will be substituted with KILL depending on the pre‐
	      vious answer).  Here you specify whether you want	 the  kill  or
	      select  to depend on the subject of the article (s or space), or
	      on the name of the author (n).

       SELECT NAME:
	      (Again SELECT may be  substituted	 with  KILL  and  SUBJECT  may
	      replace NAME).  You must now enter a name (or subject) to select
	      (or kill).  In reading mode, you may just hit return (or	%)  to
	      use  the name (or subject) of the current article.  In selection
	      mode, you can use the name (or subject) from an article  on  the
	      menu  by	answering with % followed by the corresponding article
	      identifier.
	      When the name or subject is taken from an article	 (the  current
	      or  one  from  the  menu),  nn will only select or kill articles
	      where the name or subject matches the original name  or  subject
	      exactly including case.
	      If  the  first character typed at the prompt is a slash `/', the
	      rest of the line is used as a regular expression which  is  used
	      to match the name or subject (case insensitive).
	      Otherwise,  nn  will  select  or kill articles which contain the
	      specified string anywhere	 in  the  name	or  subject  (ignoring
	      case).

       SELECT in (g)roup `dk.general' or in (a)ll groups  (g)
	      You  must now specify whether the selection or kill should apply
	      to the current group only (g or space) or to all groups (a).

       Lifetime of entry in days (p)ermanent  (30)
	      You can now specify the lifetime of the entry, either by	enter‐
	      ing  a  number specifying the number of days the entry should be
	      active, or p to specify the entry	 as  a	permanent  entry.   An
	      empty reply is equivalent to 30 days.

       CONFIRM SELECT ....
	      Finally,	you will be asked to confirm the entry, and you should
	      especially note the presence or absence of the word exact	 which
	      specify whether an exact match applies for the entry.

       Related variables: default-kill-select, kill.

THE FORMAT OF THE KILL FILE
       The  kill  file	consists  of one line for each entry.  Empty lines and
       lines starting with a # character are ignored.  nn automatically places
       a # character in the first position of expired entries when it compiles
       the kill file.  You can then edit the kill file manually from  time  to
       time to clean out these entries.

       Each line has the following format
	    [expire time :] [group name] : flags : string [: string]...

       Permanent entries have no expire time (in which case the colon is omit‐
       ted as well!).  Otherwise, the expire  time  defines  the  time	(as  a
       time_t value) when the entry should be expired.

       The group name field can have three forms:

       news.group.name
	      If  it  is the name of a single news group (e.g. comp.unix), the
	      entry applies to that group only.

       /regular expression
	      If it starts with a slash `/' followed by a  regular  expression
	      (e.g.  /^news\..*),  the	entry applies to all groups whose name
	      are matched by the regular expression.

       empty  An empty group field will apply the entry to all groups.

       The flags field consists of a list of characters which  identifies  the
       type of entry, and the interpretation of each string field.  When used,
       the flag characters must be  used  in  the  order  in  which  they  are
       described below:

       ~    (optional)
	      When  this  flag is present on any of the entries for a specific
	      group, it causes all entires which are not auto-selected	to  be
	      killed.  This is a simple way to say: I'm interested in this and
	      that, but nothing else.

       +    or ! (optional)
	      Specify an auto-select + or an auto-kill ! entry,	 respectively.
	      If  neither are used, the article is neither selected nor killed
	      which is useful in combination with the `~' flag.

       > (optional)
	      When used with a subject (flag s), the kill entry	 only  matches
	      follow-ups  to that subject (i.e. where the Subject: line starts
	      with Re:).  For example, to kill all "Re:"'s  in	rec.humor  use
	      the following kill entry: rec.humor:!>s/:.

       < (optional)
	      When  used  with a subject (flag s), the kill entry only matches
	      base articles with that subject (i.e. where  the	Subject:  line
	      does  not	 start	with  Re:).  For example, to kill all articles
	      asking for help (but not follow-ups) in the tex group, add  this
	      to your kill file:
		   comp.text.tex:!s</:^HELP

       n or s or a (mandatory)
	      Specify  whether	the corresponding string applies to the name n
	      or to the subject s of an article.  If flag a is used, the  cor‐
	      responding  string  is  ignored  (but  must be present), and the
	      entry applies to articles with a non-empty References: line.

       / (optional)
	      Specifies that the corresponding string is a regular  expression
	      which  the  sender or subject is matched against.	 If not speci‐
	      fied, a simple string match is performed using the given string.

       = (optional)
	      Specifies that the match against the name	 or  subject  is  case
	      sensitive.  Furthermore, when regular expression matching is not
	      used, the name or subject must be of  the	 same  length  of  the
	      string to match.	Otherwise, the match will be case insensitive,
	      and a string may occur anywhere in the name or subject to match.

       | or & (mandatory if multiple strings)
	      If more than one string is specified, the set  of	 flags	corre‐
	      sponding to each string must be separated by either an or opera‐
	      tor `|' or an and operator `&'.  The and operator has  a	higher
	      precedence  than	the or operator, e.g.  a complex match expres‐
	      sion a|b&c|d will succeed if either of a, b&c, or d matches.

       The string field in the entry is the name, subject or  regular  expres‐
       sion  that  will be matched against the name or subject of each article
       in the group (or all groups).  Colons and backslashes must  be  escaped
       with a backslash in the string.

       Example	1:  Auto-select articles from `Tom Collins' (exact) on subject
       `News' in all groups:
	   :+n=&s:Tom Collins:News

       Example 2:  Kill all articles which are neither from `Tom' or `Eve'  in
       some.group.  Select only articles from Eve:
	   some.group:~n:Tom
	   some.group:+n:Eve

       The  second  example  can  also be written as a single entry with an or
       operator (in this case, the select/kill attribute only applies  to  the
       succeeding strings):
	   some.group:~n|+n:Tom:Eve

       To  remove expired entries, to "undo" a K command, and to make the more
       advanced entries with more than one string, you will have to  edit  the
       kill  file  manually.   To recompile the file, you can use the :compile
       command.	 When you invoke nn, it will also recompile the kill  file  if
       the compiled version is out of date.

SHELL ESCAPES
       The  !	commands available in selection and reading mode are identical
       in operation (with one exception).  When you  enter  the	 shell	escape
       command,	 you  will be prompted for a shell command.  This command will
       be fed to the shell specified in the  shell  variable  (default	loaded
       from  the  SHELL	 environment  variable or /bin/sh) after the following
       substitutions have been performed on the command:

       File name expansion
	      The earlier described file name expansions will be performed  on
	      all arguments.

       $G     will be substituted with the name of the current news group.

       $L     will  be	substituted with the last component of the name of the
	      current news group.

       $F     will be substituted with the name of the current news group with
	      the periods replaced by slashes.

       $N     will  be	substituted  with  the	(local)	 article  number (only
	      defined in reading mode).

       $A     is replaced by the full path name of  the	 file  containing  the
	      current article (only defined in reading mode).

       %      Same as $A.

       $(VAR) is replaced by the string value of the environment variable VAR.

       When  the  shell command is completed, you will be asked to hit any key
       to continue.  If you hit the !  key again, you will be prompted	for  a
       new shell command.  Any other key will redraw the screen and return you
       to the mode you came from.

       Related variables: shell, shell-restrictions.

MISCELLANEOUS COMMANDS
       Below are more useful commands which are available  in  both  selection
       and reading modes.

       U    {unsub}
	      Unsubscribe  to  the current group.  You will not see this group
	      any more unless you explicitly  request  it.   If	 the  variable
	      unsubscribe-mark-read  is set, all articles in the group will be
	      marked read when you unsubscribe.
		If the variable keep-unsubscribed is not set, the  group  will
	      be  removed  from	 .newsrc.   If	you are not subscribing to the
	      group, you will be given the possibility to resubscribe  to  the
	      group!   This  may  be  used in connection with the G command to
	      resubscribe a group.

       C    {cancel}
	      Cancel (delete) an article in the current group or folder.  Can‐
	      celling articles in a folder will cause the folder to be rewrit‐
	      ten when it is closed.  In selection mode, you will be  prompted
	      for  the	identifier of the article to cancel.  Normal users can
	      only cancel their own articles.  See also the section on	folder
	      maintenance.

       Y    {overview}
	      Provide an overview of the groups with unread articles.

       "    {layout}
	      Change  menu layout in selection mode.  The menu will be redrawn
	      using the next layout (cycling through ..., 2, 3, 4, 0, 1, ...)

       Most of the commands in nn are bound to a key and can be activated by a
       single  keystroke.   However,  there  are a few commands that cannot be
       bound to a key directly.

       As shown in the keystroke command descriptions,	all  commands  have  a
       name,  and  it  is  possible  to	 activate  a  command by name with the
       extended command key (:).  Hitting this key will	 prompt	 you  for  the
       name  of	 a  command  (and parameters).	For example, an alternative to
       hitting the R key to reply to an article is to enter the extended  com‐
       mand  :reply  followed  by  return.   The  :post	 and  :unshar commands
       described earlier can also be bound to a key.   The  complete  list  of
       commands	 which	can be bound to keys is provided in the section on Key
       Mappings below.

       The following extended commands	cannot	be  bound  to  a  key,	mainly
       because	they  require  additional  parameters  on  the prompt line, or
       because it should not be possible to activate them too easily.

       :admin Enter administrative mode.  This is identical  in	 operation  to
	      the nnadmin(1M) program.

       :bug   Prepare and send a bug report to the nn-bugs mailing address.

       :cd [ directory ]
	      Change  current working directory.  If the directory argument is
	      not provided, nn will prompt for it.

       :clear Clear the screen (without redraw).  This may be  useful  at  the
	      beginning	 of  the  init	file  (possibly guarded by "on program
	      nn"), or in some macros.

       :compile
	      Recompile the kill file.	This is	 not  necessary	 under	normal
	      operation	 since	nn automatically compiles the file on start-up
	      if it has changed, but it can be used if	you  modify  the  kill
	      file while nn is suspended.

       :coredump
	      Abort with a core dump.  For debugging purposes only.

       :define macro
	      Define  macro  number macro as described in the Macro Definition
	      section below.  If macro is omitted, the next free macro	number
	      will be chosen.

       :dump table
	      Same as the :show command described below.

       :help [ subject ]
	      Provide  online  help on the specified subject.  If you omit the
	      subject, a list of the available topics will be given.

       :load [ file ]
	      Load the specified file.	If the file argument is	 omitted,  the
	      init  file  is  reloaded.	  The  sequence	 part  (if present) is
	      ignored.

       :local variable [ value ]
	      Make the	variable  local	 to  the  current  group.   Subsequent
	      changes to the variable will only be effective until the current
	      group is left.  If a value is specified, it will be assigned  to
	      the  local  variable.   To assign a new value to a boolean vari‐
	      able, the values on and off must be used.

       :lock variable
	      Lock the specified variable so it cannot be modified.

       :man   Call up the online manual.  The manual is presented as a	normal
	      folder with the program name in the `From' field and the section
	      title in the `subject' field.  All the normal  commands  related
	      to  a  folder  works for the online manual as well, e.g. you can
	      save and print sections of the manual.

       :map arguments
	      This is the command used for binding commands to the  keys.   It
	      is fully described in the Key Mapping section below.

       :mkdir [ directory ]
	      Create the directory (and the directories in its path).  It will
	      prompt for at directory name if the argument is omitted.

       :motd  Show the message of the day (maintained by the news  administra‐
	      tor in the file "motd" in the lib directory.  This file is auto‐
	      matically displayed on start-up whenever it changes if the  motd
	      variable is set.

       :pwd   Print path name of current working directory on message line.

       :q     Has  no effect besides redrawing the screen if necessary.	 If an
	      extended command (one which is prefixed by  a  :)	 produces  any
	      output requirering the screen to be redrawn, the screen will not
	      be redrawn immediately if the variable delay-redraw is set (use‐
	      ful  on  slow  terminals).  Instead another : prompt is shown to
	      allow you to enter a new extended command	 immediately.	It  is
	      sufficient  to  hit return to redraw the screen, but it has been
	      my experience that entering q return in this  situation  happens
	      quite often, so it was made a no-op.

       :q!    Quit nn without updating the .newsrc file.

       :Q     Quit nn.	This is equivalent to the normal Q command.

       :rmail Open  your  mailbox  (see the mail variable) as a folder to read
	      the incoming messages.   This  is	 not  a	 full  mail  interface
	      (depending  on  the  nn  configuration,  you  may not be able to
	      delete messages, add cc: on replies, etc), but it can give you a
	      quick glance at new mail without leaving nn.

       :set variable [ value ]
	      Set  a  boolean variable to true or assign the value to a string
	      or integer variable.  The :set command is described  in  details
	      in the section on VARIABLES.

       :sh    Suspend  nn,  or	if  that is not possible, spawn an interactive
	      shell.

       :show groups mode
	      Show the total number or the number of unread  articles  in  the
	      current group, depending on mode: all (list the number of unread
	      articles in all groups including groups which  you  have	unsub‐
	      scribed  to),  total  (list  the total number of articles in all
	      existing groups), sequence (list unread groups  in  presentation
	      sequence	order),	 subscr	 (list	all  subscribed groups), unsub
	      (list unsubscribed groups only).	Any other mode	results	 in  a
	      listing  of  the	number	of  unread  articles in all subscribed
	      groups including those you have suppressed with the `!'	symbol
	      in  the  group presentation sequence.  To get just the currently
	      unread groups in the presentation sequence, use the  `Y'	{over‐
	      view} command.

       :show kill
	      Show  the	 kill entries that applies to the current group and to
	      all groups.

       :show rc [ group ]
	      Show the .newsrc and select file entries for the current or  the
	      specified group.

       :show map [ mode ]
	      Show the key bindings in the current or specified mode.

       :sort [ mode ]
	      Reorder the articles on the menu according to mode or if omitted
	      to the default  sort-mode.   The	following  sorting  modes  are
	      available:
	      arrival: list articles by local article number which will be the
	      same as the order in which they arrived on  the  system  (unless
	      groups are merged),
	      subject:	articles  with	identical  subjects  are  grouped  and
	      ordered after age of the oldest article in the group,
	      lexical: subjects in lexicographical order,
	      age: articles ordered after posting date only,
	      sender: articles ordered after sender's name.

       :toggle variable
	      Toggle a boolean variable.

       :unread [ group ] [ articles ]
	      Mark the current (or specified) group as unread.	If  the	 arti‐
	      cles  argument  is omitted, the number of unread articles in the
	      group will be set to the number of unread articles when  nn  was
	      invoked.	Otherwise, the argument specifies the number of unread
	      articles.

       :unset variable
	      Set a boolean variable to false or clear an integer variable.

       :x     Quit nn and mark all articles in the current group as read!

       Related	variables:  backup,  bug-report-address,  delay-redraw,	 keep-
       unsubscribed, unsubscribe-mark-read, mail, pager, sort-mode.

CATCH UP
       If  you	have not read news for some time, there are probably more news
       than you can cope with.	Using the option -a0  nn  will	put  you  into
       catch-up mode.

       The first question you will get is whether to catch up interactively or
       automatically.  If you instruct nn to catch up automatically,  it  will
       simply  mark all articles in all groups as read, thus bringing you com‐
       pletely up-to-date.

       If you choose the interactive mode, nn  will  locate  all  groups  with
       unread articles, and for each group it will prompt you for an action to
       take on the group.  An action is selected using a  single  letter  fol‐
       lowed by return.	 The following actions are available:

       y      Mark all articles as read in current group.

       n      Do  not update group (this is the default action if you just hit
	      return).

       r      Enter reading mode to read the group.

       U      Unsubscribe to the group.

       ?      Give a list of actions.

       q      Quit.  When you quit, nn will ask whether the rest of the groups
	      should  be updated unconditionally or whether they should remain
	      unread.

VARIABLES AND OPTIONS
       It is possible to control the behaviour of nn through the setting  (and
       unsetting) of the variables described below.  There are several ways of
       setting variables:
       - Through command line options when nn is invoked.
       - Through assignments on the command line when nn is invoked.
       - Through global set commands in the init file.
       - Through set or local commands executed from entry macros.
       - Through the :set extended command when you run nn.

       There are four types of variables:
       - Boolean variables
       - Integer variables
       - String variables
       - Key variables

       Boolean variables control a specific function in nn, e.g.  whether  the
       current time is shown in the prompt line.  A boolean variable is set to
       true with the command
	    set variable
       and it is set to false with either of the following  (equivalent)  com‐
       mands:
	    unset variable
	    set novariable

       You can also toggle the value of a boolean variable using the command:
	    toggle variable

       For example:
	    set time
	    unset time
	    set notime
	    toggle time

       Integer	variables  control an amount e.g. the size of the preview win‐
       dow, or the maximum number of articles to read in each group.  They are
       set with the following command:
	    set variable value
       In  some cases, not setting an integer value has a special meaning, for
       example, not having a minimal preview window or reading all articles in
       the  groups  no	matter how many there are.  The special meaning can be
       re-established by the following command:
	    unset variable
       For example:
	    set window 7
	    unset limit

       String variables	 may  specify  directory  names,  default  values  for
       prompts, etc.  They are set using the command
	    set variable string
       Normally, the string value assigned to the variable value starts at the
       first non-blank character after the variable name  and  ends  with  the
       last  non-blank character (excluding comments) on the line.  To include
       leading or trailing blanks, or the comment  start  symbol,  #,  in  the
       string  they  must  be  escaped	using  a  backslash  `\',  e.g. to set
       included-mark to the string " # ",  the	following  assignment  can  be
       used:
	    set included-mark  \ \#\   # blank-#-blank
       To  include  a  backslash in the string, it must be duplicated `\\'.  A
       backslash may also be used to include the following special  characters
       in the string: \a=alarm, \b=backspace, \e=escape, \f=form-feed, \n=new-
       line, \r=return, \t=tab.

       Key variables control the keys used to control special functions during
       user input such as line editing and completion.	They are set using the
       command
	    set variable key-name

       A variable can be locked which makes further modification of the	 vari‐
       able impossible:
	    lock variable
       This can be used in the setup init file which is loaded unconditionally
       to enforce local conventions or restrictions.  For example, to fix  the
       included-mark variable to the string ">", the following commands can be
       placed in the setup file:
	    set included-mark >
	    lock included-mark
       Some variables only make sense when set on the command line, since they
       are  examined  early  in	 startup, before the init files are read.  The
       syntax for setting variables on the command line is:
	    variable=value
       The value may need to be quoted if it contains white space  or  special
       characters.   They  can be intermixed with other options, and are exam‐
       ined prior to other argument parsing.

       The current variable settings can be shown with the :set command:

       :set (without arguments)
	      This will give a listing of the variables which have been set in
	      either the init file or interactively.

       :set all
	      This  will  give a listing of all variables.  Modified variables
	      will be marked with a `*' and local  variables  will  be	marked
	      with a `>'.  A locked variable is marked with a `!'.

       :set /regexp
	      This will give a listing of all variables whose name matches the
	      given regular expression.

       :set partial-name space
	      The space (comp1-key) key will complete  the  variable  name  as
	      usual,  but as a side effect it will display the variable's cur‐
	      rent value in the message line.

       Variables are global by default, but a local instantiation of the vari‐
       able  can be created using the :local command.  The local variable will
       overlay the global variable as long as the  current  group  is  active,
       i.e.  the  global variable will be used again when you exit the current
       group.  The initial value of the local variable will be the same as the
       global variable, unless a new value is specified in the :local command:
	    :local variable [ value ]

       The following variables are available:

       also-full-digest	   (boolean, default false)
	      When  a  digest  is  split,  the	digest	itself is not normally
	      included on the menu, and	 as  such  the	initial	 adminstrative
	      information  is  not  available.	 Setting also-full-digest will
	      cause the (unsplit) digest to be included on  the	 menu.	 These
	      articles are marked with a @ at the beginning of the subject.

       also-subgroups (boolean, default true)
	      When  set,  a  group name in the presentation sequence will also
	      cause all the subgroups of the group to be included,  for	 exam‐
	      ple, comp.unix will also include comp.unix.questions, etc.  When
	      also-subgroups is not set, subgroups are only  included  if  the
	      group  name is followed by a `.' in which case the main group is
	      not  included,  i.e.    `comp.unix'   is	 not   included	  when
	      `comp.unix.'  is	specified  in  the  presentation sequence, and
	      vice-versa.  Following a group name by  an  asterisk  `*',  e.g.
	      comp.unix*,  will	 include  the  group  as well as all subgroups
	      independently of the setting of also-subgroups.

       append-signature-mail	(boolean, default false)
	      When false, it is assumed that the .signature file is  automati‐
	      cally  appended  to responses sent via E-mail.  If true, .signa‐
	      ture will be appended to the letter (see query-signature).

       append-signature-post	(boolean, default false)
	      When false, it is assumed that the .signature file is  automati‐
	      cally  appended  to  posted  articles.  If true, .signature will
	      explicitly be appended to posted articles (see query-signature).

       attributes symbols  (string, default ....)
	      Each element in this string represents a symbol used  to	repre‐
	      sent an article attribute when displayed on the screen.  See the
	      section on Marking Articles and Attributes.

       auto-junk-seen (boolean, default true)
	      When set, articles which have the seen  attribute	 (,)  will  be
	      marked  read  when the current group is left.  If not set, these
	      articles will still be either unread or  marked  seen  the  next
	      time  the	 group	is  entered  (see  also	 confirm-junk-seen and
	      retain-seen-status).

       auto-preview-mode	(boolean, default false)
	      Enables Auto Preview Mode.  In this mode, selecting  an  article
	      on the menu using its article id (letter a-z) will enter preview
	      mode on that article immediately.	 Furthermore, the  `n'	{next-
	      article}	command will preview the next article on the menu only
	      if it has the same subject as the current article; otherwise, it
	      will return to the menu with the cursor placed on the next arti‐
	      cle.  The continue command at the end of the article and the `='
	      {goto-menu} returns to the menu immediately as usual.

       auto-read-mode-limit N	(integer, default 0)
	      When  operating  in  auto	 reading mode, nn will auto-select all
	      unread articles in the group, skip the article selection	phase,
	      and enter reading mode directly after entry to the group.
		Auto  reading  mode  is	 disabled when auto-read-mode-limit is
	      zero; it is activated unconditionally if the value is  negative,
	      and conditionally if the value is greater than zero and the num‐
	      ber of unread articles in the current group does not exceed  the
	      given value.

       auto-select-closed mode	(integer, default 1)
	      Normally,	 selecting  a  closed subject (usually in consolidated
	      menu mode) will select (or deselect) all	unread	articles  with
	      the  given subject (or all articles if they are all read).  This
	      behaviour can be changed via the value of this variable as  fol‐
	      lows:
	      0: select only the first article with the subject (shown on menu).
	      1: select only the unread articles with the subject.
	      2: select all available articles with the subject.

       auto-select-rw (boolean, default false)
	      If  set, a subject of an article read or posted is automatically
	      used for subsequent auto-selecting (if  not  already  selected).
	      This  is	the most efficient way to see your own posts automati‐
	      cally.

       auto-select-subject (boolean, default false)
	      When set, selecting an article from the menu using  the  article
	      id  (a-z),  all  articles on the menu with the same subject will
	      automatically be selected as well.

       backup	 (boolean, default true)
	      When set, a copy of the initial .newsrc and  select  files  will
	      save  be the first time they are changed.	 nn remembers the ini‐
	      tial contents of these files internally, so the backup  variable
	      can be set any time if not set on start-up.

       backup-folder-path file	(string, default "BackupFolder~")
	      When  removing  deleted  articles	 from  a folder, this variable
	      defines the name of the file where a  (temporary)	 copy  of  the
	      original	folder	is  saved.  If the file name doesn't contain a
	      `/', the file will be located in the .nn	directory.   Otherwise
	      the file name is used directly as the relative or full path name
	      of the backup file.  If possible, the old folder will be renamed
	      to the backup folder name; otherwise the old folder is copied to
	      the backup folder.

       backup-suffix suffix	(string, default ".bak")
	      The suffix appended to file  names  to  make  the	 corresponding
	      backup file name (see backup).

       bug-report-address address    (string, default mtpins@nndev.org)
	      The mail address to which bug reports created with the :bug com‐
	      mand are sent.

       case-fold-search		(boolean, default true)
	      When set, string and regular expression matching	will  be  case
	      independent.   This is related to all commands matching on names
	      or subjects, except in connection with auto-kill and auto-select
	      where the individual kill file entries specifies this property.

       charset charset	   (string, default "us-ascii")
	      The character set in use on your terminal. Legal values are "us-
	      ascii", "iso-8859-X", where X is a nonzero digit, and "unknown".
	      Setting  this  variable  also sets the data-bits variable to the
	      default bit width of the character set  (7  for  "us-ascii"  and
	      "unknown", 8 for the "iso-8859-X" sets).
	      The  value  of  this  variable  also determines wether nn allows
	      8-bit characters in the body of articles being posted  and  let‐
	      ters  being mailed (unless the value is "unknown", in which case
	      this is determined by the value of the data-bits variable).   If
	      necessary,  nn  will add extra headers to the message indicating
	      its the character set.

       check-group-access  (boolean, default false)
	      When set, nn will perform	 a  check  on  the  readability	 of  a
	      group's  readability  before  showing  the  menu for that group.
	      Normally, this is not necessary since  all  users	 traditionally
	      have  access  to	all  news  groups.  Setting (and locking) this
	      variable may be used to limit access to a	 news  group  via  the
	      permissions  and	ownership of the group's spool directory (this
	      will only work for non-NNTP sites).

       collapse-subject offset	(integer, default 25)
	      When set (non-negative), subject lines which are too long to  be
	      presented in full on the menus will be "collapsed" by removing a
	      sufficient number of characters from the subject starting at the
	      given  offset  in	 the subject.  This is useful in source groups
	      where the "Part (01/10)" string sometimes	 disappears  from  the
	      menu.  When not set (or negative), the subjects are truncated.

       columns col    (integer, default screen width)
	      This variable contains the screen width i.e. character positions
	      per line.

       comp1-key key  (key, default space)
	      The key which gives the first/next completion, and  the  default
	      value when nn is prompting for a string, e.g. a file name.

       comp2-key key  (key, default tab)
	      The  key	which  ends the current completion and gives the first
	      completion for the next component when nn	 is  prompting	for  a
	      string, e.g. a file name.

       compress	      (boolean, default false)
	      This  variable  controls	whether text compression (see the com‐
	      press command) is turned on or off when  an  article  is	shown.
	      The  compression	is  still toggled for the current article with
	      the compress command key.

       confirm-append	   (boolean, default false)
	      When set, nn will ask for confirmation before appending an arti‐
	      cle to an existing file (see also confirm-create).

       confirm-auto-quit	(boolean, default false)
	      When  set,  nn  will  ask for confirmation before quitting after
	      having read the last group.  If not confirmed, nn	 will  recycle
	      the  presentation	 sequence looking for groups that were skipped
	      with the `N' {next-group} command.  But it will not look for new
	      articles arrived since the invocation of nn.

       confirm-create	   (boolean, default true)
	      When  set,  nn  will  ask for confirmation before creating a new
	      file or directory when saving or unpacking an article (see  also
	      confirm-append).

       confirm-entry	   (boolean, default false)
	      When  set,  nn will ask for confirmation before entering a group
	      with more than confirm-entry-limit unread articles (on the first
	      menu  level).   It is useful on slow terminals if you don't want
	      to wait until nn has drawn the first menu to be able to skip the
	      group.
		Answering  no  to the "Enter?" prompt will cause nn to skip to
	      the next group without marking the current group	as  read.   If
	      you  answer by hitting interrupt, nn will ask the question "Mark
	      as read?" which allows you to mark the  current  group  as  read
	      before going to the next group.  If this second question is also
	      answered by hitting interrupt, nn will quit immediately.

       confirm-entry-limit articles  (integer, default 0)
	      Specifies the minimum number of unread articles in a  group  for
	      which the confirm-entry functionality is activated.

       confirm-junk-seen	(boolean, default false)
	      When set, nn will require confirmation before marking seen arti‐
	      cles as read when auto-junk-seen is set.

       confirm-messages		(boolean, default false)
	      In some cases, nn will sleep one second (or more)	 when  it  has
	      shown  a	message	 to  the  user,	 e.g. in connection with macro
	      debugging.  Setting confirm-messages will cause nn to  wait  for
	      you  to  confirm all messages by hitting any key.	 (It will show
	      the symbol <> to indicate that it is awaiting confirmation.)

       consolidated-manual (boolean, default false)
	      When set, the online manual will be presented with one menu line
	      for each program in the nn package.

       consolidated-menu	(boolean, default false)
	      When set, nn will automatically close all multi-article subjects
	      on entry to a group, so that each subject only occur once on the
	      menu page.

       counter-delim-left  (string, default "[")
	      The  delimiter  string output to the left of the article counter
	      in a closed subject's menu line.

       counter-delim-right (string, default "] ")
	      The delimiter string output to the right of the article  counter
	      in a closed subject's menu line.

       counter-padding pad	(integer, default 5)
	      On  a  consolidated  menu,  the  subjects	 may  not be very well
	      aligned because the added [...] counters	have  varying  length.
	      To  (partially)  remedy this, all counters (and subjects without
	      counters) are prefixed by up to pad spaces to get better	align‐
	      ment.  Increasing it further may yield practially perfect align‐
	      ment at the cost of less space for the subject itself.

       cross-filter-seq		(boolean, default true)
	      When set, cross posted articles will be presented in  the	 first
	      possible	group,	i.e.  according	 to  the  current presentation
	      sequence (cross-post filtering on	 sequence).   The  article  is
	      automatically  marked  read  in  the  other  cross posted groups
	      unless you unsubscribe to the first group in which it was	 shown
	      before  reading the other groups.	 Likewise, it is sufficient to
	      leave the article unread in the first group to keep it for later
	      handling.
		If not set, cross-postings are shown in the first group occur‐
	      ring on the Newsgroups: line which the user subscribes to	 (i.e.
	      you  let	the  poster  decide which group is most appropriate to
	      read his posting).

       cross-post	   (boolean, default false)
	      Normally, nn will only show cross-posted articles in  the	 first
	      subscribed  group	 on  the Newsgroups: line.  When cross-post is
	      set, nn will show cross-posted articles in all subscribed groups
	      to which they are posted.

       cross-post-limit N	 (integer, default 0)
	      If  this variable is set to a value other than 0, then any arti‐
	      cles posted to more than N newsgroups are automatically skipped.
	      A value of 5 is pretty good for discarding ``spam'' articles.

       data-bits bits (integer, default 7)
	      When  set	 to 7, nn will display characters with the 8th bit set
	      using a meta-notation M-7bit-char.  If set to 8,	these  charac‐
	      ters  are	 sent  directly to the screen (unless monitor is set).
	      Setting the charset variable also	 sets  this  variable  to  the
	      default bit width of character set.
	      It also controls whether keyboard input is 7 or 8 bits, and thus
	      whether key maps contain 127 or 255 entries.  See the  key  map‐
	      ping section for more details.
	      If  the charset has value "unknown", the value of data-bits also
	      determines wether nn allows 8-bit	 characters  in	 the  body  of
	      articles being posted and letters being mailed (this is normally
	      determined directly by the charset variable).

       date	 (boolean, default true)
	      If set nn will show the article posting date when	 articles  are
	      read.

       debug mask     (integer, default 0)
	      Look in the source if you are going to use this.

       decode-header-file file	(string, default "Decode.Headers")
	      The  name	 of  the  file in which the header and initial text of
	      articles decoded with the :decode command is saved.  Unless  the
	      file  name  starts  with	a `/', the file will be created in the
	      same directory as the decoded files.   The  information  is  not
	      saved if this variable is not set.

       decode-skip-prefix N	(integer, default 2)
	      When  non-null, the :decode command will automatically skip upto
	      N characters at the beginning of each line to find  valid	 uuen‐
	      coded data.  This allows nn to automatically decode (multi-part)
	      postings which are both uuencoded and packed with shar.

       default-distribution distr    (string, default "world")
	      The distribution to use as the default suggestion	 when  posting
	      articles using the follow and post commands if the corresponding
	      follow-distribution or post-distribution variable	 contains  the
	      default option.

       default-kill-select [1]days   (number, default 30)
	      Specifies	 the default action for the K {kill-select} command if
	      the first prompt is answered by return.  It contains the	number
	      of  days to keep the kill or select entry in the kill file (1-99
	      days).  If it has the value days+100 (e.g. 130), it denotes that
	      the  default action is to select rather than kill on the subject
	      for the specified period.

       default-save-file file	(string, default +$F)
	      The default save file used when saving articles in  news	groups
	      where  no	 save file has been specified in the init file (either
	      in a save-files section or in the	 presentation  sequence).   It
	      can  also	 be  specified	using the abbreviation "+" as the file
	      name when prompted for a file name even in groups with their own
	      save file.

       delay-redraw	   (boolean, default false)
	      Normally,	 nn  will  redraw  the	screen after extended commands
	      (:cmd) that clear the screen.  When delay-redraw is set nn  will
	      prompt  for  another  extended  command instead of redrawing the
	      screen (hit return to redraw).

       echo-prefix-key		(boolean, default true)
	      When true, hitting a prefix key (see the section on key  mapping
	      below)  will  cause  the	prefix key to be echoed in the message
	      line to indicate that another key is expected.

       edit-patch-command  (boolean, default true)
	      When true, the :patch command will show the  current  patch-com‐
	      mand  and give you a chance to edit it before applying it to the
	      articles.

       edit-print-command  (boolean, default true)
	      When true, the print command will show the current printer  com‐
	      mand  and give you a chance to edit it before printing the arti‐
	      cles.  Otherwise the articles are just printed using the current
	      printer command.

       edit-response-check (boolean, default true)
	      When editing a response to an article, it normally does not have
	      any meaning to send the initial file prepared by	nn  unaltered,
	      since  it	 is  either  empty or only contains included material.
	      When this variable is set, exiting  the  editor  without	having
	      changed  the  file  will automatically abort the response action
	      without confirmation.

       edit-unshar-command (boolean, default false)
	      When true, the :unshar command will show the current unshar-com‐
	      mand  and give you a chance to edit it before applying it to the
	      articles.

       editor command (string, default not set)
	      When set, it will override the current EDITOR environment	 vari‐
	      able when editing responses and new articles.

       embedded-header-escape string (string, default '~')
	      When  saving  an article to a file, header lines embedded in the
	      body of the article are escaped using this  string  to  make  it
	      possible	for  nn	 to  split  the	 folder	 correctly afterwards.
	      Header lines are not escaped if this variable is not set.

       enter-last-read-mode mode     (integer, default 1)
	      Normally, nn will remember which group is active when you	 quit,
	      and  offer  to jump directly to this group when you start nn the
	      next time.  This variable is used	 to  control  this  behaviour.
	      The following mode values are recognized:
	      0: Ignore the remembered group (r.g.).
	      1: Enter r.g. if the group is unread (with user confirmation)
	      2: Enter r.g. or first unread group after it in the sequence (w/conf).
	      3: Enter r.g. if the group is unread (no confirmation)
	      4: Enter r.g. or first unread group after it in the sequence (no conf).

       entry-report-limit articles   (integer, default 300)
	      Normally,	 nn will just move the cursor to the upper left corner
	      of the screen while it is reading articles from the database  on
	      entry  to	 a  group.  For large groups this may take more than a
	      fraction of a second, and nn can then report what it  is	doing.
	      If  it must read more articles than the number specified by this
	      variable, nn will report which group and how many articles it is
	      reading.

       erase-key key  (key, default tty erase key)
	      The key which erases the last input character when nn is prompt‐
	      ing for a string, e.g. a file name.

       expert	      (boolean, default false)
	      If set nn will use slightly shorter prompts (e.g. not  tell  you
	      that  ?  will give you help), and be a bit less verbose in a few
	      other cases (e.g. not remind you that posted  articles  are  not
	      available instantly).

       expired-message-delay pause   (integer, default 1)
	      If  a  selected  article	is found to have been expired, nn will
	      normally give a message about this and sleep  for	 a  number  of
	      seconds  specified  by  this variable.  Setting this variable to
	      zero will still make nn give the message without sleeping after‐
	      wards.   Setting it to -1 will cause the message not to be shown
	      at all.

       flow-control   (boolean, default true)
	      When set, nn will turn on xon/xoff flow-control  before  writing
	      large  amounts of text to the screen.  This should guard against
	      lossage of output, but in some network configurations it has had
	      the  opposite  effect, losing several lines of the output.  This
	      variable is always true  on  systems  with  CBREAK  capabilities
	      which  can do single character reads without disabling flow con‐
	      trol.

       flush-typeahead	   (boolean, default false)
	      When true, nn will flush typeahead  prior	 to  reading  commands
	      from  the	 keyboard.   It will not flush typeahead while reading
	      parameters for a command, e.g. file names etc.

       folder directory	   (string, default ~/News)
	      The full pathname of the folder directory which will replace the
	      + in folder names.  It will be initialized from the FOLDER envi‐
	      ronment variable if it is not set in the init file.

       folder-format-check (boolean, default true)
	      When saving an article with a  full  or  partial	header	in  an
	      existing	folder,	 nn  will check the format of the folder to be
	      able to append the article in the proper format.	If this	 vari‐
	      able  is not set, folders are assumed to be in the format speci‐
	      fied via the mmdf-format and mail-format variables, and articles
	      are  saved  in  that  format  without  checking.	Otherwise, the
	      *-format variables are only used to determine the format for new
	      folders.

       folder-save-file file	(string, default not set)
	      The default save file used when saving articles from a folder.

       follow-distribution words     (string, default see below)
	      This  variable  controls	how  the  Distribution: header is con‐
	      structed for a follow-up to an original article.	Its value is a
	      list of words selected from the following list:
	      [ [ always ] same ] [ ask ] [ default | distribution ]
	      This is interpreted in two steps:
	      -	 First	the  default  distribution  is determined.  If same is
	      specified and the original article has a	Distribution:  header,
	      that header is used.  Else if default is specified (or distribu‐
	      tion is omitted), the value  of  default-distribution  is	 used.
	      And finally, if only a distribution (any word) is specified that
	      is used as the default.
	      - Then if ask is specified, the user will be  asked  to  confirm
	      the  default distribution or provide another distribution.  How‐
	      ever, if always (and same) is specified,	and  the  default  was
	      taken  from  the	original  article's distribution, the original
	      distribution is used without confirmation.
	      The default value of follow-distribution is always same default,
	      i.e. use either the original distribution or the default-distri‐
	      bution without confirmation in either case.

       from-line-parsing strictness  (integer, default 2)
	      Specifies how strict nn must parse a "From " line in a folder to
	      recognize	 it as a mail format message separator line.  The fol‐
	      lowing strictness values determine whether a line starting  with
	      "From " will be recognized as a separator line:
		   0: Always.
		   1: Line must have at least 8 fields.
		   2: Line must contain a valid date and time (ctime style).

       fsort	      (boolean, default true)
	      When  set,  folders  are	sorted alphabetically according to the
	      subject (and age).  Otherwise, the articles in a folder will  be
	      presented in the sequence in which they were saved.

       guard-double-slash  (boolean, default false)
	      Normally,	 when  entering a file name, entering two slashes `//'
	      in a row (or following a slash by a plus `/+') will cause nn  to
	      erase  the entire line and replace it with the `/' (or `+').  On
	      some systems, two slashes are used in network file names, and on
	      those  systems guard-double-slash can be set; that will cause nn
	      to require three slashes in a row to clear the input.

       header-lines list   (string, no default)
	      When set, it determines the list of header fields that are shown
	      when  an	article	 is read instead of the normal one line header
	      showing the author and subject.  See the full description in the
	      section on Customized Article Headers below.

       help-key key   (key, default ?)
	      The  key	which  ends the current completion and gives a list of
	      possible completions for the next component when nn is prompting
	      for a string, e.g. a file name.

       ignore-re      (boolean, default false)
	      If  set, articles with subjects already seen in a previous invo‐
	      cation of nn or another newsreader - and not auto-selected - are
	      automatically killed.  A great way to read even less news!

       ignore-xon-xoff		(boolean, default false)
	      Normally,	 nn will ignore ^S and ^Q in the input from the termi‐
	      nal (if they are not handled in the tty driver).	 Setting  this
	      variable will treat these characters as normal input.

       include-art-id	   (boolean, default false)
	      The  first  line	in  a response with included material normally
	      reads "...somebody... writes:" without a reference to  the  spe‐
	      cific  article from which the quotation was taken (this is found
	      in the References: line).	 When this variable is set,  the  line
	      will  also include the article id of the referenced article: "In
	      ...article... ... writes:".

       include-full-header (boolean, default false)
	      When set, the mail (M) command  will  always  include  the  full
	      header  of  the  original	 article.   If	it is not set, it only
	      includes the header when the article is forwarded without	 being
	      edited.

       include-mark-blank-lines (boolean, default false)
	      When set, the included-mark is placed on blank lines in included
	      articles.	 Otherwise, blank lines are left  blank	 (to  make  it
	      easy  to delete whole paragraphs with `d}' in vi and `C-@ M-] C-
	      W' in emacs).

       included-mark string	(string, default ">")
	      This string is prefixed to all lines  in	the  original  article
	      that  are included in a reply or a follow-up.  (Now you have the
	      possibility to change it, but please don't.  Lines with  a  mix‐
	      ture of prefixes like
		 : orig-> <> } ] #- etc.
	      are  very	 difficult  to comprehend.  Let's all use the standard
	      folks!  (And hack inews if it is the 50% rule that bothers you.)

       inews shell-command (string, default "INEWS_PATH -h")
	      The program which is invoked by nn to deliver an article to  the
	      news  transport.	 The  program will be given a complete article
	      including a header containing the newsgroups to which the	 arti‐
	      cle is to be posted.  See also inews-pipe-input.	It is not used
	      when cancelling an article!

       inews-pipe-input		(boolean, default true)
	      When set, the article to be posted will be piped into the	 inews
	      program.	 Otherwise,  the  file	containing the article will be
	      given as the first (and only) argument to the inews command.

       initial-newsrc-file file (string, default '.defaultnewsrc')
	      Defines the name of a file which is used as the initial  .newsrc
	      file for new users.  The name may be a full path name, or as the
	      default a file name which will be looked	for  in	 a  number  of
	      places:  in  the	standard  news	lib directory (where it can be
	      shared with other news readers), in nn's lib directory,  and  in
	      the  database  directory.	  Groups  which are not present in the
	      initial .newsrc file will be automatically unsubscribed provided
	      new-group-action	is set to a value allowing unsubscribed groups
	      to be omitted from .newsrc.

       keep-backup-folder  (boolean, default false)
	      When set, the backup  folder  (see  backup-folder-path)  created
	      when  removing  deleted  articles	 from a folder is not removed.
	      Notice that a backup folder is not created if all	 articles  are
	      removed from a folder!

       keep-unsubscribed	(boolean, default true)
	      When  set, unsubscribed groups are kept in .newsrc.  If not set,
	      nn will automatically remove all unsubscribed  from  .newsrc  if
	      tidy-newsrc is set.  See also unsubscribe-mark-read.

       kill	 (boolean, default true)
	      If  set,	nn  performs automatic kill and selection based on the
	      kill file.

       kill-debug	   (boolean, default false)
	      When set, nn  will  display  a  trace  of	 the  auto-kill/select
	      process  on entry to a group.  It is automatically turned off if
	      `q' is entered as the answer to a "hit any  key"	prompt	during
	      the debug output.

       kill-key key   (key, default tty kill key)
	      The  key which deletes the current line when nn is prompting for
	      a string, e.g. a file name.

       kill-reference-count N	(integer, default 0)
	      When this variable is non-zero, all articles  which  have	 N  or
	      more  references	on  the References: line (corresponding to the
	      number of >>'s on the menu line) will be auto-killed if they are
	      not  auto-selected (or preserved) via an entry in the kill file.
	      It should probably not be used globally for all groups, but  can
	      be set on a per-group via the entry macros.

       layout number  (integer, default 1)
	      Set  the	menu  layout.  The argument must be a number between 0
	      and 4.

       limit max-articles  (integer, default infinite)
	      Limit the maximum number of articles presented in each group  to
	      max-articles.   The default is to present all unread articles no
	      matter how many there are.  Setting this variable, only the most
	      recent  max-articles  articles  will  be	presented, but all the
	      articles will still be marked as read.  This is  useful  to  get
	      up-to-date  quickly  if  you  have  not  read  news for a longer
	      period.

       lines lin (integer, default screen height)
	      This variable contains the screen height i.e. number of lines.

       long-menu      (boolean, default false)
	      If set nn will not put an empty line after the header  line  and
	      an  empty	 line before the prompt line; this gives you two extra
	      menu lines.

       macro-debug    (boolean, default false)
	      If set nn will trace the execution of all macros.	 Prior to  the
	      execution	 of each command or operation in a macro, it will show
	      the name of the command or the input string or key stroke at the
	      bottom of the screen.

       mail file (string, default not set)
	      file  must  be  a full path name of a file.  If defined, nn will
	      check for arrival of new mail every minute or so by  looking  at
	      the specified file.

       mail-alias-expander program   (string, default not set)
	      When  set, aliases used in mail responses may be expanded by the
	      specified program.  The program  will  be	 given	the  completed
	      response	in a file as its only argument, and the aliases should
	      be expanded directly in this file (of course the program may use
	      temporary	 files	and  other means to expand the aliases as long
	      the the result is stored in the provided file).
	      Notice: currently there are no alias  expanders  delivered  with
	      nn.
	      Warning:	Errors	in  the	 expansion  process  may  lead	to the
	      response not being sent.

       mail-format    (boolean, default false)
	      When set, nn will save articles in a format that	is  compatible
	      with  normal mail folders.  Unless folder-format-check is false,
	      it is only used to specify the format used when new folders  are
	      created.	This variable is ignored if mmdf-format is set.

       mail-header headers (string, default not set)
	      The  headers  string  specifies  one  or more extra header lines
	      (separated by semi-colons `;') which are added to the header  of
	      mail  sent from nn using the reply and mail commands.  For exam‐
	      ple:
		   set mail-header Reply-To: storm@texas.dk;Organization: TI - DK
	      To include a semicolon `;' in a header, precede it  by  a	 back‐
	      slash  (which  must  be  doubled	because of the conventions for
	      entering strings).

       mail-record file	   (string, default not set)
	      file must be a full path	name  of  a  file.   If	 defined,  all
	      replies  and mail will be saved in this file in standard mailbox
	      format, i.e. you can use you favourite mailer (and nn)  to  look
	      at the file.

       mail-script file	   (string, default not set)
	      When set, nn will use the specified file instead of the standard
	      aux script when executing the reply and mail commands.

       mailer shell-command	(string, default REC_MAIL)
	      The program which is invoked by nn to deliver a message  to  the
	      mail  transport.	The program will be given a complete mail mes‐
	      sage including a header containing the recipient's address.  See
	      also mailer-pipe-input.

       mailer-pipe-input	(boolean, default true)
	      When  set,  the message to be sent will be piped into the mailer
	      program.	Otherwise, the file containing	the  message  will  be
	      given as the first (and only) argument to the mailer command.

       marked-by-next-group N	(integer, default 0)
	      Specifies	 the  amount of (unmarked) articles on the menu marked
	      seen by the N  {next-group}  command  in	selection  mode.   See
	      marked-by-read-skip for possible values of N.

       marked-by-read-return N	(integer, default 0)
	      Specifies	 the  amount of (unmarked) articles on the menu marked
	      seen by the Z {read-return}  command  in	selection  mode.   See
	      marked-by-read-skip for possible values of N.

       marked-by-read-skip N	(integer, default 4)
	      Specifies	 the  amount of (unmarked) articles on the menu marked
	      seen by the X {read-skip} command in selection mode.   The  fol‐
	      lowing values of N are recognized:
		   0:  No articles are marked seen
		   1:  Current page is marked seen
		   2:  Previous pages are marked seen
		   3:  Previous and current pages are marked seen
		   4:  All pages are marked seen

       mark-overlap   (boolean, default false)
	      When  set, nn will draw a line (using the underline capabilities
	      of the terminal if possible) to indicate the end of the  overlap
	      (see the overlap variable).

       mark-overlap-shading	(boolean, default false)
	      When set, nn will shade overlapping lines (see the overlap vari‐
	      able) using the attributes defined by the shading-on  and	 shad‐
	      ing-off variables (of if not set, with the underline attribute).
	      This is typically used to give  overlapping  lines  a  different
	      colour on terminals which have this capability.

       menu-spacing mode   (integer, default 0)
	      When  mode  is a non-zero number as described below, nn will add
	      blank lines between the lines on the menu to increase  readabil‐
	      ity  at the cost of presenting fewer articles on each page.  The
	      following values of mode are recognized:
	      0: Don't add blank lines between menu lines.
	      1: Add a blank line between articles with different subjects.
	      2: Add a blank line between all articles.

       merge-report-rate rate	(integer, default 1)
	      When nn is invoked with the -m option (directly or via  nngrap),
	      a	 status report of the merging process is displayed and updated
	      on the screen every rate seconds.	 The report contains the  time
	      used  so	far and an estimate of the time needed to complete the
	      merge.

       message-history N   (integer, default 15)
	      Specifies the maximum number, N, of older messages which can  be
	      recalled with the ^P {message} command.

       min-window size	   (integer, default 7)
	      When the window variable is not set, nn will clear the screen to
	      preview an article if there are less than size unused  lines  at
	      the bottom of the menu screen.

       mmdf-format    (boolean, default false)
	      When  set, nn will save articles in MMDF format.	Unless folder-
	      format-check is false, it is only used  to  specify  the	format
	      used when new folders are created.

       monitor	      (boolean, default false)
	      When  set,  nn will show all characters in the received messages
	      using a "cat -v" like format.   Otherwise,  only	the  printable
	      characters are shown (default).

       motd	 (boolean, default true)
	      When  set, nn will display the message of the day on start-up if
	      it has changed since it was last shown.  The  message  is	 taken
	      from the file "motd" in the lib directory.  It can also be shown
	      (again) using the :motd command.

       multi-key-guard-time timeout  (integer, default 2)
	      When reading a multi-key sequence from  the  keyboard,  nn  will
	      expect  the  characters  constituting  the  multi-key  to arrive
	      "quickly" after each other.  When a partial  multi-key  sequence
	      is  read, nn will wait (at least) timeout tenths of a second for
	      each of the following  characters	 to  arrive  to	 complete  the
	      multi-key	 sequence.  If the multi-key sequence is not completed
	      within this period, nn will read the partial multi-key  sequence
	      as individual characters instead.	 This way it is still possible
	      to use for example the ESC key on a  terminal  with  vt100  like
	      arrow  keys.   When nn is used via an rlogin connection, you may
	      have to increase the timeout  to	get  reliable  recognition  of
	      multi-keys.

       new-group-action action	(integer, default 3)
	      This  variable controls how new groups are treated by nn.	 It is
	      an integer variable, and the following values can be used.  Some
	      of  these	 actions  (marked with an *) will only work when keep-
	      unsubscribed is set, since the presence of a group in .newsrc is
	      the only way to recognize it as an old group:
	      0)  Ignore groups which are not in .newsrc.  This will obviously
	      include new groups, and therefore you must explictly add any new
	      groups  that  you	 care  about (by editting the .newsrc file, or
	      using the G menu command and then	 subscribing  to  the  group).
	      When  NNTP is being used, this setting prevents the active.times
	      data from being read from the server; this can be	 helpful  when
	      using  a	slow  link,  since  the	 data can often be hundreds of
	      KBytes long.
	      1*)  Groups not in .newsrc are considered to  be	new,  and  are
	      inserted at the beginning of the .newsrc file.
	      2*)   Groups  not	 in  .newsrc are considered to be new, and are
	      appended to the end of the .newsrc file.
	      3)  New groups are recognized via a time-stamp saved in the file
	      .nn/LAST	and  in	 the database, i.e. it is not dependent on the
	      groups currently in .newsrc.  The new groups  are	 automatically
	      appended	to  .newsrc with subscription.	Old groups not present
	      in .newsrc will be considered to be unsubscribed.
	      4)  As 3, but the user is asked to confirm that  the  new	 group
	      should  be appended to .newsrc.  If rejected, the group will not
	      be appended to .newsrc, and thus be regarded as unsubscribed.
	      5)  As 4, except that the information is stored in a format com‐
	      patible  with  the  rn  news reader (.rnlast).  This needs to be
	      tested!

       new-style-read-prompt	(boolean, default true)
	      When set, the reading mode prompt line includes the  group  name
	      and the number of selected articles in the group.

       news-header headers (string, default not set)
	      The  headers  string  specifies  one  or more extra header lines
	      (separated by semi-colons `;') which are added to the header  of
	      articles posted from nn using the follow and post commands.  See
	      mail-header for an example.

       news-record file	   (string, default not set)
	      Save file for follow-ups and postings.  Same rules and format as
	      the mail-record variable.

       news-script file	   (string, default not set)
	      When set, nn will use the specified file instead of the standard
	      aux script when executing the follow and post commands.

       newsrc file (string, default "~/.newsrc") Specifies the
	      file used by nn to register which groups and articles have  been
	      read.   The default setting corresponds to the .newsrc file used
	      by other news readers.  Notice that nn release 6.4 onwards  does
	      allow individual articles to be marked unread, and some articles
	      marked unread, and thus no longer messes up  .newsrc  for	 other
	      news readers!  Also see nntp-server.

       nn-directory directory	(string, default "~/.nn")
	      It  only	makes  sense to set this variable on the command line,
	      e.g. "nn-directory=$HOME/.nn2" since it is looked at before  the
	      init  file is read.  It must be set to a full pathname.  Usually
	      set when using multiple servers;	see  newsrc  above  and	 nntp-
	      server below.

       nntp-cache-dir directory (string, default "~/.nn")
	      When  NNTP  is  used,  nn needs to store articles temporarily on
	      disk.  This variable specifies which directory nn	 will  use  to
	      hold  these files.  The default value may be changed during con‐
	      figuration.  This variable can only be set in the init file.

       nntp-cache-size size	(integer, default 10, maximum 10)
	      Specifies the number of temporary files in the nntp cache.   The
	      default and maximum values may be changed during configuration.

       nntp-debug     (boolean, default false)
	      When  set,  a  trace of the nntp related traffic is displayed in
	      the message line on the screen.

       nntp-server hostname or filename (string)
	      It only makes sense to set this variable on  the	command	 line,
	      e.g.  "nntp-server=news.some.domain",  since  it	is  looked  at
	      before the init file, If you use multiple servers, you  probably
	      want to set the nn-directory and newsrc variables on the command
	      line to alternate names as well, since some of  the  data	 files
	      are server dependent.

       old [max-articles]  (integer, default not set)
	      When old is set, nn will present (or scan) all (or the last max-
	      articles) unread as well as read articles.  While old is set, nn
	      will never mark any unread articles as read.

       old-packname   (boolean, default false)
	      When  set,  nn  display  names identically to nn-6.6.5 (and ear‐
	      lier).  Only set this if you have a large number of  entries  in
	      your  killfile  that  no	longer	work due to the new behaviour.
	      Note that in the long run, this option will  go  away,  so  it's
	      best to update your killfile rather than set this.

       orig-to-include-mask N	(integer, default 3)
	      When  replying to an article, nn will include some of the header
	      lines which may be used to construct a proper mail  address  for
	      the  poster of the original article.  These addresses are placed
	      on Orig-To: lines in the reply header and will automatically  be
	      removed  before  the  letter  is	sent.  This variable specifies
	      which headers from the article are included; its value N is  the
	      sum of the following values:
		   1: Reply-To:
		   2: From:
		   4: Path:

       overlap lines  (integer, default 2)
	      Specifies	 the  number of overlapping lines from one page to the
	      next when paging through an article in reading mode.   The  last
	      line  from  the previous page will be underlined if the terminal
	      has that capability.

       pager shell-command	(string, default $PAGER)
	      This is the pager used by the :admin command (and nnadmin)  when
	      it executes certain commands, e.g. grepping in the Log file.

       patch-command shell-command   (string, default "patch -p0")
	      This is the command which is invoked by the :patch command.

       post-distribution words	(string, default see below)
	      This  variable  controls	how  the  Distribution: header is con‐
	      structed when posting an original article.  Its value is a  list
	      of words selected from the following list:
	      [ ask ] [ default | distribution ]
	      This is interpreted in two steps:
	      -	 First	the default distribution is determined.	 If default is
	      specified (or distribution is omitted), the  value  of  default-
	      distribution  is	used.	Otherwise,  the specified distribution
	      (any word) is used as the default.
	      - Then if ask is specified, the user will be  asked  to  confirm
	      the default distribution or provide another distribution.
	      The  default value of post-distribution is ask default, i.e. use
	      the default-distribution with confirmation from the user.

       preview-continuation cond     (integer, default 12)
	      This variable determines on what	terms  the  following  article
	      should  be  automatically	 shown when previewing an article, and
	      the next-article command is used, or continue is used at the end
	      of the article.  The following values can be used:
	      0 - never show the next article (return to the menu).
	      1	 -  always  show  the  next  article (use 'q' to return to the
	      menu).
	      2 - show the next article if it has the same subject as the cur‐
	      rent article, else return to the menu.
	      The  value  should  be the sum of two values: one for the action
	      after using continue on the last page of the  article,  and  one
	      for  the	action performed when the next-article command is used
	      multiplied by 10.

       preview-mark-read	(boolean, default true)
	      When set, previewing an article will mark the article as read.

       previous-also-read  (boolean, default true)
	      When set, going back to the previously read group with P {previ‐
	      ous}  will include articles read in the current invocation of nn
	      even if there are still unread articles in the group.

       print-header-lines fields     (string, default "FDGS")
	      Specifies the list of header fields  that	 are  output  when  an
	      article  is printed via the :print command and print-header-type
	      is 1 (short header).  The fields specification is desctribed  in
	      the section on Customized Article Headers below.

       print-header-type N (integer, default 1)
	      Specifies	 what kind of header is printed by the :print command,
	      corresponding to the three save-* commands: 0  prints  only  the
	      article  body (no header), 1 prints a short header, and 2 prints
	      the full article header.

       printer shell-command	(string, default is system dep.)
	      This is the default value for  the  print	 command.   It	should
	      include an option which prevents the spooler from echoing a job-
	      id or similar to the terminal to avoid problems with screen han‐
	      dling (e.g. lp -s on System V).

       query-signature		(boolean, default ...)
	      Will cause nn to require confirmation before appending the .sig‐
	      nature file to out-going	mail  or  news	if  the	 corresponding
	      append-sig-... variable is set.

       quick-count    (boolean, default true)
	      When  set,  calculating  the  total number of unread articles at
	      start-up is done by simple subtracting the first unread  article
	      number from the total number of articles in each group.  This is
	      very fast, and fairly accurate but it may be a  bit  too	large.
	      If  not  set,  each line in .newsrc will be interpreted to count
	      every unread article, thus giving a very accurate number.	  This
	      variable is also used by nncheck.

       quick-save     (boolean, default false)
	      When  set, nn will not prompt for a file name when an article is
	      saved (unless it belongs to a folder).  Instead it uses the save
	      file  specified  for  the	 current group in the init file or the
	      default save file.

       re-layout N	   (integer, default 0)
	      Normally on the menu, nn will prefix the	subject	 a  number  of
	      `>'s  corresponding  to  the  number of references on the Refer‐
	      ences: line.  The re-layout variable may be set to use a differ‐
	      ent prefix on the subjects:
		   0:  One `>' per reference is shown (default).
		   1:  A single `>' is shown if the Subject contains Re:.
		   2:  The number of references is shown as `n>'
		   3:  A single Re: is shown.
		   4:  If any references use layout 0, else layout 1.

       re-layout-read N	   (integer, default -1)
	      When  the	 header-lines variable is not set, or contains the "*"
	      field specifier, a line similar to the menu line will be used as
	      the  header  of  the  article  in	 reading  mode,	 including the
	      sender's name and the article's subject.	When this variable  is
	      negative,	 the  subject  on  this	 header	 line will be prefixed
	      according to the re-layout variable.  Otherwise, it will	define
	      the format of the "Re:" prefix to be used instead of the re-lay‐
	      out used on the menu.

       read-return-next-page	(boolean, default false)
	      When set, the Z {read-return} command will return	 to  the  next
	      menu page rather than the current menu page.

       record file    (string, no default)
	      Setting  this  pseudo variable will set both the mail-record and
	      the news-record variables to the specified pathname.

       repeat	      (boolean, default false)
	      When set, nn will not  eliminate	duplicated  subject  lines  on
	      menus (I cannot imagine why anyone should want that, but....)

       repeat-group-query  (boolean, default false)
	      When  set, invoking nn with the -g option will always repeat the
	      query for a group to enter until you quit explicitly.  (Same  as
	      setting the -r option permanently).

       report-cost	   (boolean, default true)
	      This  variable  is  ignored unless nn is running with accounting
	      enabled (see nnacct).  When set, nn will report the cost of  the
	      current session and the total on exit.

       response-check-pause pause    (integer, default 2)
	      Specifies the number of seconds to wait after posting an article
	      to see whether the action *might* have  failed.	Some  commands
	      run  in  the  background	and may thus not have completed during
	      this period, so even when nn says "Article posted", it may still
	      fail (in which case you are informed via mail).

       response-default-answer action	  (string, default "send")
	      The  default  action  to	be  taken  when	 hitting return to the
	      "response action" prompt	(abort, edit, send, view, write).   If
	      it is unset, no default action is defined.

       retain-seen-status  (boolean, default false)
	      Normally,	 seen  articles	 will just be unread the next time the
	      group is entered (unless they were  marked  read	by  auto-junk-
	      seen).   If retain-seen-status is set, the seen attribute on the
	      articles will survive to the next time  the  group  is  entered.
	      (This  is	 not  recommended  because it may result in very large
	      select files).

       retry-on-error times	(integer, default 0)
	      When set, nn will try the specified number of times to  open  an
	      article  before  reporting  that	the article does not exist any
	      more.  This may be necessary in some network environments.

       save-closed-mode mode	(integer, default 13)
	      When saving an article in selection mode (i.e. by	 selecting  it
	      from the menu), nn will simply save the specified article if the
	      article's subject is open.  When the selected menu  entry	 is  a
	      closed  subject,	the  save-closed-mode  variable determines how
	      many articles among the closed articles should be saved:
	      0: save root article (the one on the menu) only
	      1: save selected articles within subject
	      2: save unread (excl selected) articles within subject
	      3: save selected+unread articles within subject
	      4: save all articles within subject
	      If `10' is added to the above  values,  nn  will	not  save  the
	      selected subject immediately; instead it will ask which articles
	      to save using the above value as the default answer.

       save-counter format (string, default "%d")
	      This is the printf-format which nn uses to  create  substitution
	      string  for the trailing * in save file names.  You can set this
	      to more complex formats if you like, but be sure	that  it  will
	      produce different strings for different numbers.	An alternative
	      format which seems to be popular is ".%02d" .

       save-counter-offset N	(integer, default 0)
	      Normally, file names created with the part.* form	 will  substi‐
	      tute  the	 * with successive numbers starting from one.  Setting
	      this variable will cause these numbers to start from N+1.

       save-header-lines fields (string, default "FDNS")
	      Specifies the list of header fields that are saved when an arti‐
	      cle  is saved via the O {save-short} command.  The fields speci‐
	      fication is desctribed in	 the  section  on  Customized  Article
	      Headers below.

       save-report    (boolean, default true)
	      When  set,  a  message  reporting the number of lines written is
	      shown after saving an article.  Since messages are shown	for  a
	      few  seconds,  this  may	slow  down the saving of many articles
	      (e.g. using the S* command).

       scroll-clear-page	(boolean, default true)
	      Determines whether nn clears the screen before showing each  new
	      page of an article.

       scroll-last-lines N	(integer, default 0)
	      Normally,	 nn will show each new page of an article from the top
	      of the screen (with proper marking of the overlap).   When  this
	      variable	is set to a negative value, nn will scroll the text of
	      the new pages from the bottom of the screen instead.  If	it  is
	      set  to  a  positive  value,  nn will show pages from the top as
	      usual, but switch to scrolling when  there  are  less  than  the
	      specified number of lines left in the article.

       select-leave-next	(boolean, default false)
	      When  set, you will be asked whether to select articles with the
	      leave-next attribute on entry to a group with  left  over	 arti‐
	      cles.

       select-on-sender		(boolean, default false)
	      Specifies whether the find (=) command in article selection mode
	      will match on the subject or the sender.

       shading-on code...  (control string, default not set)
	      Specifies the escape code to be sent to the  terminal  to	 cause
	      "shading"	 of  the following output to the screen.  This is used
	      if the mark-overlap-shading is set, and by the `+' attribute  in
	      the header-lines variable.

       shading-off code... (control string, default not set)
	      Specifies the escape code to be sent to the terminal to turn off
	      the shading defined by shading-on.  Shading  will	 typically  be
	      done by changing the foreground colour to change, e.g.
		   on term ti924-colour
			set shading-on	^[ [ 3 2 m
			set shading-off ^[ [ 3 7 m
			set mark-overlap-shading
			unset mark-overlap
		   end

       shell program  (string, default $SHELL)
	      The shell program used to execute shell escapes.

       shell-restrictions  (boolean, default false)
	      When  set	 (in  the  init	 file),	 nn will not allow the user to
	      invoke the shell in any way, including saving on pipes.  It also
	      prevents	the  user  from	 changing certain variables containing
	      commands.

       show-purpose-mode N	(integer, default 1)
	      Normally, nn will show the purpose of a group the first time  it
	      is  read,	 provided  a purpose is known.	Setting this variable,
	      this behaviour can be changed as follows:
		   0:  Never show the purpose.
		   1:  Show the purpose for new groups only.
		   2:  Show the purpose for all groups.
	      When NNTP is being used, a setting of 0 prevents the  newsgroups
	      purpose  data from being read from the server; this can be help‐
	      ful when using a slow link, since the data can often be hundreds
	      of KBytes long.

       sign-type      (string, default pgp)
	      What  program nn will use to sign messages via the Sign command.
	      Only pgp and gpg are currently valid.

       silent	      (boolean, default false)
	      When set, nn won't print the logo or "No News" if there  are  no
	      unread  articles.	  Only	useful to set in the init file or with
	      the -Q option.

       slow-mode      (boolean, default false)
	      When set, nn will cut down on the screen output to  give	better
	      response time at low speed.  Normally, nn will use standout mode
	      (if possible) to mark selected articles on the  menu,  but  when
	      slow-mode	 is  set, nn will just put an asterisk `*' next to the
	      article identifier on selected articles.	Also when slow-mode is
	      set  nn  will avoid redrawing the screen in the following cases:
	      After a goto-group command an empty menu is shown (hit space  to
	      make  it	appear),  and after responding to an article, only the
	      prompt line is shown (use ^L to redraw the  screen).   To	 avoid
	      redrawing	 the  screen after an extended command, set the delay-
	      redraw variable as well.

       slow-speed speed	   (integer, default 1200)
	      If the terminal is running at this baud rate or  lower,  the  on
	      slow (see the section on init files) condition will be true, and
	      the on fast will be false (and vice-versa).

       sort	 (boolean, default true)
	      When set, nn will sort articles according to the	current	 sort-
	      mode on entry to a group.	 Otherwise, articles will be presented
	      in order of arrival.  If not set on entry to a menu  for	merged
	      groups,  the  articles  from each group will be kept together on
	      the menu.	 If sort is unset while merged groups are presented on
	      the menu, the articles will be reordered by local article number
	      (which may not keep articles from the same group together).

       sort-mode mode (integer, default 1)
	      The default sort algorithm used to sort the articles on entry to
	      a news group.  It is a numeric value corresponding to one of the
	      sorting methods described in connection with the :sort command:
		   0 - arrival (ordered by article number)
		   1 - subject (subjects ordered after age of first article)
		   2 - lexical (subjects in lexicographical order)
		   3 - age (articles ordered after posting date only)
		   4 - sender (articles ordered after sender's name)

       spell-checker shell-command   (string, default not set)
	      When set, responses can be checked for spelling mistakes via the
	      (i)spell	action.	  The command to perform the spelling is given
	      the file containing the full article  including  header  as  its
	      only  argument.  If the spell checker can fix spelling mistakes,
	      it must apply the changes directly to this file.

       split	      (boolean, default true)
	      When set, digests will automatically and silently be split  into
	      sub-articles  which  are	then  handled  transparently as normal
	      articles.	 Otherwise,  digests  are  presented  as  one  article
	      (which you can split on demand with the G command).

       stop lines     (integer, default not set)
	      When stop is set, nn will only show the first lines lines of the
	      of each article before prompting you to continue.	 This is  use‐
	      ful  on  slow  terminals	and  modem lines to be able to see the
	      first few lines of longer articles (and skipping the  rest  with
	      the n command).

       subject-match-limit length    (integer, default 256)
	      Subjects	will  be  considered  identical	 if their first length
	      characters match.	 Setting this uncritically to a low value  may
	      cause unexpected results!

       subject-match-offset offset   (integer, default 0)
	      When  set	 to  a	positive  number,  that many characters at the
	      beginning of the subject will be ignored when comparing subjects
	      for ordering and equality purposes.

       subject-match-parts (boolean, default false)
	      When  set,  two  subjects	 will  be considered equal if they are
	      identical up to the first (differing) digit.  Together with  the
	      subject-match-offset variable, this can be used in source groups
	      where the subject often has a format like:
		   vXXXXXX: Name of the package (Part 01/04)
	      Setting subject-match-offset to  8  and  subject-match-parts  to
	      true  will make nn consider all four parts of the package having
	      the same subject (and thus be selectable with `*').
	      Notice that changing the	subject-match-...  variables  manually
	      will  not	 have  an  immediate  effect.  To reorder the menu, an
	      explicit :sort command must be performed.	 These	variables  are
	      mainly  intended	to be set using the :local command in on entry
	      macros for source and binary groups (entry macros are  evaluated
	      before the menu is collected and sorted).

       subject-match-minimum characters	  (integer, default 4)
	      When  set	 to  a	positive  number,  that many characters at the
	      beginning of the subject must match  before  the	subject-match-
	      parts  option comes into affect.	This is important, because the
	      part matching causes the rest of the line to  be	ignored	 after
	      the  first digit pair is discovered.  This begins after any sub‐
	      ject-match-offset has been applied.

       suggest-default-save	(boolean, default true)
	      When set, nn will present the default-save-file  when  prompting
	      for a save file name in a group without a specific save file, or
	      folder-save-file when saving from a folder.  When	 not  set,  no
	      file name is presented, and to use the default save file, a sin‐
	      gle + must be specified.

       tidy-newsrc	   (boolean, default false)
	      When set, nn will automatically remove lines from .newsrc	 which
	      represent	 groups	 not  found in the active file or unsubscribed
	      groups if keep-unsubscribed is not set.

       time	 (boolean, default true)
	      When set, nn will show the current  time	in  the	 prompt	 line.
	      This is useful on systems without a sysline (1) utility.

       trace-folder-packing	(boolean, default true)
	      When  set,  a  trace  of	the  retained  and deleted messages is
	      printed when a folder is rewritten.

       trusted-escape-codes codes    (string, default none)
	      When set to a list of one or more characters, nn will trust  and
	      output  escape characters in an article if it is followed by one
	      of the characters in the list.  For example,  to	switch	to  or
	      from kanji mode, control codes like "esc $" and "esc ( J" may be
	      present in the text.  To allow these codes,  use	the  following
	      command:
		   set trusted-escape-codes ($
	      You  can	also set it to all to pass all espace codes through to
	      the screen.  Notice that nn  thinks  all	characters  (including
	      esc) output to the screen as occupy one column.

       unshar-command shell-command  (string, default "/bin/sh")
	      This is the command which is invoked by the unshar command.

       unshar-header-file file	(string, default "Unshar.Headers")
	      The  name	 of  the  file in which the header and initial text of
	      articles unpacked with the :unshar command is saved.  Unless the
	      file  name  starts  with	a `/', the file will be created in the
	      same directory as the unpacked files.  The  information  is  not
	      saved   if   this	  variable   is	  not	set.   Setting	it  to
	      "Unshar.Result" will cause the headers and the results from  the
	      unpacking process to be merged in a meaningful way (unless mmdf-
	      format is set).

       unsubscribe-mark-read	(boolean, default true)
	      When set, unsubscribing to a group will automatically  mark  all
	      current  articles	 read; this is recommended to keep the size of
	      .newsrc down.  Otherwise, unread	articles  in  the  unsubscribe
	      groups are kept in .newsrc.  If keep-unsubscribed is false, this
	      variable has no effect.

       update-frequency		(integer, default 1)
	      Specifies how many changes need to be done  to  the  .newsrc  or
	      select  files before they are written back to disk.  The default
	      setting causes .newsrc to be updated every time a group has been
	      read.

       use-editor-line		(boolean, default true)
	      Most editors accept arguments of the form:
		   editor [-arguments] +n filename
	      where editor is the name of the editor, and n is the line number
	      to put the cursor upon entering the file.	 If use-editor-line is
	      false, it will not add the "+n" to the arguments.

       use-path-in-from		(boolean, default false)
	      When  mail-format	 is  set, saved articles will be preceded by a
	      specially formatted "From " line:
		   From origin date
	      Normally, the origin will be the name of the  news  group	 where
	      the  article  appeared, but if use-path-in-from is set, the con‐
	      tents of the "Path:" header will be used as the origin.

       use-selections	   (boolean, default true)
	      When set, nn uses the selections and  other  article  attributes
	      saved  last time nn was used.  If not set, nn ignores the select
	      file.

       visible-bell   (boolean, default true)
	      When set, nn will flash the screen instead of "ringing the bell"
	      if  the  visible bell (flash) capability is defined in the term‐
	      cap/terminfo database.

       window size    (integer, default not set)
	      When set, nn will reserve the last size lines of the menu screen
	      for  a  preview window.  If not set, nn will clear the screen to
	      preview an article if there are less than	 min-window  lines  at
	      the bottom of the screen.	 As a side effect, it can also be used
	      to reduce the size of the menus, which may  be  useful  on  slow
	      terminals.

       word-key key   (key, default ^W)
	      The key which erases the last input component or word when nn is
	      prompting for a string, e.g. the last name in a path name.

       wrap-header-margin size	(integer, default 6)
	      When set (non-negative), the customized header fields  specified
	      in header-lines will be split across several lines if they don't
	      fit on one line.	When size is greater than zero, lines will  be
	      split  at	 the first space occurring in the last size columns of
	      the line.	 If not set (or negative), long header lines  will  be
	      truncated if they don't fit on a single line.

CUSTOMIZED ARTICLE HEADER PRESENTATION
       Normally,  nn  will just print a (high-lighted) single line header con‐
       taining the author, subject, and date (optional) of the article when it
       is read.

       By setting the header-lines variable as described below, it is possible
       to get a more informative multi line header with optional high-lighting
       and underlining.

       The  header-lines variable is set to a list of header line identifiers,
       and the customized headers will then contain exactly these header lines
       in the specified order.

       The same specifications are also used by the :print and save-short com‐
       mands via the print-header-lines and save-header-lines variables.

       The following header line identifiers are  recognized  in  the  header-
       lines, print-header-lines, and save-header-lines variables:

	       A    Approved:
	       a    Spool-File:(path of spool file containing the article)
	       B    Distribution:
	       C    Control:
	       D    Date:
	       d    Date-Received:
	       F    From:
	       f    Sender:
	       G    Newsgroup:(current group)
	       g    Newsgroup:(current group if cross-posted or merged)
	       I    Message-Id:
	       K    Keywords:
	       L    Lines:
	       N    Newsgroups:
	       n    Newsgroups:	  (but only if cross posted)
	       O    Organization:
	       P    Path:
	       R    Reply-To:
	       S    Subject:
	       v    Save-File:(the default save file for this article)
	       W    Followup-To:
	       X    References:
	       x    Back-References:
	       Y    Summary:

       The  'G'	 and 'g' fields will include the local article number if it is
       known, e.g.
	    Newsgroup: news.software.nn/754

       The following special symbols are recognized in the header-lines	 vari‐
       able (and ignored otherwise):

       Preceding  the  identifier  with an equal sign "=" or an underscore "_"
       will cause the header field contents to be high-lighted or underlined.

       A plus sign "+" will use the shading attribute  defined	by  shading-on
       and  shading-off	 to  high-light	 the  field  contents.	 If no shading
       attribute is defined it will underline the field instead.

       Including an asterisk "*" in the list will  produce  the	 standard  one
       line header at that point.

       Example:	  The following setting of the header-lines variable will show
       the author (underlined), organization, posting date, and subject (high-
       lighted) when articles are read:
	    set header-lines _FOD=S

COMMAND LINE OPTIONS
       Some of the command line options have already been described, but below
       we provide a complete list of the effect of each option by showing  the
       equivalent set, unset, or toggle command.

       Besides	the options described below, you can set any of nn's variables
       directly on the command line via an argument of the following format:
	    variable=value
       To set or unset a boolean variable, the value can be specified as on or
       off (t and f will also work).

       Notice  that  the  init	files  are  read before the options are parsed
       (unless you use the -I  option).	  Therefore,  the  options  which  are
       related to boolean variables set in the init file will toggle the value
       set there, rather than the default value.  Consequently, the meaning of
       the options are also user-defined.

       The  explanations below describe the effect related to the default set‐
       ting of the variables, with the `reverse' effect in square brackets.

       -aN  {set limit N}
	      Limit the maximum number of articles presented in each group  to
	      N.   This	 is  useful  to get up-to-date quickly if you have not
	      read news for a longer period.

       -a0    Mark all unread articles as read.	 See the full  explanation  at
	      the beginning of this manual.

       -B   {toggle backup}
	      Do not [do] backup the rc file.

       -d   {toggle split}
	      Do not [do] split digests into separate articles.

       -f   {toggle fsort}
	      Do  not  [do] sort folders according to the subject (present the
	      articles in a folder in the sequence in which they were saved).

       -g     Prompt for the name of a news group or folder to be entered

       -i   {toggle case-fold-search}
	      Normally searches with -n and -s are  case  independent.	 Using
	      this option, the case becomes significant.

       -I     Do not read the init file.  This must be the first option!!  The
	      global setup file is still read.

       -Ifile-list
	      Specifies an alternate list of init files to be  loaded  instead
	      of  the  standard	 global and private init files.	 The list is a
	      comma-separated list of file names.  Names which does  not  con‐
	      tain a `/' are looked for in the ~/.nn directory.	 An empty ele‐
	      ment in the list is interpreted as the global  init  file.   The
	      list  of	init files must not be separated from the -I option by
	      blanks, and it must be the first option.	Example:  The  default
	      behaviour	 corresponds  to using -I,init (first the global file,
	      then the file ~/.nn/init).  The global setup file is still  read
	      as the first init file independently of the -I option used.

       -k   {toggle kill}
	      Do not [do] perform automatic kill and selection of articles.

       -lN  {set stop N}
	      Stop  after printing the first N lines of each article.  This is
	      useful on slow terminals.

       -L[f]	 {set layout f}
	      Select alternative menu layout f (0 to 4).   If  f  is  omitted,
	      menu layout 3 is selected.

       -m   {no corresponding variable}
	      Merge all articles into one `meta group' instead of showing them
	      one group at a time.  When -m  is	 used,	no  articles  will  be
	      marked as read.

       -nWORD Collect  only  articles  which  contain  the  string WORD in the
	      sender's name (case is ignored).	If WORD starts	with  a	 slash
	      `/',  the	 rest  of the argument is used as a regular expression
	      instead of a fixed string.

       -N   {no corresponding variable}
	      Disable updating of the rc file.	This  includes	not  recording
	      that  groups have been read or unsubscribed to (although nn will
	      think so until you quit).

       -q   {toggle sort}
	      Do not [do] sort the articles (q means quick, but it  isn't  any
	      quicker in practice!)

       -Q   {toggle silent}
	      Quiet mode - don't [do] print the logo or "No News" messages.

       -r   {toggle repeat-group-query}
	      Make -g repeat query for a group to enter.

       -sWORD Collect  only  articles  which  contain the string WORD in their
	      subject (case is ignored).  If WORD starts with a slash `/', the
	      rest  of the argument is used as a regular expression instead of
	      a fixed string.

       -S   {toggle repeat}
	      Do not [do] eliminate duplicated subject lines on menus.

       -T   {toggle time}
	      Do not [do] show the current time in the prompt line.

       -w[N]	 {set window N}
	      Reserve N lines of the menu screen for a preview window.	 If  N
	      is omitted, the preview window is set to 5 lines.

       -W   {toggle confirm-messages}
	      [Don't] Wait for confirmation on all messages.

       -x[N]	 {set old N}
	      Present  (or  scan)  all	(or the last N) unread as well as read
	      articles.	 This will never mark unread articles as read.

       -X   {no corresponding variable}
	      Read/scan unsubscribed groups also.  Most	 useful	 when  looking
	      for a specific subject in all groups, e.g.
		 nn -mxX -sSubject all

MACRO DEFINITIONS
       Practically  any combination of commands and key strokes can be defined
       as a macro which can be bound to a single key in	 menu  and/or  reading
       mode.

       The  macro  definition  must  specify  a	 sequence  of commands and key
       strokes as if they were typed directly from the keyboard.  For example,
       a  string specifying a file name must follow a save command.  This man‐
       ual does not give a complete specification of all the input required by
       the  various commands; it is recommended to execute the desired command
       sequence from the keyboard prior to defining the macro to get the exact
       requirements of each command.

       Although	 it is possible to define temporary macros interactively using
       the :define command, macro definitions are normally placed in the  init
       file.  Macros are numbered from 0 to 100, i.e. it is possible to define
       a total of 101 different macros (implicit macros defined with  the  map
       command uses internal numbers from 101 to 200).

       To  define macro number M, the following construction is used (the line
       breaks are mandatory):
	    define M
		 body
	    end

       The body consists of a sequence of  tokens  separated  by  white	 space
       (blanks	or  newlines).	However, certain tokens continue to the end of
       the current line.

       The following tokens may occur in the macro body:

       Comments
	      Empty lines and text following a # character (preceded by	 white
	      space) is ignored.

       Command Names
	      Any  command  name  listed  in  the  key	mapping section can be
	      included in a macro causing that command to be invoked when  the
	      macro is executed.

       Extended Commands
	      All the extended commands which can be executed through the com‐
	      mand command (normally bound to the : key) can also be  executed
	      in  a  macro.   An  extended command starts with a colon (:) and
	      continues to the end of the current line.	 Example:
		   :show groups total

       Key Strokes
	      A key stroke (which is normally mapped into a command  depending
	      on the current mode) is specified as a key name enclosed in sin‐
	      gle quotes.  Examples (A-key, left arrow key, RETURN key):
		   'A'	'left'	'^M'

       Shell Commands
	      External commands can be invoked as part of a  macro  execution.
	      There  are  two  forms  of  shell	 command invocations available
	      depending on whether a command may  produce  output  or  require
	      user  input,  or	it  is guaranteed to complete without input or
	      output to the terminal.  The difference is that  in  the	latter
	      case,  nn	 does  not  prepare the terminal to be used by another
	      program.	When the command completes, the screen is not  redrawn
	      automatically;  you  should  use	the redraw command to do that.
	      The tho forms are:
		   :!echo this command uses the terminal
		   :!!echo this command does not > /tmp/file

       Strings
	      Input to commands prompting for a string, e.g. a file name,  can
	      be  specified  in	 a  macro  as a double quoted string.  Example
	      (save without prompting for a file name):
		   save-short "+$G"

       Conditionals
	      Conditionals may occur anywhere in a  macro;  a  conditional  is
	      evaluated	 when  the  macro is executed, and if the condition is
	      false the rest of the current line is  ignored.	The  following
	      conditionals are available:
		   ?menu     True in menu mode
		   ?show     True in reading mode
		   ?folder   True when looking at a folder
		   ?group    True when looking at a news group
		   ?yes Query user, true if answer is yes
		   ?no	Query user, true if answer is no
	      Example (stop macro execution if user rejects to continue):
		   prompt "continue? " ?no break
	      In  addition  to	these conditionals, it is possible to test the
	      current value of boolean and integer variables using the follow‐
	      ing form:
		   ?variable=value
	      This  conditional will be true (1) if the variable is an integer
	      variable whose current value is the one specified, or (2) if the
	      variable is a boolean variable which is either on or off.	 Exam‐
	      ples:
		   ?layout=3 :set layout 1
		   ?monitor=on	break
		   ?sort=off :sort age

       break  Terminate macro  execution  completely.	This  includes	nested
	      macros.  Example (stop if looking at a folder):
		   ?folder break

       return Terminate	 execution  of current macro.  If the current macro is
	      called from another macro, execution  of	that  macro  continues
	      immediately.

       input  Query  the user for a key stroke or a string, for example a file
	      name.  Example (prompt the user for a file  name	in  the	 usual
	      way):
		   save-short input

       yes    Confirm  unconditionally if a command requires confirmation.  It
	      is ignored if the command does not require confirmation.	 Exam‐
	      ple (confirm creation of new files):
		   save-short "+$G" yes

       no     Terminate	 execution of current macro if a command requires con‐
	      firmation; otherwise ignore it.  If neither yes nor no is speci‐
	      fied  when a command requires confirmation, the user must answer
	      the question as usual - if the user confirms the	action	execu‐
	      tion  continues normally; otherwise the execution of the current
	      macro is terminated.  Example (do not create new files):
		   save-short "+$L/misc" no

       prompt string
	      Print the string in the prompt line (highlighted).   The	string
	      must be enclosed in double quotes.  Example:
		   prompt "Enter recipient name"
	      When the macro terminates, the original prompt shown on entry to
	      the macro will automatically be redrawn.	If this is not	desir‐
	      able  (e.g.   if the macro goes from selection to reading mode),
	      the redrawing of the prompt can be disabled by  using  a	prompt
	      command with an empty string ("").  Example:
		   prompt "Enter reading mode?" # old prompt is saved
		   ?no return # and old prompt is restored
		   read-skip	   # changes the prompt
		   prompt "" # so forget old prompt

       echo string
	      Display the string in the prompt line for a short period.	 Exam‐
	      ple:
		   ?show echo "Cannot be used in reading mode" break

       puts string-to-end-of-line
	      The rest of the line is output directly to the terminal  without
	      interpretation.

       macro M
	      Invoke  macro number M.  The maximum macro nesting level is five
	      (also catches macro loops).

       I use the following macro to quickly save all the selected files	 in  a
       file  whose  name  is  entered as usual.	 It also works in reading mode
       (saving just the current article).
	    define 1
		 :unset save-report
		 save-short input yes
		 ?menu '+'
		 :set save-report
	    end

KEY MAPPINGS
       The descriptions of the keys  and  commands  provided  in  this	manual
       reflects	 the  default  key  mappings  in  nn.  However, you can easily
       change these mappings to match your personal demands, and  it  is  also
       possible	 to  remap  keys  depending on the terminal in use.  Permanent
       remapping of keys must be done through the init file,  while  temporary
       changes	(for the duration of the current invocation of nn) can be made
       with the :map command.

       The binding and mapping of keys are controlled by four tables:

       The multikey definition table
	      This table is used for mapping multicharacter key sequences into
	      single  characters.   By default the table contains the mappings
	      for the four cursor keys, and there is room for 10  user-defined
	      multikeys.   The	fourteen multikeys are named: up, down, right,
	      left (the four arrow keys), and #0  through  #9  for  the	 user-
	      defined keys.
	      Multikey #i (where i is a digit or an arrow key name) is defined
	      using the following command:
		   map #i key-sequence
	      where the sequence is a  list  of	 7-bit	character  names  (see
	      below)  separated by spaces.  For example, if the HOME key sends
	      the sequence ESC [ H, you can define multikey #0 to be the  home
	      key using the command:
		   map #0 ^[ [ H

       The input key mapping table
	      All  characters  that  are read from the keyboard will be mapped
	      through the input mapping table.	Consequently, you can globally
	      remap  one  key  to produce any other key value.	By default all
	      keys are mapped into themselves.
	      An entry in the input key mapping table to  map  input-key  into
	      new-key is made with the command
		   map key input-key new-key
	      For  example, to make your ESC key function as interrupt you can
	      use the command
		   map key ^[ ^G

       The selection mode key binding table
	      This table defines for each key which command should be  invoked
	      when  that key is pressed in selection mode, i.e. when the arti‐
	      cle menu is shown.  The command to bind a key to	a  command  in
	      selection mode is:
		   map menu key command
	      For  example,  to have the HOME key defined as multikey #0 above
	      bound to the select command, the following command is used:
		   map menu #0 select
	      To remap a key to select a specific article on the  menu	(which
	      the  `a'	through	 `z'  keys do by default), the command must be
	      specified as `article N' where N is the entry number on the menu
	      counted  from  zero (i.e. a=0, b=1, ..., z=25, 0=26, ..., 9=35).
	      For example, to map `J' to select	 article  `j',	the  following
	      command is used:
		   map menu J article 9

       The reading mode key binding table
	      This  table defines for each key which command should be invoked
	      when that key is pressed in reading mode, i.e. when the  article
	      text  is shown.  The command to bind a key to a command in read‐
	      ing mode is:
		   map show key command

       In addition to the direct mappings described above, the following vari‐
       ations of the map command are available:

       User defined keymaps
	      Additional keymaps can be defined using the command
		   make map newmap
	      This will create a new keymap which can initialized using normal
	      map commands, e.g.
		   map newmap key command
	      To activate a user-defined keymap, it must be bound to a	prefix
	      key:
		   map base-map prefix-key prefix newmap
	      When  used,  the	prefix key itself does not activate a command,
	      but instead it require another key to be entered and  then  exe‐
	      cute  the command bound to that key in the keymap which is bound
	      to the prefix key.
		For example, to let the key sequence "^X i" execute macro num‐
	      ber 10 in both modes, the following commands can be used:
		   make map ctl-x
		   map ctl-x i macro 10
		   map both ^X prefix ctl-x

       Mapping keys in both modes
	      Using the pseudo-keymap `both', it is possible to map a key to a
	      command in both selection and reading mode at once.   For	 exam‐
	      ple,  to	map  the home key to macro number 5 in both modes, the
	      following command can be used:
		   map both #0 macro 5

       Aliasing
	      A key can also be mapped directly to the command currently bound
	      to  another  key.	  Later	 remapping  of	the other key will not
	      change the mapping of the `aliased' key.	This is done using the
	      following command:
		   map keymap new-key as old-key

       Binding macros to keys
	      A	 previously defined macro can be bound to a key using the com‐
	      mand:
		   map keymap key macro macro-number

       Implicit macro definitions
	      An implicit macro can also be  defined  directly	in  connection
	      with the map command:
		   map keymap key (
		   body...
		   )

       Keys and character names are specified using the following notation:

       C      A	 single	 printable  character  represents the key or character
	      itself.

       ^C     This notation represents a control key  or  character.   DEL  is
	      written as ^?

       125, 0175, 0x7D
	      Characters  and  keys can be specified by their ordinal value in
	      decimal, octal, and hexadecimal notation.

       up, down, right, left
	      These names represent the cursor keys.

       #0  through  #9
	      These symbols represent the ten user-defined multikeys.

       If the variable data-bits is 7, key maps can  specify  binding  of  all
       keys in the range 0x00 to 0x7F, and the 8th bit will be stripped in all
       keyboard input.	If the variable data-bits is 8, the  8th  bit  is  not
       cleared,	 and  key  maps	 are  extended to allow binding of keys in the
       range 0xA0 to 0xFE (corresponding to the national characters defined by
       the  ISO	 8859  character sets).	 Binding commands to these keys can be
       done either by using their numeric value, or directly specifying the  8
       bit character in the map command, e.g.
	    map menu 0xC8 macro 72
	    map key e %

       To show the current contents of the four tables, the following versions
       of the :map command are available:

       :map   Show the current mode's key bindings.

       :map menu
	      Show the selection mode key bindings.

       :map show
	      Show the reading mode key bindings.

       :map # Show the multikey definition table.

       :map key
	      Show the input key mapping table.

STANDARD KEY BINDINGS
       Below is a list of all the commands that can be bound to	 keys,	either
       in  selection  mode,  in	 reading  mode, or both.  For each command the
       default command key bindings in both modes are shown.  If  the  key  is
       not  bound  in one of the modes, but it can be bound, the corresponding
       part will just be empty.	 If the command cannot be bound in one of  the
       modes, that mode will contain the word nix.

	       Function		    Selection mode   Reading mode
	       advance-article	    nix		     a
	       advance-group	    A		     A
	       article N	    a-z0-9	     nix
	       back-article	    nix		     b
	       back-group	    B		     B
	       cancel		    C		     C
	       command		    :		     :
	       compress		    nix		     c
	       continue		    space	     space
	       continue-no-mark	    return	     nix
	       decode
	       find		    =		     /
	       find-next	    nix		     .
	       follow		    F		     fF
	       full-digest	    nix		     H
	       goto-group	    G		     G
	       goto-menu	    nix		     = Z
	       help		    ?		     ?
	       junk-articles	    J		     nix
	       kill-select	    K		     K
	       layout		    "		     nix
	       leave-article	    nix		     l
	       leave-next	    L		     L
	       line+1		    ,  down	     return
	       line-1		    /		     nix
	       line=@		    nix		     g
	       macro M
	       mail		    M		     m M
	       message		    ^P		     ^P
	       next-article	    nix		     n
	       next-group	    N		     N
	       next-subject	    nix		     k
	       nil
	       overview		    Y		     Y
	       page+1		    >		     nix
	       page+1/2		    nix		     d
	       page-1		    <		     delete  backspace
	       page-1/2		    nix		     u
	       page=0		    nix		     h
	       page=1		    ^		     ^
	       page=$		    $		     $
	       patch
	       post
	       preview		    %		     %
	       previous		    P		     p
	       print				     P
	       quit		    Q		     Q
	       read-return	    Z		     nix
	       read-skip	    X		     X
	       redraw		    ^L ^R	     ^L ^R
	       reply		    R		     r R
	       rot13		    nix		     D
	       save-full	    S		     s S
	       save-short	    O		     o O
	       save-header	    E		     e E
	       save-body	    W		     w W
	       select		    .		     nix
	       select-auto	    +		     nix
	       select-invert	    @		     nix
	       select-range	    -		     nix
	       select-subject	    *		     *
	       shell		    !		     !
	       skip-lines	    nix		     tab
	       unselect-all	    ~		     nix
	       unshar
	       unsub		    U		     U
	       version		    V		     V

       See  the	 descriptions of the default bindings for a description of the
       commands.  The pseudo command nil is used to unbind a key.

THE INIT FILES
       The init files are used to customize nn's behaviour  to	local  conven‐
       tions and restrictions and to satisfy each user's personal taste.
       Normally, nn reads upto three init files on start-up if they exist (all
       init files are optional):

       $LIB/setup
	      A system-wide file located in the library directory.  This  file
	      is  always  loaded  before any other init file (even when the -I
	      option is specified).  It cannot contain	a  group  presentation
	      sequence.

       $LIB/init
	      Another  system-wide  (global)  init file located in the library
	      directory.  This file may be ignored via the -I option.

       ~/.nn/init
	      The private init file located in the user's .nn  directory.   It
	      is  read	after the global init file to allow the user to change
	      the default setup.

       The init file is parsed one line at a time.  If	a  line	 ends  with  a
       backslash  `\',	the  backslash	is  ignored, and the following line is
       appended to the current line.

       The init file may contain the following types of commands (and data):

       Comments
	      Empty lines and lines with a # character as the first  non-blank
	      character	 are  ignored.	 Except	 where	#  has another meaning
	      defined by the command syntax (e.g. multi-keys  are  named  #n),
	      trailing comments on input lines are ignored.

       Variable settings
	      You  can	set  (or unset) all the variables described earlier to
	      change nn's behaviour permanently.  The set and  unset  commands
	      you can use in the init file have exactly the same format as the
	      :set and :unset commands described earlier (except  that	the  :
	      prefix is omitted.)
	      Variables can also be locked via the lock command; this is typi‐
	      cally done in the setup file to enforce local policies.

       Key mappings
	      You can use all the versions of the  map	command	 in  the  init
	      file.

       Macro Definitions
	      You  can	define sequences of commands and key strokes using the
	      define...end construction, which can then	 be  bound  to	single
	      keys with the map command.

       Load terminal specific files
	      You can load a terminal specific file using the
		   load file
	      The  character  @	 in  the file will be replaced by the terminal
	      type defined in the  TERM	 environment  variable.	  nn  silently
	      ignores  the  load  command  if  the file does not exist (so you
	      don't have to have a specific init file for terminals which does
	      not  require  remapping).	  If  the  file is not specified by an
	      absolute pathname, it  must  reside  in  your  ~/.nn  directory.
	      Examples:
		   # load local customizations
		   load /usr/lib/nninit
		   # load personal terminal specific customizations
		   load init.@

       Switch to loading a different init file
	      You can skip the rest of the current init file and start loading
	      a different init file with the following command:
		   chain file
	      If this occur in the private or global init  file,  the  chained
	      init  file  may  contain	a sequence part which will replace the
	      private or global presentation sequence respectively.

       Stop loading current init file
	      You can skip the rest of the current init file with the  follow‐
	      ing command:
		   stop

       Give error messages and/or terminate
	      If an error is detected in the init file, the following commands
	      can be used to print an error message  and/or  terminate	execu‐
	      tion:
	      error fatal error message...
		   Print the message and terminate execution.
	      echo warning message...
		   Print the message and continue.
	      exit [ status ]
		   Terminate  nn  with the specified exit status or 0 if omit‐
	      ted.

       Change working directory of nn
	      You can use the cd command to change the working directory when‐
	      ever you enter nn.  Example:
		   # Use folder directory as working directory inside nn
		   cd ~/News

       Command groups
	      The  init file can contain groups of commands which are executed
	      under special conditions.	 The command groups are	 described  in
	      the section on command groups below.

       One or more save-files sections
	      A	 save-files  section  is  used to assign default save files to
	      specific groups:
		   save-files
		     group-name (pattern) file-name
		     ...
		   end
	      The group name (patterns) and save file names are	 specified  in
	      the same way as in the presentation sequence (see below).	 Exam‐
	      ple:
		   save-files
		     news*  +news/$L
		     comp.sources*  /u/src/$L/
		   end

       The news group presentation sequence
	      The last part of the init file may specify the sequence in which
	      you want the news groups to be presented.	 This part starts with
	      the command sequence and continues to the end of the init file.

       Both init files may contain a presentation sequence.  In this case, the
       global sequence is appended to the private sequence.

COMMAND GROUPS
       Command	groups may only occur in the init file, and they provide a way
       to have series of commands executed at certain points during news read‐
       ing.

       In  release  6.4 onwards, these possibilities are still rather rudimen‐
       tary, and a mixture of normal init file syntax and macro syntax is used
       depending  on whether the command group is only executed on start-up or
       several times during the nn session.

       A command group begins with the word on and ends	 with  the  word  end.
       The  following  command	groups	are  conditionally executed during the
       parsing of the init file if the specified condition is true.  They  may
       also  have  an optional else part which is executed if the condition is
       false:
	    on condition
		 commands
	    [ else
		 commands ]
	    end

       The following conditional command groups may be used in the  init  file
       to be executed at start-up:

       on [ test ]
	      The  commands  (init file syntax) in the group are executed only
	      if the specified test is true.  A shell is  spawned  to  execute
	      the  command  "[ test ]", so all the options of the test(1) com‐
	      mand is available.  For example, to unset the flow-control vari‐
	      able  if	the tty is a pseudo-tty, the following conditional can
	      be used:
		   on [ -n "`tty | grep ttyp`" ]
			unset flow-control
		   end

       on !shell command
	      The command group is executed if the given shell	command	 exits
	      with  0 status (success).	 Care should be taken that the command
	      does not produce any output, e.g. by redirecting its  output  to
	      /dev/null.   For example, to prevent people from reading news if
	      load is above a specific level, the following conditional	 might
	      be placed in the global setup file.
		   on !load-above 5
			error load is too high, try again later.
		   end

       on `shell command` string...
	      The command group is executed if the first output line from exe‐
	      cuting the specified shell command is listed among the specified
	      string  values.	The shell command can be omitted on subsequent
	      occurrences of this conditional, in which case the  output  from
	      the last shell command is used.  For example, the following con‐
	      ditional can be used to switch to an init file which has a  lim‐
	      ited  sequence  for news reading during working hours, evenings,
	      and nights:
		   on `date +%H` 9 10 11 12 13 14 15 16
			chain init.work
		   end
		   on `` 17 18 19 20 21
			chain init.evening
		   else
			chain init.night
		   end

       on `` string...
	      This is equivalent to the previous form except that  instead  of
	      executing a shell command, the output from the previous

       on $variable [ value ]
	      If no value strings are specified, the command group is executed
	      if the given variable is defined in the environment.  Otherwise,
	      the  command group is executed only if the value of the variable
	      occur in the value list.	For example, if you want  nn  to  look
	      for  mail	 in  whatever $MAIL is set to - if it is set - you can
	      use the following code:
		   on $MAIL
			set mail $(MAIL)
		   end

       on slow
	      The commands (init file syntax) in the group are	executed  only
	      if  the  current	terminal output speed is less than or equal to
	      the baud rate set in the slow-speed variable.  This can be  used
	      to  optimize  the	 user-interface	 for slow terminals by setting
	      suitable variables:
		   on slow
			set confirm-entry
			set slow-mode
			set delay-redraw
			unset visible-bell
			set compress
			unset header-lines
			set stop 5
			set window 10
		   end

       on fast
	      Same as on slow except that the commands are only executed  when
	      the terminal is running at a speed above the slow-speed value.

       on term term-type...
	      The commands are executed if one of the term-type names is iden‐
	      tical to value of the TERM environment variable.

       on host host-name...
	      The commands are executed if the local host's name occur in  the
	      host-name list.

       on program program-name...
	      The  commands  are executed if the current program (nn, nncheck,
	      etc) in the program-name list.

       The following on command groups are really macros which may be executed
       during  nn's  normal  processing,  and as such they cannot have an else
       part.

       on entry [ group list ]
	      These commands (macro format!) are executed every time nn enters
	      a	 news  group.	If a group list is not specified, the commands
	      are associated with all groups which don't have  its  own	 entry
	      macro  specified	in  the	 group sequence.  Otherwise, the entry
	      macro will be associated with the groups in the list.  The group
	      list is specified using the meta-notations described in the pre‐
	      sentation sequence section.
	      All `:' commands at the beginning of the command group are  exe‐
	      cuted  before  nn	 collects  the articles in the group, so it is
	      possible to set or unset variables  like	cross-post  and	 auto-
	      read-mode-limit  before  any articles are collected and the menu
	      is (not) shown.
		The non-`:' commands, and `:' commands that follows a  command
	      of  another  type	 will  be executed immediately after the first
	      menu page is presented.  The execution of a `:' command  can  be
	      postponed by using a double `::' as the command prefix.
		   on entry comp.sources* alt.sources
			:set cross-post on   # set before collection
			:local auto-read-mode-limit -1	 # set before showing menu
			::unset cross-post   # set after collection
		   end

       on start-up
	      These `:' commands (macro format!) are executed on start-up just
	      before nn enters the first news group.  However, postponed  com‐
	      mands  (i.e.  non-`:'  commands)	will not be executed until the
	      first group is shown (it works like an entry macro).

GROUP PRESENTATION SEQUENCE
       News groups are normally presented in the sequence defined in the  sys‐
       tem-wide init file in nn's library directory.

       You can personalize the presentation sequence by specifying an alterna‐
       tive sequence in the private init file.	The sequence  in  the  private
       init  file  is  used  before the global presentation sequence, and need
       only describe the deviations from the default presentation sequence.

       The presentation sequence must start with the word
	    sequence
       followed by a list of the news group names in the order you  want  them
       to  be  presented.   The	 group names must be separated by white space.
       The sequence list must be the last part of the init file	 (the  parsing
       of  commands from the init file stops when the word sequence is encoun‐
       tered).

       You may use a full group name like "comp.unix.questions", or  just  the
       name of a main group or subgroup, e.g. "comp" or "comp.unix".  However,
       if "comp" precedes "comp.unix.questions" in  the	 list,	this  subgroup
       will  be placed in the normal alphabetic sequence during the collection
       of all the "comp" groups.

       Groups which are not explicitly mentioned in any of the sequence	 files
       will  be	 placed after the mentioned groups, unless `!!' is used and it
       has not been disabled (as described below).

       Each group name may be followed by a file or folder  name  (must	 start
       with either of `/' `~' or `+') which will specify the default save file
       for that group (and its subgroups).  A single `+' following  the	 group
       name is an abbreviation for the last save file name used.  For example,
       the following two sequences are equivalent:
	    group1 +file group2 +file group3 +file
	    group1 +file group2 + group3 +

       When an article is saved, the default save name will  be	 used  as  the
       initial	contents  of  the  file	 name  prompt for further editing.  It
       therefore does not need to be be a complete file name (unless  you  use
       the quick save mode).

       Each  group  name may also be associated with a so-called entry action.
       This is basically an (unnamed) macro which is invoked on entry  to  the
       group (following the same rules as the `on entry' command group related
       to :set and :unset commands).

       The entry action begins with a left parenthesis `('  and	 ends  with  a
       right parenthesis `)' on an otherwise empty line:
	    comp.sources. +src/$L/ (
		 :set cross-post
	    )
       The  last  entry	 action	 can be repeated by specifying an empty set of
       parenthesis, e.g.
	    comp.unix. +unix ()
       The entry action of a preceding group in the sequence can be associated
       with  the  current  group(s) by specifying the name of the group in the
       parentheses instead of the commands, e.g.
	    comp.unix. +unix (comp.sources.unix)
       A macro can also be associated with the entry action by specifying  its
       number in the same way as the group name above, e.g.
	    rec.music. +music (30)
       Notice  that it is the current definition of the macro which is associ‐
       ated with the group, so if  the	macro  is  later  redefined  with  the
       `:define' command, it will not have any effect on the entry action.

       Group names can be specified using the following notations:

       group.name
	      Append  the  group  (if  it exists) to the presentation sequence
	      list.  If also-subgroups is set (default), all  subscribed  sub‐
	      groups of the group will be included as well (if there are any).
	      Examples: "comp", "comp.unix",  "comp.unix.questions".   If  the
	      group  does  not	exits  (e.g.   "comp"),	 the subgroups will be
	      included even when also-subgroups is not	set,  i.e.  "comp"  is
	      equivalent to "comp.".

       group.name.
	      Append  the subgroups of the specified group to the presentation
	      sequence.	 The group itself (if  it  exists)  is	not  included.
	      Examples: "comp.", "comp.unix.".

       Append the groups whose name ends with the specified name to the
	      sequence.	 Example: ".test".

       group.name*
	      Append  the group and its subgroups to the presentation sequence
	      list  (even  when	 also-subgroups	  is   not   set).    Example:
	      "comp.unix*".

       The  following  meta  notation  can  be	used  in a sequence file.  The
       group.name can be specified using any of the forms described above:

       ! groups
	      Completely ignore the group or groups specified unless they  are
	      already  in  the presentation sequence (i.e. has been explicitly
	      mentioned earlier in the sequence).

       !:code groups
	      Ignore a selection of groups based on the given code letter (see
	      below),  unless  they  are  already  included  in	 the sequence.
	      Notice that these forms only excludes groups from the  presenta‐
	      tion  sequence, i.e. they do not include the remaining groups at
	      this point; that must be done explicitly elsewhere.

       !:U groups
	      Ignore unsubscribed groups, i.e. if they are  neither  new,  nor
	      present  and  subscribed in .newsrc.  This is useful to ignore a
	      whole hierarchy except for a few	groups	which  are  explicitly
	      mentioned	 in  .newsrc and still see new groups as they are cre‐
	      ated.

       !:X groups
	      Ignore unsubscribed and new groups, i.e. if they	are  not  cur‐
	      rently  present  and  subscribed	in .newsrc.  This is useful to
	      ignore a whole hierarchy except  for  a  few  groups  which  are
	      explicitly  mentioned  in	 .newsrc.  New groups in the hierarchy
	      are ignored unless `NEW' occurs earlier in the sequence.

       !:O groups
	      Ignore old groups, i.e. unless they are new.  This is useful  to
	      ignore a whole hierarchy but still see new groups which are cre‐
	      ated in the hierarchy (it might become  interesting  some	 day).
	      Individual  groups can still be included in the sequence if they
	      are specified before the `!:O' entry.

       !:N groups
	      Ignore new groups in the hierarchy.

       !!     Stop building the presentation sequence.	 This  eliminates  all
	      groups that are not already in the presentation sequence.

       NEW    This  is	a  pseudo group name which matches all new groups; you
	      could place this symbol early in your presentation  sequence  to
	      see  new	groups `out of sequence' (to attract your attention to
	      them).

       RC     This is a pseudo group name which matches all  groups  occurring
	      in  the .newsrc file.  It will cause the groups in .newsrc to be
	      appended to the presentation sequence in the sequence  in	 which
	      they are listed in .newsrc.

       RC:number
	      Similar  to  the RC entry, but limited to the first number lines
	      of the .newsrc file.  Example: RC:10 (use 10 lines of .newsrc).

       RC:string
	      Similar to the RC entry, but limited to the  lines  up  to  (and
	      including)  the  first line (i.e. group) starting with the given
	      string.  For example:  RC:alt.sources

       < group.name
	      Place the group (and its subgroups) at the beginning of the pre‐
	      sentation	 sequence.   Notice that each `<' entry will place the
	      group(s) at the beginning of the current sequence, i.e. < A <  B
	      < C will generate the sequence C B A.

       > group.name
	      Place  the group (and its subgroups) after all other groups that
	      are and will be entered into the presentation sequence.

       @      Disable the `!!' command.	 This can be included in the  personal
	      presentation  sequence if the global sequence file contains a !!
	      entry (see example 1 below).

       % .... %
	      Starts and ends a region of the sequence where it is possible to
	      include  groups  which has been eliminated earlier.  This may be
	      useful to alter the sequence  of	some  groups,  e.g.  to	 place
	      comp.sources.bugs	 after	all other source groups, the following
	      sequence can be used:
	      ! comp.sources.bugs comp.sources* % comp.sources.bugs %

       Example 1: In a company where ordinary users only should read the local
       news  groups,  and ignore the rest (including new news groups which are
       otherwise always subscribed to initially), can use the following global
       presentation sequence:
	    general
	    follow
	    ! local.test
	    local
	    !!
       The  "expert"  users in the company must put the @ command somewhere in
       their private sequence to avoid losing news groups which they have  not
       explicitly mentioned in their init file.

       Example	2:  This  is  the  global sequence for systems with heavy news
       addicts who setup their own sequences anyway.
	    # all must read the general news first
	    < general
	    # test is test, and junk is junk,
	    # so it is placed at the very end
	    > test
	    > .test
	    > junk
	    # this is the standard sequence which everybody may
	    # change to their own liking
	    local     # our local groups
	    dk	 # the Danish groups
	    eunet.general # to present it before eunet.followup
	    eunet     # the other European groups
	    comp # the serious groups
	    news # news on news
	    sci	 # other serious groups
	    rec	 # not really that important (don't quote me)
	    misc # well, it must be somewhere
	    # the groups that are not listed above goes here
       Notice the use of comments in the sequence where they  are  allowed  at
       the end of non-empty lines as well.

       Example 3: My own presentation sequence (in the init file) simply lists
       my favourite groups and the corresponding default save files:
	  sequence
	    !:U alt*  # ignore unsubscribed alt groups
	    news.software.nn +nn
	    comp.sys.ti* +ti/$L
	    NEW	 # show new groups here
	    news*
	    rec.music.synth +synth/
	    comp.emacs*,gnu.emacs +emacs/misc
	    comp.risks +risks
	    eunet.sources +src/unix/
	    comp.sources* +src/$L/
       The presentation sequence is not used when nn is	 called	 with  one  or
       more  news group names on the command line; it is thus possible to read
       ignored groups (on explicit request) wihtout changing  the  init	 file.
       (Of course, you can also use the G command to read ignored groups).

MERGING NEWS GROUPS
       The third example above contains the following line:
	    comp.emacs*,gnu.emacs +emacs/misc
       This  is	 the syntax used to merge groups.  When two or more groups are
       merged, all new articles in these groups are presented together	as  if
       they  were  one	group.	 To  merge  groups, their names must be listed
       together in the sequence, and only separated by	a  single  comma.   To
       merge   the   groups  resulting	from  a	 single	 group	pattern	 (e.g.
       comp.emacs*), the group pattern must be followed by a comma and a blank
       (e.g. comp.emacs*, ...).

       Merged  groups  are presented as the first group in the "list", and the
       word "MERGED" will be shown after the group  name.   The	 Y  {overview}
       command	will  still  show merged groups as individual groups, but they
       will be annotated with the symbol `&' on the first of the groups, and a
       `+' on the rest of the groups.

       In  the current version, the concept of the current group in connection
       with merged groups is a bit fuzzy.  This should only be noticeable with
       the  G  command, which will take the most recently used group among the
       merged groups as the current group.  So things like G  =	 ...  may  not
       always work as expected.

ENVIRONMENT
       The following environment variables are used by nn:

       EDITOR.	 The editor invoked when editing replies, follow-ups, and com‐
       posing mail.  nn knows about the following editors: vi, ded, GNU emacs,
       and  micro-emacs, and will try to position the cursor on the first line
       following the header, i.e. after the  blank  line  which	 must  not  be
       deleted!	  If an article has been included, the cursor is placed on the
       first line of the included text (to allow you to delete	sections  eas‐
       ily).

       LOGNAME.	  This	is taken as the login name of the current user.	 It is
       used by nn to return failed mail.  If it is not defined,	 nn  will  use
       the  value  of  USER, or if that is not defined either, nn will use the
       call `who am i' to get this information.	 If  all  attempts  fail,  the
       failed mail is dropped in the bit bucket.

       PAGER.  This is used as the initial value of the pager variable.

       SHELL.  This is the shell which is spawned if the system cannot suspend
       nn, and it will be used to execute the shell escapes.

       TERM.  The terminal type.

NOTES
       When NNTP is being used over a slow link (as with the ppp protocol  and
       a modem), it may be desirable to suppress the retrieval of the informa‐
       tion about new newsgroups, and their purpose, since they	 can  be  hun‐
       dreds  of  KBytes  in size.  To do this, the new-group-action and show-
       purpose-mode variables should be set to 0 in your init file.   See  the
       descriptions of those variables for more info.

       Unfortunately, the list of active newsgroups is still fetched, since nn
       uses it to determine which groups to check for new articles.  Even this
       could  be  avoided,  but the cost would be checking for new articles in
       every group, which might well be slower overall, although startup would
       be faster.

FILES
       ~/.newsrc	 The record of read articles.
       ~/.nn/select	 The record of selected and seen articles.
       ~/.nn/init	 Personal configuration and presentation sequence.
       ~/.nn/kill	 The automatic kills and selections.
       ~/.nn/KILL.COMP	 The compiled kill file.
       ~/.nn/LAST	 The  time  stamp  of  the last new news group we have
       seen.
       ~/.nn/NEXTG	 Active group last time nn was quit.
       ~/.nn/.param	 Parameter file for the aux script
       $lib/setup	 System-wide setup - always read first.
       $lib/init	 System-wide setup and presentation sequence.
       $lib/aux		 The response edit and send script.
       $lib/routes	 Mapping rules for mail addresses (on non-domain  sys‐
       tems).
       $db/*		 The news data base.
       /etc/termcap	 Terminal data base [BSD].
       /usr/lib/terminfo/*Terminal data base [SysV].
       /usr/local/lib/nntp_serverName of remote nntp server, if not changed by
       setting the environment variable NNTPSERVER or the nntp-server variable
       on the command line.
       The  name $lib and $db are the directories used for the auxiliary files
       and the news data  base	respectively.	Their  name  and  location  is
       defined	at  compile  time.   Common  choices  are /usr/local/lib/nn or
       /usr/lib/news/nn for $lib and /usr/spool/nn or /usr/spool/news/.nn  for
       $db.

SEE ALSO
       Other netnews documentation.
       RFC 1341, MIME (Multipurpose Internet Mail Extensions)
       nncheck(1), nngoback(1), nngrab(1), nngrep(1), nnpost(1), nntidy(1)
       nnusage(1M), nnspew(8)

ORIGINAL AUTHOR
       Kim F. Storm, Texas Instruments A/S, Denmark

CURRENT MAINTAINER
       Michael T Pins mtpins@nndev.org

       The  NNTP  support was designed and implemented by Rene Seindal, Insti‐
       tute of Datalogy, University of Copenhagen, Denmark.

       The news.software.nn group is  used  for	 discussion  on	 all  subjects
       related	to  the nn news reader.	 This includes, but is not limited to,
       questions, answers, ideas,  hints,  information	from  the  development
       group, patches, etc.

4th Berkeley Distribution	  Release 6.6				 NN(1)
[top]
                             _         _         _ 
                            | |       | |       | |     
                            | |       | |       | |     
                         __ | | __ __ | | __ __ | | __  
                         \ \| |/ / \ \| |/ / \ \| |/ /  
                          \ \ / /   \ \ / /   \ \ / /   
                           \   /     \   /     \   /    
                            \_/       \_/       \_/ 
More information is available in HTML format for server Slackware

List of man pages available for Slackware

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net