.\" $NetBSD: editrc.5,v 1.10 2000/11/08 00:09:38 lukem Exp $ .\" .\" Copyright (c) 1997-2000 The NetBSD Foundation, Inc. .\" All rights reserved. .\" .\" This file was contributed to The NetBSD Foundation by Luke Mewburn. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the NetBSD .\" Foundation, Inc. and its contributors. .\" 4. Neither the name of The NetBSD Foundation nor the names of its .\" contributors may be used to endorse or promote products derived .\" from this software without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED .\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR .\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS .\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" .\" %FreeBSD: src/lib/libedit/editrc.5,v 1.16 2002/12/27 12:15:30 schweikh Exp % .\" .\" $FreeBSD$ .Dd November 8, 2000 .Os .Dt EDITRC 5 .Sh 名称 .Nm editrc .Nd editline ライブラリの設定ファイル .Sh 書式 .Nm .Sh 解説 .Nm は .Xr editline 3 ライブラリで使用されている様々な設定を定義します。 .Pp それぞれの行のフォーマットは以下となります: .Dl [prog:]command [arg [...]] .Pp .Ar command は .Xr editline 3 の組み込みコマンドのうちの 1 つです。 より詳しい情報は .Sx 組み込みコマンド を参照してください。 .Pp .Ar prog はプログラムが .Xr editline 3 をセットアップするために .Xr el_init 3 を呼び出す時に定義したプログラム名の文字列で、 通常は .Va argv[0] です。 .Ar command は .Ar prog にマッチする全てのプログラムに対しても実行されます。 .Pp .Ar prog は .Xr regex 3 形式の正規表現であってもよく、その場合 .Ar command はその正規表現にマッチする全てのプログラムに対して実行されます。 .Pp .Ar prog が指定されてない場合、 .Ar command がすべてのプログラムに対して実行されます。 .Sh 組み込みコマンド .Nm editline ライブラリにはいくつかの組み込みコマンドがあり、行編集とヒストリ機能操作の 方法に作用します。 これらは .Xr tcsh 1 シェルに存在する似た名前の組み込みコマンドに基づいています。 .Pp 以下の組み込みコマンドが利用可能です: .Bl -tag -width 4n .It Ic bind Xo .Op Fl a .Op Fl e .Op Fl k .Op Fl l .Op Fl r .Op Fl s .Op Fl v .Op Ar key Op Ar command .Xc オプション無しでは、全ての割り当てられたキーと、 それぞれが割り当てられた編集コマンドを表示します。 もし .Ar key が与えられたら、 .Ar key に対する割り当てを示します。 もし .Ar key command が与えられたら、 .Ar command を .Ar key に割り当てます。 含まれるオプションは以下です: .Bl -tag -width 4n .It Fl e 全てのキーを GNU Emacs の標準に似た割り当てに割り当てます。 .It Fl v 全てのキーを .Xr vi 1 の標準に似た割り当てに割り当てます。 .It Fl a .Xr vi 1 モードのもう 1 つ (コマンドモード) のキーマップにおける キー割り当てを表示または変更します。 .It Fl k .Ar key は矢印記号キー名、 .Sq up , .Sq down , .Sq left または .Sq right のうちの 1 つ、として解釈されます。 .It Fl l 全ての編集コマンドとそれぞれの短い説明を表示します。 .It Fl r キーの割り当てを削除します。 .It Fl s .Ar command は文字列リテラルとして扱われ、 .Ar key がタイプされた時に端末入力として扱われます。 .Ar command 中の割り当てられたキーは、それ自身が再解釈され、 これは 10 レベルの解釈まで継続されます。 .El .Pp .Ar command は、後述の .Sx "エディタコマンド" に記されたコマンドか、もしくは別のキーでも構いません。 .Pp .Ar key と .Ar command は .Sm off .Sq No ^ Ar character .Sm on (例えば .Sq ^A ) 形式のコントロール文字と、 以下のバックスラッシュ付きのエスケープシーケンスを含むことができます: .Pp .Bl -tag -compact -offset indent -width 4n .It Ic \ea ベル .It Ic \eb バックスペース .It Ic \ee エスケープ .It Ic \ef フォームフィード .It Ic \en 改行 .It Ic \er キャリッジリターン .It Ic \et (水平) タブ .It Ic \ev 垂直タブ .Sm off .It Sy \e Ar nnn .Sm on 8 進数 .Ar nnn で表される ASCII 文字 .El .Pp .Sq \e は、次の文字に特別な意味があるならば、それを無効化します。 特に、 .Sq \e と .Sq ^ の特別な意味を無効化します。 .It Ic echotc Xo .Op Fl sv .Ar arg .Ar ... .Xc .Ar arg Ar ... で与えられた端末のケーパビリティを実行します。 もし .Ar arg が .Sq baud , .Sq cols , .Sq lines , .Sq rows , .Sq meta , .Sq tabs であればそのケーパビリティの値が表示されます。 .Dq yes または .Dq no は、端末がそのケーパビリティを持つのか持たないのかを表します。 .Pp .Fl s を指定すると存在しないケーパビリティに対してエラーを起こすのではなく、 空の文字列を返します。 .Fl v を指定するとメッセージを冗長に表示します。 .It Ic edit Op Cm on | off プログラム中で .Nm editline の機能を有効または無効にします。 .It Ic history ヒストリを表示します。 .It Ic telltc 全ての端末のケーパビリティの値を表示します .Pf ( Xr termcap 5 参照)。 .It Ic settc Ar cap Ar val .Xr termcap 5 で定義された端末のケーパビリティ .Ar cap を .Ar val に設定します。 正しさのチェックは行われません。 .It Ic setty Xo .Op Fl a .Op Fl d .Op Fl q .Op Fl x .Op Ar +mode .Op Ar -mode .Op Ar mode .Xc .Nm がどの tty モードの変更をユーザに許可しないかを制御します。 .Fl d , .Fl q , .Fl x は .Ic setty に対してそれぞれ .Sq edit , .Sq quote , .Sq execute tty モードセットにおいて働くことを示します。 デフォルトでは .Fl x です。 .Pp 他の引数がなければ、 .Ic setty は選択されたセットにおいて何が on .Pq Sq +mode または off .Pq Sq -mode に固定されているかを表示します。 .Fl a は設定に関わらず選択されたセットにおける全ての tty モードを表示します。 .Ar +mode , .Ar -mode , .Ar mode , は選択されたセットにおいて .Ar mode を on または off に固定すること、あるいは .Ar mode の制御を行わないことを指定します。 .El .Sh エディタコマンド 以下のエディタコマンドが、キーの割り当てに使用できます: .\" Section automatically generated with makelist .Bl -tag -width 4n .It Ic vi-paste-next vi 風に、直前に行った削除をカーソルの右側に張り付けます。 .It Ic vi-paste-prev vi 風に、直前に行った削除をカーソルの左側に張り付けます。 .It Ic vi-prev-space-word vi 風に、空白で区切られた直前の単語へ移動します。 .It Ic vi-prev-word vi 風に、直前の単語へ移動します。 .It Ic vi-next-space-word vi 風に、空白で区切られた次の単語へ移動します。 .It Ic vi-next-word vi 風に、次の単語へ移動します。 .It Ic vi-change-case vi 風に、カーソルの下の文字の大文字小文字を変更し、1 文字進めます。 .It Ic vi-change-meta vi 風に、プレフィックスコマンドを変更します。 .It Ic vi-insert-at-bol vi 風に、行頭で入力モードに入ります。 .It Ic vi-replace-char vi 風に、カーソルの下の文字を、次に入力する文字に置き換えます。 .It Ic vi-replace-mode vi 風に、置き換えモードに入ります。 .It Ic vi-substitute-char vi 風に、カーソルの下の文字を入力する文字に置き換え、入力モードに入ります。 .It Ic vi-substitute-line vi 風に、行全体を置き換えます。 .It Ic vi-change-to-eol vi 風に、行末まで変更します。 .It Ic vi-insert vi 風に、入力モードに入ります。 .It Ic vi-add vi 風に、カーソルの後ろで入力モードに入ります。 .It Ic vi-add-at-eol vi 風に、行末で入力モードに入ります。 .It Ic vi-delete-meta vi 風に、プレフィックスコマンドを削除します。 .It Ic vi-end-word vi 風に、現在いる空白で区切られた単語の最後へ移動します。 .It Ic vi-to-end-word vi 風に、現在いる単語の最後に移動します。 .It Ic vi-undo vi 風に、最後に行った変更を取り消します。 .It Ic vi-command-mode vi 風に、コマンドモードに入ります (別のキー割り当てを使用します)。 .It Ic vi-zero vi 風に、行の先頭に移動します。 .It Ic vi-delete-prev-char vi 風に、1 文字前に移動します (バックスペース)。 .It Ic vi-list-or-eof vi 風に、補完の選択肢をリストするか、空行の場合は EOF を表します。 .It Ic vi-kill-line-prev vi 風に、行頭からカーソルまでを削除します。 .It Ic vi-search-prev vi 風に、ヒストリを後方検索します。 .It Ic vi-search-next vi 風に、ヒストリを前方検索します。 .It Ic vi-repeat-search-next vi 風に、現在の検索を同じ方向へ繰り返します。 .It Ic vi-repeat-search-prev vi 風に、現在の検索を逆方向へ繰り返します。 .It Ic vi-next-char vi 風に、前方の指定された文字に移動します。 .It Ic vi-prev-char vi 風に、後方の指定された文字に移動します。 .It Ic vi-to-next-char vi 風に、前方の指定された文字の手前に移動します。 .It Ic vi-to-prev-char vi 風に、後方の指定された文字の手前に移動します。 .It Ic vi-repeat-next-char vi 風に、現在の文字検索を同じ方向に繰り返します。 .It Ic vi-repeat-prev-char vi 風に、現在の文字検索を逆方向に繰り返します。 .It Ic em-delete-or-list カーソルの下の文字を削除するか、行末の場合は補完の選択肢をリストします。 .It Ic em-delete-next-word カーソルから現在の単語の終わりまで削除します。 .It Ic em-yank カーソル位置に削除バッファを張り付けます。 .It Ic em-kill-line 行全体を削除し、削除バッファに保存します。 .It Ic em-kill-region マークとカーソルとの間の領域を削除し、削除バッファに保存します。 .It Ic em-copy-region マークとカーソルとの間の領域を削除バッファにコピーします。 .It Ic em-gosmacs-transpose カーソルの前の 2 文字を入れ換えます。 .It Ic em-next-word 現在の単語の終わりに移動します。 .It Ic em-upper-case カーソルから現在の単語の終わりまでを大文字にします。 .It Ic em-capitol-case カーソルから現在の単語の終わりまでの部分の先頭を大文字にします。 .It Ic em-lower-case カーソルから現在の単語の終わりまでを小文字にします。 .It Ic em-set-mark カーソル位置にマークを設定します。 .It Ic em-exchange-mark カーソルとマークを入れ換えます。 .It Ic em-universal-argument ユニバーサル引数 (引数を 4 倍にします)。 .It Ic em-meta-next 次に入力する文字に 8 番目のビットを付加します。 .It Ic em-toggle-overwrite 挿入モードと上書きモードを相互に切り替えます。 .It Ic em-copy-prev-word 現在の単語をカーソル位置にコピーします。 .It Ic em-inc-search-next Emacs のインクリメンタル検索を行います。 .It Ic em-inc-search-prev Emacs のインクリメンタル検索を逆方向に行います。 .It Ic ed-end-of-file EOF を指示します。 .It Ic ed-insert 行に文字を追加します。 .It Ic ed-delete-prev-word 現在の単語の最初からカーソルまでを削除します。 .It Ic ed-delete-next-char カーソルの下の文字を削除します。 .It Ic ed-kill-line 行末まで削除します。 .It Ic ed-move-to-end 行末までカーソルを移動します。 .It Ic ed-move-to-beg 行頭までカーソルを移動します。 .It Ic ed-transpose-chars カーソルの左側の文字とカーソルの下の文字とを入れ換えます。 .It Ic ed-next-char 右に 1 文字移動します。 .It Ic ed-prev-word 現在の単語の先頭に移動します。 .It Ic ed-prev-char 左に 1 文字移動します。 .It Ic ed-quoted-insert 次に入力される文字をそのまま追加します。 .It Ic ed-digit 引数に追加するか、もしくは数字を入力します。 .It Ic ed-argument-digit 引数を開始する数字。 .It Ic ed-unassigned 未割り当ての文字を表示します。 .It Ic ed-tty-sigint tty の割り込み文字。 .It Ic ed-tty-dsusp tty の停止遅延文字。 .It Ic ed-tty-flush-output tty の出力フラッシュ文字。 .It Ic ed-tty-sigquit tty の中止文字。 .It Ic ed-tty-sigtstp tty の停止文字。 .It Ic ed-tty-stop-output tty の出力の禁止文字。 .It Ic ed-tty-start-output tty の出力の許可文字。 .It Ic ed-newline コマンドを実行します。 .It Ic ed-delete-prev-char カーソルの左側の文字を削除します。 .It Ic ed-clear-screen 現在の行は画面の一番上に残し、画面を消去します。 .It Ic ed-redisplay すべてを再表示します。 .It Ic ed-start-over 現在行を消去し、最初から始めます。 .It Ic ed-sequence-lead-in 複数文字コマンドの最初の文字。 .It Ic ed-prev-history ヒストリの 1 行前に移動します。 .It Ic ed-next-history ヒストリの 1 行後に移動します。 .It Ic ed-search-prev-history ヒストリ中から、現在行にマッチする行を後方検索します。 .It Ic ed-search-next-history ヒストリ中から、現在行にマッチする行を前方検索します。 .It Ic ed-prev-line 1 行上に移動します。 .It Ic ed-next-line 1 行下に移動します。 .It Ic ed-command editline の拡張コマンド。 .El .\" End of section automatically generated with makelist .Sh 関連項目 .Xr editline 3 , .Xr regex 3 , .Xr termcap 5 .Sh 作者 .An -nosplit .Nm editline ライブラリは .An Christos Zoulas によって書かれ、このマニュアルは いくつかの節は .Xr tcsh 1 に影響されて、 .An Luke Mewburn によって書かれました。