Next: Isearch Yank, Previous: Error in Isearch, Up: Incremental Search [Contents][Index]
インクリメンタル検索のときタイプする文字列の中には、特別な効果をもつものがあります。
デフォルトでは、インクリメンタル検索は緩いスペースマッチング(lax space
matching)を行います。これはスペースおよび一連のスペースは、テキスト中の1つまたはそれ以上のスペースにマッチします。したがって‘foo
bar’は‘foo bar’、‘foo bar’、‘foo bar’、...にマッチします(‘foobar’にはマッチしません)。正確にいうと、Emacsは検索文字列中の一連のスペースを、変数search-whitespace-regexp
で指定された正規表現にマッチさせます。たとえばスペースを一連の改行とスペースにマッチさせるには、変数に‘"[[:space:]\n]+"’をセットします。
緩いスペースマッチングを切り替えるには、M-s SPC
(isearch-toggle-lax-whitespace
)をタイプします。この機能全体を無効にするには、search-whitespace-regexp
をnil
に変更します。これにより検索文字列中のスペースは、正確に1つのスペースにマッチします。
検索文字列に小文字しか含まれていないとき、検索は大文字小文字を区別しません。検索文字列に大文字が含まれているとき、検索は大文字小文字を区別します。検索文字列から大文字を削除すると、この効果はなくなります。Search Caseを参照してください。
非表示のテキストを検索するかしないかは、M-s i
(isearch-toggle-invisible
)とタイプして切り替えることができます。Outline Searchを参照してください。
改行文字を検索するにはC-jとタイプします。
非ASCII文字を検索するには、以下の方法の1つを使います:
insert-char
コマンドと同様に、検索文字列に指定した文字を追加します(Inserting Textを参照してください)。
isearch-toggle-input-method
)で、入力メソッドを切り替えることができます。非デフォルトの入力メソッドに切り替えるには、C-^
(isearch-toggle-specified-input-method
)を使います。これは入力メソッドの名前を尋ねます。インクリメンタル検索で入力メソッドがアクティブのとき、検索プロンプトには以下のようなニーモニックが含まれます。
I-search [im]:
imはアクティブな入力メソッドのニーモニックです。インクリメンタル検索で入力メソッドを有効にすると、カレントバッファーでも入力メソッドが有効のまま残ります。
インクリメンタル検索でM-%をタイプすると、query-replace
またはquery-replace-regexp
が呼び出され(検索モードに依存します)、現在の検索文字が置換対象になります。負のプレフィクス引数は、後方への置換を意味します。Query Replaceを参照してください。
インクリメンタル検索でM-TABをタイプすると、isearch-complete
が呼び出され、サーチリングを補完リストとして使って、検索文字列の補完を試みます。Completionを参照してください。多くのオペレーティングシステムでは、キーシーケンスM-TABはウィンドウマネージャーに捕えられます。その場合、これを使うにはisearch-complete
を、他のキーシーケンスに再バインドする必要があります(Rebindingを参照してください)。
インクリメンタル検索がアクティブのとき、C-h
C-hとタイプすると、特別なキーバインドのリストを含む、対話的なヘルプにアクセスできます。これらのキーバインドは、キーマップisearch-mode-map
の一部です(Keymapsを参照してください)。