Version: 2023.1
언어: 한국어
SearchProvider 클래스
검색 수행

검색 공급자 등록

새 검색 공급자를 추가하려면 다음 예제와 같이 함수를 만들고 SearchItemProvider 속성으로 태그를 지정합니다.

[SearchItemProvider]
internal static SearchProvider CreateProvider()
{
    return new SearchProvider(type, displayName)
    {
        filterId = "me:",
        fetchItems = (context, items, provider) =>
        {
            var itemNames = new List<string>();
            var shortcuts = new List<string>();
            GetMenuInfo(itemNames, shortcuts);

            items.AddRange(itemNames.Where(menuName =>
                    SearchProvider.MatchSearchGroups(context.searchText, menuName))
                .Select(menuName => provider.CreateItem(menuName,
                                            Path.GetFileName(menuName), menuName)));
        },

        fetchThumbnail = (item, context) => Icons.shortcut
    };
}
  • 함수는 새로운 SearchProvider 인스턴스를 반환해야 합니다.
  • SearchProvider 인스턴스에는 다음이 있어야 합니다.
  • 에셋, 메뉴, 같은 고유한 type
  • 필터 창에서 사용할 displayName.
  • 선택적 filterId텍스트 기반 필터링에 대한 검색 토큰을 제공합니다. 예를 들어 p:자산 검색의 필터 ID입니다.

검색 공급자 단축키 등록

새 공급자에 대한 단축키를 등록하려면 다음을 사용하십시오.

[UsedImplicitly, Shortcut("Help/Quick Search/Assets")]
private static void PopQuickSearch()
{
    // Open Search with only the "Asset" provider enabled.
    SearchService.ShowContextual("asset");
}

단축키 관리자에서 키 또는 키 조합을 단축키에 매핑할 수 있습니다.

SearchProvider 클래스
검색 수행