ISearchResultView に検索結果を移した後、 残りの作業 (該当するエディターを起動、またユーザーが異なる一致を選択したときに結果のロケーションにナビゲート) は 検索結果ビューアーが行います。 検索インフラストラクチャーは、リソースの名前に従って結果をソートします。
異なるソート順序が検索結果に適している場合は、1 つまたは複数のカスタマイズ済みソーターを指定することができます。 カスタマイズ済みソーターを提供することによって、結果ビューの「ソート順」ポップアップ・メニューから 適切なソート順序を選択できるよう、ユーザーに許可することができます。
カスタマイズ済みソーターは、org.eclipse.search.searchResultSorters 拡張ポイントを使用して提供されています。
以下の例は、Java 検索ページ結果のため、どのように JDT プラグインが異なるソーターを提供するかを示しています。
<extension point="org.eclipse.search.searchResultSorters"> <sorter id="org.eclipse.search.internal.ui.ElementNameSorter" pageId="org.eclipse.jdt.ui.JavaSearchPage" label="%ElementNameSorter.label" tooltip="%ElementNameSorter.tooltip" icon="icons/full/clcl16/search_sortmatch.gif" class="org.eclipse.jdt.internal.ui.search.ElementNameSorter"> </sorter> <sorter id="org.eclipse.search.internal.ui.ParentNameSorter" pageId="org.eclipse.jdt.ui.JavaSearchPage" label="%ParentNameSorter.label" tooltip="%ParentNameSorter.tooltip" icon="icons/full/clcl16/search_sortmatch.gif" class="org.eclipse.jdt.internal.ui.search.ParentNameSorter"> </sorter> ... </extension>
検索ページをインプリメントする class を指定しなければなりません。 この class は、ViewerSorter を拡張します。
ソート順序を「ソート順」メニューで記述するために使用できる label および icon も指定されています。 pageId は、ソーターが活動化される検索ページを指定します。
pageId として "*"
を指定すると、すべてのページでソーターがアクティブになります。