Next: , Up: インクリメンタル検索   [Contents][Index]


16.1.1 インクリメンタル検索の基本

C-s

インクリメンタル検索を開始します(isearch-forward)。

C-r

逆向きのインクリメンタル検索を開始します(isearch-backward)。

C-s (isearch-forward)は、前方へのインクリメンタル検索を開始します。これはキーボードから文字を読み取り、タイプした文字が最初に出現するバッファーの位置に、ポイントを移動します。

たとえばC-sとタイプした後にFをタイプすると、検索を開始したバッファーのポイント位置より前方にある、最初のFにカーソルを移動します。つぎにOをタイプすると、前方にある最初の‘FO’にカーソルが移動します。この場合、‘FO’の‘F’は、前に見つかった‘F’と同じ位置である必要はありません。もう一度Oをタイプすると、カーソルは最初の‘FOO’に移動します。

各ステップでEmacsはカレントマッチ(current match: 現在のマッチ)(検索文字列にマッチしたバッファーのテキスト)を、isearchフェイス(テキストのフェイスを参照してください)でハイライトします。このハイライトをカスタマイズするさまざまなオプションについては、必要に応じて検索を調整するを参照してください。その時点での検索文字列はエコーエリアにも表示されます。

検索文字列のタイプ中に間違ったら、DEL(isearch-delete-char)とタイプしてください。DELをタイプするたびに、検索の間にエンターした最後の入力がキャンセルされます。検索文字列、ポイント位置、検索の成否、検索の方向、カレント検索結果の他端位置、検索の“ラッピング”を変更するコマンドのタイプ時、Emacsは常に新たな入力アイテム(input item)を記録します。失敗した検索を処理するための詳細は、インクリメンタル検索でのエラーを参照してください。

検索により到達した位置に満足したら、RET (isearch-exit)をタイプします。これは検索をストップして、検索により移動した位置にカーソルを残します。検索とは関係ないコマンドも、検索をストップして、そのコマンドが実行されます。つまりC-aは検索をexitして行の先頭に移動し、矢印キーをタイプすると検索をexitして対応する移動コマンドが処理される、などとなります。RETで検索を終える必要があるのは、次のコマンドが印字文字をタイプするコマンドのときだけです。DELRETおよび他のいくつかの文字(C-qC-wC-rC-sC-yM-yM-rM-cM-e、および以下で説明する文字)は、検索で特別な意味を持っています。検索をexitするコマンドを微調整できます。インクリメンタル検索を終了させないを参照してください。

特別な例外として、検索文字列が空のときにRETを入力すると、非インクリメンタル検索(非インクリメンタル検索を開始します(これは"カスタマイズ可能"です。必要に応じて検索を調整するを参照してください)。

検索を中止して検索を開始した位置に戻るには、ESC ESC ESC (isearch-cancel)、またはC-g C-g (isearch-abort)とタイプしてください。

インクリメンタル検索を終了するとき、ポイントの元の位置をマークをアクティブにせず(ただしマークがすでにアクティブではなかったときだけ)に、マークリングに追加します。これにより、C-u C-SPC、またはC-x C-xを使って、検索を開始する前の位置に戻ることができます。マークリングを参照してください(Emacsはマークがすでにアクティブでないときだけ、これを行ないます。検索を開始したときにマークがアクティブな場合は、C-u C-SPCC-x C-xの両方とも、マークに戻ります)。

後方に検索するには、C-sで検索を開始するかわりに、C-r (isearch-backward)を使います。前方検索が検索を開始した位置より前方にある最初のマッチを探すように、後方検索は検索を開始した位置より後方にある最後のマッチを探します。