summaryrefslogtreecommitdiff
path: root/less.man
diff options
context:
space:
mode:
Diffstat (limited to 'less.man')
-rw-r--r--less.man1609
1 files changed, 1609 insertions, 0 deletions
diff --git a/less.man b/less.man
new file mode 100644
index 0000000..1dab1c2
--- /dev/null
+++ b/less.man
@@ -0,0 +1,1609 @@
+LESS(1) LESS(1)
+
+
+
+NAME
+ less - opposite of more
+
+SYNOPSIS
+ less -?
+ less --help
+ less -V
+ less --version
+ less [-[+]aABcCdeEfFgGiIJKLmMnNqQrRsSuUVwWX~]
+ [-b space] [-h lines] [-j line] [-k keyfile]
+ [-{oO} logfile] [-p pattern] [-P prompt] [-t tag]
+ [-T tagsfile] [-x tab,...] [-y lines] [-[z] lines]
+ [-# shift] [+[+]cmd] [--] [filename]...
+ (See the OPTIONS section for alternate option syntax with long option
+ names.)
+
+
+DESCRIPTION
+ Less is a program similar to more (1), but which allows backward move-
+ ment 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 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 more and vi. Commands may be preceded by a
+ decimal 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
+ 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.
+
+ ENTER or 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.)
+
+ ESC-F Like F, but as soon as a line is found which matches the last
+ search pattern, the terminal bell is rung and forward scrolling
+ stops.
+
+ 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 first 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.)
+
+ &pattern
+ Display only lines which match the pattern; lines which do not
+ match the pattern are not displayed. If pattern is empty (if
+ you type & immediately followed by ENTER), any filtering is
+ turned off, and all lines are displayed. While filtering is in
+ effect, an ampersand is displayed at the beginning of the
+ prompt, as a reminder that some lines in the file may be hidden.
+
+ Certain characters are special as in the / command:
+
+ ^N or !
+ Display only lines which do NOT match the pattern.
+
+ ^R Don't interpret regular expression metacharacters; that
+ is, do a simple textual comparison.
+
+ :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 ENTER
+ or 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 ENTER or RETURN after typing the option name.
+
+ +cmd Causes the specified cmd to be executed each time a new file is
+ examined. For example, +G causes less to initially display each
+ file starting at the end rather than the beginning.
+
+ V Prints the version number of less being run.
+
+ q or Q or :q or :Q or ZZ
+ Exits less.
+
+ The following four commands may or may not be valid, depending on your
+ particular installation.
+
+ v Invokes an editor to edit the current file being viewed. The
+ editor is taken from the environment variable VISUAL if defined,
+ or EDITOR if VISUAL is not defined, or defaults to "vi" if 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.
+
+OPTIONS
+ Command line options are described below. Most options may be changed
+ while less 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 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 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 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
+ By default, forward searches start at the top of the displayed
+ screen and backwards searches start at the bottom of the dis-
+ played screen (except for repeated searches invoked by the n or
+ N commands, which start after or before the "target" line
+ respectively; see the -j option for more about the target line).
+ The -a option causes forward searches to instead start at the
+ bottom of the screen and backward searches to start at the top
+ of the screen, thus skipping all lines displayed on the screen.
+
+ -A or --SEARCH-SKIP-SCREEN
+ Causes all forward searches (not just non-repeated searches) to
+ start just after the target line, and all backward searches to
+ start just before the target line. Thus, forward searches will
+ skip part of the displayed screen (from the first line up to and
+ including the target line). Similarly backwards searches will
+ skip the displayed screen from the last line up to and including
+ the target line. This was the default behavior in less versions
+ prior to 441.
+
+ -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 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 less.
+
+ -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 sin-
+ gle 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.M, where M is the normal background color.
+
+
+ -e or --quit-at-eof
+ Causes less to automatically exit the second time it reaches
+ end-of-file. By default, the only way to exit less is via the
+ "q" command.
+
+ -E or --QUIT-AT-EOF
+ Causes less to automatically exit the first time it reaches end-
+ of-file.
+
+ -f or --force
+ Forces non-regular files to be opened. (A non-regular file is a
+ directory or a device special file.) Also suppresses the warn-
+ ing message when a binary file is opened. By default, less 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 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 high-
+ light only the particular string which was found by the last
+ search command. This can cause less to run somewhat faster than
+ the default.
+
+ -G or --HILITE-SEARCH
+ The -G option suppresses all highlighting of strings found by
+ search commands.
+
+ -hn or --max-back-scroll=n
+ Specifies a maximum number of lines to scroll backward. If it
+ is necessary to scroll backward more than n lines, the screen is
+ repainted in a forward direction instead. (If the terminal does
+ not have the ability to scroll backward, -h0 is implied.)
+
+ -i or --ignore-case
+ Causes searches to ignore case; that is, 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.
+
+ -jn 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, unless changed
+ by -a or -A. 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.
+
+ -kfilename or --lesskey-file=filename
+ Causes less to open and interpret the named file as a lesskey
+ (1) file. Multiple -k options may be specified. If the LESSKEY
+ or LESSKEY_SYSTEM environment variable is set, or if a lesskey
+ file is found in a standard place (see KEY BINDINGS), it is also
+ used as a lesskey file.
+
+ -K or --quit-on-intr
+ Causes less to exit immediately (with status 2) when an inter-
+ rupt character (usually ^C) is typed. Normally, an interrupt
+ character causes less 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
+ less, but it will apply only to files opened subsequently, not
+ to the file which is currently open.
+
+ -m or --long-prompt
+ Causes less to prompt verbosely (like more), with the percent
+ into the file. By default, less prompts with a colon.
+
+ -M or --LONG-PROMPT
+ Causes less to prompt even more verbosely than more.
+
+ -n or --line-numbers
+ Suppresses line numbers. The default (to use line numbers) may
+ cause less to run more slowly in some cases, especially with a
+ very large input file. Suppressing line numbers with the -n
+ option will avoid this problem. Using line 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
+ ordinary file. If the file already exists, less will ask for
+ confirmation before overwriting it.
+
+ -Ofilename or --LOG-FILE=filename
+ The -O option is like -o, but it will overwrite an existing file
+ without asking for confirmation.
+
+ If no log file has been specified, the -o and -O options can be
+ used from within less to specify a log file. Without a file
+ name, they will simply report the name of the log file. The "s"
+ command is equivalent to specifying -o from within less.
+
+ -ppattern or --pattern=pattern
+ The -p option on the command line is equivalent to specifying
+ +/pattern; that is, it tells less to start at the first occur-
+ rence of pattern in the file.
+
+ -Pprompt or --prompt=prompt
+ Provides a way to tailor the three prompt styles to your own
+ preference. This option would normally be put in the LESS envi-
+ ronment variable, rather than being typed in with each less com-
+ mand. Such an option must either be the last option in the LESS
+ variable, or be terminated by a dollar sign. -Ps followed by a
+ string changes the default (short) prompt to that string. -Pm
+ changes the medium (-m) prompt. -PM changes the long (-M)
+ prompt. -Ph changes the prompt for the help screen. -P=
+ changes the message printed by the = command. -Pw changes the
+ message printed while waiting for data (in the F command). All
+ prompt strings consist of a sequence of letters and special
+ escape sequences. See the section on PROMPTS for more details.
+
+ -q or --quiet or --silent
+ Causes moderately "quiet" operation: the terminal bell is not
+ rung if an attempt is made to scroll past the end of the file or
+ before the beginning of the file. If the terminal has a "visual
+ bell", it is used instead. The bell will be rung on certain
+ other errors, such as typing an invalid character. The default
+ is to ring the terminal bell in all such cases.
+
+ -Q or --QUIET or --SILENT
+ Causes totally "quiet" operation: the terminal bell is never
+ rung.
+
+ -r or --raw-control-chars
+ Causes "raw" control characters to be displayed. The default is
+ to display control characters using the caret notation; for
+ example, a control-A (octal 001) is displayed as "^A". Warning:
+ when the -r option is used, less cannot keep track of the actual
+ appearance of the screen (since this depends on how the screen
+ responds to each type of control character). Thus, various 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 less think that characters other than "m" can end ANSI
+ color escape sequences by setting the environment variable
+ LESSANSIENDCHARS to the list of characters which can end a color
+ escape sequence. And you can make less think that 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 nroff output.
+
+ -S or --chop-long-lines
+ Causes lines longer than the screen width to be chopped (trun-
+ cated) rather than wrapped. That is, the portion of a long line
+ that does not fit in the screen width is not shown. The default
+ is to wrap long lines; that is, display the remainder on the
+ next line.
+
+ -ttag or --tag=tag
+ The -t option, followed immediately by a TAG, will edit the file
+ containing that tag. For this to work, tag information must be
+ available; for example, there may be a file in the current
+ directory called "tags", which was previously built by ctags (1)
+ or an equivalent command. If the environment variable LESSGLOB-
+ ALTAGS is set, it is taken to be the name of a command compati-
+ ble with global (1), and that command is executed to find the
+ tag. (See http://www.gnu.org/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 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 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 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.
+
+ -xn,... or --tabs=n,...
+ Sets tab stops. If only one n is specified, tab stops are set
+ at multiples of n. If multiple values separated by commas are
+ specified, tab stops are set at those positions, and then con-
+ tinue with the same spacing as the last two. For example,
+ -x9,17 will set tabs at positions 9, 17, 25, 33, etc. The
+ default for n is 8.
+
+ -X or --no-init
+ Disables sending the termcap initialization and deinitialization
+ strings to the terminal. This is sometimes desirable if the
+ deinitialization string does something unnecessary, like clear-
+ ing the screen.
+
+ -yn or --max-forw-scroll=n
+ Specifies a maximum number of lines to scroll forward. If it is
+ necessary to scroll forward more than n lines, the screen is
+ repainted instead. The -c or -C option may be used to repaint
+ from the top of the screen if desired. By default, any forward
+ movement causes scrolling.
+
+ -[z]n or --window=n
+ Changes the default scrolling window size to n lines. The
+ default is one screenful. The z and w commands can also be used
+ to change the window size. The "z" may be omitted for compati-
+ bility with some versions of 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 win-
+ dow to 20 lines. If the screen is resized to 40 lines, the
+ scrolling window automatically changes to 36 lines.
+
+ -"cc or --quotes=cc
+ Changes the filename quoting character. This may be necessary
+ if you are trying to name a file which contains both spaces and
+ quote characters. Followed by a single character, this changes
+ the quote character to that character. Filenames containing a
+ space should then be surrounded by that character rather than by
+ double quotes. Followed by two characters, changes the open
+ quote to the first character, and the close quote to the second
+ character. Filenames containing a space should then be preceded
+ by the open quote character and followed by the close quote
+ 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. Alternately, the number may be speci-
+ fied as a fraction of the width of the screen, starting with a
+ decimal point: .5 is half of the screen width, .3 is three
+ tenths of the screen width, and so on. If the number is speci-
+ fied as a fraction, the actual number of scroll positions is
+ recalculated if the terminal window is resized, so that the
+ actual scroll remains at the specified fraction 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, less will continue to display the contents of the
+ original file despite its name change. If --follow-name is
+ specified, during an F command less 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), less 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 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 ini-
+ tial 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), 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. If you first enter some
+ text and then press UPARROW, it will retrieve the previous com-
+ mand which begins with that text.
+
+ DOWNARROW [ ESC-j ]
+ Retrieve the next command line. If you first enter some text
+ and then press DOWNARROW, it will retrieve the next command
+ which begins with that text.
+
+ 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.
+
+ ^G Delete the entire command line and return to the main prompt.
+
+
+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 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.
+
+
+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 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, 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 replace-
+ ment filename, less 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 less 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 less view them directly:
+
+ lessopen.sh:
+ #! /bin/sh
+ case "$1" in
+ *.Z) uncompress -
+ if [ -s /tmp/less.$$ ]; then
+ echo /tmp/less.$$
+ else
+ rm -f /tmp/less.$$
+ fi
+ ;;
+ esac
+
+ lessclose.sh:
+ #! /bin/sh
+ rm $2
+
+ To use these scripts, put them both where they can be executed and set
+ LESSOPEN="lessopen.sh %s", and 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 less, 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 less uses the original file, as normal. To use an input
+ pipe, make the first character in the LESSOPEN environment variable a
+ vertical bar (|) to signify that the input preprocessor is an input
+ pipe.
+
+ For example, on many Unix systems, this script will work like the pre-
+ vious example scripts:
+
+ lesspipe.sh:
+ #! /bin/sh
+ case "$1" in
+ *.Z) uncompress -c $1 2>/dev/null
+ *) exit 1
+ ;;
+ esac
+ exit $?
+
+ To use this script, put it where it can be executed and set
+ LESSOPEN="|lesspipe.sh %s".
+
+ Note that a preprocessor cannot output an empty file, since that is
+ interpreted as meaning there is no replacement, and the original file
+ is used. To avoid this, if LESSOPEN starts with two vertical bars, the
+ exit status of the script becomes meaningful. If the exit status is
+ zero, the output is considered to be replacement text, even if it
+ empty. If the exit status is nonzero, any output is ignored and the
+ original file is used. For compatibility with previous versions of
+ less, if LESSOPEN starts with only one vertical bar, the exit status of
+ the preprocessor is ignored.
+
+ 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 "-".
+
+ For compatibility with previous versions of less, the input preproces-
+ sor or pipe is not used if less is viewing standard input. However, if
+ the first character of LESSOPEN is a dash (-), the input preprocessor
+ is used on standard input as well as other files. In this case, the
+ dash is not considered to be part of the preprocessor command. If
+ standard input is being viewed, the input preprocessor is passed a file
+ name consisting of a single dash. Similarly, if the first two charac-
+ ters of LESSOPEN are vertical bar and dash (|-) or two vertical bars
+ and a dash (||-), the input pipe is used on standard input as well as
+ other files. Again, in this case the dash is not considered to be part
+ of the input pipe command.
+
+
+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 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 less 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_CTYPE or
+ LANG environment variables, then the default character set is utf-8.
+
+ If that string is not found, but your system supports the setlocale
+ interface, less will use setlocale to determine the character set.
+ setlocale is controlled by setting the LANG or LC_CTYPE environment
+ variables.
+
+ Finally, if the setlocale interface is also not 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<%02X>". Warning: the
+ result of expanding the character via LESSBINFMT must be less than 31
+ characters.
+
+ When the character set is utf-8, the LESSUTFBINFMT 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.
+
+
+PROMPTS
+ The -P option allows you to tailor the prompt to your preference. The
+ string given to the -P option replaces the specified prompt string.
+ Certain characters in the string are interpreted specially. The prompt
+ mechanism is rather complicated to provide flexibility, but the 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:
+
+ %bX 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.
+
+ %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 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.
+
+ %F Replaced by the last component of the name of the current input
+ file.
+
+ %i Replaced by the index of the current file in the list of input
+ files.
+
+ %lX Replaced by the line number of a line in the input file. The
+ line to be used is determined by the X, as with the %b option.
+
+ %L Replaced by the line number of the last line in the input file.
+
+ %m Replaced by the total number of input files.
+
+ %pX Replaced by the percent into the current input file, based on
+ byte offsets. The line used is determined by the X as with the
+ %b option.
+
+ %PX Replaced by the percent into the current input file, based on
+ line numbers. The line used is determined by the X as with the
+ %b option.
+
+ %s Same as %B.
+
+ %t Causes any trailing spaces to be removed. 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.
+
+ ?bX True if the byte offset of the specified line is known.
+
+ ?B True if the size of current input file is known.
+
+ ?c True if the text is horizontally shifted (%c is not zero).
+
+ ?dX True if the page number of the specified line is known.
+
+ ?e True if at end-of-file.
+
+ ?f True if there is an input filename (that is, if input is not a
+ pipe).
+
+ ?lX True if the line number of the specified line is known.
+
+ ?L True if the line number of the last line in the file is known.
+
+ ?m True if there is more than one input file.
+
+ ?n True if this is the first prompt in a new input file.
+
+ ?pX True if the percent into the current input file, based on byte
+ offsets, of the specified line is known.
+
+ ?PX True if the percent into the current input file, based on line
+ numbers, of the specified line is known.
+
+ ?s Same as "?B".
+
+ ?x True if there is a next input file (that is, if the current
+ input file is not the last one).
+
+ Any characters other than the special ones (question mark, colon,
+ period, percent, and backslash) become 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.
+
+
+SECURITY
+ When the environment variable LESSSECURE is set to 1, less runs in a
+ "secure" mode. This means these features are disabled:
+
+ ! the shell command
+
+ | the pipe command
+
+ :e the examine command.
+
+ v the editing command
+
+ s -o log files
+
+ -k use of lesskey files
+
+ -t use of tags files
+
+ metacharacters in filenames, such as *
+
+ filename completion (TAB, ^L)
+
+ Less can also be compiled to be permanently in "secure" mode.
+
+
+COMPATIBILITY WITH MORE
+ If the environment variable LESS_IS_MORE is set to 1, or if the program
+ is invoked via a file link named "more", less 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, less
+ behaves as if the -E option were set. If the -e option is set, less
+ 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 less command rather
+ than a search pattern.
+
+ The LESS environment variable is ignored, and the MORE environment
+ variable is used in its place.
+
+
+ENVIRONMENT VARIABLES
+ Environment variables may be specified either in the system environment
+ as usual, or in a lesskey (1) file. If environment variables are
+ defined in more than one place, variables defined in a local lesskey
+ file take precedence over variables defined in the system 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 less 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 global
+ (1) command. If not set, global tags are not used.
+
+ LESSHISTFILE
+ Name of the history file used to remember search commands and
+ shell commands between invocations of less. If set to "-" 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 more (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.)
+
+ MORE Options which are passed to less automatically when running in
+ more compatible mode.
+
+ PATH User's search path (used to find a lesskey file on MS-DOS and
+ OS/2 systems).
+
+ SHELL The shell used to execute the ! command, as well as to expand
+ filenames.
+
+ TERM The type of terminal on which less is being run.
+
+ VISUAL The name of the editor (used for the v command).
+
+
+SEE ALSO
+ lesskey(1)
+
+
+COPYRIGHT
+ Copyright (C) 1984-2012 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.
+
+
+AUTHOR
+ Mark Nudelman <bug-less@gnu.org>
+ Send bug reports or comments to bug-less@gnu.org.
+ See http://www.greenwoodsoftware.com/less/bugs.html for the latest list
+ of known bugs in less.
+ For more information, see the less homepage at
+ http://www.greenwoodsoftware.com/less.
+
+
+
+ Version 451: 21 Jul 2012 LESS(1)