LESS(1)                                                 LESS(1)





NAME
       less - opposite of more

SYNOPSIS
       less -?
       less --help
       less -V
       less --version
       less [-[+]aBcCdeEfFgGiIJKLmMnNqQrRsSuUVwWX~]
            [-b space] [-h lines] [-j line] [-k keyfile]
            [-{oO} logfile] [-p pattern] [-P prompt] [-t tag]
            [-T tagsfile] [-x tab,...] [-y lines] [-[z] lines]
            [-# shift] [+[+]cmd] [--] [filename]...
       (See  the  OPTIONS  section  for alternate option syntax
       with long option names.)


DESCRIPTION
       Less is a program similar to more (1), but which  allows
       backward  movement  in the file as well as forward move-
       ment.  Also, less does not have to read the entire input
       file  before  starting,  so  with  large  input files it
       starts up faster than text editors like  vi  (1).   Less
       uses  termcap  (or  terminfo on some systems), so it can
       run on a variety of terminals.  There  is  even  limited
       support  for  hardcopy terminals.  (On a hardcopy termi-
       nal, lines which should be printed at  the  top  of  the
       screen are prefixed with a caret.)

       Commands are based on both more and vi.  Commands may be
       preceded by a decimal number, called N in  the  descrip-
       tions  below.   The  number is used by some commands, as
       indicated.


COMMANDS
       In the following descriptions, ^X means control-X.   ESC
       stands  for  the ESCAPE key; for example ESC-v means the
       two character sequence "ESCAPE", then "v".

       h or H Help: display a summary of  these  commands.   If
              you  forget all the other commands, remember this
              one.

       SPACE or ^V or f or ^F
              Scroll forward N lines, default one  window  (see
              option  -z  below).  If N is more than the screen
              size, only  the  final  screenful  is  displayed.
              Warning:  some systems use ^V as a special liter-
              alization character.

       z      Like SPACE, but if N is specified, it becomes the
              new window size.

       ESC-SPACE
              Like SPACE, but scrolls a full screenful, even if
              it reaches end-of-file in the process.

       RETURN or ^N or e or ^E or j or ^J
              Scroll forward N lines, default 1.  The entire  N
              lines  are  displayed, even if N is more than the
              screen size.

       d or ^D
              Scroll forward N lines, default one half  of  the
              screen  size.   If N is specified, it becomes the
              new default for subsequent d and u commands.

       b or ^B or ESC-v
              Scroll backward N lines, default one window  (see
              option  -z  below).  If N is more than the screen
              size, only the final screenful is displayed.

       w      Like ESC-v, but if N is specified, it becomes the
              new window size.

       y or ^Y or ^P or k or ^K
              Scroll backward N lines, default 1.  The entire N
              lines are displayed, even if N is more  than  the
              screen  size.   Warning: some systems use ^Y as a
              special job control character.

       u or ^U
              Scroll backward N lines, default one half of  the
              screen  size.   If N is specified, it becomes the
              new default for subsequent d and u commands.

       ESC-) or RIGHTARROW
              Scroll horizontally right N  characters,  default
              half  the screen width (see the -# option).  If a
              number N is specified, it becomes the default for
              future  RIGHTARROW and LEFTARROW commands.  While
              the text is scrolled, it acts as  though  the  -S
              option (chop lines) were in effect.

       ESC-( or LEFTARROW
              Scroll  horizontally  left  N characters, default
              half the screen width (see the -# option).  If  a
              number N is specified, it becomes the default for
              future RIGHTARROW and LEFTARROW commands.

       r or ^R or ^L
              Repaint the screen.

       R      Repaint  the  screen,  discarding  any   buffered
              input.   Useful  if the file is changing while it
              is being viewed.

       F      Scroll forward, and keep trying to read when  the
              end  of  file  is reached.  Normally this command
              would be used when already  at  the  end  of  the
              file.   It is a way to monitor the tail of a file
              which is growing while it is being viewed.   (The
              behavior is similar to the "tail -f" command.)

       g or < or ESC-<
              Go to line N in the file, default 1 (beginning of
              file).  (Warning:  this  may  be  slow  if  N  is
              large.)

       G or > or ESC->
              Go  to line N in the file, default the end of the
              file.  (Warning: this may be slow if N is  large,
              or  if  N  is  not  specified and standard input,
              rather than a file, is being read.)

       p or % Go to a position N  percent  into  the  file.   N
              should be between 0 and 100.

       {      If  a  left curly bracket appears in the top line
              displayed on the screen, the { command will go to
              the  matching  right curly bracket.  The matching
              right curly bracket is positioned on  the  bottom
              line  of  the  screen.  If there is more than one
              left curly bracket on the top line,  a  number  N
              may  be  used  to specify the N-th bracket on the
              line.

       }      If a right curly bracket appears  in  the  bottom
              line  displayed on the screen, the } command will
              go to  the  matching  left  curly  bracket.   The
              matching  left curly bracket is positioned on the
              top line of the screen.  If there  is  more  than
              one right curly bracket on the top line, a number
              N may be used to specify the N-th bracket on  the
              line.

       (      Like  {,  but  applies to parentheses rather than
              curly brackets.

       )      Like }, but applies to  parentheses  rather  than
              curly brackets.

       [      Like  {,  but  applies  to square brackets rather
              than curly brackets.

       ]      Like }, but applies  to  square  brackets  rather
              than curly brackets.

       ESC-^F Followed by two characters, acts like {, but uses
              the two characters as open  and  close  brackets,
              respectively.  For example, "ESC ^F < >" could be
              used to go forward to the > which matches  the  <
              in the top displayed line.

       ESC-^B Followed by two characters, acts like }, but uses
              the two characters as open  and  close  brackets,
              respectively.  For example, "ESC ^B < >" could be
              used to go backward to the < which matches the  >
              in the bottom displayed line.

       m      Followed  by any lowercase letter, marks the cur-
              rent position with that letter.

       '      (Single quote.)  Followed by any  lowercase  let-
              ter, returns to the position which was previously
              marked with that  letter.   Followed  by  another
              single  quote,  returns  to the position at which
              the last "large" movement command  was  executed.
              Followed  by  a ^ or $, jumps to the beginning or
              end of the file  respectively.   Marks  are  pre-
              served when a new file is examined, so the ' com-
              mand can be used to switch between input files.

       ^X^X   Same as single quote.

       /pattern
              Search forward in the file for the N-th line con-
              taining  the pattern.  N defaults to 1.  The pat-
              tern is a regular expression,  as  recognized  by
              the  regular  expression library supplied by your
              system.  The search starts  at  the  second  line
              displayed  (but  see the -a and -j options, which
              change this).

              Certain characters are special if entered at  the
              beginning of the pattern; they modify the type of
              search rather than become part of the pattern:

              ^N or !
                     Search for lines which do  NOT  match  the
                     pattern.

              ^E or *
                     Search  multiple  files.   That is, if the
                     search reaches the END of the current file
                     without  finding  a match, the search con-
                     tinues in the next  file  in  the  command
                     line list.

              ^F or @
                     Begin  the search at the first line of the
                     FIRST  file  in  the  command  line  list,
                     regardless  of what is currently displayed
                     on the screen or the settings of the -a or
                     -j options.

              ^K     Highlight  any text which matches the pat-
                     tern on the current screen, but don't move
                     to  the  first  match  (KEEP current posi-
                     tion).

              ^R     Don't   interpret    regular    expression
                     metacharacters;  that is, do a simple tex-
                     tual comparison.

       ?pattern
              Search backward in the file  for  the  N-th  line
              containing the pattern.  The search starts at the
              line immediately before the top line displayed.

              Certain characters are special as in the  /  com-
              mand:

              ^N or !
                     Search  for  lines  which do NOT match the
                     pattern.

              ^E or *
                     Search multiple files.  That  is,  if  the
                     search  reaches  the beginning of the cur-
                     rent file without  finding  a  match,  the
                     search  continues  in the previous file in
                     the command line list.

              ^F or @
                     Begin the search at the last line  of  the
                     last   file  in  the  command  line  list,
                     regardless of what is currently  displayed
                     on the screen or the settings of the -a or
                     -j options.

              ^K     As in forward searches.

              ^R     As in forward searches.

       ESC-/pattern
              Same as "/*".

       ESC-?pattern
              Same as "?*".

       n      Repeat previous search, for N-th line  containing
              the  last  pattern.   If  the previous search was
              modified by ^N, the search is made for  the  N-th
              line NOT containing the pattern.  If the previous
              search was modified by ^E, the  search  continues
              in  the  next (or previous) file if not satisfied
              in the current file.  If the previous search  was
              modified  by ^R, the search is done without using
              regular expressions.  There is no effect  if  the
              previous search was modified by ^F or ^K.

       N      Repeat   previous  search,  but  in  the  reverse
              direction.

       ESC-n  Repeat previous search, but crossing file  bound-
              aries.   The  effect is as if the previous search
              were modified by *.

       ESC-N  Repeat previous search, but in the reverse direc-
              tion and crossing file boundaries.

       ESC-u  Undo  search highlighting.  Turn off highlighting
              of strings matching the current  search  pattern.
              If  highlighting is already off because of a pre-
              vious ESC-u command, turn highlighting  back  on.
              Any  search  command  will also turn highlighting
              back on.  (Highlighting can also be  disabled  by
              toggling  the -G option; in that case search com-
              mands do not turn highlighting back on.)

       :e [filename]
              Examine a new file.  If the filename is  missing,
              the  "current"  file  (see the :n and :p commands
              below) from the list of files in the command line
              is  re-examined.  A percent sign (%) in the file-
              name is replaced by the name of the current file.
              A  pound  sign (#) is replaced by the name of the
              previously examined file.  However, two  consecu-
              tive  percent  signs  are  simply replaced with a
              single percent sign.  This allows you to enter  a
              filename  that  contains  a  percent  sign in the
              name.  Similarly, two consecutive pound signs are
              replaced  with a single pound sign.  The filename
              is inserted into the command line list  of  files
              so  that  it  can be seen by subsequent :n and :p
              commands.  If the filename  consists  of  several
              files,  they  are  all  inserted into the list of
              files and the first  one  is  examined.   If  the
              filename  contains one or more spaces, the entire
              filename should  be  enclosed  in  double  quotes
              (also see the -" option).

       ^X^V or E
              Same  as  :e.   Warning: some systems use ^V as a
              special literalization character.  On  such  sys-
              tems, you may not be able to use ^V.

       :n     Examine  the  next  file  (from the list of files
              given in the command line).  If  a  number  N  is
              specified, the N-th next file is examined.

       :p     Examine  the  previous  file  in the command line
              list.  If a number N is specified, the N-th  pre-
              vious file is examined.

       :x     Examine  the first file in the command line list.
              If a number N is specified, the N-th file in  the
              list is examined.

       :d     Remove the current file from the list of files.

       t      Go  to  the next tag, if there were more than one
              matches for the current tag.  See the  -t  option
              for more details about tags.

       T      Go  to  the previous tag, if there were more than
              one matches for the current tag.

       = or ^G or :f
              Prints some  information  about  the  file  being
              viewed,  including  its  name and the line number
              and  byte  offset  of  the  bottom   line   being
              displayed.   If  possible,  it  also  prints  the
              length of the file, the number of  lines  in  the
              file  and  the percent of the file above the last
              displayed line.

       -      Followed by one of the command line  option  let-
              ters  (see  OPTIONS  below), this will change the
              setting  of  that  option  and  print  a  message
              describing  the new setting.  If a ^P (CONTROL-P)
              is entered immediately after the dash,  the  set-
              ting  of  the option is changed but no message is
              printed.  If the  option  letter  has  a  numeric
              value (such as -b or -h), or a string value (such
              as -P or -t), a new value may  be  entered  after
              the option letter.  If no new value is entered, a
              message describing the current setting is printed
              and nothing is changed.

       --     Like  the - command, but takes a long option name
              (see OPTIONS below) rather than a  single  option
              letter.   You  must press RETURN after typing the
              option name.  A ^P immediately after  the  second
              dash  suppresses printing of a message describing
              the new setting, as in the - command.

       -+     Followed by one of the command line  option  let-
              ters  this  will  reset the option to its default
              setting and print a message  describing  the  new
              setting.   (The "-+X" command does the same thing
              as "-+X" on the command  line.)   This  does  not
              work for string-valued options.

       --+    Like the -+ command, but takes a long option name
              rather than a single option letter.

       -!     Followed by one of the command line  option  let-
              ters,  this  will  reset the option to the "oppo-
              site" of its default setting and print a  message
              describing  the  new setting.  This does not work
              for numeric or string-valued options.

       --!    Like the -! command, but takes a long option name
              rather than a single option letter.

       _      (Underscore.)   Followed  by  one  of the command
              line option letters, this will  print  a  message
              describing  the  current  setting of that option.
              The setting of the option is not changed.

       __     (Double underscore.)   Like  the  _  (underscore)
              command, but takes a long option name rather than
              a single option letter.  You  must  press  RETURN
              after typing the option name.

       +cmd   Causes the specified cmd to be executed each time
              a new file is examined.  For example,  +G  causes
              less  to  initially display each file starting at
              the end rather than the beginning.

       V      Prints the version number of less being run.

       q or Q or :q or :Q or ZZ
              Exits less.

       The following four commands may or  may  not  be  valid,
       depending on your particular installation.


       v      Invokes  an editor to edit the current file being
              viewed.  The editor is taken from the environment
              variable  VISUAL  if defined, or EDITOR if VISUAL
              is not defined, or defaults to  "vi"  if  neither
              VISUAL  nor EDITOR is defined.  See also the dis-
              cussion of LESSEDIT under the section on  PROMPTS
              below.

       ! shell-command
              Invokes  a  shell to run the shell-command given.
              A percent sign (%) in the command is replaced  by
              the  name  of the current file.  A pound sign (#)
              is replaced by the name of the  previously  exam-
              ined  file.  "!!" repeats the last shell command.
              "!" with no shell command simply invokes a shell.
              On  Unix  systems,  the  shell  is taken from the
              environment variable SHELL, or defaults to  "sh".
              On MS-DOS and OS/2 systems, the shell is the nor-
              mal command processor.

       | <m> shell-command
              <m> represents any mark letter.  Pipes a  section
              of  the  input  file  to the given shell command.
              The section of the file to be  piped  is  between
              the  first  line  on  the  current screen and the
              position marked by the letter.  <m> may also be ^
              or $ to indicate beginning or end of file respec-
              tively.  If <m> is  .  or  newline,  the  current
              screen is piped.

       s filename
              Save the input to a file.  This only works if the
              input is a pipe, not an ordinary file.


OPTIONS
       Command line options are described below.  Most  options
       may  be  changed while less is running, via the "-" com-
       mand.

       Most options may be given in one of two forms: either  a
       dash followed by a single letter, or two dashes followed
       by a long option name.  A long option name may be abbre-
       viated  as long as the abbreviation is unambiguous.  For
       example, --quit-at-eof may be  abbreviated  --quit,  but
       not  --qui,  since  both --quit-at-eof and --quiet begin
       with --qui.  Some long option names  are  in  uppercase,
       such  as  --QUIT-AT-EOF, as distinct from --quit-at-eof.
       Such option names need only have their first letter cap-
       italized;  the  remainder  of  the name may be in either
       case.   For  example,  --Quit-at-eof  is  equivalent  to
       --QUIT-AT-EOF.

       Options  are  also  taken  from the environment variable
       "LESS".  For example, to  avoid  typing  "less  -options
       ..." each time less is invoked, you might tell csh:

       setenv LESS "-options"

       or if you use sh:

       LESS="-options"; export LESS

       On  MS-DOS,  you  don't  need the quotes, but you should
       replace any percent signs in the options string by  dou-
       ble percent signs.

       The  environment  variable  is parsed before the command
       line, so command line options override the LESS environ-
       ment  variable.   If an option appears in the LESS vari-
       able, it can be reset to its default value on  the  com-
       mand  line  by  beginning  the  command line option with
       "-+".

       For options like -P or -D which take a following string,
       a  dollar sign ($) must be used to signal the end of the
       string.  For example, to set two -D options  on  MS-DOS,
       you must have a dollar sign between them, like this:

       LESS="-Dn9.1$-Ds4.1"


       -? or --help
              This  option  displays  a summary of the commands
              accepted by less (the same  as  the  h  command).
              (Depending on how your shell interprets the ques-
              tion mark, it may be necessary to quote the ques-
              tion mark, thus: "-\?".)

       -a or --search-skip-screen
              Causes searches to start after the last line dis-
              played on the screen,  thus  skipping  all  lines
              displayed  on  the  screen.  By default, searches
              start at the second line on the screen (or  after
              the last found line; see the -j option).

       -bn or --buffers=n
              Specifies  the  amount  of buffer space less will
              use for each file, in units  of  kilobytes  (1024
              bytes).   By  default 64K of buffer space is used
              for each file (unless the file is a pipe; see the
              -B option).  The -b option specifies instead that
              n kilobytes of buffer space should  be  used  for
              each  file.   If  n is -1, buffer space is unlim-
              ited; that is, the entire file is read into  mem-
              ory.

       -B or --auto-buffers
              By  default,  when  data  is  read  from  a pipe,
              buffers are allocated  automatically  as  needed.
              If  a large amount of data is read from the pipe,
              this can cause a large amount  of  memory  to  be
              allocated.  The -B option disables this automatic
              allocation of buffers for pipes, so that only 64K
              (or  the  amount  of  space  specified  by the -b
              option) is used for the pipe.  Warning: use of -B
              can  result  in erroneous display, since only the
              most recently viewed part of the file is kept  in
              memory; any earlier data is lost.

       -c or --clear-screen
              Causes  full  screen  repaints to be painted from
              the top  line  down.   By  default,  full  screen
              repaints are done by scrolling from the bottom of
              the screen.

       -C or --CLEAR-SCREEN
              The -C option is  like  -c,  but  the  screen  is
              cleared before it is repainted.

       -d or --dumb
              The  -d  option suppresses the error message nor-
              mally displayed if the terminal is dumb; that is,
              lacks  some  important  capability,  such  as the
              ability to clear the screen or  scroll  backward.
              The  -d  option  does  not  otherwise  change the
              behavior of less on a dumb terminal.

       -Dxcolor or --color=xcolor
              [MS-DOS only] Sets the color  of  the  text  dis-
              played.   x  is  a single character which selects
              the type  of  text  whose  color  is  being  set:
              n=normal,   s=standout,   d=bold,   u=underlined,
              k=blink.  color is a pair of numbers separated by
              a  period.   The  first  number selects the fore-
              ground color and the  second  selects  the  back-
              ground  color  of the text.  A single number N is
              the same as N.0.

       -e or --quit-at-eof
              Causes less to automatically exit the second time
              it reaches end-of-file.  By default, the only way
              to exit less is via the "q" command.

       -E or --QUIT-AT-EOF
              Causes less to automatically exit the first  time
              it reaches end-of-file.

       -f or --force
              Forces  non-regular  files to be opened.  (A non-
              regular file is a directory or a  device  special
              file.)   Also suppresses the warning message when
              a binary file is opened.  By default,  less  will
              refuse to open non-regular files.

       -F or --quit-if-one-screen
              Causes  less  to automatically exit if the entire
              file can be displayed on the first screen.

       -g or --hilite-search
              Normally, less will highlight ALL  strings  which
              match  the  last  search  command.  The -g option
              changes this behavior to highlight only the  par-
              ticular string which was found by the last search
              command.  This can cause  less  to  run  somewhat
              faster than the default.

       -G or --HILITE-SEARCH
              The  -G  option  suppresses  all  highlighting of
              strings found by search commands.

       -hn or --max-back-scroll=n
              Specifies a maximum number  of  lines  to  scroll
              backward.   If it is necessary to scroll backward
              more than n lines, the screen is repainted  in  a
              forward direction instead.  (If the terminal does
              not have the ability to scroll backward,  -h0  is
              implied.)

       -i or --ignore-case
              Causes  searches  to ignore case; that is, upper-
              case  and  lowercase  are  considered  identical.
              This  option  is ignored if any uppercase letters
              appear in the search pattern; in other words,  if
              a  pattern  contains uppercase letters, then that
              search does not ignore case.

       -I or --IGNORE-CASE
              Like -i, but searches ignore  case  even  if  the
              pattern contains uppercase letters.

       -jn or --jump-target=n
              Specifies a line on the screen where the "target"
              line is to be positioned.  A target line  is  the
              object  of  a  text search, tag search, jump to a
              line number, jump to a file percentage,  or  jump
              to  a marked position.  The screen line is speci-
              fied by a number: the top line on the  screen  is
              1,  the  next is 2, and so on.  The number may be
              negative to specify a line relative to the bottom
              of  the  screen: the bottom line on the screen is
              -1, the second to the bottom is -2,  and  so  on.
              If  the  -j option is used, searches begin at the
              line immediately  after  the  target  line.   For
              example, if "-j4" is used, the target line is the
              fourth line on the screen, so searches  begin  at
              the fifth line on the screen.

       -J or --status-column
              Displays  a status column at the left edge of the
              screen.  The status column shows the  lines  that
              matched the current search.  The status column is
              also used if the -w or -W option is in effect.

       -kfilename or --lesskey-file=filename
              Causes less to open and interpret the named  file
              as  a  lesskey (1) file.  Multiple -k options may
              be specified.  If the LESSKEY  or  LESSKEY_SYSTEM
              environment variable is set, or if a lesskey file
              is found in a standard place (see KEY  BINDINGS),
              it is also used as a lesskey file.

       -K or --quit-on-intr
              Causes less to exit immediately when an interrupt
              character (usually ^C) is  typed.   Normally,  an
              interrupt  character causes less to stop whatever
              it is doing and return to its command prompt.

       -L or --no-lessopen
              Ignore the LESSOPEN environment variable (see the
              INPUT  PREPROCESSOR  section below).  This option
              can be set from within less, but  it  will  apply
              only  to  files  opened  subsequently, not to the
              file which is currently open.

       -m or --long-prompt
              Causes less to prompt verbosely (like more), with
              the  percent  into  the  file.   By default, less
              prompts with a colon.

       -M or --LONG-PROMPT
              Causes less to prompt even  more  verbosely  than
              more.

       -n or --line-numbers
              Suppresses  line  numbers.   The  default (to use
              line numbers) may cause less to run  more  slowly
              in some cases, especially with a very large input
              file.   Suppressing  line  numbers  with  the  -n
              option  will avoid this problem.  Using line num-
              bers means: the line number will be displayed  in
              the  verbose prompt and in the = command, and the
              v command will pass the current  line  number  to
              the  editor  (see also the discussion of LESSEDIT
              in PROMPTS below).

       -N or --LINE-NUMBERS
              Causes a line  number  to  be  displayed  at  the
              beginning of each line in the display.

       -ofilename or --log-file=filename
              Causes  less  to copy its input to the named file
              as it is being viewed.  This  applies  only  when
              the  input  file is a pipe, not an ordinary file.
              If the file already exists,  less  will  ask  for
              confirmation before overwriting it.

       -Ofilename or --LOG-FILE=filename
              The  -O  option is like -o, but it will overwrite
              an existing file without asking for confirmation.

              If  no log file has been specified, the -o and -O
              options can be used from within less to specify a
              log  file.  Without a file name, they will simply
              report the name of the log file.  The "s" command
              is  equivalent to specifying -o from within less.

       -ppattern or --pattern=pattern
              The -p option on the command line  is  equivalent
              to  specifying  +/pattern; that is, it tells less
              to start at the first occurrence  of  pattern  in
              the file.

       -Pprompt or --prompt=prompt
              Provides  a way to tailor the three prompt styles
              to your own preference.  This option  would  nor-
              mally  be  put  in the LESS environment variable,
              rather than being typed in with  each  less  com-
              mand.   Such  an  option  must either be the last
              option in the LESS variable, or be terminated  by
              a  dollar sign.  -Ps followed by a string changes
              the default (short) prompt to that  string.   -Pm
              changes  the medium (-m) prompt.  -PM changes the
              long (-M) prompt.  -Ph changes the prompt for the
              help  screen.  -P= changes the message printed by
              the = command.  -Pw changes the  message  printed
              while  waiting  for data (in the F command).  All
              prompt strings consist of a sequence  of  letters
              and special escape sequences.  See the section on
              PROMPTS for more details.

       -q or --quiet or --silent
              Causes moderately "quiet" operation: the terminal
              bell  is not rung if an attempt is made to scroll
              past the end of the file or before the  beginning
              of  the  file.   If  the  terminal  has a "visual
              bell", it is used instead.  The bell will be rung
              on  certain  other  errors,  such  as  typing  an
              invalid character.  The default is  to  ring  the
              terminal bell in all such cases.

       -Q or --QUIET or --SILENT
              Causes  totally  "quiet"  operation: the terminal
              bell is never rung.

       -r or --raw-control-chars
              Causes "raw" control characters to be  displayed.
              The  default  is  to  display  control characters
              using the caret notation; for example, a control-
              A  (octal  001)  is  displayed as "^A".  Warning:
              when the -r option  is  used,  less  cannot  keep
              track  of  the  actual  appearance  of the screen
              (since this depends on how the screen responds to
              each  type  of control character).  Thus, various
              display problems may result, such as  long  lines
              being split in the wrong place.

       -R or --RAW-CONTROL-CHARS
              Like  -r,  but only ANSI "color" escape sequences
              are output in "raw" form.  Unlike -r, the  screen
              appearance is maintained correctly in most cases.
              ANSI "color" escape sequences  are  sequences  of
              the form:

                   ESC [ ... m

              where  the "..." is zero or more color specifica-
              tion characters For the purpose of keeping  track
              of screen appearance, ANSI color escape sequences
              are assumed to not move the cursor.  You can make
              less think that characters other than "m" can end
              ANSI  color  escape  sequences  by  setting   the
              environment variable LESSANSIENDCHARS to the list
              of  characters  which  can  end  a  color  escape
              sequence.  And you can make less think that char-
              acters other than the standard  ones  may  appear
              between the ESC and the m by setting the environ-
              ment variable LESSANSIMIDCHARS  to  the  list  of
              characters which can appear.

       -s or --squeeze-blank-lines
              Causes  consecutive  blank  lines  to be squeezed
              into a single blank line.  This  is  useful  when
              viewing nroff output.

       -S or --chop-long-lines
              Causes  lines  longer than the screen width to be
              chopped rather than folded.  That is, the portion
              of  a  long  line that does not fit in the screen
              width is not shown.  The default is to fold  long
              lines; that is, display the remainder on the next
              line.

       -ttag or --tag=tag
              The -t option, followed  immediately  by  a  TAG,
              will edit the file containing that tag.  For this
              to work, tag information must be  available;  for
              example,  there  may  be  a  file  in the current
              directory called  "tags",  which  was  previously
              built  by ctags (1) or an equivalent command.  If
              the environment variable LESSGLOBALTAGS  is  set,
              it  is taken to be the name of a command compati-
              ble with global (1), and that command is executed
              to  find  the tag.  (See http://www.gnu.org/soft-
              ware/global/global.html).  The -t option may also
              be  specified  from within less (using the - com-
              mand) as a way of examining a new file.  The com-
              mand  ":t"  is  equivalent  to specifying -t from
              within less.

       -Ttagsfile or --tag-file=tagsfile
              Specifies a tags  file  to  be  used  instead  of
              "tags".

       -u or --underline-special
              Causes  backspaces  and  carriage  returns  to be
              treated as printable characters;  that  is,  they
              are  sent to the terminal when they appear in the
              input.

       -U or --UNDERLINE-SPECIAL
              Causes backspaces, tabs and carriage  returns  to
              be  treated  as control characters; that is, they
              are handled as specified by the -r option.

              By default,  if  neither  -u  nor  -U  is  given,
              backspaces which appear adjacent to an underscore
              character are treated specially:  the  underlined
              text  is  displayed using the terminal's hardware
              underlining capability.  Also,  backspaces  which
              appear   between  two  identical  characters  are
              treated specially: the overstruck text is printed
              using  the  terminal's hardware boldface capabil-
              ity.  Other backspaces are  deleted,  along  with
              the  preceding character.  Carriage returns imme-
              diately followed by a newline are deleted.  other
              carriage  returns are handled as specified by the
              -r option.  Text which is  overstruck  or  under-
              lined can be searched for if neither -u nor -U is
              in effect.

       -V or --version
              Displays the version number of less.

       -w or --hilite-unread
              Temporarily highlights the first "new" line after
              a  forward  movement  of  a full page.  The first
              "new" line is the line immediately following  the
              line  previously  at  the  bottom  of the screen.
              Also highlights the target line after a  g  or  p
              command.   The  highlight  is removed at the next
              command which causes movement.  The  entire  line
              is  highlighted,  unless  the  -J  option  is  in
              effect, in which case only the status  column  is
              highlighted.

       -W or --HILITE-UNREAD
              Like -w, but temporarily highlights the first new
              line after any forward  movement  command  larger
              than one line.

       -xn,... or --tabs=n,...
              Sets  tab stops.  If only one n is specified, tab
              stops are set at multiples  of  n.   If  multiple
              values  separated  by  commas  are specified, tab
              stops are set at those positions, and  then  con-
              tinue with the same spacing as the last two.  For
              example, -x9,17 will set tabs at positions 9, 17,
              25, 33, etc.  The default for n is 8.

       -X or --no-init
              Disables  sending  the termcap initialization and
              deinitialization strings to the  terminal.   This
              is  sometimes  desirable  if the deinitialization
              string does something unnecessary, like  clearing
              the screen.

       --no-keypad
              Disables  sending  the  keypad initialization and
              deinitialization strings to the  terminal.   This
              is  sometimes  useful  if the keypad strings make
              the numeric keypad behave in an undesirable  man-
              ner.

       -yn or --max-forw-scroll=n
              Specifies  a  maximum  number  of lines to scroll
              forward.  If it is necessary  to  scroll  forward
              more  than  n  lines,  the  screen  is  repainted
              instead.  The -c or -C  option  may  be  used  to
              repaint  from  the  top of the screen if desired.
              By   default,   any   forward   movement   causes
              scrolling.

       -[z]n or --window=n
              Changes  the  default  scrolling window size to n
              lines.  The default is one screenful.  The z  and
              w  commands can also be used to change the window
              size.  The "z" may be omitted  for  compatibility
              with more.  If the number n is negative, it indi-
              cates n lines less than the current screen  size.
              For example, if the screen is 24 lines, -z-4 sets
              the scrolling window to 20 lines.  If the  screen
              is  resized  to  40  lines,  the scrolling window
              automatically changes to 36 lines.

       -"cc or --quotes=cc
              Changes the filename quoting character.  This may
              be  necessary  if  you  are trying to name a file
              which contains both spaces and quote  characters.
              Followed  by a single character, this changes the
              quote character  to  that  character.   Filenames
              containing  a  space should then be surrounded by
              that character  rather  than  by  double  quotes.
              Followed  by  two  characters,  changes  the open
              quote to the first character, and the close quote
              to  the second character.  Filenames containing a
              space should then be preceded by the  open  quote
              character and followed by the close quote charac-
              ter.  Note that even after the  quote  characters
              are  changed, this option remains -" (a dash fol-
              lowed by a double quote).

       -~ or --tilde
              Normally lines after end of file are displayed as
              a  single  tilde  (~).   This option causes lines
              after end of file to be displayed as blank lines.

       -# or --shift
              Specifies  the  default  number  of  positions to
              scroll horizontally in the RIGHTARROW and LEFTAR-
              ROW  commands.   If the number specified is zero,
              it sets the default number of  positions  to  one
              half of the screen width.

       --     A  command line argument of "--" marks the end of
              option arguments.  Any arguments  following  this
              are interpreted as filenames.  This can be useful
              when viewing a file whose name begins with a  "-"
              or "+".

       +      If  a  command  line  option  begins  with +, the
              remainder of that option is taken to be  an  ini-
              tial command to less.  For example, +G tells less
              to start at the end of the file rather  than  the
              beginning,  and  +/xyz  tells  it to start at the
              first occurrence of "xyz" in the file.  As a spe-
              cial  case,  +<number> acts like +<number>g; that
              is, it starts the display at the  specified  line
              number  (however,  see  the  caveat under the "g"
              command above).  If the option  starts  with  ++,
              the  initial  command applies to every file being
              viewed, not just the first one.   The  +  command
              described  previously may also be used to set (or
              change) an initial command for every file.


LINE EDITING
       When entering command line at the bottom of  the  screen
       (for example, a filename for the :e command, or the pat-
       tern for a search command), certain keys can be used  to
       manipulate  the  command  line.   Most  commands have an
       alternate form in [ brackets ] which can be  used  if  a
       key  does  not  exist  on  a  particular keyboard.  (The
       bracketed forms do not work in the MS-DOS version.)  Any
       of  these  special keys may be entered literally by pre-
       ceding it with the "literal" character, either ^V or ^A.
       A  backslash  itself  may  also  be entered literally by
       entering two backslashes.

       LEFTARROW [ ESC-h ]
              Move the cursor one space to the left.

       RIGHTARROW [ ESC-l ]
              Move the cursor one space to the right.

       ^LEFTARROW [ ESC-b or ESC-LEFTARROW ]
              (That is, CONTROL and LEFTARROW  simultaneously.)
              Move the cursor one word to the left.

       ^RIGHTARROW [ ESC-w or ESC-RIGHTARROW ]
              (That is, CONTROL and RIGHTARROW simultaneously.)
              Move the cursor one word to the right.

       HOME [ ESC-0 ]
              Move the cursor to the beginning of the line.

       END [ ESC-$ ]
              Move the cursor to the end of the line.

       BACKSPACE
              Delete the character to the left of  the  cursor,
              or  cancel  the  command  if  the command line is
              empty.

       DELETE or [ ESC-x ]
              Delete the character under the cursor.

       ^BACKSPACE [ ESC-BACKSPACE ]
              (That is, CONTROL and BACKSPACE  simultaneously.)
              Delete the word to the left of the cursor.

       ^DELETE [ ESC-X or ESC-DELETE ]
              (That  is,  CONTROL  and  DELETE simultaneously.)
              Delete the word under the cursor.

       UPARROW [ ESC-k ]
              Retrieve the previous command line.

       DOWNARROW [ ESC-j ]
              Retrieve the next command line.

       TAB    Complete the partial filename to the left of  the
              cursor.   If  it  matches more than one filename,
              the first match is entered into the command line.
              Repeated  TABs will cycle thru the other matching
              filenames.  If the completed filename is a direc-
              tory, a "/" is appended to the filename.  (On MS-
              DOS systems, a "\" is appended.)  The environment
              variable  LESSSEPARATOR  can be used to specify a
              different character  to  append  to  a  directory
              name.

       BACKTAB [ ESC-TAB ]
              Like,  TAB,  but  cycles in the reverse direction
              thru the matching filenames.

       ^L     Complete the partial filename to the left of  the
              cursor.   If  it  matches more than one filename,
              all matches are entered into the command line (if
              they fit).

       ^U (Unix and OS/2) or ESC (MS-DOS)
              Delete  the  entire  command  line, or cancel the
              command if the command line  is  empty.   If  you
              have  changed your line-kill character in Unix to
              something other than ^U, that character  is  used
              instead of ^U.


KEY BINDINGS
       You  may define your own less commands by using the pro-
       gram lesskey (1) to create a lesskey  file.   This  file
       specifies a set of command keys and an action associated
       with each key.  You may also use lesskey to  change  the
       line-editing  keys  (see LINE EDITING), and to set envi-
       ronment variables.  If the environment variable  LESSKEY
       is  set, less uses that as the name of the lesskey file.
       Otherwise, less  looks  in  a  standard  place  for  the
       lesskey  file: On Unix systems, less looks for a lesskey
       file called "$HOME/.less".  On MS-DOS and  Windows  sys-
       tems,   less   looks   for   a   lesskey   file   called
       "$HOME/_less", and if it is not found there, then  looks
       for a lesskey file called "_less" in any directory spec-
       ified in the PATH environment variable.   On  OS/2  sys-
       tems,   less   looks   for   a   lesskey   file   called
       "$HOME/less.ini", and if it is not found, then looks for
       a lesskey file called "less.ini" in any directory speci-
       fied in the INIT environment variable,  and  if  it  not
       found  there,  then  looks  for  a  lesskey  file called
       "less.ini" in any directory specified in the PATH  envi-
       ronment  variable.  See the lesskey manual page for more
       details.

       A system-wide lesskey file may also be set up to provide
       key  bindings.   If  a  key  is  defined in both a local
       lesskey file and in the system-wide file,  key  bindings
       in the local file take precedence over those in the sys-
       tem-wide file.  If the environment variable LESSKEY_SYS-
       TEM  is  set,  less uses that as the name of the system-
       wide lesskey file.  Otherwise, less looks in a  standard
       place for the system-wide lesskey file: On Unix systems,
       the system-wide lesskey file is  /usr/local/etc/sysless.
       (However,  if  less  was  built with a different sysconf
       directory than /usr/local/etc, that directory  is  where
       the  sysless file is found.)  On MS-DOS and Windows sys-
       tems, the system-wide lesskey file is  c:\_sysless.   On
       OS/2  systems,  the  system-wide lesskey file is c:\sys-
       less.ini.


INPUT PREPROCESSOR
       You may define an "input preprocessor" for less.  Before
       less  opens a file, it first gives your input preproces-
       sor a chance to modify the way the contents of the  file
       are  displayed.  An input preprocessor is simply an exe-
       cutable program (or shell script), which writes the con-
       tents  of  the  file  to  a  different  file, called the
       replacement file.  The contents of the replacement  file
       are then displayed in place of the contents of the orig-
       inal file.  However, it will appear to the  user  as  if
       the  original file is opened; that is, less will display
       the original filename as the name of the current file.

       An input preprocessor receives one  command  line  argu-
       ment, the original filename, as entered by the user.  It
       should create the replacement file, and  when  finished,
       print  the  name of the replacement file to its standard
       output.  If the input preprocessor  does  not  output  a
       replacement  filename,  less  uses the original file, as
       normal.  The input preprocessor is not called when view-
       ing  standard  input.   To set up an input preprocessor,
       set the LESSOPEN environment variable to a command  line
       which will invoke your input preprocessor.  This command
       line should include one occurrence of the  string  "%s",
       which  will  be  replaced by the filename when the input
       preprocessor command is invoked.

       When less closes a file opened in such a  way,  it  will
       call  another  program,  called the input postprocessor,
       which may perform any desired clean-up action  (such  as
       deleting  the  replacement  file  created  by LESSOPEN).
       This program receives two command  line  arguments,  the
       original  filename  as entered by the user, and the name
       of the replacement file.  To set up an input postproces-
       sor, set the LESSCLOSE environment variable to a command
       line which will invoke your input postprocessor.  It may
       include two occurrences of the string "%s"; the first is
       replaced with the original name of the file and the sec-
       ond  with  the  name  of the replacement file, which was
       output by LESSOPEN.

       For example, on many Unix  systems,  these  two  scripts
       will  allow  you to keep files in compressed format, but
       still let less view them directly:

       lessopen.sh:
            #! /bin/sh
            case "$1" in
            *.Z) uncompress -
                 if [ -s /tmp/less.$$ ]; then
                      echo /tmp/less.$$
                 else
                      rm -f /tmp/less.$$
                 fi
                 ;;
            esac

       lessclose.sh:
            #! /bin/sh
            rm $2

       To use these scripts, put them both where  they  can  be
       executed  and  set  LESSOPEN="lessopen.sh %s", and LESS-
       CLOSE="lessclose.sh %s %s".  More complex  LESSOPEN  and
       LESSCLOSE  scripts  may be written to accept other types
       of compressed files, and so on.

       It is also possible to set up an input  preprocessor  to
       pipe the file data directly to less, rather than putting
       the data into a replacement file.  This avoids the  need
       to  decompress  the  entire file before starting to view
       it.  An input preprocessor that works this way is called
       an  input  pipe.   An input pipe, instead of writing the
       name of a  replacement  file  on  its  standard  output,
       writes  the  entire  contents of the replacement file on
       its standard output.  If the input pipe does  not  write
       any  characters on its standard output, then there is no
       replacement file and less uses  the  original  file,  as
       normal.   To use an input pipe, make the first character
       in the LESSOPEN environment variable a vertical bar  (|)
       to signify that the input preprocessor is an input pipe.

       For example, on many Unix systems, this script will work
       like the previous example scripts:

       lesspipe.sh:
            #! /bin/sh
            case "$1" in
            *.Z) uncompress -c $1  2>/dev/null
                 ;;
            esac

       To  use this script, put it where it can be executed and
       set LESSOPEN="|lesspipe.sh %s".  When an input  pipe  is
       used,  a  LESSCLOSE postprocessor can be used, but it is
       usually not necessary since there is no replacement file
       to  clean  up.   In this case, the replacement file name
       passed to the LESSCLOSE postprocessor is "-".


NATIONAL CHARACTER SETS
       There are three types of characters in the input file:

       normal characters
              can be displayed directly to the screen.

       control characters
              should  not  be  displayed  directly,   but   are
              expected to be found in ordinary text files (such
              as backspace and tab).

       binary characters
              should not be  displayed  directly  and  are  not
              expected to be found in text files.

       A "character set" is simply a description of which char-
       acters are to be considered normal, control, and binary.
       The  LESSCHARSET  environment  variable  may  be used to
       select a character set.  Possible values for LESSCHARSET
       are:

       ascii  BS, TAB, NL, CR, and formfeed are control charac-
              ters, all chars with values between  32  and  126
              are normal, and all others are binary.

       iso8859
              Selects  an  ISO 8859 character set.  This is the
              same as ASCII, except characters between 160  and
              255 are treated as normal characters.

       latin1 Same as iso8859.

       latin9 Same as iso8859.

       dos    Selects a character set appropriate for MS-DOS.

       ebcdic Selects an EBCDIC character set.

       IBM-1047
              Selects  an  EBCDIC  character set used by OS/390
              Unix Services.  This is the  EBCDIC  analogue  of
              latin1.   You  get  similar  results  by  setting
              either LESSCHARSET=IBM-1047 or LC_CTYPE=en_US  in
              your environment.

       koi8-r Selects a Russian character set.

       next   Selects a character set appropriate for NeXT com-
              puters.

       utf-8  Selects the UTF-8 encoding of the ISO 10646 char-
              acter set.

       windows
              Selects a character set appropriate for Microsoft
              Windows (cp 1251).

       In special cases, it may be desired to  tailor  less  to
       use  a  character  set  other than the ones definable by
       LESSCHARSET.  In this  case,  the  environment  variable
       LESSCHARDEF  can  be used to define a character set.  It
       should be set to a string where each  character  in  the
       string  represents  one  character in the character set.
       The character "." is used for a  normal  character,  "c"
       for  control,  and "b" for binary.  A decimal number may
       be used for repetition.  For  example,  "bccc4b."  would
       mean  character  0 is binary, 1, 2 and 3 are control, 4,
       5, 6 and 7 are binary, and 8 is normal.  All  characters
       after  the last are taken to be the same as the last, so
       characters 9 through 255 would be normal.  (This  is  an
       example,  and  does  not  necessarily represent any real
       character set.)

       This table shows  the  value  of  LESSCHARDEF  which  is
       equivalent  to  each  of  the  possible values for LESS-
       CHARSET:

            ascii     8bcccbcc18b95.b
            dos       8bcccbcc12bc5b95.b.
            ebcdic    5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b
                      9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b.
            IBM-1047  4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc
                      191.b
            iso8859   8bcccbcc18b95.33b.
            koi8-r    8bcccbcc18b95.b128.
            latin1    8bcccbcc18b95.33b.
            next      8bcccbcc18b95.bb125.bb

       If neither LESSCHARSET nor LESSCHARDEF is set,  but  any
       of  the  strings  "UTF-8",  "UTF8", "utf-8" or "utf8" is
       found in the LC_ALL, LC_TYPE or LANG  environment  vari-
       ables, then the default character set is utf-8.

       If  that  string  is not found, but your system supports
       the setlocale interface,  less  will  use  setlocale  to
       determine the character set.  setlocale is controlled by
       setting the LANG or LC_CTYPE environment variables.

       Finally, if the setlocale interface is also  not  avail-
       able, the default character set is latin1.

       Control  and binary characters are displayed in standout
       (reverse video).  Each such character  is  displayed  in
       caret  notation  if  possible  (e.g.  ^A for control-A).
       Caret notation is used only if inverting  the  0100  bit
       results in a normal printable character.  Otherwise, the
       character is displayed as a hex number in  angle  brack-
       ets.   This  format  can be changed by setting the LESS-
       BINFMT environment variable.  LESSBINFMT may begin  with
       a "*" and one character to select the display attribute:
       "*k" is blinking, "*d" is bold, "*u" is underlined, "*s"
       is standout, and "*n" is normal.  If LESSBINFMT does not
       begin with a "*",  normal  attribute  is  assumed.   The
       remainder  of  LESSBINFMT  is a string which may include
       one printf-style escape sequence (a % followed by x,  X,
       o,  d,  etc.).   For example, if LESSBINFMT is "*u[%x]",
       binary characters are displayed in underlined  hexadeci-
       mal  surrounded  by  brackets.   The default if no LESS-
       BINFMT is specified is  "*s<%X>".   The  default  if  no
       LESSBINFMT  is  specified  is  "*s<%02X>".  Warning: the
       result of expanding the character via LESSBINFMT must be
       less than 31 characters.

       When the character set is utf-8, the LESSUTFBINFMT envi-
       ronment variable acts similarly  to  LESSBINFMT  but  it
       applies  to  Unicode  code points that were successfully
       decoded but are unsuitable for display (e.g., unassigned
       code  points).   Its default value is "<U+%04lX>".  Note
       that LESSUTFBINFMT and LESSBINFMT  share  their  display
       attribute  setting  ("*x") so specifying one will affect
       both; LESSUTFBINFMT is read after LESSBINFMT so its set-
       ting, if any, will have priority.  Problematic octets in
       a UTF-8 file (octets of a truncated sequence, octets  of
       a  complete  but  non-shortest  form  sequence,  illegal
       octets, and stray trailing octets) are  displayed  indi-
       vidually using LESSBINFMT so as to facilitate diagnostic
       of how the UTF-8 file is ill-formed.


PROMPTS
       The -P option allows you to tailor the  prompt  to  your
       preference.   The string given to the -P option replaces
       the specified prompt string.  Certain characters in  the
       string  are interpreted specially.  The prompt mechanism
       is rather complicated to provide  flexibility,  but  the
       ordinary  user  need  not understand the details of con-
       structing personalized prompt strings.

       A  percent  sign  followed  by  a  single  character  is
       expanded according to what the following character is:

       %bX    Replaced  by  the  byte  offset  into the current
              input file.  The b is followed by a single  char-
              acter (shown as X above) which specifies the line
              whose byte offset is to be used.  If the  charac-
              ter  is a "t", the byte offset of the top line in
              the display is used, an "m" means use the  middle
              line,  a  "b"  means  use  the bottom line, a "B"
              means use the line just after  the  bottom  line,
              and  a "j" means use the "target" line, as speci-
              fied by the -j option.

       %B     Replaced by the size of the current input file.

       %c     Replaced by the column number of the text appear-
              ing in the first column of the screen.

       %dX    Replaced  by  the  page  number  of a line in the
              input file.  The line to be used is determined by
              the X, as with the %b option.

       %D     Replaced  by  the  number  of  pages in the input
              file, or equivalently, the  page  number  of  the
              last line in the input file.

       %E     Replaced  by  the  name  of  the editor (from the
              VISUAL environment variable, or the EDITOR  envi-
              ronment  variable if VISUAL is not defined).  See
              the discussion of the LESSEDIT feature below.

       %f     Replaced by the name of the current input file.

       %i     Replaced by the index of the current file in  the
              list of input files.

       %lX    Replaced  by  the  line  number  of a line in the
              input file.  The line to be used is determined by
              the X, as with the %b option.

       %L     Replaced  by  the line number of the last line in
              the input file.

       %m     Replaced by the total number of input files.

       %pX    Replaced by the percent into  the  current  input
              file,  based  on  byte offsets.  The line used is
              determined by the X as with the %b option.

       %PX    Replaced by the percent into  the  current  input
              file,  based  on  line numbers.  The line used is
              determined by the X as with the %b option.

       %s     Same as %B.

       %t     Causes any trailing spaces to be  removed.   Usu-
              ally  used  at  the  end  of  the string, but may
              appear anywhere.

       %x     Replaced by the name of the next  input  file  in
              the list.

       If  any  item  is unknown (for example, the file size if
       input is a pipe), a question mark is printed instead.

       The format of the prompt string can be changed depending
       on  certain  conditions.   A question mark followed by a
       single character acts like an  "IF":  depending  on  the
       following  character,  a condition is evaluated.  If the
       condition is true, any characters following the question
       mark  and  condition  character,  up  to  a  period, are
       included in the prompt.  If the condition is false, such
       characters  are not included.  A colon appearing between
       the question mark and the period can be used  to  estab-
       lish an "ELSE": any characters between the colon and the
       period are included in the string if and only if the  IF
       condition  is false.  Condition characters (which follow
       a question mark) may be:

       ?a     True if any characters have been included in  the
              prompt so far.

       ?bX    True  if the byte offset of the specified line is
              known.

       ?B     True if the size of current input file is  known.

       ?c     True  if  the text is horizontally shifted (%c is
              not zero).

       ?dX    True if the page number of the specified line  is
              known.

       ?e     True if at end-of-file.

       ?f     True  if  there is an input filename (that is, if
              input is not a pipe).

       ?lX    True if the line number of the specified line  is
              known.

       ?L     True  if  the line number of the last line in the
              file is known.

       ?m     True if there is more than one input file.

       ?n     True if this is the first prompt in a  new  input
              file.

       ?pX    True  if the percent into the current input file,
              based on byte offsets, of the specified  line  is
              known.

       ?PX    True  if the percent into the current input file,
              based on line numbers, of the specified  line  is
              known.

       ?s     Same as "?B".

       ?x     True  if  there is a next input file (that is, if
              the current input file is not the last one).

       Any characters other than  the  special  ones  (question
       mark, colon, period, percent, and backslash) become lit-
       erally part of the prompt.  Any of the  special  charac-
       ters  may be included in the prompt literally by preced-
       ing it with a backslash.

       Some examples:

       ?f%f:Standard input.

       This prompt prints the filename, if known; otherwise the
       string "Standard input".

       ?f%f .?ltLine %lt:?pt%pt\%:?btByte %bt:-...

       This  prompt  would  print  the filename, if known.  The
       filename is followed by the line number, if known,  oth-
       erwise  the  percent if known, otherwise the byte offset
       if known.  Otherwise, a dash  is  printed.   Notice  how
       each  question mark has a matching period, and how the %
       after the %pt is included literally by escaping it  with
       a backslash.

       ?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x..%t

       This  prints the filename if this is the first prompt in
       a file, followed by the "file N of N" message  if  there
       is more than one input file.  Then, if we are at end-of-
       file, the string "(END)" is printed followed by the name
       of  the next file, if there is one.  Finally, any trail-
       ing spaces are truncated.  This is the  default  prompt.
       For  reference,  here are the defaults for the other two
       prompts (-m and -M respectively).  Each is  broken  into
       two lines here for readability only.

       ?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x.:
            ?pB%pB\%:byte %bB?s/%s...%t

       ?f%f .?n?m(file %i of %m) ..?ltlines %lt-%lb?L/%L. :
            byte %bB?s/%s. .?e(END) ?x- Next\: %x.:?pB%pB\%..%t

       And  here  is the default message produced by the = com-
       mand:

       ?f%f .?m(file %i of %m) .?ltlines %lt-%lb?L/%L. .
            byte %bB?s/%s. ?e(END) :?pB%pB\%..%t

       The prompt expansion features are also used for  another
       purpose: if an environment variable LESSEDIT is defined,
       it is used as the command to be executed when the v com-
       mand is invoked.  The LESSEDIT string is expanded in the
       same way as the prompt strings.  The default  value  for
       LESSEDIT is:

            %E ?lm+%lm. %f

       Note that this expands to the editor name, followed by a
       + and the line number, followed by the  file  name.   If
       your editor does not accept the "+linenumber" syntax, or
       has other differences in invocation syntax, the LESSEDIT
       variable can be changed to modify this default.


SECURITY
       When  the  environment  variable LESSSECURE is set to 1,
       less runs in a "secure" mode.  This means these features
       are disabled:

              !      the shell command

              |      the pipe command

              :e     the examine command.

              v      the editing command

              s  -o  log files

              -k     use of lesskey files

              -t     use of tags files

                     metacharacters in filenames, such as *

                     filename completion (TAB, ^L)

       Less  can also be compiled to be permanently in "secure"
       mode.


ENVIRONMENT VARIABLES
       Environment variables may be  specified  either  in  the
       system  environment  as usual, or in a lesskey (1) file.
       If environment variables are defined in  more  than  one
       place,  variables  defined  in a local lesskey file take
       precedence over variables defined in the system environ-
       ment,  which  take  precedence over variables defined in
       the system-wide lesskey file.

       COLUMNS
              Sets the number of columns on the screen.   Takes
              precedence  over  the number of columns specified
              by the TERM variable.  (But if you have a window-
              ing system which supports TIOCGWINSZ or WIOCGETD,
              the window system's idea of the screen size takes
              precedence over the LINES and COLUMNS environment
              variables.)

       EDITOR The name of the editor (used for the v  command).

       HOME   Name of the user's home directory (used to find a
              lesskey file on Unix and OS/2 systems).

       HOMEDRIVE, HOMEPATH
              Concatenation of the HOMEDRIVE and HOMEPATH envi-
              ronment  variables is the name of the user's home
              directory if the HOME variable is not  set  (only
              in the Windows version).

       INIT   Name of the user's init directory (used to find a
              lesskey file on OS/2 systems).

       LANG   Language for determining the character set.

       LC_CTYPE
              Language for determining the character set.

       LESS   Options which are passed to less automatically.

       LESSANSIENDCHARS
              Characters which may end  an  ANSI  color  escape
              sequence (default "m").

       LESSANSIMIDCHARS
              Characters which may appear between the ESC char-
              acter and the end  character  in  an  ANSI  color
              escape              sequence             (default
              "0123456789;[?!"'#%()*+ ".

       LESSBINFMT
              Format for displaying non-printable,  non-control
              characters.

       LESSCHARDEF
              Defines a character set.

       LESSCHARSET
              Selects a predefined character set.

       LESSCLOSE
              Command line to invoke the (optional) input-post-
              processor.

       LESSECHO
              Name of the  lessecho  program  (default  "lesse-
              cho").   The lessecho program is needed to expand
              metacharacters, such as * and ?, in filenames  on
              Unix systems.

       LESSEDIT
              Editor prototype string (used for the v command).
              See discussion under PROMPTS.

       LESSGLOBALTAGS
              Name of the command used by the -t option to find
              global  tags.  Normally should be set to "global"
              if your system has the global  (1)  command.   If
              not set, global tags are not used.

       LESSHISTFILE
              Name  of the history file used to remember search
              commands and shell commands  between  invocations
              of  less.   If  set to "-", a history file is not
              used.  The default is  "$HOME/.lesshst"  on  Unix
              systems, "$HOME/_lesshst" on DOS and Windows sys-
              tems,       or       "$HOME/lesshst.ini"       or
              "$INIT/lesshst.ini" on OS/2 systems.

       LESSHISTSIZE
              The  maximum  number  of  commands to save in the
              history file.  The default is 100.

       LESSKEY
              Name of the default lesskey(1) file.

       LESSKEY_SYSTEM
              Name of the default system-wide lesskey(1)  file.

       LESSMETACHARS
              List   of   characters   which   are   considered
              "metacharacters" by the shell.

       LESSMETAESCAPE
              Prefix which less will add before each  metachar-
              acter  in  a command sent to the shell.  If LESS-
              METAESCAPE is an empty string, commands  contain-
              ing  metacharacters  will  not  be  passed to the
              shell.

       LESSOPEN
              Command line to invoke the (optional)  input-pre-
              processor.

       LESSSECURE
              Runs less in "secure" mode.  See discussion under
              SECURITY.

       LESSSEPARATOR
              String to be appended  to  a  directory  name  in
              filename completion.

       LESSUTFBINFMT
              Format  for displaying non-printable Unicode code
              points.

       LINES  Sets the number of lines on  the  screen.   Takes
              precedence  over the number of lines specified by
              the TERM variable.  (But if you have a  windowing
              system which supports TIOCGWINSZ or WIOCGETD, the
              window system's idea of  the  screen  size  takes
              precedence over the LINES and COLUMNS environment
              variables.)

       PATH   User's search path (used to find a  lesskey  file
              on MS-DOS and OS/2 systems).

       SHELL  The  shell used to execute the ! command, as well
              as to expand filenames.

       TERM   The type of terminal on which less is being  run.

       VISUAL The  name of the editor (used for the v command).


SEE ALSO
       lesskey(1)


WARNINGS
       The = command and prompts (unless changed by -P)  report
       the  line  numbers of the lines at the top and bottom of
       the screen, but the byte and percent of the  line  after
       the one at the bottom of the screen.

       If  the  :e  command is used to name more than one file,
       and one of the named files has been  viewed  previously,
       the  new  files may be entered into the list in an unex-
       pected order.

       On certain older terminals (the so-called "magic cookie"
       terminals),  search highlighting will cause an erroneous
       display.  On such terminals, search highlighting is dis-
       abled by default to avoid possible problems.

       In  certain  cases,  when search highlighting is enabled
       and a search pattern begins with a ^, more text than the
       matching  string may be highlighted.  (This problem does
       not occur when less is compiled to use the POSIX regular
       expression package.)

       When viewing text containing ANSI color escape sequences
       using the -R option, searching will not find  text  con-
       taining an embedded escape sequence.  Also, search high-
       lighting may change the color of some of the text  which
       follows the highlighted text.

       On  some systems, setlocale claims that ASCII characters
       0 thru 31 are  control  characters  rather  than  binary
       characters.  This causes less to treat some binary files
       as ordinary, non-binary files.  To workaround this prob-
       lem, set the environment variable LESSCHARSET to "ascii"
       (or whatever character set is appropriate).

       This manual is too long.

       See http://www.greenwoodsoftware.com/less for  the  list
       of known bugs in all versions of less.


COPYRIGHT
       Copyright (C) 1984-2005  Mark Nudelman

       less  is  part  of the GNU project and is free software.
       You can redistribute it and/or modify it under the terms
       of  either  (1)  the  GNU General Public License as pub-
       lished by the Free Software Foundation; or (2) the  Less
       License.   See  the file README in the less distribution
       for more details regarding redistribution.   You  should
       have  received  a copy of the GNU General Public License
       along with the source for less; see  the  file  COPYING.
       If not, write to the Free Software Foundation, 59 Temple
       Place, Suite 330,  Boston,  MA   02111-1307,  USA.   You
       should  also  have  received a copy of the Less License;
       see the file LICENSE.

       less is distributed in the hope that it will be  useful,
       but  WITHOUT ANY WARRANTY; without even the implied war-
       ranty of MERCHANTABILITY or  FITNESS  FOR  A  PARTICULAR
       PURPOSE.   See  the  GNU General Public License for more
       details.


AUTHOR
       Mark Nudelman <markn@greenwoodsoftware.com>
       Send bug reports or comments to the above address or  to
       bug-less@gnu.org.
       For   more   information,   see  the  less  homepage  at
       http://www.greenwoodsoftware.com/less.



                    Version 394: 03 Dec 2005            LESS(1)
