lesskey - less
のキー割り当てを指定する
lesskey [-o output] [--] [input]
lesskey [--output=output] [--] [input]
lesskey -V
lesskey --version
lesskey は
less
で使われるキー割り当てのセットを指定するために使われる。
入力ファイルはキー割り当てを記述したテキストファイルである。
入力ファイルが "-"
のときは、標準入力が読まれる。
入力ファイルが何も指定されないときは、
使用しているシステムに応じた
標準のファイル名が入力ファイルの名前として使われる。
Unix では $HOME/.lesskey
が使われる。 MS-DOS では
$HOME/_lesskey が使われる。 OS/2
では $HOME/lesskey.ini が使われ、
$HOME
が定義されないときは
$INIT/lesskey.ini が使われる。
出力ファイルは
less
で使われるバイナリファイルである。
出力ファイルが何も指定されておらず、
環境変数 LESSKEY
が設定されている場合、
LESSKEY
の値が出力ファイルの名前として使われる。
LESSKEY
が指定されていない場合は、
使用しているシステムに応じた
標準のファイル名が出力ファイルの名前として使われる。
UNIX と OS-9 では $HOME/.less
が使われる。 MS-DOS では
$HOME/_less が使われる。 OS/2
では $HOME/less.ini が使われ、 $HOME
が定義されないときは
$INIT/less.ini が使われる。
出力ファイルが既に存在する場合、
lesskey
は出力ファイルを上書きする。
-V と --version オプションは、
lesskey
にバージョン番号を表示させて、すぐに終了させる。
-V または --version
オプションが指定された場合、
他のオプションと引き数は無視される。
入力ファイルは、いくつかの
セクション
から構成される。
各セクションは、セクションのタイプを識別する行から始まる。
指定できるセクションを以下に示す。
- #command
- 新しいコマンドラインキーを定義する。
- #line-edit
- 新しいライン編集キーを定義する。
- #env
- 環境変数を定義する。
空白行と特別なセクションヘッダ行を除く、
シャープ記号 (#)
から始まる行は無視される。
コマンドセクションは次の行から始まる。
#command
コマンドセクションがファイルの中での最初のセクションである場合、
この行は省略することもできる。
コマンドラインセクションは次の形式の行から構成される。
string <whitespace>
action [extra-string] <newline>
whitespace (空白)
とはスペースとタブを
1
つ以上並べたものである。
string
はアクションを起こすコマンドキーである。
string は 1
つのコマンドキー、または
15
個までのキーである。
action
は下のリストにある less
のアクションである。
string
中の文字はコマンドの文字通り、もしくは、
コントロールキーを示すためにキャレット
(^) を前において表す。
バックスラッシュと、それに続く
3 桁までの 8 進数は、
文字を 8
進数で指定するために使われる。
バックスラッシュとその後に続く文字により、次のような入力文字を指定する。
- \b
- BACKSPACE
- \e
- ESCAPE
- \n
- NEWLINE
- \r
- RETURN
- \t
- TAB
- \ku
- UP ARROW
- \kd
- DOWN ARROW
- \kr
- RIGHT ARROW
- \kl
- LEFT ARROW
- \kU
- PAGE UP
- \kD
- PAGE DOWN
- \kh
- HOME
- \ke
- END
- \kx
- DELETE
バックスラッシュの後に続く上に挙げた以外の文字は、
その文字が特殊文字としてでなく、文字通りに使われることを意味している。
バックスラッシュを前に置かなければならない文字は、
キャレット・スペース・タブ・バックスラッシュ自身である。
アクションの後に
"extra" string
を続けることもできる。
less
が実行されているときにそのようなコマンドが入力されると、
アクションが実行された後、extra
string が
less
で入力されたときと同じように解釈される。
この特色はコマンドの機能を拡張する場合に使われる。
下の "{" と ":t"
コマンドの例を参照すること。
アクションが "quit"
の場合、extra string
は特別な意味を持つ。
less
が終了するとき、extra string
の最初の 1
文字が終了ステータスとして使われる。
下の入力ファイルは、less
で使われるデフォルトの
コマンドキーセットを表している。
#command
\r forw-line
\n forw-line
e forw-line
j forw-line
\kd 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
\40 forw-screen
f forw-screen
^F forw-screen
^V forw-screen
\kD forw-screen
b back-screen
^B back-screen
\ev back-screen
\kU back-screen
z forw-window
w back-window
\e\40 forw-screen-force
F forw-forever
R repaint-flush
r repaint
^R repaint
^L repaint
\eu undo-hilite
g goto-line
< goto-line
\e< goto-line
p percent
% percent
\e[ left-scroll
\e] right-scroll
\e( left-scroll
\e) right-scroll
{ forw-bracket {}
} back-bracket {}
( forw-bracket ()
) back-bracket ()
[ forw-bracket []
] back-bracket []
\e^F forw-bracket
\e^B back-bracket
G goto-end
\e> goto-end
> goto-end
= status
^G status
:f status
/ forw-search
? back-search
\e/ forw-search *
\e? back-search *
n repeat-search
\en repeat-search-all
N reverse-search
\eN 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
:x index-file
- toggle-option
:t toggle-option t
s toggle-option o
_ display-option
| pipe
v visual
! shell
+ firstcmd
@ rotate-right
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
lesskey
で指定されるコマンドは、デフォルトのコマンドより優先される。
action を "invalid"
としたコマンドを入力ファイルに入れておくと、
デフォルトのコマンドキーを使用不可にすることができる。
また、action のところを
"noaction"
と記述することで、
そのキーは何もしないと定義される。
"noaction" は "invalid"
に似ているが、
less は
"invalid"
コマンドに対してエラーのビープ音を鳴らすが、
"noaction"
コマンドに対しては何もしない。
さらに、次のコントロール行を入力ファイルに追加すると、
全てのデフォルトのコマンドが不可にできる。
#stop
これにより、全てのデフォルトコマンドは無視される。
#stop
行は、ファイルのそのセクションの最後の行に置かれなければならない。
#stop
は危険であることを理解しておかなければならない。
#stop
により全てのデフォルトコマンドが不可にされるので、
必要な全てのアクションを可能にするためには
#stop
行の前に必要なコマンドを指定しなければならない。
例えば、"quit"
コマンドを指定しないと使いづらくなる。
ラインエディットセクションは次の行で始まる。
#line-edit
このセクションは、#command
セクションで一般のコマンドの新しいキー割り当てを
指定したときと同じやりかたで、
ラインエディットコマンドの新しいキー割り当てを指定する。
ラインエディットセクションは、下の例のように
1 行毎の
キーとアクションのリストからなる。
下の入力ファイルは、less
で使われる
デフォルトのラインエディットキーのセットを記述している。
#line-edit
\t forw-complete
\17 back-complete
\e\t back-complete
^L expand
^V literal
^A literal
\el right
\kr right
\eh left
\kl left
\eb word-left
\e\kl word-left
\ew word-right
\e\kr word-right
\ei insert
\ex delete
\kx delete
\eX word-delete
\ekx word-delete
\e\b word-backspace
\e0 home
\kh home
\e$ end
\ke end
\ek up
\ku up
\ej down
環境変数セクションは次の行から始まる。
#env
この行の後には、環境変数の割り当てリストが続く。
各行は、環境変数名・イコール記号
(=)・環境変数に割り当てる値、
で構成される。
イコール記号の前後の空白は無視される。
この方法で割り当てられる変数は、
less
でしか参照されない。
ある変数がシステム環境でも
lesskey
ファイルでも指定されている場合、
lesskey
ファイルでの値が優先される。
lesskey
ファイルは環境変数を上書きするために使うこともできるが、
lesskey
ファイルで環境変数を設定する主な目的は、
less
の全ての設定情報を 1
つのファイルに収めることである。
下の入力ファイルでは、
less を常に -i
オプションをつけて実行し、
文字セットを "latin1"
にするように指定している。
#env
LESS = -i
LESSCHARSET = latin1
less(1)
上矢印のような特殊キーをキーボードに依存しない方法で指定することは
不可能である。
そのような特殊キーを指定する唯一の方法は、
そのキーが押されたときにキーボードが送るエスケープシーケンスを
指定することである。
MS-DOS と OS/2 では、NUL 文字 (0)
で始まる文字列を送るキーがある。
この NUL 文字は、lesskey
ファイルで \340
と表される。
Copyright (C) 2000 Mark Nudelman
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.
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.
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.
Mark Nudelman <
[email protected]>
バグの報告やコメントは、上のアドレスか
[email protected]
へ送って下さい。