387 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			387 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
.\"	$NetBSD: lesskey.1,v 1.9 2006/10/26 01:33:08 mrg Exp $
 | 
						|
.\"
 | 
						|
.TH LESSKEY 1 "Version 394: 03 Dec 2005"
 | 
						|
.SH NAME
 | 
						|
lesskey \- specify key bindings for less
 | 
						|
.SH SYNOPSIS
 | 
						|
.B "lesskey [-o output] [--] [input]"
 | 
						|
.br
 | 
						|
.B "lesskey [--output=output] [--] [input]"
 | 
						|
.br
 | 
						|
.B "lesskey -V"
 | 
						|
.br
 | 
						|
.B "lesskey --version"
 | 
						|
.SH DESCRIPTION
 | 
						|
.I Lesskey
 | 
						|
is used to specify a set of key bindings to be used by
 | 
						|
.I less.
 | 
						|
The input file is a text file which describes the key bindings,
 | 
						|
If the input file is "-", standard input is read.
 | 
						|
If no input file is specified, a standard filename is used
 | 
						|
as the name of the input file, which depends on the system being used:
 | 
						|
On Unix systems, $HOME/.lesskey is used;
 | 
						|
on MS-DOS systems, $HOME/_lesskey is used;
 | 
						|
and on OS/2 systems $HOME/lesskey.ini is used,
 | 
						|
or $INIT/lesskey.ini if $HOME is undefined.
 | 
						|
The output file is a binary file which is used by
 | 
						|
.I less.
 | 
						|
If no output file is specified,
 | 
						|
and the environment variable LESSKEY is set,
 | 
						|
the value of LESSKEY is used as the name of the output file.
 | 
						|
Otherwise, a standard filename is used as the name of the output file,
 | 
						|
which depends on the system being used:
 | 
						|
On Unix and OS-9 systems, $HOME/.less is used;
 | 
						|
on MS-DOS systems, $HOME/_less is used;
 | 
						|
and on OS/2 systems, $HOME/less.ini is used,
 | 
						|
or $INIT/less.ini if $HOME is undefined.
 | 
						|
If the output file already exists,
 | 
						|
.I lesskey
 | 
						|
will overwrite it.
 | 
						|
.PP
 | 
						|
The -V or --version option causes
 | 
						|
.I lesskey
 | 
						|
to print its version number and immediately exit.
 | 
						|
If -V or --version is present, other options and arguments are ignored.
 | 
						|
.PP
 | 
						|
The input file consists of one or more
 | 
						|
.I sections.
 | 
						|
Each section starts with a line that identifies the type of section.
 | 
						|
Possible sections are:
 | 
						|
.IP #command
 | 
						|
Defines new command keys.
 | 
						|
.IP #line-edit
 | 
						|
Defines new line-editing keys.
 | 
						|
.IP #env
 | 
						|
Defines environment variables.
 | 
						|
.PP
 | 
						|
