Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
NN(1)			    General Commands Manual			 NN(1)

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

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

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

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

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

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

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

       In  reading mode, each of the selected articles will be presented.  You
       use the space bar to go on to the next page of the current article,  or
       to  the	next  article.	 Of course, there are all sorts	of commands to
       scroll text up and down,	skip to	the next article, responding to	an ar-
       ticle, 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 in-
       cluding appropriate variable settings in	the init file described	later.
       All options are described in the	section	on Command  Line  Options  to-
       wards the end of	this manual.

       The frequently used command line	options	are:

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

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

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

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

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

       -s/regexp
	      Collect only articles whose subject matches the regular  expres-
	      sion  regexp.   This is normally combined	with the -x and	-m op-
	      tions 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 ar-
	      ticles.  When this option	is used, nn will never mark unread ar-
	      ticles 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 re-
       acts instantly to the commands you give it; you don't have to enter re-
       turn after each command (except where explicitly	stated).

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

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

       erase
	      Delete the last character	on the line.

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

       kill
	      Delete all characters on the line.

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

       suspend
	      Suspend nn if supported by the system.  Otherwise, spawn an  in-
	      teractive	shell.

       return
	      Terminate	the line, and continue with the	command.

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

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

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

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

       ^L   {redraw}
	      Redraw screen.

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

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

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

       Q    {quit}
	      Quit nn.	When you use this command, you neither lose unread ar-
	      ticles  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  se-
       lected.	 When  you  have  selected all the interesting articles	on the
       present menu, you simply	hit space.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

       The following attributes	may be associated with an article:

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

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

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

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

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

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

       leave-next
	      Menu  attribute  "="  - indicates	that the article is marked for
	      later treatment by the leave-next	(L) command.  This is a	perma-
	      nent  attribute,	which will remain on the article until you ei-
	      ther 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 se-
	      lected on	entry to a group (but naturally, doing so will	change
	      the leave-next attribute to select).

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

       killed Menu  attribute "!" - indicates that the article has been	killed
	      (e.g.  by	the K {kill-select} command).  Killed articles are im-
	      mediately	 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, re-
       tain-seen-status, select-leave-next.

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

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

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

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

       abc...z 01..9  {article N}
	      The article with the given identification	letter or digit	is se-
	      lected or	deselected.  The following article becomes the current
	      article.	 If the	variable auto-select-subject is	set, all arti-
	      cles 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 ar-
	      ticle.  This will	work across several menu pages if necessary.

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

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

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

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

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

       =    {find}
	      Prompts for a regular expression,	and selects  all  articles  on
	      the  menu	(all pages) which matches the regular expression.  De-
	      pending 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.  Ex-
	      ample:   The  command = .	return will select all articles	in the
	      group.

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

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

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

       >    {page+1}
	      Goto next	menu page.

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

       $    {page=$}
	      Goto last	menu page.

       ^    {page=1}
	      Goto first menu page.

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

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

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

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

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

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

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

       P    {previous}
	      Go  back	to the previous	group.	This command will enter	selec-
	      tion mode	on the last active group (two P	commands  in  sequence
	      will  bring  you to the current group).  If there	are still some
	      unread articles in the group, only those articles	will be	shown.
	      Otherwise,  all  the  articles which were	unread when nn was in-
	      voked 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 ar-
       ticles will normally be marked read when	you leave the group, and these
       articles	are not	shown the next time you	enter the group.

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

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

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

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

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

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

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

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

       To select (or deselect) ALL the articles	within a closed	subject,  sim-
       ply  select  the	article	shown on the menu; this	will automatically se-
       lect (or	deselect) the rest (see	auto-select-closed).  When all the un-
       read  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  se-
       lect 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.

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

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

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

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

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

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

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

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

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

