nn Beginner Help

     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 subscribe 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
          presented on the screen.

          This will be done very quickly, because nn uses its own
          database to maintain all the necessary information on a
          directly accessible form (this database is built and
          maintained by the nnmaster(8) program).

          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
               expression 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 creation 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 previous
          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 settings.  On systems without job control,
          the suspend key will be control-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 maximum number of saved messages is
               controlled via the message-history variable.)

          !    {shell}
               Shell escape.  The user is prompted for a command which
               is executed 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 opportunity 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:
9
          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 article, 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 layout 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
          actually into their password file) which result in nn
          producing quite cryptic, 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
          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 adjacent 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 articles sharing the same subject will be shown
          with a single line on the menu corresponding to the first of
          the articles.  The number of articles 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, subject-match-limit, subject-
          match-offset, subject-match-parts.

     ARTICLE ATTRIBUTES
          While nn is running and between invocations, nn associates
          an attribute with each article on your system.  These
          attributes are used to differentiate 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 following 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 selection 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


          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).

9 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 articles 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

               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 permanent 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 cancelled.  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



          Most commands which are used to select articles will work as
          toggle commands.  If the article is not already selected,
          the selectedattribute on the article(s), independent on the
          previous attribute.  Otherwise, the article(s) will be
          deselected and marked unread.  Consequently, any article can
          be marked unread simply be selecting and deselecting 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 current 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 current 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}


               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 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.  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 articles 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=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 articles 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 articles.  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



          P    {previous}
               Go back to the previous group.  This command will enter
               selection 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 individual articles in a group marked unread when you
          left a group, and the default behaviour of release 6.4 will
          closely match the traditional 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 confirmation 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-subject, 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.




          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
          subject, e.g.
9               a Kim F. Storm     12  [4] Future plans for nn
               b.Kim F. Storm     43  [3] More plans for nn
9          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, simply 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 commands:

          (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.




          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<UNotice:  Consolidated menus only work with the `subject' and
          `lexical' sorting methods.

          Variables related to consolidated menus are:  auto-select-
          closed, consolidated-menu, counter-delim-left, counter-
          delim-right, counter-padding, save-closed-mode.

     THE JUNK-ARTICLES AND LEAVE-NEXT COMMANDS
          The J {junk-articles} command is a very flexible command
          which can perform 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.



          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



          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 available:

          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}



               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 article, 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 spaces.  (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 treatment 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 continue with the next selected 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 `*' command 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
               interesting.

          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.)




     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 article.

          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-



          The following commands are used to save articles in files,
          unpack archives, 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.

          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 output 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 article 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 directory 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.



               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 directory) with one decode command.
                 To be able to decode a binary file which spans
               several articles, nn may have to ignore lines which
               fail the normal sanity checks on uuencoded data instead
               of treating them as transmission 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 supposed to do this after decoding with a stand-
               alone uudecode program).
                 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.



          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 unconditionally.

          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 current menu page and mark them read.

          Likewise, if you enter a plus `+', nn will save all the
          selected articles 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



          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 articles.  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 appending 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-format-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 separate 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 articles 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 articles are kept and which are removed as the folder
          is rewritten.

          Folders are rewritten in the format of the original 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 contained 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 article by using a double pipe symbol in the
               beginning of the command, 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 periods replaced by slashes, e.g. rec/music/synth.

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



               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 possibility 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 component, 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 current component.  If the list is too long for the
          available space on screen, the key can be repeated to get




          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 article 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 distribution 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



          :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 completion 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 paging 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 prefixed by a `>' character (except in
          mail mode), and invoke an editor of your choice (using the
          EDITOR environment variable) on this file, positioning 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.  Otherwise 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):
9               a)bort c)c e)dit h)old i)spell m)ail r)eedit s)end
          v)iew w)rite
               Action: (post article)
9          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)



     Page 28                                         (printed 1/19/95)
            w    append it to a file (before you send it).
            y    confirm default answer (e.g. yes post it)

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

          Related variables:  append-signature-mail, append-
          signature-post, 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.




     Page 29                                         (printed 1/19/95)

          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 current 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.  nnmaster maintains archive files with
               all old and current articles for the groups which have
               the auto-archive option set in the GROUPS file (see
               nnmaster(8)).

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

          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



     Page 30                                         (printed 1/19/95)
               included on the same menu (without creating 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 specified 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.)



     Page 31                                         (printed 1/19/95)
          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 previously 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

9 G dk.general return u


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

9 G gnu.emacs return j


          Include the last 10 READ articles in the current group menu

9 G 10 return


          Find all articles in rec.music.misc on the subject Floyd

9 G rec.music.misc return

               = floyd return



     Page 32                                         (printed 1/19/95)



          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 interested 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 automatically 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).
9               You can control the default kill period, or change it
               into a "select" period via the default-kill-select
               variable.
9               If this "default behaviour" is not what you want, just



     Page 33                                         (printed 1/19/95)




               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.
9               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.
9               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).
9               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 entering 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.
9


     Page 34                                         (printed 1/19/95)






          string]...

          Permanent entries have no expire time (in which case the
          colon is omitted 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



     Page 35                                         (printed 1/19/95)






               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 corresponding 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 specified, 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
               corresponding to each string must be separated by
               either an or operator `|' or an and operator `&'.  The
               and operator has a higher precedence than the or
               operator, e.g.  a complex match expression 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 expression 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:
9              :+n=&s:Tom Collins:News
9


     Page 36                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)
          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 dat.

     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.
9


     Page 37                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)

          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.  Cancelling articles in a folder will cause the
               folder to be rewritten 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 command :reply followed



     Page 38                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)

               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.



     Page 39                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)

               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
               administrator in the file "motd" in the lib directory.
               This file is automatically 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 (useful
               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.



     Page 40                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)


          :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 unsubscribed 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'
               {overview} 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



     Page 41                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)

               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 completely 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 followed 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.



     Page 42                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)

          - 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) commands:
               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 window, 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



     Page 43                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)

          can be used:
9               set included-mark  \ \#\   # blank-#-blank
9          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 variable 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

          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.



     Page 44                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)



9 :local variable [ value ]

9
          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 example, 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
               automatically appended to responses sent via E-mail.
               If true, .signature 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
               automatically appended to posted articles.  If true,
               .signature will explicitly be appended to posted
               articles (see query-signature).




     Page 45                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)



               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
               article.  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 number 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 follows:
               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-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)



     Page 46                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)



               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 nn-
               bugs@dkuug.dk)
               The mail address to which bug reports created with the
               :bug command 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.

          check-db-update-time H   (integer, default 12)
               When non-zero, nn will issue a warning if the database
               has not been updated in the last H hours.  The warning
               will tell you whether no news has arrived (feed
               broken?), or whether it is just nnmaster which has not
               updated the database (dead?).

          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



     Page 47                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)



               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 compress 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 article 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.



     Page 48                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)



               When set, nn will require confirmation before marking
               seen articles 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 alignment.
               Increasing it further may yield practially perfect
               alignment at the cost of less space for the subject
               itself.




     Page 49                                         (printed 1/19/95)






     NN(1)            UNIX System V (Release 6.4.18)             NN(1)




          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.

          data-