Next: , Up: Incremental Search   [Contents][Index]


15.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フェイス(Facesを参照してください)でハイライトします。このハイライトをカスタマイズするさまざまなオプションについては、Search Customizationsを参照してください。その時点での検索文字列はエコーエリアにも表示されます。

検索文字列を間違ってタイプしたときは、DELをタイプします。DELをタイプするごとに、検索文字列の最後の文字が取り消されます。失敗した検索への対処についての詳細は、Error in Isearchを参照してください。

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

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

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

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

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