Blank lines and lines which start with a pound sign (#) are ignored,
 | 
						|
except for the special section header lines.
 | 
						|
 | 
						|
.SH "COMMAND SECTION"
 | 
						|
The command section begins with the line
 | 
						|
.sp
 | 
						|
#command
 | 
						|
.sp
 | 
						|
If the command section is the first section in the file,
 | 
						|
this line may be omitted.
 | 
						|
The command section consists of lines of the form:
 | 
						|
.sp
 | 
						|
	\fIstring\fP \*[Lt]whitespace\*[Gt] \fIaction\fP [extra-string] \*[Lt]newline\*[Gt]
 | 
						|
.sp
 | 
						|
Whitespace is any sequence of one or more spaces and/or tabs.
 | 
						|
The \fIstring\fP is the command key(s) which invoke the action.
 | 
						|
The \fIstring\fP may be a single command key, or a sequence of up to 15 keys.
 | 
						|
The \fIaction\fP is the name of the less action, from the list below.
 | 
						|
The characters in the \fIstring\fP may appear literally, or be
 | 
						|
prefixed by a caret to indicate a control key.
 | 
						|
A backslash followed by one to three octal digits may be used to
 | 
						|
specify a character by its octal value.
 | 
						|
A backslash followed by certain characters specifies input
 | 
						|
characters as follows:
 | 
						|
.IP \eb
 | 
						|
BACKSPACE
 | 
						|
.IP \ee
 | 
						|
ESCAPE
 | 
						|
.IP \en
 | 
						|
NEWLINE
 | 
						|
.IP \er
 | 
						|
RETURN
 | 
						|
.IP \et
 | 
						|
TAB
 | 
						|
.IP \eku
 | 
						|
UP ARROW
 | 
						|
.IP \ekd
 | 
						|
DOWN ARROW
 | 
						|
.IP \ekr
 | 
						|
RIGHT ARROW
 | 
						|
.IP \ekl
 | 
						|
LEFT ARROW
 | 
						|
.IP \ekU
 | 
						|
PAGE UP
 | 
						|
.IP \ekD
 | 
						|
PAGE DOWN
 | 
						|
.IP \ekh
 | 
						|
HOME
 | 
						|
.IP \eke
 | 
						|
END
 | 
						|
.IP \ekx
 | 
						|
DELETE
 | 
						|
.PP
 | 
						|
A backslash followed by any other character indicates that character is
 | 
						|
to be taken literally.
 | 
						|
Characters which must be preceded by backslash include
 | 
						|
caret, space, tab and the backslash itself.
 | 
						|
.PP
 | 
						|
An action may be followed by an "extra" string.
 | 
						|
When such a command is entered while running
 | 
						|
.I less,
 | 
						|
the action is performed, and then the extra
 | 
						|
string is parsed, just as if it were typed in to
 | 
						|
.I less.
 | 
						|
This feature can be used in certain cases to extend
 | 
						|
the functionality of a command.
 | 
						|
For example, see the "{" and ":t" commands in the example below.
 | 
						|
The extra string has a special meaning for the "quit" action:
 | 
						|
when
 | 
						|
.I less
 | 
						|
quits, first character of the extra string is used as its exit status.
 | 
						|
 | 
						|
.SH EXAMPLE
 | 
						|
The following input file describes the set of
 | 
						|
default command keys used by less:
 | 
						|
.sp
 | 
						|
.nf
 | 
						|
	#command
 | 
						|
	\er		forw-line
 | 
						|
	\en		forw-line
 | 
						|
	e		forw-line
 | 
						|
	j		forw-line
 | 
						|
	\ekd	forw-line
 | 
						|
	^E		forw-line
 | 
						|
	^N		forw-line
 | 
						|
	k		back-line
 | 
						|
	y		back-line
 | 
						|
	^Y		back-line
 | 
						|
	^K		back-line
 | 
						|
	^P		back-line
 | 
						|
	J		forw-line-force
 | 
						|
	K		back-line-force
 | 
						|
	Y		back-line-force
 | 
						|
	d		forw-scroll
 | 
						|
	^D		forw-scroll
 | 
						|
	u		back-scroll
 | 
						|
	^U		back-scroll
 | 
						|
	\e40	forw-screen
 | 
						|
	f		forw-screen
 | 
						|
	^F		forw-screen
 | 
						|
	^V		forw-screen
 | 
						|
	\ekD	forw-screen
 | 
						|
	b		back-screen
 | 
						|
	^B		back-screen
 | 
						|
	\eev		back-screen
 | 
						|
	\ekU	back-screen
 | 
						|
	z		forw-window
 | 
						|
	w		back-window
 | 
						|
	\ee\e40		forw-screen-force
 | 
						|
	F		forw-forever
 | 
						|
	R		repaint-flush
 | 
						|
	r		repaint
 | 
						|
	^R		repaint
 | 
						|
	^L		repaint
 | 
						|
	\eeu		undo-hilite
 | 
						|
	g		goto-line 
 | 
						|
	\ekh	goto-line
 | 
						|
	\*[Lt]		goto-line 
 | 
						|
	\ee\*[Lt]		goto-line 
 | 
						|
	p		percent 
 | 
						|
	%		percent 
 | 
						|
	\ee[		left-scroll
 | 
						|
	\ee]		right-scroll
 | 
						|
	\ee(		left-scroll
 | 
						|
	\ee)		right-scroll
 | 
						|
	{		forw-bracket {}
 | 
						|
	}		back-bracket {}
 | 
						|
	(		forw-bracket ()
 | 
						|
	)		back-bracket ()
 | 
						|
	[		forw-bracket []
 | 
						|
	]		back-bracket []
 | 
						|
	\ee^F		forw-bracket 
 | 
						|
	\ee^B		back-bracket 
 | 
						|
	G		goto-end 
 | 
						|
	\ee\*[Gt]		goto-end 
 | 
						|
	\*[Gt]		goto-end 
 | 
						|
	\eke	goto-end
 | 
						|
	=		status 
 | 
						|
	^G		status 
 | 
						|
	:f		status 
 | 
						|
	/		forw-search 
 | 
						|
	?		back-search 
 | 
						|
	\ee/		forw-search *
 | 
						|
	\ee?		back-search *
 | 
						|
	n		repeat-search 
 | 
						|
	\een		repeat-search-all 
 | 
						|
	N		reverse-search 
 | 
						|
	\eeN		reverse-search-all 
 | 
						|
	m		set-mark 
 | 
						|
	'		goto-mark 
 | 
						|
	^X^X		goto-mark 
 | 
						|
	E		examine 
 | 
						|
	:e		examine 
 | 
						|
	^X^V		examine 
 | 
						|
	:n		next-file 
 | 
						|
	:p		prev-file 
 | 
						|
	t		next-tag
 | 
						|
	T		prev-tag
 | 
						|
	:x		index-file 
 | 
						|
	:d		remove-file
 | 
						|
	-		toggle-option 
 | 
						|
	:t		toggle-option t
 | 
						|
	s		toggle-option o
 | 
						|
	_		display-option
 | 
						|
	|		pipe
 | 
						|
	v		visual
 | 
						|
	!		shell
 | 
						|
	+		firstcmd
 | 
						|
	H		help
 | 
						|
	h		help
 | 
						|
	V		version
 | 
						|
	0		digit
 | 
						|
	1		digit
 | 
						|
	2		digit
 | 
						|
	3		digit
 | 
						|
	4		digit
 | 
						|
	5		digit
 | 
						|
	6		digit
 | 
						|
	7		digit
 | 
						|
	8		digit
 | 
						|
	9		digit
 | 
						|
	q		quit
 | 
						|
	Q		quit
 | 
						|
	:q		quit
 | 
						|
	:Q		quit
 | 
						|
	ZZ		quit
 | 
						|
.fi
 | 
						|
.sp
 | 
						|
.SH PRECEDENCE
 | 
						|
Commands specified by
 | 
						|
.I lesskey
 | 
						|
take precedence over the default commands.
 | 
						|
A default command key may be disabled by including it in the
 | 
						|
input file with the action "invalid".
 | 
						|
Alternatively, a key may be defined
 | 
						|
to do nothing by using the action "noaction".
 | 
						|
"noaction" is similar to "invalid", but
 | 
						|
.I less
 | 
						|
will give an error beep for an "invalid" command,
 | 
						|
but not for a "noaction" command.
 | 
						|
In addition, ALL default commands may be disabled by
 | 
						|
adding this control line to the input file:
 | 
						|
.sp
 | 
						|
#stop
 | 
						|
.sp
 | 
						|
This will cause all default commands to be ignored.
 | 
						|
The #stop line should be the last line in that section of the file.
 | 
						|
.PP
 | 
						|
Be aware that #stop can be dangerous.
 | 
						|
Since all default commands are disabled,
 | 
						|
you must provide sufficient commands before the #stop line
 | 
						|
to enable all necessary actions.
 | 
						|
For example, failure to provide a "quit" command can lead to frustration.
 | 
						|
 | 
						|
.SH "LINE EDITING SECTION"
 | 
						|
The line-editing section begins with the line:
 | 
						|
.sp
 | 
						|
#line-edit
 | 
						|
.sp
 | 
						|
This section specifies new key bindings for the line editing commands,
 | 
						|
in a manner similar to the way key bindings for
 | 
						|
ordinary commands are specified in the #command section.
 | 
						|
The line-editing section consists of a list of keys and actions,
 | 
						|
one per line as in the example below.
 | 
						|
 | 
						|
.SH EXAMPLE
 | 
						|
The following input file describes the set of
 | 
						|
default line-editing keys used by less:
 | 
						|
.sp
 | 
						|
.nf
 | 
						|
	#line-edit
 | 
						|
	\et	    	forw-complete
 | 
						|
	\e17		back-complete
 | 
						|
	\ee\et		back-complete
 | 
						|
	^L		expand
 | 
						|
	^V		literal
 | 
						|
	^A		literal
 | 
						|
   	\eel		right
 | 
						|
	\ekr		right
 | 
						|
	\eeh		left
 | 
						|
	\ekl		left
 | 
						|
	\eeb		word-left
 | 
						|
	\ee\ekl	word-left
 | 
						|
	\eew		word-right
 | 
						|
	\ee\ekr	word-right
 | 
						|
	\eei		insert
 | 
						|
	\eex		delete
 | 
						|
	\ekx		delete
 | 
						|
	\eeX		word-delete
 | 
						|
	\eekx		word-delete
 | 
						|
	\ee\eb		word-backspace
 | 
						|
	\ee0		home
 | 
						|
	\ekh		home
 | 
						|
	\ee$		end
 | 
						|
	\eke		end
 | 
						|
	\eek		up
 | 
						|
	\eku		up
 | 
						|
	\eej		down
 | 
						|
.fi
 | 
						|
.sp
 | 
						|
 | 
						|
.SH "LESS ENVIRONMENT VARIABLES"
 | 
						|
The environment variable section begins with the line
 | 
						|
.sp
 | 
						|
#env
 | 
						|
.sp
 | 
						|
Following this line is a list of environment variable assignments.
 | 
						|
Each line consists of an environment variable name, an equals sign (=)
 | 
						|
and the value to be assigned to the environment variable.
 | 
						|
White space before and after the equals sign is ignored.
 | 
						|
Variables assigned in this way are visible only to
 | 
						|
.I less.
 | 
						|
If a variable is specified in the system environment and also in a
 | 
						|
lesskey file, the value in the lesskey file takes precedence.
 | 
						|
Although the lesskey file can be used to override variables set in the
 | 
						|
environment, the main purpose of assigning variables in the lesskey file
 | 
						|
is simply to have all
 | 
						|
.I less
 | 
						|
configuration information stored in one file.
 | 
						|
 | 
						|
.SH EXAMPLE
 | 
						|
The following input file sets the -i option whenever
 | 
						|
.I less
 | 
						|
is run, and specifies the character set to be "latin1":
 | 
						|
.sp
 | 
						|
.nf
 | 
						|
	#env
 | 
						|
	LESS = -i
 | 
						|
	LESSCHARSET = latin1
 | 
						|
.fi
 | 
						|
.sp
 | 
						|
 | 
						|
.SH "SEE ALSO"
 | 
						|
less(1)
 | 
						|
 | 
						|
.SH WARNINGS
 | 
						|
It is not possible to specify special keys, such as uparrow,
 | 
						|
in a keyboard-independent manner.
 | 
						|
The only way to specify such keys is to specify the escape sequence
 | 
						|
which a particular keyboard sends when such a key is pressed.
 | 
						|
.PP
 | 
						|
On MS-DOS and OS/2 systems, certain keys send a sequence of characters
 | 
						|
which start with a NUL character (0).
 | 
						|
This NUL character should be represented as \e340 in a lesskey file.
 | 
						|
 | 
						|
.SH COPYRIGHT
 | 
						|
Copyright (C) 2004  Mark Nudelman
 | 
						|
.PP
 | 
						|
lesskey is part of the GNU project and is free software;
 | 
						|
you can redistribute it and/or modify it
 | 
						|
under the terms of the GNU General Public License as published by
 | 
						|
the Free Software Foundation;
 | 
						|
either version 2, or (at your option) any later version.
 | 
						|
.PP
 | 
						|
lesskey is distributed in the hope that it will be useful, but
 | 
						|
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
 | 
						|
or FITNESS FOR A PARTICULAR PURPOSE.
 | 
						|
See the GNU General Public License for more details.
 | 
						|
.PP
 | 
						|
You should have received a copy of the GNU General Public License
 | 
						|
along with lesskey; see the file COPYING.
 | 
						|
If not, write to the Free Software Foundation, 59 Temple Place,
 | 
						|
Suite 330, Boston, MA  02111-1307, USA.
 | 
						|
 | 
						|
.SH AUTHOR
 | 
						|
.PP
 | 
						|
Mark Nudelman \*[Lt]markn@greenwoodsoftware.com\*[Gt]
 | 
						|
.br
 | 
						|
Send bug reports or comments to the above address or to bug-less@gnu.org.
 | 
						|
 |