Next: Interactive Examples, Previous: Using Interactive, Up: Defining Commands [Contents][Index]
interactive
にたいするコード文字ここで説明されているコード文字には、以下で定義されるいくつかのキーワードが含まれています:
補完を提供する。TAB、SPC、RETはcompleting-read
(Completionを参照)を使用して引数を読み取って名前の補完を行う。?で利用可能な補完リストを表示する。
既存オブジェクトの名前を要求する。無効な名前は受け付けられない。カレント入力が有効でなければ、ミニバッファーをexitするコマンドはexitしない。
ユーザーがテキストを何もエンターしなければ、ある種のデフォルト値が使用される。デフォルトはコード文字に依存する。
このコード文字は入力を読み取らずに引数を計算する。したがってプロンプト文字列を使用せず、与えられたプロンプト文字列は無視される。
たとえそのコード文字がプロンプト文字列を使用しなくても、それが文字列内で最後のコード文字でなければ、その後に改行を付加しなければならない。
コード文字の直後にプロンプトが続く。プロンプトの終端は文字列の終端、または改行。
このコード文字はインタラクティブ文字列の先頭にあるときのみ意味があり、プロンプトと改行を要求しない。単一の独立した文字。
以下はinteractive
で使用されるコード文字です:
カレントバッファーが読み取り専用ならエラーをシグナルする。[Special]
このコマンドを呼び出したキーシーケンス内の最初のマウスイベントに関連するウィンドウを選択する。[Special]
シフト転換を通じてコマンドが呼び出された場合はコマンドを実行する前に、マークをセットして一時的にリージョンをアクティブにするか、すでにリージョンがアクティブならリージョンを拡張する。シフト転換を通じずにコマンドが呼び出されて、リージョンが一時的にアクティブならコマンドを実行する前にそのリージョンを非アクティブにする。[Special]
関数名(fboundp
を満足するシンボル)。[Existing]、[Completion]、[Prompt]
既存バッファーの名前。デフォルトではカレントバッファー(Buffersを参照)の名前を使用する。[Existing]、[Completion]、[Default]、[Prompt]
バッファー名。そのバッファーが存在する必要はない。デフォルトではカレントバッファーではなくもっとも最近使用されたバッファーの名前を使用する。[Completion]、[Default]、[Prompt]
文字。カーソルはエコーエリアに移動しない。[Prompt]
コマンド名(commandp
を満足するシンボル)。[Existing]、[Completion]、[Prompt]
ポイント位置の整数(Pointを参照)。[No I/O]
ディレクトリー。デフォルトはカレントバッファーのカレントのデフォルトディレクトリーdefault-directory
(File Name Expansionを参照)。[Existing]、[Completion]、[Default]、[Prompt]
そのコマンドを呼び出したキーシーケンス内の1つ目か2つ目の非キーボードイベント。より正確には、‘e’はリストとしてイベントを取得するので、リスト内のデータを調べることができる。Input Eventsを参照のこと。[No I/O]
‘e’はマウスイベント、および特別なシステムイベント(Misc Eventsを参照)にたいして使用する。コマンドが受け取るイベントリストは、そのイベントに依存する。Input Eventsではそれぞれのイベントのリスト形式を、対応するサブセクションでそれぞれ説明しているので参されたい。
1つのコマンドのinteractive仕様の中で‘e’を複数回使用できる。そのコマンドを呼び出したキーシーケンスがイベントn(リスト)をもつなら、‘e’のn番目がそのイベントを提供する。フンクションキーやASCII文字のようなリスト以外のイベントは、‘e’に関連するイベントとしてカウントされない。
既存ファイルのファイル名(File Namesを参照)。デフォルトのディレクトリーはdefault-directory
。[Existing]、[Completion]、[Default]、[Prompt]
ファイル名。ファイルが存在している必要はない。[Completion]、[Default]、[Prompt]
ファイル名。ファイルが存在している必要はない。ユーザーがディレクトリー名だけをエンターしたら値はそのディレクトリー名となり、そのディレクトリー名にファイル名は追加されない。[Completion]、[Default]、[Prompt]
無関係な引数。このコード文字は引数値として常にnil
を与える。[No I/O]
キーシーケンス(Key Sequencesを参照)。これはカレントキーマップ内でコマンド(または未定義のコマンド)が見つかるまで、イベントを読み取り続ける。キーシーケンス引数は文字列かベクターで表される。カーソルはエコーエリアに移動しない。[Prompt]
‘k’が(マウスの)down-eventで終わるキーシーケンスを読み取ると、後続の(マウスの)up-eventも読み取ってそれを廃棄する。コード文字‘U’によりup-eventへのアクセスを得られる。
この種の入力はdescribe-key
やglobal-set-key
のようなコマンドにより使用される。
define-key
のような関数の入力として使用されるフォーム上のキーシーケンス。これは‘k’と同じように機能するが、キーシーケンス内の最後の入力イベントにたいして、通常は(必要なら)使用される未定義キーから定義済みキーへの変換(Key Sequence Inputを参照)を抑制する。そのためこのフォームは、通常はコマンドにバインドするために新たなキーシーケンスの入力を求める際に使用される。
マーク位置の整数。[No I/O]
任意のテキスト。ミニバッファー内でカレントバッファーの入力メソッド(Input Methods in The GNU Emacs Manualを参照)を使用して読み取りを行い、それを文字列でリターンする。[Prompt]
数字。ミニバッファーで読み取られる。入力が数字でなければユーザーは再試行する必要がある。‘n’は決してプレフィクス引数を使用しない。[Prompt]
数引数(numeric prefix argument)。ただしプレフィクス引数がなければnのように数字を読み取る。値は常に数字。Prefix Command Argumentsを参照のこと。[Prompt]
数引数(小文字の‘p’であることに注意)。[No I/O]
rawプレフィクス引数(大文字の‘P’であることに注意)。[No I/O]
2つの数引数(ポイントとマーク)。小さいほうが先。これは1つではなく連続する2つの引数を指定する唯一のコード文字である。コマンド呼び出し時にカレントなバッファーにマークがセットされていなければエラーをシグナルする。Transient
Markモード(The Markを参照)がオン(デフォルト)かつユーザーオプションmark-even-if-inactive
がnil
の場合には、たとえマークがセットされていても非アクティブならEmacsはエラーをシグナルする。[No
I/O]
任意のテキスト。ミニバッファー内で読み取りを行って文字列としてリターンする(Text from Minibufferを参照)。C-jかRETで入力を終端する(これらの文字を入力に含めるためにC-qを使用できる)。[Prompt]
intern済みのシンボル。名前はミニバッファー内で読み取られる。C-jかRETで入力を終端する。ここでは通常はシンボルを終端するその他の文字(たとえば空白文字、丸カッコ、角カッコ)では終端されない。[Prompt]
キーシーケンスかnil
。‘k’(または‘K’)が読み取った後に、(もしあれば)捨てられる(マウスの)up-eventを取得するために、引数‘k’(または‘K’)の後で使用され得る。捨てられたup-eventが存在しなければ、‘U’は引数としてnil
を提供する。[No
I/O]
ユーザーオプションとして宣言された変数(述語custom-variable-p
を満足する)。これはread-variable
を使用して変数を読み取る。Definition of read-variableを参照のこと。[Existing]、[Completion]、[Prompt]
Lispオブジェクト。そのオブジェクトの入力構文により指定され、C-jかRETで終端される。オブジェクトは評価されない。Object from Minibufferを参照のこと。[Prompt]
Lispフォームの値。‘X’は‘x’のように読み取りを行いフォームを評価して、その値がコマンドの引数になる。[Prompt]
コーディングシステム名(シンボル)。ユーザーがnull入力をエンターすると、引数値はnil
になる。Coding Systemsを参照のこと。[Completion]、[Existing]、[Prompt]
コマンドにプレフィクス引数があればコーディングシステム名。プレフィクス引数がなければ‘Z’は引数値としてnil
を提供する。[Completion]、[Existing]、[Prompt]