LESS(1)
LESS(1)



NNAAMMEE
       less - opposite of more

SSYYNNOOPPSSIISS
       lleessss --??  lleessss
       ----hheellpp lleessss --VV lleessss
       ----vveerrssiioonn lleessss
       [[--[[++]]aaBBccCCddeeEEffFFggGGiiIIJJKKLLmmMMnnNNqqQQrrRRssSSuuUUVVwwWWXX~~]]
            [[--bb _s_p_a_c_e]] [[--hh
            _l_i_n_e_s]] [[--jj _l_i_n_e]]
            [[--kk _k_e_y_f_i_l_e]]
            [[--{{ooOO}} _l_o_g_f_i_l_e]]
            [[--pp _p_a_t_t_e_r_n]] [[--PP
            _p_r_o_m_p_t]] [[--tt _t_a_g]]
            [[--TT _t_a_g_s_f_i_l_e]]
            [[--xx _t_a_b,,......]]
            [[--yy _l_i_n_e_s]] [[--[[zz]]
            _l_i_n_e_s]] [[--## _s_h_i_f_t]]
            [[++[[++]]_c_m_d]] [[----]]
            [[_f_i_l_e_n_a_m_e]]......
       (See  the  OPTIONS section for alternate option syntax
       with long option names.)


DDEESSCCRRIIPPTTIIOONN
       _L_e_s_s is a program similar to _m_o_r_e
       (1), but which allows backward  move‐ ment
       in the file as well as forward movement.  Also,
       _l_e_s_s does not have to read the entire input
       file before  starting,  so  with  large  input files
       it  starts  up  faster than text editors like _v_i
       (1).  _L_e_s_s 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 terminal, lines which should be printed
       at the  top  of  the screen are prefixed with a caret.)

       Commands  are based on both _m_o_r_e and _v_i_.
       Commands may be preceded by a decimal number, called
       N in the descriptions below.  The number is used by
       some commands, as indicated.


CCOOMMMMAANNDDSS
       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  spe‐ cial literalization 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 dis‐ played, 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 dis‐ played, 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 com‐ mands.  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 com‐ mands.

       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).  (Warn‐ ing: 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.   (Warn‐ ing:  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, and may contain a decimal point.

       P      Go to the line containing byte offset N in
       the file.

       {      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 brack‐
              ets.

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

       ESC-^F Followed  by two characters, acts like {,
       but uses the two char‐
              acters 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  char‐
              acters  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 current position
              with that letter.

       '      (Single quote.)  Followed by any lowercase
       letter,  returns  to
              the position which was previously marked with
              that letter.  Fol‐ lowed 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
              preserved 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
              containing the pat‐ tern.  N defaults to 1.
              The pattern 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 continues 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
              pattern on the  cur‐
                     rent screen, but don't move to the first
                     match (KEEP cur‐ rent position).

              ^R     Don't interpret regular expression
              metacharacters;  that
                     is, do a simple textual 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 /
              command:

              ^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  current  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 dis‐
                     played 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 pat‐
              tern.  If the previous search was modified by
              ^N, the search  is made  for the N-th line
              NOT containing the pattern.  If the pre‐
              vious 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
       boundaries.   The
              effect is as if the previous search were modified
              by *.

       ESC-N  Repeat  previous search, but in the reverse
       direction and cross‐
              ing 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 previous 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 commands 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 filename is replaced by the name of the
              current file.   A  pound sign  (#)  is  replaced
              by  the name of the previously examined file.
              However,  two  consecutive  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 literal‐ ization character.
              On such systems, you may not be able to  use ^V.

       :n     Examine  the next file (from the list of files
       given in the com‐
              mand 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 previous 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
       letters (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 setting 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  set‐ ting
              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
       letters 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
       letters,  this  will
              reset  the  option  to the "opposite" 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  let‐
              ters,  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 _l_e_s_s
              to initially display each file starting at the
              end rather than the beginning.

       V      Prints the version number of _l_e_s_s
       being run.

       q or Q or :q or :Q or ZZ
              Exits _l_e_s_s_.

       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 nei‐ ther
              VISUAL nor EDITOR is defined.  See also the
              discussion  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 normal 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 indi‐ cate beginning or end of
              file respectively.  If <m> is . or new‐ line,
              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.

OOPPTTIIOONNSS
       Command line options are described below.  Most options
       may be  changed while _l_e_s_s is running, via the
       "-" command.

       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  abbreviated 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 let‐ ter capitalized;
       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 exam‐ ple, to avoid typing "less
       -options ..." each time _l_e_s_s is invoked,
       you might tell _c_s_h_:

       setenv LESS "-options"

       or if you use _s_h_:

       LESS="-options"; export LESS

       On  MS-DOS,  you don't need the quotes, but you should
       replace any per‐ cent signs in the options string
       by double percent signs.

       The environment variable is parsed before the command
       line, so  command line  options  override  the  LESS
       environment variable.  If an option appears in the LESS
       variable, it can be reset to its default  value  on the
       command 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  _l_e_s_s (the  same  as  the
              h  command).   (Depending on how your shell
              interprets the question mark, it may be necessary
              to  quote  the question mark, thus: "-\?".)

       -a or --search-skip-screen
              Causes  searches  to  start after the last
              line displayed 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).

       -b_n or --buffers=_n
              Specifies the amount of buffer space
              _l_e_s_s  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 unlimited; that is, the entire
              file can be read into memory.

       -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  allo‐ cated.  The -B option disables this
              automatic allocation of buf‐ fers for pipes, so
              that only 64K (or the amount of space  speci‐
              fied 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  piped data 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
              Same as -c, for compatibility with older versions
              of _l_e_s_s_.

       -d or --dumb
              The -d option suppresses the error message
              normally 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 _l_e_s_s on a dumb terminal.

       -Dxx_c_o_l_o_r or --color=xx_c_o_l_o_r
              [MS-DOS only] Sets the color of the text
              displayed.  xx is a sin‐ gle  character
              which  selects  the  type of text whose color
              is being set: n=normal, s=standout, d=bold,
              u=underlined,  k=blink.  _c_o_l_o_r  is
              a  pair  of numbers separated by a period.
              The first number selects the foreground color
              and the second  selects  the background  color
              of the text.  A single number _N is the same
              as _N_._0.

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

       -E or --QUIT-AT-EOF
              Causes _l_e_s_s 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  warn‐
              ing message when a binary file is opened.
              By default, _l_e_s_s will refuse to open
              non-regular files.  Note that some operating
              sys‐ tems will not allow directories to be
              read, even if -f is set.

       -F or --quit-if-one-screen
              Causes _l_e_s_s to automatically exit if
              the entire file can be dis‐ played on the
              first screen.

       -g or --hilite-search
              Normally, _l_e_s_s will highlight ALL
              strings which match  the  last search  command.
              The  -g option changes this behavior to high‐
              light only the particular string which was
              found  by  the  last search command.  This can
              cause _l_e_s_s to run somewhat faster than
              the default.

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

       -h_n 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,
              uppercase and lowercase are  considered
              identical.  This option is ignored if any
              upper‐ case 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.

       -j_n or --jump-target=_n
              Specifies  a line on the screen where the
              "target" line is to be positioned.  The target
              line is the line specified by  any  com‐
              mand  to  search for a pattern, jump to a line
              number, jump to a file percentage or jump to
              a tag.  The screen line may be 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 rel‐ ative to the
              bottom of the screen: the bottom line on the
              screen is -1, the second to the bottom is -2,
              and so on.   Alternately, the  screen line
              may be specified as a fraction of the height
              of the screen, starting with a decimal point:
              .5 is in  the  middle of  the screen, .3 is
              three tenths down from the first line, and
              so on.  If the line is specified as a fraction,
              the actual  line number  is  recalculated  if
              the terminal window is resized, so that the
              target line remains at the specified  fraction
              of  the screen  height.   If  any form of the
              -j option is used, forward searches begin at
              the line immediately after  the  target  line,
              and backward searches begin at the target line.
              For example, if "-j4" is used, the target line
              is the fourth line on the screen, so forward
              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.

       -k_f_i_l_e_n_a_m_e or
       --lesskey-file=_f_i_l_e_n_a_m_e
              Causes _l_e_s_s to open and interpret the
              named file  as  a  _l_e_s_s_k_e_y (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 _l_e_s_s_k_e_y file.

       -K or --quit-on-intr
              Causes _l_e_s_s to exit  immediately  when
              an  interrupt  character (usually  ^C) is
              typed.  Normally, an interrupt character causes
              _l_e_s_s to stop whatever it is doing  and
              return  to  its  command prompt.   Note  that
              use  of this option makes it impossible to return
              to the command prompt from the "F" command.

       -L or --no-lessopen
              Ignore the LESSOPEN environment variable
              (see  the  INPUT  PRE‐ PROCESSOR  section
              below).   This option can be set from within
              _l_e_s_s, but it will apply only to files
              opened  subsequently,  not to the file which
              is currently open.

       -m or --long-prompt
              Causes  _l_e_s_s  to  prompt verbosely (like
              _m_o_r_e), with the percent into the file.
              By default, _l_e_s_s prompts with a colon.

       -M or --LONG-PROMPT
              Causes _l_e_s_s to prompt even more verbosely
              than _m_o_r_e_.

       -n or --line-numbers
              Suppresses line numbers.  The default (to use
              line numbers)  may cause  _l_e_s_s  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 numbers 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.

       -o_f_i_l_e_n_a_m_e or
       --log-file=_f_i_l_e_n_a_m_e
              Causes _l_e_s_s 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,
              _l_e_s_s  will  ask  for confirmation before
              overwriting it.

       -O_f_i_l_e_n_a_m_e or
       --LOG-FILE=_f_i_l_e_n_a_m_e
              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  _l_e_s_s
              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 _l_e_s_s_.

       -p_p_a_t_t_e_r_n or
       --pattern=_p_a_t_t_e_r_n
              The  -p  option  on the command line is
              equivalent to specifying +/_p_a_t_t_e_r_n;
              that is, it tells _l_e_s_s to start at the
              first  occur‐ rence of _p_a_t_t_e_r_n
              in the file.

       -P_p_r_o_m_p_t or --prompt=_p_r_o_m_p_t
              Provides  a  way  to  tailor the three prompt
              styles to your own preference.  This option
              would normally be put in the LESS envi‐
              ronment variable, rather than being typed in
              with each _l_e_s_s 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, _l_e_s_s
              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 dis‐ play 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 cor‐
              rectly  in  most  cases.   ANSI  "color"
              escape  sequences  are sequences of the form:

                   ESC [ ... m

              where the "..." is zero or more color
              specification  characters For  the  purpose
              of  keeping  track of screen appearance,
              ANSI color escape sequences are assumed to not
              move the cursor.   You can  make _l_e_s_s
              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 _l_e_s_s  think
              that  characters other  than the standard ones
              may appear between the ESC and the m by setting
              the environment 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 _n_r_o_f_f 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.

       -t_t_a_g or --tag=_t_a_g
              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 _c_t_a_g_s (1)
              or an equivalent command.  If the environment
              variable LESSGLOB‐ ALTAGS is set, it is
              taken to be the name of a command  compati‐
              ble  with  _g_l_o_b_a_l  (1), and that
              command is executed to find the tag.  (See
              http://www.gnu.org/software/global/global.html).
              The -t  option  may  also be specified from
              within _l_e_s_s (using the - command) as
              a way of examining a new file.  The command
              ":t"  is equivalent to specifying -t from
              within _l_e_s_s_.

       -T_t_a_g_s_f_i_l_e or
       --tag-file=_t_a_g_s_f_i_l_e
              Specifies a tags file to be used instead of
              "tags".

       -u or --underline-special
              Causes  backspaces  and carriage returns to be
              treated as print‐ able 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  spe‐
              cially:  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  bold‐ face  capability.
              Other backspaces are deleted, along with
              the preceding character.  Carriage returns
              immediately 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 _l_e_s_s_.

       -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 imme‐ diately
              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
              move‐ ment.  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.

       -x_n,... 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,
              _-_x_9_,_1_7 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 clear‐ ing the screen.

       -y_n 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  compati‐ bility with some versions of
              _m_o_r_e_.  If the number _n is negative,
              it indicates _n lines less than the  current
              screen  size.   For example, if the screen is
              24 lines, _-_z_-_4 sets the scrolling win‐
              dow to 20 lines.  If the screen is  resized  to
              40  lines,  the scrolling window automatically
              changes to 36 lines.

       -_"_c_c or --quotes=_c_c
              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 character.
              Note  that  even  after  the  quote  characters
              are changed,  this  option  remains  -"
              (a dash followed 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
              LEFTARROW commands.  If the number speci‐
              fied is zero, it sets the default number  of
              positions  to  one half of the screen width.

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

       --follow-name
              Normally,  if  the  input  file is renamed while
              an F command is executing, _l_e_s_s will
              continue to display  the  contents  of  the
              original  file  despite  its  name  change.
              If --follow-name is specified, during an F
              command _l_e_s_s will periodically attempt
              to reopen the file by name.  If the reopen
              succeeds and the file is a different file from
              the original (which means that a new  file has
              been  created  with  the  same  name  as  the
              original (now renamed) file), _l_e_s_s will
              display the contents of that new file.

       --     A command line argument of "--" marks the end
       of  option  argu‐
              ments.   Any  arguments  following this are
              interpreted as file‐ names.  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 initial command
              to _l_e_s_s_.  For  example, +G  tells
              _l_e_s_s  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 special 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 ini‐ tial command for every file.


LLIINNEE EEDDIITTIINNGG
       When  entering command line at the bottom of the screen
       (for example, a filename for the :e command, or the
       pattern for a search command), cer‐ tain  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.
       (Note that the forms beginning with ESC do not work
       in some MS-DOS and Windows systems because ESC  is the
       line  erase  character.)  Any of these special keys may
       be entered literally by preceding 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  cur‐ sor one word to the left.

       ^RIGHTARROW [ ESC-w or ESC-RIGHTARROW ]
              (That is, CONTROL and RIGHTARROW simultaneously.)
              Move the cur‐ sor 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 directory, 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 char‐
              acter in Unix to something other than ^U,
              that character is used instead of ^U.


KKEEYY BBIINNDDIINNGGSS
       You  may define your own _l_e_s_s commands
       by using the program _l_e_s_s_k_e_y (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 _l_e_s_s_k_e_y
       to change the line-editing keys (see LINE EDITING),
       and to set environment variables.   If the environment
       variable LESSKEY is set, _l_e_s_s uses that as the
       name of the lesskey file.  Otherwise, _l_e_s_s
       looks in  a  standard place  for  the lesskey file:
       On Unix systems, _l_e_s_s looks for a lesskey
       file called "$HOME/.less".  On MS-DOS and Windows
       systems,  _l_e_s_s  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 specified in  the  PATH  environment variable.
       On OS/2 systems, _l_e_s_s 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 specified 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 environment variable.   See  the
       _l_e_s_s_k_e_y  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 system-wide file.  If the environment
       variable LESSKEY_SYSTEM  is  set, _l_e_s_s uses
       that as the name of the system-wide lesskey file.
       Otherwise, _l_e_s_s 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 _l_e_s_s 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 systems, the system-wide lesskey  file  is
       c:\_sys‐ less.  On OS/2 systems, the system-wide
       lesskey file is c:\sysless.ini.


IINNPPUUTT PPRREEPPRROOCCEESSSSOORR
       You  may  define an "input preprocessor" for
       _l_e_s_s_.  Before _l_e_s_s opens a file,
       it first gives your input preprocessor a chance to
       modify the way the  contents of the file are displayed.
       An input preprocessor is sim‐ ply an executable
       program (or shell script), which writes the  contents
       of the file to a different file, called the replacement
       file.  The con‐ tents of the replacement file are
       then displayed in place of  the  con‐ tents  of the
       original file.  However, it will appear to the user as
       if the original file is opened; that is, _l_e_s_s
       will  display  the  original filename as the name of
       the current file.

       An  input preprocessor receives one command line
       argument, 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  replace‐ ment  filename, _l_e_s_s
       uses the original file, as normal.  The input pre‐
       processor is not called when viewing 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 _l_e_s_s closes a file opened in such
       a way, it will call another pro‐ gram, 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 orig‐ inal
       filename  as entered by the user, and the name of the
       replacement file.  To set up an input postprocessor,
       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 second 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 _l_e_s_s 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  LESSCLOSE="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 _l_e_s_s_,
       rather than putting the data into a replacement file.
       This avoids the need to decompress the entire file
       before start‐ ing 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  replace‐
       ment  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 replace‐ ment
       file and _l_e_s_s 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 pre‐ vious 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 "-".


NNAATTIIOONNAALL CCHHAARRAACCTTEERR
SSEETTSS
       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
       characters 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
       characters, 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
       computers.

       utf-8  Selects the UTF-8 encoding  of  the  ISO  10646
       character  set.
              UTF-8  is  special  in that it supports
              multi-byte characters in the input file.
              It is the  only  character  set  that  supports
              multi-byte characters.

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

       In rare cases, it may be desired to tailor
       _l_e_s_s to use a character  set other  than
       the ones definable by LESSCHARSET.  In this case,
       the envi‐ ronment 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 num‐ ber 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  char‐ acter set.)

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

            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
       variables, then the default character set is utf-8.

       If that string is not found, but your  system
       supports  the  _s_e_t_l_o_c_a_l_e interface,
       _l_e_s_s  will  use  setlocale  to determine the
       character set.  setlocale is controlled by setting
       the  LANG  or  LC_CTYPE  environment variables.

       Finally,  if the _s_e_t_l_o_c_a_l_e interface
       is also not available, 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 char‐ acter is displayed as a hex
       number in angle brackets.  This format  can be  changed
       by setting the LESSBINFMT 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
       hexadecimal surrounded  by  brackets.   The default  if
       no LESSBINFMT is specified is "*s<%X>".  The default if
       no LESSBINFMT is specified is "*s<%02X>".  Warning: the
       result of  expand‐ ing the character via LESSBINFMT
       must be less than 31 characters.

       When the character set is utf-8, the LESSUTFBINFMT
       environment variable acts similarly to LESSBINFMT
       but it applies to Unicode code points that were
       successfully  decoded but are unsuitable for display
       (e.g., unas‐ signed 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  setting,  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
       individually using LESSBINFMT so  as  to facilitate
       diagnostic of how the UTF-8 file is ill-formed.


PPRROOMMPPTTSS
       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  ordi‐ nary  user need not understand the
       details of constructing personalized prompt strings.

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

       %b_X    Replaced  by the byte offset into the current
       input file.  The b
              is followed by a single character (shown as _X
              above) which spec‐ ifies  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 bot‐ tom line, a
              "B" means use the line just after the  bottom
              line, and  a  "j"  means use the "target" line,
              as specified by the -j option.

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

       %c     Replaced by the column number of the text
       appearing in the first
              column of the screen.

       %d_X    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  equiva‐
              lently, 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 environment 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.

       %l_X    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.

       %p_X    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.

       %P_X    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.
       Usually 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 evalu‐ ated.  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 establish
       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.

       ?b_X    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).

       ?d_X    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).

       ?l_X    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.

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

       ?P_X    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
       literally part of the prompt.  Any of the special
       characters may be included in the  prompt  literally
       by preceding it with a backslash.

       Some examples:

       ?f%f:Standard input.

       This  prompt prints the filename, if known; otherwise
       the string "Stan‐ dard input".

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

       This prompt would print the filename, if known.
       The filename  is  fol‐ lowed  by  the  line  number,
       if known, otherwise 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,  fol‐ lowed  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 trailing spaces are
       truncated.  This is the default prompt.  For refer‐
       ence,  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 =
       command:

       ?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  command 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.


SSEECCUURRIITTYY
       When the environment variable LESSSECURE is set to 1,
       _l_e_s_s  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.


CCOOMMPPAATTIIBBIILLIITTYY WWIITTHH
MMOORREE
       If the environment variable LESS_IS_MORE is set to 1, or
       if the program is invoked via a file link named "more",
       _l_e_s_s behaves (mostly) in  con‐ formance  with
       the  POSIX "more" command specification.  In this mode,
       less behaves differently in these ways:

       The -e option works differently.  If the -e option
       is  not  set,  _l_e_s_s behaves  as  if  the -E
       option were set.  If the -e option is set, _l_e_s_s
       behaves as if the -e and -F options were set.

       The -m option works differently.  If the -m  option
       is  not  set,  the medium  prompt  is used, and it is
       prefixed with the string "--More--".  If the -m option
       is set, the short prompt is used.

       The -n option acts like the -z option.  The normal
       behavior of  the  -n option is unavailable in this mode.

       The  parameter  to  the  -p option is taken to be a
       _l_e_s_s command rather than a search pattern.

       The LESS environment variable is  ignored,  and  the
       MORE  environment variable is used in its place.


EENNVVIIRROONNMMEENNTT VVAARRIIAABBLLEESS
       Environment variables may be specified either
       in the system environment as usual, or in a
       _l_e_s_s_k_e_y  (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
       environment, 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  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.)

       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
              environment vari‐ ables is the name of the
              user's home directory if the HOME vari‐ able
              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 _l_e_s_s
       automatically.

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

       LESSANSIMIDCHARS
              Characters  which  may  appear between the
              ESC character 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-postprocessor.

       LESSECHO
              Name of the lessecho program (default
              "lessecho").  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 discus‐ sion 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 _g_l_o_b_a_l (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 _l_e_s_s_.  If set to
              "-" or "/dev/null", a  history  file  is
              not  used.   The  default  is "$HOME/.lesshst"
              on  Unix  systems, "$HOME/_lesshst" on DOS and
              Windows systems, 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
              metacharacter in a com‐ mand sent to the shell.
              If LESSMETAESCAPE is an  empty  string, commands
              containing  metacharacters  will  not be passed
              to the shell.

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

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

       LESSSEPARATOR
              String to be appended to a directory name  in
              filename  comple‐ tion.

       LESSUTFBINFMT
              Format for displaying non-printable Unicode
              code points.

       LESS_IS_MORE
              Emulate the _m_o_r_e (1) command.

       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 _l_e_s_s is
       being run.

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


SSEEEE AALLSSOO
       lesskey(1)


CCOOPPYYRRIIGGHHTT
       Copyright (C) 1984-2007  Mark Nudelman

       less  is  part of the GNU project and is free software.
       You can redis‐ tribute it and/or modify it under
       the terms of either (1) the GNU  Gen‐ eral  Public
       License  as published 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
       warranty of MERCHANTABILITY or  FIT‐ NESS  FOR
       A PARTICULAR PURPOSE.  See the GNU General Public
       License for more details.


AAUUTTHHOORR
       Mark Nudelman <markn@greenwoodsoftware.com> See
       http://www.greenwoodsoftware.com/less/bugs.html for the
       latest list of known bugs in less.  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 418: 02 Jan 2008
                           LESS(1)
