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

FreeBSD Manual Pages

  
 
  

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

NAME
     less - opposite of more

SYNOPSIS
     less -?
     less --help
     less -V
     less --version
     less [-[+]aBcCdeEfFgGiIJLmMnNqQrRsSuUVwWXYZ~]
	  [-b space] [-h lines] [-j line] [-k keyfile]
	  [-K character set] [-{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 movement.	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 lim-
     ited  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 more and vi.  Commands may be preceded by a dec-
     imal number, called N in the descriptions below.  The  number  is	used  by
     some commands, as indicated.

COMMANDS
     In  the following descriptions, ^X means control-X.  ESC stands for the ES-
     CAPE 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  dis-
	    played.   Warning:	some  systems use ^V as a special 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 ^DScroll  forward  N lines, default one half of the screen size.  If N
	    is specified, it becomes the new default for subsequent d and u com-
	    mands.

     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 dis-
	    played.

     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 sys-
	    tems use ^Y as a special job control character.

     u or ^UScroll backward N lines, default one half of the screen size.  If  N
	    is specified, it becomes the new default for subsequent d and u com-
	    mands.

     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 de-
	    fault 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  stan-
	    dard 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 current position with
	    that letter.

     '	    (Single quote.)  Followed by any lowercase letter,	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 ' command 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 pattern.
	    N defaults to 1.  The pattern is a regular expression, as recognized
	    by ed.  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 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 textual comparison.

     ?pattern
	    Search  backward  in  the file for the N-th line containing the pat-
	    tern.  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  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 expres-
	    sions.  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	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 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 re-
	    placed 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 re-
	    placed 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 exam-
	    ined.  If the filename contains one or more spaces, the entire file-
	    name 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  literaliza-
	    tion 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 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 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 cur-
	    rent 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.

     @	    Rotate  the  code  recognition method of the current file.	Enhanced
	    less has 7 methods for recognition, default (which is chosen by  the
	    JLESSCHARSET  environment variable), japanese, ujis, sjis, iso8, no-
	    conv and none.

     -	    Followed by one of the command line option letters (see OPTIONS  be-
	    low),  this  will change the setting of that option and print a mes-
	    sage describing the new setting.  If a ^P (CONTROL-P) is entered im-
	    mediately 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  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 sup-
	    presses 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 sin-
	    gle 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 mes-
	    sage  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 sin-
	    gle option letter.

     _	    (Underscore.)  Followed by one of the command line	option	letters,
	    this will print a message describing the current setting of that op-
	    tion.  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  ex-
	    amined.   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 par-
     ticular 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 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  examined  file.
	    "!!" repeats the last shell command.  "!" with no shell command sim-
	    ply  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 indicate beginning or  end
	    of file respectively.  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 "-" command.

     Options are also taken from the environment variable "LESS" and "JLESS".

     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 op-
     tion names need only have their first letter 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	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 double percent signs.

     The environment variable is parsed before the command line, so command line
     options  override	the  LESS and JLESS environment variables.  If an option
     appears in the LESS and JLESS variables, 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 less (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  de-
	    fault, 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 memory.

     -B or --auto-buffers
	    By default, when data is read from a pipe, buffers are allocated au-
	    tomatically  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 bot-
	    tom of the screen.

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

     -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 less on a dumb terminal.

     -Dxcolor or --color=xcolor
	    [MS-DOS  only]  Sets the color of the text displayed.  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
	    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 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 di-
	    rectory or a device special file.)	Also suppresses the warning mes-
	    sage 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 dis-
	    played 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 particular string which was found by the last  search  com-
	    mand.  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  re-
	    painted  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 uppercase  let-
	    ters appear in the search pattern; in other words, if a pattern con-
	    tains uppercase letters, then that search does not ignore case.

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

     -jn or --jump-target=n
	    Specifies a line on the screen where the "target" line is to be  po-
	    sitioned.  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 specified 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 im-
	    mediately 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.

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

     -Kcharset
	    Causes  less to use this charset instead of a charset defined in the
	    JLESSCHARSET or LESSCHARSET environment variable.

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

     -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 or-
	    dinary  file.  If the file already exists, less will ask for confir-
	    mation 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 +/pat-
	    tern;  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 prefer-
	    ence.  This option would normally be put in the LESS and JLESS envi-
	    ronment variables, rather than being typed in with	each  less  com-
	    mand.  Such an option must either be the last option in the LESS and
	    JLESS variables, 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 re-
	    sult, such as long lines being split in the wrong place.

     -R or --RAW-CONTROL-CHARS
	    Like -r, but tries to keep track of the screen appearance where pos-
	    sible.  This works only if the input consists  of  normal  text  and
	    possibly  some ANSI "color" escape sequences, which are sequences of
	    the form:

		 ESC [ ... m

	    where the "..." is zero or more characters other than "m".	For  the
	    purpose  of  keeping track of screen appearance, all control charac-
	    ters and all 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 es-
	    cape sequence.

     -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 equiva-
	    lent command.  If the environment variable LESSGLOBALTAGS is set, it
	    is taken to be the name of a command compatible with global (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 less (using the - command) as a way of
	    examining a new file.  The command ":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 con-
	    trol 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  un-
	    derlined 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 us-
	    ing the terminal's hardware boldface capability.   Other  backspaces
	    are  deleted,  along with the preceding character.	Carriage returns
	    immediately followed by a newline are deleted.  other  carriage  re-
	    turns  are	handled  as  specified	by the -r option.  Text which is
	    overstruck or underlined 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  fol-
	    lowing  the line previously at the bottom of the screen.  Also high-
	    lights the target line after a g or p command.  The highlight is re-
	    moved 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 speci-
	    fied, tab stops are set at those positions, and then  continue  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  deini-
	    tialization  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 manner.

     -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 re-
	    painted 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.

     -Y     Causes mark characters to be used to represent wrong characters.  By
	    default, such wrong characters displayed as binary.

     -[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 indicates 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 re-
	    sized to 40 lines, the scrolling window automatically changes to  36
	    lines.

     -Z     Causes  to	give  priority to the SJIS over the UJIS if a "japanese"
	    was selected by the JLESSCHARSET environment variable.  The  default
	    value is to give priority to the UJIS over the SJIS.

     -"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 charac-
	    ter 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  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 initial 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 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 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 pattern for a search command),  certain
     keys can be used to manipulate the command line.  Most commands have an al-
     ternate 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 ver-
     sion.)  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 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 com-
	    mand 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 ap-
	    pended to the filename.  (On MS-DOS systems,  a  "\"  is  appended.)
	    The environment variable LESSSEPARATOR can be used to specify a dif-
	    ferent 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 program 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 environment 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  systems,  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 specified in the PATH environment variable.
     On OS/2 systems, 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	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 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  system-
     wide  file.   If  the environment variable LESSKEY_SYSTEM 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  direc-
     tory  is  where the sysless file is found.)  On MS-DOS and Windows systems,
     the system-wide lesskey file is c:\_sysless.  On OS/2 systems, the  system-
     wide lesskey file is c:\sysless.ini.

INPUT PREPROCESSOR
     You may define an "input preprocessor" for less.  Before less opens a file,
     it  first gives your input preprocessor a chance to modify the way the con-
     tents of the file are displayed.  An input preprocessor is simply	an  exe-
     cutable program (or shell script), which writes the contents of the file to
     a	different  file,  called  the replacement file.  The contents of the re-
     placement file are then displayed in place of the contents of the	original
     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	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 replacement filename,
     less uses the original file, as normal.   The  input  preprocessor  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 pre-
     processor 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  ac-
     tion  (such  as  deleting	the replacement file created by LESSOPEN).  This
     program receives two command line arguments, the original filename  as  en-
     tered  by the user, and the name of the replacement file.	To set up an in-
     put 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 less view them directly:

     lessopen.sh:
	  #! /bin/sh
	  case "$1" in
	  *.Z) uncompress -c $1  >/tmp/less.$$	2>/dev/null
	       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  com-
     plex 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  stan-
     dard  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 origi-
     nal 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  post-
     processor	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  characters  are  to  be
     considered  normal,  control, and binary.	The JLESSCHARSET and LESSCHARSET
     environment variables may be used to select a character set.  There  is  no
     difference  between  them in program of less.  But I suppose you should use
     the JLESSCHARSET environment variable because not enhanced less  will  make
     errors  if  you  use enhanced character set in your LESSCHARSET environment
     variable.	Possible values for them 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.

     iso8859Selects an ISO 8859 character set.	This is the same as  ASCII,  ex-
	    cept  characters  between  160 and 255 are treated as normal charac-
	    ters.

     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 set-
	    ting either LESSCHARSET=IBM-1047 or LC_CTYPE=en_US in your	environ-
	    ment.

     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.

     And possible values for only JLESSCHARSET are:

     iso7   Multi  character sets with the ISO 2022 code extension techniques in
	    7 bits are assumed.  Characters with values between 128 and 255  are
	    treated  as  binary.  The level of implementation of Less is level 3
	    of ISO 2022.

     iso8   Multi character sets with the ISO 2022 code extension techniques  in
	    8  bits are assumed.  The level of implementation of Less is level 3
	    of ISO 2022.

     jis    Only Japanese character sets with the ISO 2022 code extension  tech-
	    niques in 7 bits are assumed.

     ujis   If characters has values between 32 and 127, the ASCII character set
	    are assumed.  If characters has values between 162 and 254, the JISX
	    0208  character set, a right half of the JISX 0201 character set and
	    the JISX 0212 character set with the UJIS coding are assumed.   Oth-
	    erwise, characters are treated as binary.

     euc    Same as ujis.

     sjis   If characters has values between 32 and 127, the ASCII character set
	    are assumed.  If characters has values between 128 and 252, the JISX
	    0208  character  set and a right half of the JISX 0201 character set
	    are assumed.  Otherwise, characters are treated as binary.

     japanese
	    All Japanese character sets, jis, ujis and sjis, are  assumed.   But
	    less output only the jis.

     Japanese  has  several code sets (not character sets).  Thus less must con-
     vert among them to display them correctly.  Possible values with this  con-
     version for only JLESSCHARSET are:

     ujis-iso7
	    The ujis and iso7 are assumend.  But less output only the iso7.

     euc-iso7
	    Same as ujis-iso7.

     sjis-iso7
	    The sjis and iso7 are assumend.  But less output only the iso7.

     ujis-jis
	    The ujis and jis are assumend.  But less output only the jis.

     euc-jisSame as ujis-jis.

     sjis-jis
	    The sjis and jis are assumend.  But less output only the jis.

     jis-ujis
	    The jis and ujis are assumend.  But less output only the ujis.

     jis-eucSame as jis-ujis.

     jis-sjis
	    The jis and sjis are assumend.  But less output only the sjis.

     japanese-iso7
	    The japanese and iso7 are assumend.  But less output only the iso7.

     japanese-jis
	    The  japanese  is  assumend.  But less output only the jis.  Same as
	    japanese.

     japanese-ujis
	    The japanese is assumend.  But less output only the ujis.

     japanese-euc
	    Same as japanese-ujis.

     japanese-sjis
	    The japanese is assumend.  But less output only the sjis.

     ujis-sjis
	    The ujis is assumend.  But less output only the sjis.

     euc-sjis
	    Same as ujis-sjis.

     sjis-ujis
	    The sjis is assumend.  But less output only the ujis.

     sjis-euc
	    Same as sjis-ujis.

     Other way to select a character set is to use the	LANG  environment  vari-
     able.   If  it  start with "ja_JP" or "japan", less read all Japanese coded
     characters as some Japanese character set, and a rest of the LANG	environ-
     ment variable specify output coding.

     The  ISO  2022  code  extension  techniques define 4 planes to display many
     character sets easy.  Default setting of planes is selected by  the  JLESS-
     PLANESET  environment  variable.	If the JLESSPLANESET vriable is equal to
     "japanese", "ujis" or "euc", less treat g1 plane as JISX 0208, g2 plane  as
     JISX  0201  right half, g3 plane as JISX 0212.  If it is equal to "latin1",
     "latin2", "latin3", "latin4", "greek", "arabic",  "hebrew",  "cyrillic"  or
     "latin5",	less  treat g1 plane as one of ISO 8859.  Otherwise, less try to
     parse the JLESSPLANESET variable as real escape sequences for  setting  up,
     and "\e" in JLESSPLANESET is treated as escape code when parsing.

     Less  understand  almost all escape sequence about character set in the ISO
     2022 code extension techniques.  There are many escape sequences to  select
     the character set.  On the one hand, less output only 6 escape sequences to
     select  a	character  set: '^[(', '^[-', '^[$(', '^[$-', '^N' and '^O'.  It
     means less is friendly to a terminal and a terminal emulator.

     And there is special "character set" for keyboard	inputs.   The  JLESSKEY-
     CHARSET  environment variable is used for such purpose.  Possible values of
     it are equal to the JLESSCHARSET environment variable.

     If the LESSCHARSET environment variable is not set, the  default  character
     set  is  latin1.	However,  if  the string "UTF-8" is found in the LC_ALL,
     LC_CTYPE or LANG environment variables, then the default character  set  is
     utf-8 instead.

     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	environ-
     ment 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 char-
     acter in the character set.  The character "." is used for a normal charac-
     ter, "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 charac-
     ters 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 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 the  string  "UTF-8"  is
     found  in	the  LC_ALL, LC_TYPE or LANG environment variables, then the de-
     fault character set is utf-8.

     If that string is not found, but your system supports the setlocale  inter-
     face, 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 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 character 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  sur-
     rounded  by  brackets.   The  default  if	no  LESSBINFMT	is  specified is
     "*s<%X>".

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.  Cer-
     tain characters in the string are interpreted specially.  The prompt mecha-
     nism is rather complicated to provide flexibility, but  the  ordinary  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:

     %bX    Replaced by the byte offset into the current input file.  The  b  is
	    followed  by  a  single character (shown as X above) which specifies
	    the line whose byte offset is to be used.  If  the	character  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 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.

     %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 environment variable if VISUAL  is	not  de-
	    fined).  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  op-
	    tion.

     %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  op-
	    tion.

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

     %K     Replaced by the name of the last non ASCII	character  set	or  code
	    set.

     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  condi-
     tions.   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 establish an "ELSE": any  char-
     acters  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  off-
	    sets, of the specified line is known.

     ?PX    True  if the percent into the current input file, based on line num-
	    bers, 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  "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, otherwise the percent if known, otherwise the
     byte offset if known.  Otherwise, a dash is printed.  Notice how each ques-
     tion 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 trailing spaces are trun-
     cated.  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 = 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  en-
     vironment variable LESSEDIT is defined, it is used as the command to be ex-
     ecuted  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.

SECURITY
     When  the	environment variable LESSSECURE is set to 1, less runs in a "se-
     cure" 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  prece-
     dence  over  variables defined in the system environment, which take prece-
     dence over variables defined in the system-wide lesskey file.

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

     JLESS  same as the LESS environment variable.

     LESSANSIENDCHARS
	    Characters which are assumed to end an ANSI  color	escape	sequence
	    (default "m").

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

     LESSCHARDEF
	    Defines a character set.

     JLESSCHARSET
	    Selects a predefined character set.

     LESSCHARSET
	    Selects a predefined character set if JLESSCHARSET is not defined.

     JLESSKEYCHARSET
	    Selects a predefined character set for keyboard inputs.

     JLESSPLANESET
	    Selects  a predefined plane set of the ISO 2022 code extension tech-
	    niques.

     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  discussion
	    under PROMPTS.

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

     LESSKEYName 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 command
	    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 completion.

     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 file-
	    names.

     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 unexpected order.

     On certain older terminals (the so-called "magic cookie" terminals), search
     highlighting  will  cause	an erroneous display.  On such terminals, search
     highlighting is disabled 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  op-
     tion,  searching will not find text containing an embedded escape sequence.
     Also, search highlighting 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 con-
     trol 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 char-
     acter set is appropriate).

     See http://www.greenwoodsoftware.com/less for the latest list of known bugs
     in this version of less.

COPYRIGHT
     Copyright (C) 2002  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  published by the Free Software Foundation; or (2) the Less Li-
     cense.  See the file README in the less distribution for more  details  re-
     garding 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 FITNESS
     FOR A PARTICULAR PURPOSE.	See the GNU General Public License for more  de-
     tails.

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.greenwoodsoft-
     ware.com/less.

PATCH
     Copyright (c) 1994-2005  Kazushi (Jam) Marukawa, Japanized routines only
     Comments about this part to: jam@pobox.com
     You may distribute under the terms of the Less License.

			 Version 382+iso259: 06 Sep 2005		 LESS(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=jless&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help