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


15.4 シンボル検索

シンボル検索(symbol search)は、通常の検索と似ていますが、検索の境界がシンボルの境界にマッチしていなければなりません。シンボルの意味は、メジャーモードのコンテキストに依存しており、Emacs LispモードでのLispシンボルのように、通常はソースコードのトークンを参照します。たとえばLispシンボルforward-wordをインクリメンタルなシンボル検索すると、これはisearch-forward-wordにはマッチしません。そのため、この機能は主にソースコードの検索に有用です。

M-s _

インクリメンタル検索がアクティブのとき、シンボル検索モードに切り替えます(isearch-toggle-symbol)。非アクティブのときは、前方へのインクリメンタルなシンボル検索を開始します(isearch-forward-symbol)。

M-s .

ポイントの近くにあるシンボルを、検索文字列の初期値に追加して、前方へのインクリメンタルなシンボル検索を開始します。

M-s _ RET symbol RET

symbolにたいして、前方への非インクリメンタルな検索をします。

M-s _ C-r RET symbol RET

symbolにたいして、後方への非インクリメンタルな検索をします。

前方へのインクリメンタルなシンボル検索を開始するには、M-s _(ポイントの近くにシンボルがあるときはM-s .)をタイプします。インクリメンタル検索が非アクティブのときは、コマンドisearch-forward-symbolが実行されます。すでにインクリメンタル前方へのインクリメンタルなシンボル検索を開始するには、M-s _(ポイントの近くにシンボルがあるときはM-s .)をタイプします。インクリメンタル検索が非アクティブのときは、コマンドisearch-forward-symbolが実行されます。すでにインクリメンタル検索がアクティブのとき、M-s _は検索方向と現在の検索文字列を維持した状態で、シンボル検索に切り替えます(もう一度M-s _をタイプすると、シンボル検索を無効にできます)。インクリメンタルなシンボル検索では、検索み文字列をタイプする間は、検索文字列の先頭がシンボルの先頭にマッチだけが必要であり、C-sのような検索繰り返しキーを使用するまでは検索プロンプトに‘Pending’が表示されます。

非インクリメンタルなシンボル検索は、前方への検索はM-s _ RET、後方への検索はM-s _ C-r RETをタイプします。非インクリメンタル検索では、文字列の先頭と最後が、シンボルの先頭と最後にマッチする必要があります。

シンボル検索コマンドは、character foldingを処理せず、lax whitespace matching(lax space matchingを参照してください)が効果をもたないように切り替えます。