THE JUNK-ARTICLES AND LEAVE-NEXT COMMANDS
       The J {junk-articles} command is	a very flexible	command	which can per-
       form all	sorts of attribute changes, either on individual articles, all
       articles	on the current menu page, all articles with a specific	attri-
       bute, 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	attri-
	      bute.

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

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

       Leave  This  menu  allows  you to mark articles for later handling with
	      the leave-next attribute which will keep the article unread  un-
	      til  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	attri-
	      bute.

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

       +      Change attribute on all selected articles	on all pages.

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

       .      Change attribute on current article.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

       p    {previous}
	      Goto previous article.

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

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

       a    {advance-article}
	      Goto the following article on the	menu even if  it  is  not  se-
	      lected.	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 at-
	      tribute on the current article will be restored, except for  the
	      unread attribute which will be changed to	seen.

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

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

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

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

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

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

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

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

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

       %x   {preview}
	      Preview article x.

       %%   {preview}
	      Preview the current article.

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

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

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

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

       %y   {preview}
	      Preview article y	.

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

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

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

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

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

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

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

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

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

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

       :unshar	 {unshar}
	      Unshar articles.	You will be prompted for the name of a	direc-
	      tory  in which you want nn to unshar the articles.  nn will then
	      pipe the proper parts of the article body	into  a	 Bourne	 Shell
	      whose working directory will be set to the specified directory.
		During	the  unpacking,	 the  normal  output  from  the	unshar
	      process will appear on the screen, and the menu or article  text
	      will be redrawn when the process is finished.
		The  output  is	also appended to a file	named Unshar.Result in
	      the unshar directory.
		The  file  specified  in  unshar-header-file   (default	  "Un-
	      shar.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.Head-
	      ers file.

       :decode	 {decode}
	      Decode uuencoded	articles  into	binary	files.	 You  will  be
	      prompted	for  the  name	of a directory in which	you want nn to
	      place the	decoded	binary files (the file names  are  taken  from
	      the uuencoded data).
		nn  will combine several articles into single files as needed,
	      and you can even decode unrelated	packages (into the same	direc-
	      tory) with one decode command.
		To  be	able to	decode a binary	file which spans several arti-
	      cles, nn may have	to ignore lines	which fail the	normal	sanity
	      checks  on  uuencoded data instead of treating them as transmis-
	      sion errors.  Consequently, it is	strongly recommended to	 check
	      the  resulting decoded file using	the checksum which is normally
	      contained	in the original	article.  (Actually, you are also sup-
	      posed to do this after decoding with a stand-alone uudecode pro-
	      gram).
		The header and initial information in the decoded articles are
	      saved  in	the file specified in decode-header-file (default "De-
	      code.Headers") in	the same directory as the decoded files.
		If decode-skip-prefix is non-null, :decode will	attempt	to ig-
	      nore 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  un-
	      shar, concatenate, and decode multi-part postings	automatically.

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

       s      Same as S.

       o      Same as O.

       w      Same as W.

       P      Same as :print.

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

       If  the quick-save variable is set, nn will only	prompt for a save file
       name when the current article is	inside a folder;  otherwise,  the  de-
       fault 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 cur-
       rent menu page and mark them read.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

       As  mentioned above, you	can also instruct nn to	save a series of files
       in separate, unique files.  All that is required	is that	the file  name
       contains	an asterisk, e.g.
	    +src/hype/part*.shar
       This  will  cause  each of the articles to be saved in separate,	unique
       files named part1.shar, part2.shar, and so on, always choosing  a  part
       number  that  results in	a unique file name (i.e. if part1.shar did al-
       ready 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  un-
       til it appears.

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

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

       The current completion can be deleted with the erase key.

       The default value for a file name is the	last file name	you  have  en-
       tered, 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 de-
       fault value, you	will have to hit the kill twice	to get a clean	prompt
       line.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

       return An empty answer is equivalent to the current newsgroup.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

       There are three commands	in the goto family:

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

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

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

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

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

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

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

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

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

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

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

       Open the	folder +nn
	    G +nn return

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

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

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

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

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

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

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

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

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

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

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

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

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

       Related variables: default-kill-select, kill.

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

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

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

       The group name field can	have three forms:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

       %      Same as $A.

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

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

       Related variables: shell, shell-restrictions.

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

       U    {unsub}
	      Unsubscribe to the current group.	 You will not see  this	 group
	      any  more	unless you explicitly request it.  If the variable un-
	      subscribe-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 re-
	      subscribe	a group.

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

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

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

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

       As  shown  in  the  keystroke command descriptions, all commands	have a
       name, and it is possible	to activate a command by  name	with  the  ex-
       tended  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 :re-
       ply followed by return.	The :post and :unshar commands described  ear-
       lier  can  also be bound	to a key.  The complete	list of	commands which
       can be bound to keys is provided	in the section on Key Mappings below.

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

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

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

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

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

       :compile
	      Recompile	the kill file.	This is	not necessary under normal op-
	      eration  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 ig-
	      nored.

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

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

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

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

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

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

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

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

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

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

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

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

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

       :show groups mode
	      Show the total number or the number of unread  articles  in  the
	      current group, depending on mode:	all (list the number of	unread
	      articles in all groups including groups which  you  have	unsub-
	      scribed to), total (list the total number	of articles in all ex-
	      isting groups), sequence (list unread groups in presentation se-
	      quence  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 in-
	      cluding 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} com-
	      mand.

       :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 or-
	      dered after age of the oldest article in the group,
	      lexical: subjects	in lexicographical order,
	      age: articles ordered after posting date only,
	      sender: articles ordered after sender's name.

       :toggle variable
	      Toggle a boolean variable.

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

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

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

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

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

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

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

       y      Mark all articles	as read	in current group.

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

       r      Enter reading mode to read the group.

       U      Unsubscribe to the group.

       ?      Give a list of actions.

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

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

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

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

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

       For example:
	    set	time
	    unset time
	    set	notime
	    toggle time

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

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

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

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

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

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

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

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

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

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

       The following variables are available:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

       The following tokens may	occur in the macro body:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

       Keys and	character names	are specified using the	following notation:

       C      A	single printable character represents the key or character it-
	      self.

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

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

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

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

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

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

       :map   Show the current mode's key bindings.

       :map menu
	      Show the selection mode key bindings.

       :map show
	      Show the reading mode key	bindings.

       :map # Show the multikey	definition table.

       :map key
	      Show the input key mapping table.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

       Group names can be specified using the following	notations:

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

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

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

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

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

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

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

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

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

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

       !:N groups
	      Ignore new groups	in the hierarchy.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ENVIRONMENT
       The following environment variables are used by nn:

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

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

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

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

       TERM.  The terminal type.

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

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

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

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

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

CURRENT	MAINTAINER
       Michael T Pins mtpins@nndev.org

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

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

4th Berkeley Distribution	  Release 6.6				 NN(1)

NAME | SYNOPSIS | DESCRIPTION | FREQUENTLY USED OPTIONS | COMMAND INPUT | BASIC COMMANDS | SELECTION MODE | ARTICLE ATTRIBUTES | SELECTION MODE COMMANDS | CONSOLIDATED MENUS | THE JUNK-ARTICLES AND LEAVE-NEXT COMMANDS | READING MODE COMMANDS | PREVIEWING ARTICLES IN SELECTION MODE | SAVING ARTICLES | FOLDER MAINTENANCE | FILE NAME EXPANSION | FILE AND GROUP NAME COMPLETION | POSTING AND RESPONDING TO ARTICLES | JUMPING TO OTHER GROUPS | AUTOMATIC KILL AND SELECTION | THE FORMAT OF THE KILL FILE | SHELL ESCAPES | MISCELLANEOUS COMMANDS | CATCH UP | VARIABLES AND OPTIONS | CUSTOMIZED ARTICLE HEADER PRESENTATION | COMMAND LINE OPTIONS | MACRO DEFINITIONS | KEY MAPPINGS | STANDARD KEY BINDINGS | THE INIT FILES | COMMAND GROUPS | GROUP PRESENTATION SEQUENCE | MERGING NEWS GROUPS | ENVIRONMENT | NOTES | FILES | SEE ALSO | ORIGINAL AUTHOR | CURRENT MAINTAINER

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=nn&sektion=1&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help