     Options

     Trn has a nice set of options to allow you to tailor the interaction to
     your liking.  (You might like to know that the author swears by "-x6ms
     -e +m -S -XX -N -B -p".) These options may be set on the command line,
     via the TRNINIT environment variable, via a file pointed to by the
     TRNINIT variable, or from within trn via the & command.  Options may
     generally be unset by typing "+switch".  Options include:

     -a   causes trn to always thread the unread articles on entry to a
          group.  Without this option trn may enter a group in a partially-
          threaded state and process the unthreaded articles in the back-
          ground.  The down side of this is that the tree display may not be
          complete when it is first displayed and you may start out at an odd
          position in the first thread's article tree.

     -A   tells trn to attempt to create some default macros that will map
          your arrow keys to useful trn functions (this is the default).  Use
          +A to turn this behavior off.

     -b   will force trn to read each thread in a breadth-first order, rather
          than depth-first.

     -B   will turn on a spinner that twirls when trn is doing background
          article-processing.  A gizmo for those interested in what's going
          on behind the scenes.

     -c   checks for news without reading news.  If a list of newsgroups is
          given on the command line, only those newsgroups will be checked;
          otherwise all subscribed-to newsgroups are checked.  Whenever the
          -c switch is specified, a non-zero exit status from trn means that
          there is unread news in one of the checked newsgroups.  The -c
          switch does not disable the printing of newsgroups with unread
          news; this is controlled by the -s switch.  (The -c switch is not
          meaningful when given via the & command.)

     -C<number>
          tells trn how often to checkpoint the .newsrc, in articles read.
          Actually, this number says when to start thinking about doing a
          checkpoint if the situation is right.  If a reasonable check-
          pointing situation doesn't arise within 10 more articles, the
          .newsrc is check-pointed willy-nilly.

     -d<directory name>
          sets the default save directory to something other than ~/News.
          The directory name will be globbed (via csh) if necessary (and if
          possible).  Articles saved by trn may be placed in the save direc-
          tory or in a subdirectory thereof depending on the command that you
          give and the state of the environment variables SAVEDIR and
          SAVENAME.  Any KILL files (see the K command in the Article Selec-
          tion section) also reside in this directory and its subdirectories,
          by default.  In addition, shell escapes leave you in this direc-
          tory.

     -D<flags>
          enables debugging output.  See common.h for flag values.  Warning:
          normally trn attempts to restore your .newsrc when an unexpected
          signal or internal error occurs.  This is disabled when any debug-
          ging flags are set.

     -e   causes each page within an article to be started at the top of the
          screen, not just the first page.  (It is similar to the -c switch
          of more(1).) You never have to read scrolling text with this
          switch.  This is helpful especially at certain baud rates because
          you can start reading the top of the next page without waiting for
          the whole page to be printed.  It works nicely in conjunction with
          the -m switch, especially if you use half-intensity for your
          highlight mode.  See also the -L switch.

     -E<name>=<val>
          sets the environment variable <name> to the value specified.
          Within trn, "&-ESAVENAME=%t" is similar to "setenv SAVENAME '%t'"
          in csh, or "SAVENAME='%t'; export SAVENAME" in sh.  Any environment
          variables set with -E will be inherited by subprocesses of trn.

     -f   will make trn avoid various sleep calls and the prompt after the
          processing of the memorized commands that are intended to allow you
          time to read a message before the screen clears.  This allows the
          advanced user to cruise along a little faster at the expense of
          readability.  The -t (terse) option turns on -f by default, but you
          can override this by specifying +f after the -t option.

     -F<string>
          sets the prefix string for the 'F' follow-up command to use in pre-
          fixing each line of the quoted article.  For example, "-F<tab>"
          inserts a tab on the front of each line (which will cause long
          lines to wrap around, unfortunately), "-F>>>>" inserts ">>>>" on
          every line, and "-F" by itself causes nothing to be inserted, in
          case you want to reformat the text, for instance.  The initial
          default prefix is ">".

     -g<line>
          tells trn which line of the screen you want searched-for strings to
          show up on when you search with the 'g' command within an article.
          The lines are numbered starting with 1.  The initial default is
          "-g1", meaning the first line of the screen.  Setting the line to
          less than 1 or more than the number of lines on the screen will set
          it to the last line of the screen.

     -G   selects the "fuzzy" processing on the go command when you don't
          type in a valid group name.  With this option on trn will attempt
          to find the group you probably meant to type, but it can be a lit-
          tle slow about it, so it's not on by default.

     -h<string>
          hides (disables the printing of) all header lines beginning with
          string that trn recognizes.  For instance, -hexp will disable the
          printing of the "Expires:" line.  Case is insignificant.  Headers
          unknown to trn cannot be disabled except by turning them all off
          (-h without a string will disable all headers except the Subject)
          and then using +h to select those lines you want to see.  You may
          wish to use the baud-rate switch modifier below to hide more lines
          at lower baud rates.

     -H<string>
          works just like -h except that instead of setting the hiding flag
          for a header line, it sets the magic flag for that header line.
          Certain header lines have magic behavior that can be controlled
          this way.  At present, the following actions are caused by the flag
          for the particular line: the Date line prints the date in local
          time if the group is threaded; the From line will only print the
          commented portion of the user name; the Newsgroups line will only
          print when there are multiple newsgroups; the Subject line will be
          underlined and (when threaded) the keyword 'Subject:' is replaced
          by its subject number (e.g. [1]); and the Expires line will always
          be suppressed if there is nothing on it.  In fact, all of these
          actions are the default, and you must use +H to undo them.

     -i=<number>
          specifies how long (in lines) to consider the initial page of an
          article -- normally this is determined automatically depending on
          baud rate.  (Note that an entire article header will always be
          printed regardless of the specified initial page length.  If you
          are working at low baud rate and wish to reduce the size of the
          headers, you may hide certain header lines with the h switch.)

     -I   tells trn to append all new, unsubscribed groups to the end of the
          .newsrc.

     -j   forces trn to leave control characters unmolested in messages.

     -l   disables the clearing of the screen at the beginning of each arti-
          cle, in case you have a bizarre terminal.

     -L   tells trn to leave information on the screen as long as possible by
          not blanking the screen between pages, and by using clear to end-
          of-line.  (The more(1) program does this.) This feature works only
          if you have the requisite termcap capabilities.  The switch has no
          effect unless the -e switch is set.

     -m=<mode>
          enables the marking of the last line of the previous page printed,
          to help the user see where to continue reading.  This is most help-
          ful when less than a full page is going to be displayed.  It may
          also be used in conjunction with the -e switch, in which case the
          page is erased, and the first line (which is the last line of the
          previous page) is highlighted.  If -m=s is specified, the standout
          mode will be used, but if -m=u is specified, underlining will be
          used.  If neither =s or =u is specified, standout is the default.
          Use +m to disable highlighting.

     -M   forces mailbox format in creating new save files.  Ordinarily you
          are asked which format you want.

     -N   forces normal (non-mailbox) format in creating new save files.
          Ordinarily you are asked which format you want.

     -o   will act like old versions of trn and not junk cross-referenced
          articles when using thread commands to junk articles in the current
          group (such as the selector's 'X' command).

     -O<mode>{<order>}
          specifies the selector's mode and (optionally) the sort order.  The
          modes are 'a'rticle, 's'ubject, or 't'hread.  The orders are
          'd'ate, 's'ubject, 'a'uthor, article 'c'ount per group, or
          subject-date 'g'roups.  The order can be capitalized to reverse the
          indicated order.  For example, to choose the article selector in
          subject order specify "-Oas".

     -p   tells trn to auto-select your postings and their replies as it
          encounters them in the various groups you read.

     -q   bypasses the automatic check for new newsgroups when starting trn.

     -r   causes trn to restart in the last newsgroup read during a previous
          session with trn.  It is equivalent to starting up normally and
          then getting to the newsgroup with a g command.

     -s   with no argument suppresses the initial listing of newsgroups with
          unread news, whether -c is specified or not.  Thus -c and -s can be
          used together to test "silently" the status of news from within
          your .login file.  If -s is followed by a number, the initial list-
          ing is suppressed after that many lines have been listed.  Presum-
          ing that you have your .newsrc sorted into order of interest, -s5
          will tell you the 5 most interesting newsgroups that have unread
          news.  This is also a nice feature to use in your .login file,
          since it not only tells you whether there is unread news, but also
          how important the unread news is, without having to wade through
          the entire list of unread newsgroups.  If no -s switch is given -s5
          is assumed, so just putting "rn -c" into your .login file is fine.

     -S<number>
          causes trn to enter subject search mode (^N) automatically whenever
          an unthreaded newsgroup is started up with <number> unread articles
          or more.  Additionally, it causes any 'n' typed while in subject
          search mode to be interpreted as '^N' instead.  (To get back out of
          subject search mode, the best command is probably '^'.) If <number>
          is omitted, 3 is assumed.

     -t   puts trn into terse mode.  This is more cryptic but useful for low
          baud rates.  (Note that your system administrator may have compiled
          trn with either verbose or terse messages only to save memory.) You
          may wish to use the baud-rate switch modifier below to enable terse
          mode only at lower baud rates.

     -T   allows you to type ahead of rn.  Ordinarily rn will eat typeahead
          to prevent your autorepeating space bar from doing a very frustrat-
          ing thing when you accidentally hold it down.  If you don't have a
          repeating space bar, or you are working at low baud rate, you can
          set this switch to prevent this behavior.  You may wish to use the
          baud-rate switch modifier below to disable typeahead only at lower
          baud rates.

     -u   sets the unbroken-subject-line mode in the selector, which simply
          truncates subjects that are too long instead of dumping the middle
          portion prior to the last two words of the subject.

     -U   tells trn to not write the .newsrc file out after visiting each
          group.  While this is "unsafe" it can be faster if you have a
          really huge .newsrc.

     -v   sets verification mode for commands.  When set, the command being
          executed is displayed to give some feedback that the key has actu-
          ally been typed.  Useful when the system is heavily loaded and you
          give a command that takes a while to start up.

     -x{<number>}{<list>}
          Enable the extended (threaded) features of trn beyond the rn compa-
          tibility mode (this may be the default on your system, use +x if
          you yearn for the good ol' days).  The <number> is the maximum
          number of article-tree lines (from 0 to 11) you want displayed in
          your header.  Use the <list> to choose which thread selector styles
          you like ('s'hort, 'm'edium, or 'l'ong), and in what order they are
          selected with the 'L' command.  For example, use -xms to start with
          the medium display mode and only switch between it and the short
          mode.  You can omit either or both of the parameters, in which case
          a default of -x6lms is assumed.

     -X{<number>}{<commands>}
          If you like using the selector, you'll probably want to use this
          option to make the selector command (+) the default when a news-
          group is started up with at least <number> unread articles.  (Your
          installer may have chosen to make -X1 the default on your system.)
          It is also used to select which commands you want to be the
          defaults while using the thread selector.  For example, -X2XD will
          make the thread selector the default command for entering a news-
          group with at least 2 unread articles, and set the default command
          for the LAST page of the thread selector to be the X command and
          the default command for all other pages to be the D command.
          Either or both parameters can be omitted, as well as the second
          default command (e.g.  -XX would change the default newsgroup entry
          to use the selector and the default command for the last page of
          the selector to be 'X').  The default is -X1Z> if just -X is speci-
          fied.  To set the default selector commands without having '+' be
          the default entry into a newsgroup, specify a high number, like
          9999.

     -z   sets the minimum number of minutes that must elaps before the
          active file is refetched to look for new articles.  A value of 0 or
          using +z turns this off.

     -/   sets SAVEDIR to "%p/%c" and SAVENAME to "%a", which means that by
          default articles are saved in a subdirectory of your private news
          directory corresponding to the name of the the current newsgroup,
          with the filename being the article number.  +/ sets SAVEDIR to
          "%p" and SAVENAME to "%^C", which by default saves articles
          directly to your private news directory, with the filename being
          the name of the current newsgroup, first letter capitalized.
          (Either +/ or -/ may be default on your system, depending on the
          feelings of your news administrator when he, she or it installed
          trn.) You may, of course, explicitly set SAVEDIR and SAVENAME to
          other values -- see discussion in the environment section.

     Any switch may be selectively applied according to the current baud-
     rate.  Simply prefix the switch with +speed to apply the switch at that
     speed or greater, and -speed to apply the switch at that speed or less.
     Examples: -1200-hposted suppresses the Posted line at 1200 baud or less;
     +9600-m enables marking at 9600 baud or more.  You can apply the modif-
     ier recursively to itself also: +300-1200-t sets terse mode from 300 to
     1200 baud.

     Similarly, switches may be selected based on terminal type:
          -=vt100+T      set +T on vt100
          -=tvi920-ETERM=mytvi     get a special termcap entry
          -=tvi920-ERNMACRO=%./.rnmac.tvi
                         set up special key-mappings
          +=paper-v      set verify mode if not hardcopy

     Some switch arguments, such as environment variable values, may require
     spaces in them.  Such spaces should be quoted via ", ', or \ in the con-
     ventional fashion, even when passed via TRNINIT or the & command.

