mirror of
https://github.com/GnoConsortium/gno.git
synced 2024-12-22 14:30:29 +00:00
947 lines
32 KiB
Groff
947 lines
32 KiB
Groff
|
.TH LESS 1
|
||
|
.SH NAME
|
||
|
less \- opposite of more
|
||
|
.SH SYNOPSIS
|
||
|
.B "less -?"
|
||
|
.br
|
||
|
.B "less [-[+]aBcCdeEfHimMnNqQrsSuUw]"
|
||
|
.br
|
||
|
.B " [-b \fIbufs\fP] [-h \fIlines\fP] [-j \fIline\fP] [-k \fIkeyfile\fP]"
|
||
|
.br
|
||
|
.B " [-{oO} \fIlogfile\fP] [-p \fIpattern\fP] [-P \fIprompt\fP] [-t \fItag\fP]"
|
||
|
.br
|
||
|
.B " [-T \fItagfile\fP] [-x \fItab\fP] [-y \fIlines\fP] [-[z] \fIlines\fP]"
|
||
|
.br
|
||
|
.B " [+[+]\fIcmd\fP] [\fIfilename\fP]..."
|
||
|
|
||
|
.SH DESCRIPTION
|
||
|
.I Less
|
||
|
is a program similar to
|
||
|
.I more
|
||
|
(1), but which allows backward movement
|
||
|
in the file as well as forward movement.
|
||
|
Also,
|
||
|
.I 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
|
||
|
.I vi
|
||
|
(1).
|
||
|
.I 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 an up-arrow.)
|
||
|
.PP
|
||
|
Commands are based on both
|
||
|
.I more
|
||
|
and
|
||
|
.I vi.
|
||
|
Commands may be preceded by a decimal number,
|
||
|
called N in the descriptions below.
|
||
|
The number is used by some commands, as indicated.
|
||
|
|
||
|
.SH 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".
|
||
|
.IP "h or H"
|
||
|
Help: display a summary of these commands.
|
||
|
If you forget all the other commands, remember this one.
|
||
|
.PP
|
||
|
.IP "SPACE or ^V or f or ^F"
|
||
|
Scroll forward N lines, default one window (see option -z below).
|
||
|
If N is more than the screen size, only the final screenful is displayed.
|
||
|
Warning: some systems use ^V as a special literalization character.
|
||
|
.PP
|
||
|
.IP "z"
|
||
|
Like SPACE, but if N is specified, it becomes the new window size.
|
||
|
.PP
|
||
|
.IP "RETURN or ^N or e or ^E or j or ^J"
|
||
|
Scroll forward N lines, default 1.
|
||
|
The entire N lines are displayed, even if N is more than the screen size.
|
||
|
.PP
|
||
|
.IP "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.
|
||
|
.PP
|
||
|
.IP "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.
|
||
|
.PP
|
||
|
.IP "w"
|
||
|
Like ESC-v, but if N is specified, it becomes the new window size.
|
||
|
.PP
|
||
|
.IP "y or ^Y or ^P or k or ^K"
|
||
|
Scroll backward N lines, default 1.
|
||
|
The entire N lines are displayed, even if N is more than the screen size.
|
||
|
Warning: some systems use ^Y as a special job control character.
|
||
|
.PP
|
||
|
.IP "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.
|
||
|
.PP
|
||
|
.IP "r or ^R or ^L"
|
||
|
Repaint the screen.
|
||
|
.PP
|
||
|
.IP R
|
||
|
Repaint the screen, discarding any buffered input.
|
||
|
Useful if the file is changing while it is being viewed.
|
||
|
.PP
|
||
|
.IP "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.)
|
||
|
.PP
|
||
|
.IP "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.)
|
||
|
.PP
|
||
|
.IP "G or > or ESC->"
|
||
|
Go to line N in the file, default the end of the file.
|
||
|
(Warning: this may be slow if N is large,
|
||
|
or if N is not specified and
|
||
|
standard input, rather than a file, is being read.)
|
||
|
.PP
|
||
|
.IP "p or %"
|
||
|
Go to a position N percent into the file.
|
||
|
N should be between 0 and 100.
|
||
|
(This works if standard input is being read, but only if
|
||
|
.I less
|
||
|
has already read to the end of the file.
|
||
|
It is always fast, but not always useful.)
|
||
|
.PP
|
||
|
.IP "{"
|
||
|
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.
|
||
|
.PP
|
||
|
.IP "}"
|
||
|
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.
|
||
|
.PP
|
||
|
.IP "("
|
||
|
Like {, but applies to parentheses rather than curly brackets.
|
||
|
.PP
|
||
|
.IP ")"
|
||
|
Like }, but applies to parentheses rather than curly brackets.
|
||
|
.PP
|
||
|
.IP "["
|
||
|
Like {, but applies to square brackets rather than curly brackets.
|
||
|
.PP
|
||
|
.IP "]"
|
||
|
Like }, but applies to square brackets rather than curly brackets.
|
||
|
.PP
|
||
|
.IP "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.
|
||
|
.IP "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.
|
||
|
.IP m
|
||
|
Followed by any lowercase letter,
|
||
|
marks the current position with that letter.
|
||
|
.PP
|
||
|
.IP "'"
|
||
|
(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 preserved when a new file is examined,
|
||
|
so the ' command can be used to switch between input files.
|
||
|
.PP
|
||
|
.IP "^X^X"
|
||
|
Same as single quote.
|
||
|
.PP
|
||
|
.IP /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
|
||
|
.I ed.
|
||
|
The search starts at the second line displayed
|
||
|
(but see the -a and -j options, which change this).
|
||
|
.sp
|
||
|
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:
|
||
|
.RS
|
||
|
.IP !
|
||
|
Search for lines which do NOT match the pattern.
|
||
|
.IP *
|
||
|
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.
|
||
|
.IP @
|
||
|
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.
|
||
|
.RE
|
||
|
.PP
|
||
|
.IP ?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.
|
||
|
.sp
|
||
|
Certain characters are special as in the / command:
|
||
|
.RS
|
||
|
.IP !
|
||
|
Search for lines which do NOT match the pattern.
|
||
|
.IP *
|
||
|
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.
|
||
|
.IP @
|
||
|
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.
|
||
|
.RE
|
||
|
.PP
|
||
|
.IP "ESC-/pattern"
|
||
|
Same as "/*".
|
||
|
.PP
|
||
|
.IP "ESC-?pattern"
|
||
|
Same as "?*".
|
||
|
.PP
|
||
|
.IP n
|
||
|
Repeat previous search, for N-th line containing the last pattern.
|
||
|
If the previous search was modified by !, the search is made for the
|
||
|
N-th line NOT containing the pattern.
|
||
|
If the previous search was modified by *, the search continues
|
||
|
in the next (or previous) file if not satisfied in the current file.
|
||
|
There is no effect if the previous search was modified by @.
|
||
|
.PP
|
||
|
.IP N
|
||
|
Repeat previous search, but in the reverse direction.
|
||
|
.PP
|
||
|
.IP "ESC-n"
|
||
|
Repeat previous search, but crossing file boundaries.
|
||
|
The effect is as if the previous search were modified by *.
|
||
|
.PP
|
||
|
.IP "ESC-N"
|
||
|
Repeat previous search, but in the reverse direction
|
||
|
and crossing file boundaries.
|
||
|
.PP
|
||
|
.IP ":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.
|
||
|
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.
|
||
|
.PP
|
||
|
.IP "^X^V or E"
|
||
|
Same as :e.
|
||
|
Warning: some systems use ^V as a special literalization character.
|
||
|
.PP
|
||
|
.IP ":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.
|
||
|
.PP
|
||
|
.IP ":p"
|
||
|
Examine the previous file in the command line list.
|
||
|
If a number N is specified, the N-th previous file is examined.
|
||
|
.PP
|
||
|
.IP ":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.
|
||
|
.PP
|
||
|
.IP "= 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.
|
||
|
.PP
|
||
|
.IP \-
|
||
|
Followed by one of the command line option letters (see below),
|
||
|
this will change the setting of that option
|
||
|
and print a message describing the new setting.
|
||
|
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.
|
||
|
.PP
|
||
|
.IP \-+
|
||
|
Followed by one of the command line option letters (see below),
|
||
|
this will reset the option to its default setting
|
||
|
and print a message describing the new setting.
|
||
|
(The "\-+\fIX\fP" command does the same thing
|
||
|
as "\-+\fIX\fP" on the command line.)
|
||
|
This does not work for string-valued options.
|
||
|
.PP
|
||
|
.IP \-\-
|
||
|
Followed by one of the command line option letters (see below),
|
||
|
this will reset the option to the "opposite" of its default setting
|
||
|
and print a message describing the new setting.
|
||
|
(The "\-\-\fIX\fP" command does the same thing
|
||
|
as "\-\fIX\fP" on the command line.)
|
||
|
This does not work for numeric or string-valued options.
|
||
|
.PP
|
||
|
.IP _
|
||
|
(Underscore.)
|
||
|
Followed by one of the command line option letters (see below),
|
||
|
this will print a message describing the current setting of that option.
|
||
|
The setting of the option is not changed.
|
||
|
.PP
|
||
|
.IP +cmd
|
||
|
Causes the specified cmd to be executed each time a new file is examined.
|
||
|
For example, +G causes
|
||
|
.I less
|
||
|
to initially display each file starting at the end
|
||
|
rather than the beginning.
|
||
|
.PP
|
||
|
.IP V
|
||
|
Prints the version number of
|
||
|
.I less
|
||
|
being run.
|
||
|
.PP
|
||
|
.IP "q or :q or :Q or ZZ or ESC ESC"
|
||
|
Exits
|
||
|
.I less.
|
||
|
.PP
|
||
|
The following
|
||
|
three
|
||
|
commands may or may not be valid, depending on your particular installation.
|
||
|
.PP
|
||
|
.IP v
|
||
|
Invokes an editor to edit the current file being viewed.
|
||
|
The editor is taken from the environment variable EDITOR,
|
||
|
or defaults to "vi".
|
||
|
See also the discussion of LESSEDIT under the section on PROMPTS below.
|
||
|
.PP
|
||
|
.IP "! 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 simply invokes a shell.
|
||
|
In all cases, the shell is taken from the environment variable SHELL,
|
||
|
or defaults to "sh".
|
||
|
.PP
|
||
|
.IP "| <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.
|
||
|
.PP
|
||
|
.SH OPTIONS
|
||
|
Command line options are described below.
|
||
|
Most options may be changed while
|
||
|
.I less
|
||
|
is running, via the "\-" command.
|
||
|
.PP
|
||
|
Options are also taken from the environment variable "LESS".
|
||
|
For example,
|
||
|
to avoid typing "less -options ..." each time
|
||
|
.I less
|
||
|
is invoked, you might tell
|
||
|
.I csh:
|
||
|
.sp
|
||
|
setenv LESS "-options"
|
||
|
.sp
|
||
|
or if you use
|
||
|
.I sh:
|
||
|
.sp
|
||
|
LESS="-options"; export LESS
|
||
|
.sp
|
||
|
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 on the command line by beginning the command
|
||
|
line option with "-+".
|
||
|
.sp
|
||
|
A dollar sign ($) may be used to signal the end of an option string.
|
||
|
This is important only for options like -P which take a
|
||
|
following string.
|
||
|
.IP -?
|
||
|
This option displays a summary of the commands accepted by
|
||
|
.I less
|
||
|
(the same as the h command).
|
||
|
If this option is given, all other options are ignored, and
|
||
|
.I less
|
||
|
exits after the help screen is viewed.
|
||
|
(Depending on how your shell interprets the question mark,
|
||
|
it may be necessary to quote the question mark, thus: "-\\?".)
|
||
|
.IP -a
|
||
|
Causes searches to start after the last line
|
||
|
displayed on the screen,
|
||
|
thus skipping all lines displayed on the screen.
|
||
|
By default, searches start at the second line on the screen
|
||
|
(or after the last found line; see the -j option).
|
||
|
.IP -b\fIn\fP
|
||
|
Causes
|
||
|
.I less
|
||
|
to use a non-standard number of buffers.
|
||
|
Buffers are 1K, and by default 10 buffers are used
|
||
|
(except if data in coming from standard input; see the -B option).
|
||
|
The number \fIn\fP specifies a different number of buffers to use.
|
||
|
.IP -B
|
||
|
Disables automatic allocation of buffers,
|
||
|
so that only the default number of buffers are used.
|
||
|
If more data is read than will fit in the buffers, the oldest
|
||
|
data is discarded.
|
||
|
By default, when data is coming from standard input,
|
||
|
buffers are allocated automatically as needed
|
||
|
to avoid loss of data.
|
||
|
.IP -c
|
||
|
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.
|
||
|
.IP -C
|
||
|
The -C option is like -c, but the screen is cleared before it is repainted.
|
||
|
.IP -d
|
||
|
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
|
||
|
.I less
|
||
|
on a dumb terminal).
|
||
|
.IP -e
|
||
|
Causes
|
||
|
.I less
|
||
|
to automatically exit
|
||
|
the second time it reaches end-of-file.
|
||
|
By default, the only way to exit
|
||
|
.I less
|
||
|
is via the "q" command.
|
||
|
.IP -E
|
||
|
Causes
|
||
|
.I less
|
||
|
to automatically exit the first time it reaches end-of-file.
|
||
|
.IP -f
|
||
|
Forces non-regular files to be opened.
|
||
|
(A non-regular file is a directory or a device special file.)
|
||
|
Also suppresses the warning message when a binary file is opened.
|
||
|
By default,
|
||
|
.I less
|
||
|
will refuse to open non-regular files.
|
||
|
.IP -h\fIn\fP
|
||
|
Specifies a maximum number of lines to scroll backward.
|
||
|
If it is necessary to scroll backward more than \fIn\fP lines,
|
||
|
the screen is repainted in a forward direction instead.
|
||
|
(If the terminal does not have the ability to scroll
|
||
|
backward, -h0 is implied.)
|
||
|
.IP -i
|
||
|
Causes searches to ignore case; that is,
|
||
|
uppercase and lowercase are considered identical.
|
||
|
Also, text which is overstruck or underlined can be searched for.
|
||
|
This option is ignored if any uppercase letters
|
||
|
appear in the search pattern.
|
||
|
.IP -j\fIn\fP
|
||
|
Specifies a line on the screen where "target" lines
|
||
|
are to be positioned.
|
||
|
Target lines are the object of text searches,
|
||
|
tag searches, jumps to a line number,
|
||
|
jumps to a file percentage, and jumps 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 immediately
|
||
|
after the target line.
|
||
|
For example, if "-j4" is used, the target line is the
|
||
|
fourth line on the screen, so searches begin at the fifth line
|
||
|
on the screen.
|
||
|
.IP -k\fIfilename\fP
|
||
|
Causes
|
||
|
.I less
|
||
|
to open and interpret the named file as a
|
||
|
.I lesskey
|
||
|
(1) file.
|
||
|
Multiple -k options may be specified.
|
||
|
If a file called .less exists in the user's home directory, this
|
||
|
file is also used as a
|
||
|
.I lesskey
|
||
|
file.
|
||
|
.IP -m
|
||
|
Causes
|
||
|
.I less
|
||
|
to prompt verbosely (like \fImore\fP),
|
||
|
with the percent into the file.
|
||
|
By default,
|
||
|
.I less
|
||
|
prompts with a colon.
|
||
|
.IP -M
|
||
|
Causes
|
||
|
.I less
|
||
|
to prompt even more verbosely than
|
||
|
.I more.
|
||
|
.IP -n
|
||
|
Suppresses line numbers.
|
||
|
The default (to use line numbers) may cause
|
||
|
.I less
|
||
|
to run more slowly in some cases, especially with a very large input file.
|
||
|
Suppressing line numbers with the -n flag 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).
|
||
|
.IP -N
|
||
|
Causes a line number to be displayed at the beginning of
|
||
|
each line in the display.
|
||
|
.IP -o\fIfilename\fP
|
||
|
Causes
|
||
|
.I 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,
|
||
|
.I less
|
||
|
will ask for confirmation before overwriting it.
|
||
|
.IP -O\fIfilename\fP
|
||
|
The -O option is like -o, but it will overwrite an existing
|
||
|
file without asking for confirmation.
|
||
|
.sp
|
||
|
If no log file has been specified,
|
||
|
the -o and -O options can be used from within
|
||
|
.I 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
|
||
|
.I less.
|
||
|
.IP -p\fIpattern\fP
|
||
|
The -p option on the command line is equivalent to
|
||
|
specifying +/\fIpattern\fP;
|
||
|
that is, it tells
|
||
|
.I less
|
||
|
to start at the first occurence of \fIpattern\fP in the file.
|
||
|
.IP -P\fIprompt\fP
|
||
|
Provides a way to tailor the three prompt
|
||
|
styles to your own preference.
|
||
|
This option would normally be put in the LESS environment
|
||
|
variable, rather than being typed in with each
|
||
|
.I less
|
||
|
command.
|
||
|
Such an option must either be the last option in the LESS variable,
|
||
|
or be terminated by a dollar sign.
|
||
|
-P followed by a string changes the default (short) prompt to that string.
|
||
|
-Pm changes the medium (-m) prompt to the string, and
|
||
|
-PM changes the long (-M) prompt.
|
||
|
Also, -P= changes the message printed by the = command to the given string.
|
||
|
All prompt strings consist of a sequence of
|
||
|
letters and special escape sequences.
|
||
|
See the section on PROMPTS for more details.
|
||
|
.IP -q
|
||
|
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.
|
||
|
.IP -Q
|
||
|
Causes totally "quiet" operation:
|
||
|
the terminal bell is never rung.
|
||
|
.IP -r
|
||
|
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 flag is used,
|
||
|
.I less
|
||
|
cannot keep track of the actual appearance of the screen
|
||
|
(since this depends on how the screen responds to
|
||
|
each type of control character).
|
||
|
Thus, various display problems may result,
|
||
|
such as long lines being split in the wrong place.
|
||
|
.IP -s
|
||
|
Causes consecutive blank lines to be squeezed into a single blank line.
|
||
|
This is useful when viewing
|
||
|
.I nroff
|
||
|
output.
|
||
|
.IP -S
|
||
|
Causes lines longer than the screen width to be
|
||
|
chopped rather than folded.
|
||
|
That is, the remainder of a long line is simply discarded.
|
||
|
The default is to fold long lines; that is, display the remainder
|
||
|
on the next line.
|
||
|
.IP -t\fItag\fP
|
||
|
The -t option, followed immediately by a TAG,
|
||
|
will edit the file containing that tag.
|
||
|
For this to work, there must be a file called "tags" in the
|
||
|
current directory, which was previously built by the
|
||
|
.I ctags
|
||
|
(1) command.
|
||
|
This option may also be specified from within
|
||
|
.I less
|
||
|
(using the \- command) as a way of examining a new file.
|
||
|
The command ":t" is equivalent to specifying -t from within
|
||
|
.I less.
|
||
|
.IP -T\fItagsfile\fP
|
||
|
Specifies a tags file to be used instead of "tags".
|
||
|
.IP -u
|
||
|
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.
|
||
|
.IP -U
|
||
|
Causes backspaces and carriage returns to be treated as control characters;
|
||
|
that is, they are handled as specified by the -r option.
|
||
|
.sp
|
||
|
By default, if neither -u nor -U is given,
|
||
|
backspaces which appear adjacent to an underscore character
|
||
|
are treated specially:
|
||
|
the underlined text is displayed
|
||
|
using the terminal's hardware underlining capability.
|
||
|
Also, backspaces which appear between two identical characters
|
||
|
are treated specially:
|
||
|
the overstruck text is printed
|
||
|
using the terminal's hardware boldface 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.
|
||
|
.IP -w
|
||
|
Causes blank lines to be used to represent lines
|
||
|
past the end of the file.
|
||
|
By default,
|
||
|
a tilde character is used.
|
||
|
.IP -x\fIn\fP
|
||
|
Sets tab stops every \fIn\fP positions.
|
||
|
The default for \fIn\fP is 8.
|
||
|
.IP -y\fIn\fP
|
||
|
Specifies a maximum number of lines to scroll forward.
|
||
|
If it is necessary to scroll forward more than \fIn\fP 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.
|
||
|
.IP -[z]\fIn\fP
|
||
|
Changes the default scrolling window size to \fIn\fP 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, as in "-\fIn\fP" for compatibility with
|
||
|
.I more.
|
||
|
.IP +
|
||
|
If a command line option begins with \fB+\fP,
|
||
|
the remainder of that option is taken to be an initial command to
|
||
|
.I less.
|
||
|
For example, +G tells
|
||
|
.I 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.
|
||
|
|
||
|
.SH "KEY BINDINGS"
|
||
|
You may define your own
|
||
|
.I less
|
||
|
commands by using the program
|
||
|
.I lesskey
|
||
|
(1)
|
||
|
to create a file called ".less" in your home directory.
|
||
|
This file specifies a set of command keys and an action
|
||
|
associated with each key.
|
||
|
See the
|
||
|
.I lesskey
|
||
|
manual page for more details.
|
||
|
|
||
|
.SH "NATIONAL CHARACTER SETS"
|
||
|
There are three types of characters in the input file:
|
||
|
.IP "normal characters"
|
||
|
can be displayed directly to the screen.
|
||
|
.IP "control characters"
|
||
|
should not be displayed directly, but are expected to be found
|
||
|
in ordinary text files (such as backspace and tab).
|
||
|
.IP "binary characters"
|
||
|
cannot be displayed directly and are not expected to be found
|
||
|
in text files.
|
||
|
.PP
|
||
|
By default,
|
||
|
.I less
|
||
|
uses the ASCII character set.
|
||
|
In the ASCII character set, characters
|
||
|
with values between 128 and 255 are treated as binary.
|
||
|
The LESSCHARSET environment variable may be used to select
|
||
|
another character set.
|
||
|
If it is set to the value "latin1",
|
||
|
the ISO 8859/1 character set is assumed.
|
||
|
Latin-1 is the same as ASCII, except characters between 128 and 255 are
|
||
|
treated as normal characters.
|
||
|
The only valid values for LESSCHARSET currently are "ascii" and "latin1".
|
||
|
.PP
|
||
|
In special cases, it may be desired to tailor
|
||
|
.I less
|
||
|
to use a character set other than the ones definable by LESSCHARSET.
|
||
|
In this case, the environment variable LESSCHARDEF can be used
|
||
|
to define a character set.
|
||
|
It should be set to a string where each character in the string represents
|
||
|
one character in the character set.
|
||
|
The character "." is used for a normal character, "c" for control,
|
||
|
and "b" for binary.
|
||
|
A decimal number may be used for repetition.
|
||
|
For example, "bccc4b." would mean character 0 is binary,
|
||
|
1, 2 and 3 are control, 4, 5, 6 and 7 are binary, and 8 is normal.
|
||
|
All characters after the last are taken to be the same as the last,
|
||
|
so characters 9 through 255 would be normal.
|
||
|
(This is an example, and does not necessarily
|
||
|
represent any real character set.)
|
||
|
.PP
|
||
|
Setting LESSCHARDEF to "8bcccbcc18b95.b" is the same as setting
|
||
|
LESSCHARSET to "ascii".
|
||
|
Setting LESSCHARDEF to "8bcccbcc18b95.33b." is the same as setting
|
||
|
LESSCHARSET to "latin1".
|
||
|
.PP
|
||
|
Control and binary characters are displayed in blinking mode.
|
||
|
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 an octal number preceded
|
||
|
by a backslash.
|
||
|
This octal format can be changed by
|
||
|
setting the LESSBINFMT environment variable
|
||
|
to a printf-style format string; the default is '\\%o'.
|
||
|
The blinking mode display of control and binary characters can
|
||
|
be changed or disabled by preceding the LESSBINFMT format
|
||
|
string with a "*" and one character to select the mode:
|
||
|
"*k" is blinking, "*d" is bold, "*u" is underlined,
|
||
|
and "*n" is normal (no special display attribute).
|
||
|
For example, if LESSBINFMT is "*u[%x]", binary characters
|
||
|
are displayed in underlined hexadecimal surrounded by brackets.
|
||
|
|
||
|
.SH "PROMPTS"
|
||
|
The -P option allows you to tailor the prompt to your preference.
|
||
|
The string given to the -P option replaces the specified prompt string.
|
||
|
Certain characters in the string are interpreted specially.
|
||
|
The prompt mechanism is rather complicated to provide flexibility,
|
||
|
but the ordinary user need not understand the details of constructing
|
||
|
personalized prompt strings.
|
||
|
.sp
|
||
|
A percent sign followed by a single character is expanded
|
||
|
according to what the following character is:
|
||
|
.IP "%b\fIX\fP"
|
||
|
Replaced by the byte offset into the current input file.
|
||
|
The b is followed by a single character (shown as \fIX\fP 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.
|
||
|
.IP "%B"
|
||
|
Replaced by the size of the current input file.
|
||
|
.IP "%E"
|
||
|
Replaced by the name of the editor (from the EDITOR environment variable).
|
||
|
See the discussion of the LESSEDIT feature below.
|
||
|
.IP "%f"
|
||
|
Replaced by the name of the current input file.
|
||
|
.IP "%i"
|
||
|
Replaced by the index of the current file in the list of
|
||
|
input files.
|
||
|
.IP "%l\fIX\fP"
|
||
|
Replaced by the line number of a line in the input file.
|
||
|
The line to be used is determined by the \fIX\fP, as with the %b option.
|
||
|
.IP "%L"
|
||
|
Replaced by the line number of the last line in the input file.
|
||
|
.IP "%m"
|
||
|
Replaced by the total number of input files.
|
||
|
.IP "%p\fIX\fP"
|
||
|
Replaced by the percent into the current input file.
|
||
|
The line used is determined by the \fIX\fP as with the %b option.
|
||
|
.IP "%s"
|
||
|
Same as %B.
|
||
|
.IP "%t"
|
||
|
Causes any trailing spaces to be removed.
|
||
|
Usually used at the end of the string, but may appear anywhere.
|
||
|
.IP "%x"
|
||
|
Replaced by the name of the next input file in the list.
|
||
|
.PP
|
||
|
If any item is unknown (for example, the file size if input
|
||
|
is a pipe), a question mark is printed instead.
|
||
|
.PP
|
||
|
The format of the prompt string can be changed
|
||
|
depending on certain conditions.
|
||
|
A question mark followed by a single character acts like an "IF":
|
||
|
depending on the following character, a condition is evaluated.
|
||
|
If the condition is true, any characters following the question mark
|
||
|
and condition character, up to a period, are included in the prompt.
|
||
|
If the condition is false, such characters are not included.
|
||
|
A colon appearing between the question mark and the
|
||
|
period can be used to 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:
|
||
|
.IP "?a"
|
||
|
True if any characters have been included in the prompt so far.
|
||
|
.IP "?b\fIX\fP"
|
||
|
True if the byte offset of the specified line is known.
|
||
|
.IP "?B"
|
||
|
True if the size of current input file is known.
|
||
|
.IP "?e"
|
||
|
True if at end-of-file.
|
||
|
.IP "?f"
|
||
|
True if there is an input filename
|
||
|
(that is, if input is not a pipe).
|
||
|
.IP "?l\fIX\fP"
|
||
|
True if the line number of the specified line is known.
|
||
|
.IP "?L"
|
||
|
True if the line number of the last line in the file is known.
|
||
|
.IP "?m"
|
||
|
True if there is more than one input file.
|
||
|
.IP "?n"
|
||
|
True if this is the first prompt in a new input file.
|
||
|
.IP "?p\fIX\fP"
|
||
|
True if the percent into the current input file
|
||
|
of the specified line is known.
|
||
|
.IP "?s"
|
||
|
Same as "?B".
|
||
|
.IP "?x"
|
||
|
True if there is a next input file
|
||
|
(that is, if the current input file is not the last one).
|
||
|
.PP
|
||
|
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.
|
||
|
.PP
|
||
|
Some examples:
|
||
|
.sp
|
||
|
?f%f:Standard input.
|
||
|
.sp
|
||
|
This prompt prints the filename, if known;
|
||
|
otherwise the string "Standard input".
|
||
|
.sp
|
||
|
?f%f .?ltLine %lt:?pt%pt\\%:?btByte %bt:-...
|
||
|
.sp
|
||
|
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 question mark has a matching period,
|
||
|
and how the % after the %pt
|
||
|
is included literally by escaping it with a backslash.
|
||
|
.sp
|
||
|
?n?f%f\ .?m(file\ %i\ of\ %m)\ ..?e(END)\ ?x-\ Next\\:\ %x..%t
|
||
|
.sp
|
||
|
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 truncated.
|
||
|
This is the default prompt.
|
||
|
For reference, here are the defaults for
|
||
|
the other two prompts (-m and -M respectively).
|
||
|
Each is broken into two lines here for readability only.
|
||
|
.nf
|
||
|
.sp
|
||
|
?n?f%f\ .?m(file\ %i\ of\ %m)\ ..?e(END)\ ?x-\ Next\\:\ %x.:
|
||
|
?pB%pB\\%:byte\ %bB?s/%s...%t
|
||
|
.sp
|
||
|
?f%f\ .?n?m(file\ %i\ of\ %m)\ ..?ltline\ %lt?L/%L.\ :byte\ %bB?s/%s.\ .
|
||
|
?e(END)\ ?x-\ Next\\:\ %x.:?pB%pB\\%..%t
|
||
|
.sp
|
||
|
.fi
|
||
|
And here is the default message produced by the = command:
|
||
|
.nf
|
||
|
.sp
|
||
|
?f%f\ .?m(file\ %i\ of\ %m)\ .?ltline\ %lt?L/%L.\ .
|
||
|
byte\ %bB?s/%s.\ ?e(END)\ :?pB%pB\\%..%t
|
||
|
.fi
|
||
|
.PP
|
||
|
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:
|
||
|
.nf
|
||
|
.sp
|
||
|
%E\ ?lm+%lm.\ %f
|
||
|
.sp
|
||
|
.fi
|
||
|
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.
|
||
|
|
||
|
.SH "ENVIRONMENT VARIABLES"
|
||
|
.IP COLUMNS
|
||
|
Sets the number of columns on the screen.
|
||
|
Takes precedence over the number of columns specified by the TERM variable.
|
||
|
.IP EDITOR
|
||
|
The name of the editor (used for the v command).
|
||
|
.IP HOME
|
||
|
Name of the user's home directory (used to find a .less file).
|
||
|
.IP LESS
|
||
|
Flags which are passed to
|
||
|
.I less
|
||
|
automatically.
|
||
|
.IP LESSBINFMT
|
||
|
Format for displaying non-printable, non-control characters.
|
||
|
.IP LESSCHARDEF
|
||
|
Defines a character set.
|
||
|
.IP LESSCHARSET
|
||
|
Selects a predefined character set.
|
||
|
.IP LESSEDIT
|
||
|
Editor prototype string (used for the v command).
|
||
|
See discussion under PROMPTS.
|
||
|
.IP LESSHELP
|
||
|
Name of the help file.
|
||
|
.IP LINES
|
||
|
Sets the number of lines on the screen.
|
||
|
Takes precedence over the number of lines specified by the TERM variable.
|
||
|
.IP SHELL
|
||
|
The shell used to execute the ! command, as well as to expand filenames.
|
||
|
.IP TERM
|
||
|
The type of terminal on which
|
||
|
.I less
|
||
|
is being run.
|
||
|
|
||
|
.SH "SEE ALSO"
|
||
|
lesskey(1)
|
||
|
|
||
|
.SH WARNINGS
|
||
|
The = command and prompts (unless changed by -P)
|
||
|
report the line number of the line at the top of the screen,
|
||
|
but the byte and percent of the line at the bottom of the screen.
|
||
|
.PP
|
||
|
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.
|
||
|
.PP
|
||
|
The handling of national character sets is nonstandard as well as
|
||
|
insufficient for multibyte characters.
|
||
|
It will probably change in a later release.
|