chore(translations): search and types translations

pull/4843/head
Dylan Tientcheu 5 months ago
parent 107a414b40
commit 6c88d37ee7

@ -233,10 +233,16 @@ export default defineConfig({
}, },
modal: { modal: {
searchBox: { searchBox: {
resetButtonTitle: '清除查询条件', clearButtonTitle: '清除查询条件',
resetButtonAriaLabel: '清除查询条件', clearButtonAriaLabel: '清除查询条件',
cancelButtonText: '取消', closeButtonText: '关闭',
cancelButtonAriaLabel: '取消' closeButtonAriaLabel: '关闭',
placeholderText: '搜索文档',
placeholderTextAskAi: '向 AI 提问:',
placeholderTextAskAiStreaming: '回答中...',
searchInputLabel: '搜索',
backToKeywordSearchButtonText: '返回关键字搜索',
backToKeywordSearchButtonAriaLabel: '返回关键字搜索'
}, },
startScreen: { startScreen: {
recentSearchesTitle: '搜索历史', recentSearchesTitle: '搜索历史',
@ -244,23 +250,48 @@ export default defineConfig({
saveRecentSearchButtonTitle: '保存至搜索历史', saveRecentSearchButtonTitle: '保存至搜索历史',
removeRecentSearchButtonTitle: '从搜索历史中移除', removeRecentSearchButtonTitle: '从搜索历史中移除',
favoriteSearchesTitle: '收藏', favoriteSearchesTitle: '收藏',
removeFavoriteSearchButtonTitle: '从收藏中移除' removeFavoriteSearchButtonTitle: '从收藏中移除',
recentConversationsTitle: '最近的对话',
removeRecentConversationButtonTitle: '从历史记录中删除对话'
}, },
errorScreen: { errorScreen: {
titleText: '无法获取结果', titleText: '无法获取结果',
helpText: '你可能需要检查你的网络连接' helpText: '你可能需要检查你的网络连接'
}, },
footer: {
selectText: '选择',
navigateText: '切换',
closeText: '关闭',
searchByText: '搜索提供者'
},
noResultsScreen: { noResultsScreen: {
noResultsText: '无法找到相关结果', noResultsText: '无法找到相关结果',
suggestedQueryText: '你可以尝试查询', suggestedQueryText: '你可以尝试查询',
reportMissingResultsText: '你认为该查询应该有结果?', reportMissingResultsText: '你认为该查询应该有结果?',
reportMissingResultsLinkText: '点击反馈' reportMissingResultsLinkText: '点击反馈'
},
resultsScreen: {
askAiPlaceholder: '向 AI 提问: '
},
askAiScreen: {
disclaimerText: '答案由 AI 生成,可能不准确,请自行验证。',
relatedSourcesText: '相关来源',
thinkingText: '思考中...',
copyButtonText: '复制',
copyButtonCopiedText: '已复制!',
copyButtonTitle: '复制',
likeButtonTitle: '赞',
dislikeButtonTitle: '踩',
thanksForFeedbackText: '感谢你的反馈!',
preToolCallText: '搜索中...',
duringToolCallText: '搜索 ',
afterToolCallText: '已搜索'
},
footer: {
selectText: '选择',
submitQuestionText: '提交问题',
selectKeyAriaLabel: 'Enter 键',
navigateText: '切换',
navigateUpKeyAriaLabel: '向上箭头',
navigateDownKeyAriaLabel: '向下箭头',
closeText: '关闭',
backToSearchText: '返回搜索',
closeKeyAriaLabel: 'Esc 键',
poweredByText: '搜索提供者'
} }
} }
} }
@ -274,6 +305,43 @@ export default defineConfig({
[These options](https://github.com/vuejs/vitepress/blob/main/types/docsearch.d.ts) can be overridden. Refer official Algolia docs to learn more about them. [These options](https://github.com/vuejs/vitepress/blob/main/types/docsearch.d.ts) can be overridden. Refer official Algolia docs to learn more about them.
### Algolia Ask AI Support {#ask-ai}
If you would like to include **Ask AI**, pass the `askAi` option (or any of the partial fields) inside `options`:
```ts
import { defineConfig } from 'vitepress'
export default defineConfig({
themeConfig: {
search: {
provider: 'algolia',
options: {
appId: '...',
apiKey: '...',
indexName: '...',
// askAi: "YOUR-ASSISTANT-ID"
// OR
askAi: {
// at minimum you must provide the assistantId you received from Algolia
assistantId: 'XXXYYY',
// optional overrides if omitted, the top-level appId/apiKey/indexName values are reused
// apiKey: '...',
// appId: '...',
// indexName: '...'
}
}
}
}
})
```
::: warning Note
If want to default to keyword search and do not want to use Ask AI, just omit the `askAi` property
:::
The translations for the Ask AI UI live under `options.translations.modal.askAiScreen` and `options.translations.resultsScreen` — see the [type definitions](https://github.com/vuejs/vitepress/blob/main/types/docsearch.d.ts) for all keys.
### Crawler Config ### Crawler Config
Here is an example config based on what this site uses: Here is an example config based on what this site uses:

@ -186,10 +186,17 @@ function searchOptions(): Partial<DefaultTheme.AlgoliaSearchOptions> {
}, },
modal: { modal: {
searchBox: { searchBox: {
resetButtonTitle: 'Limpiar búsqueda', clearButtonTitle: 'Limpiar búsqueda',
resetButtonAriaLabel: 'Limpiar búsqueda', clearButtonAriaLabel: 'Limpiar búsqueda',
cancelButtonText: 'Cancelar', closeButtonText: 'Cerrar',
cancelButtonAriaLabel: 'Cancelar' closeButtonAriaLabel: 'Cerrar',
placeholderText: undefined,
placeholderTextAskAi: undefined,
placeholderTextAskAiStreaming: 'Respondiendo...',
backToKeywordSearchButtonText:
'Volver a la búsqueda por palabras clave',
backToKeywordSearchButtonAriaLabel:
'Volver a la búsqueda por palabras clave'
}, },
startScreen: { startScreen: {
recentSearchesTitle: 'Historial de búsqueda', recentSearchesTitle: 'Historial de búsqueda',
@ -197,24 +204,52 @@ function searchOptions(): Partial<DefaultTheme.AlgoliaSearchOptions> {
saveRecentSearchButtonTitle: 'Guardar en el historial de búsqueda', saveRecentSearchButtonTitle: 'Guardar en el historial de búsqueda',
removeRecentSearchButtonTitle: 'Borrar del historial de búsqueda', removeRecentSearchButtonTitle: 'Borrar del historial de búsqueda',
favoriteSearchesTitle: 'Favoritos', favoriteSearchesTitle: 'Favoritos',
removeFavoriteSearchButtonTitle: 'Borrar de favoritos' removeFavoriteSearchButtonTitle: 'Borrar de favoritos',
recentConversationsTitle: 'Conversaciones recientes',
removeRecentConversationButtonTitle:
'Eliminar esta conversación del historial'
}, },
errorScreen: { errorScreen: {
titleText: 'No fue posible obtener resultados', titleText: 'No fue posible obtener resultados',
helpText: 'Verifique su conexión de red' helpText: 'Verifique su conexión de red'
}, },
footer: {
selectText: 'Seleccionar',
navigateText: 'Navegar',
closeText: 'Cerrar',
searchByText: 'Busqueda por'
},
noResultsScreen: { noResultsScreen: {
noResultsText: 'No fue posible encontrar resultados', noResultsText: 'No fue posible encontrar resultados',
suggestedQueryText: 'Puede intentar una nueva búsqueda', suggestedQueryText: 'Puede intentar una nueva búsqueda',
reportMissingResultsText: reportMissingResultsText:
'Deberian haber resultados para esa consulta?', '¿Deberían haber resultados para esta consulta?',
reportMissingResultsLinkText: 'Click para enviar feedback' reportMissingResultsLinkText: 'Click para enviar feedback'
},
resultsScreen: {
askAiPlaceholder: 'Preguntar a la IA: '
},
askAiScreen: {
disclaimerText:
'Las respuestas son generadas por IA y pueden contener errores. Verifica las respuestas.',
relatedSourcesText: 'Fuentes relacionadas',
thinkingText: 'Pensando...',
copyButtonText: 'Copiar',
copyButtonCopiedText: '¡Copiado!',
copyButtonTitle: 'Copiar',
likeButtonTitle: 'Me gusta',
dislikeButtonTitle: 'No me gusta',
thanksForFeedbackText: '¡Gracias por tu opinión!',
preToolCallText: 'Buscando...',
duringToolCallText: 'Buscando ',
afterToolCallText: 'Búsqueda de',
aggregatedToolCallText: 'Búsqueda de'
},
footer: {
selectText: 'Seleccionar',
submitQuestionText: 'Enviar pregunta',
selectKeyAriaLabel: 'Tecla Enter',
navigateText: 'Navegar',
navigateUpKeyAriaLabel: 'Flecha arriba',
navigateDownKeyAriaLabel: 'Flecha abajo',
closeText: 'Cerrar',
backToSearchText: 'Volver a la búsqueda',
closeKeyAriaLabel: 'Tecla Escape',
poweredByText: 'Búsqueda por'
} }
} }
} }

@ -216,16 +216,19 @@ export default defineConfig({
zh: { zh: {
placeholder: '搜索文档', placeholder: '搜索文档',
translations: { translations: {
button: { button: { buttonText: '搜索文档', buttonAriaLabel: '搜索文档' },
buttonText: '搜索文档',
buttonAriaLabel: '搜索文档'
},
modal: { modal: {
searchBox: { searchBox: {
resetButtonTitle: '清除查询条件', clearButtonTitle: '清除查询条件',
resetButtonAriaLabel: '清除查询条件', clearButtonAriaLabel: '清除查询条件',
cancelButtonText: '取消', closeButtonText: '关闭',
cancelButtonAriaLabel: '取消' closeButtonAriaLabel: '关闭',
placeholderText: '搜索文档',
placeholderTextAskAi: '向 AI 提问:',
placeholderTextAskAiStreaming: '回答中...',
searchInputLabel: '搜索',
backToKeywordSearchButtonText: '返回关键字搜索',
backToKeywordSearchButtonAriaLabel: '返回关键字搜索'
}, },
startScreen: { startScreen: {
recentSearchesTitle: '搜索历史', recentSearchesTitle: '搜索历史',
@ -233,23 +236,46 @@ export default defineConfig({
saveRecentSearchButtonTitle: '保存至搜索历史', saveRecentSearchButtonTitle: '保存至搜索历史',
removeRecentSearchButtonTitle: '从搜索历史中移除', removeRecentSearchButtonTitle: '从搜索历史中移除',
favoriteSearchesTitle: '收藏', favoriteSearchesTitle: '收藏',
removeFavoriteSearchButtonTitle: '从收藏中移除' removeFavoriteSearchButtonTitle: '从收藏中移除',
recentConversationsTitle: '最近的对话',
removeRecentConversationButtonTitle: '从历史记录中删除对话'
}, },
errorScreen: { errorScreen: {
titleText: '无法获取结果', titleText: '无法获取结果',
helpText: '你可能需要检查你的网络连接' helpText: '你可能需要检查你的网络连接'
}, },
footer: {
selectText: '选择',
navigateText: '切换',
closeText: '关闭',
searchByText: '搜索提供者'
},
noResultsScreen: { noResultsScreen: {
noResultsText: '无法找到相关结果', noResultsText: '无法找到相关结果',
suggestedQueryText: '你可以尝试查询', suggestedQueryText: '你可以尝试查询',
reportMissingResultsText: '你认为该查询应该有结果?', reportMissingResultsText: '你认为该查询应该有结果?',
reportMissingResultsLinkText: '点击反馈' reportMissingResultsLinkText: '点击反馈'
},
resultsScreen: { askAiPlaceholder: '向 AI 提问: ' },
askAiScreen: {
disclaimerText: '答案由 AI 生成,可能不准确,请自行验证。',
relatedSourcesText: '相关来源',
thinkingText: '思考中...',
copyButtonText: '复制',
copyButtonCopiedText: '已复制!',
copyButtonTitle: '复制',
likeButtonTitle: '赞',
dislikeButtonTitle: '踩',
thanksForFeedbackText: '感谢你的反馈!',
preToolCallText: '搜索中...',
duringToolCallText: '搜索 ',
afterToolCallText: '已搜索'
},
footer: {
selectText: '选择',
submitQuestionText: '提交问题',
selectKeyAriaLabel: 'Enter 键',
navigateText: '切换',
navigateUpKeyAriaLabel: '向上箭头',
navigateDownKeyAriaLabel: '向下箭头',
closeText: '关闭',
backToSearchText: '返回搜索',
closeKeyAriaLabel: 'Esc 键',
poweredByText: '搜索提供者'
} }
} }
} }
@ -261,6 +287,26 @@ export default defineConfig({
}) })
``` ```
### Algolia Ask AI Support {#ask-ai}
Si deseas incluir **Ask AI**, pasa la opción `askAi` (o alguno de sus campos parciales) dentro de `options`:
```ts
options: {
appId: '...',
apiKey: '...',
indexName: '...',
// askAi: 'TU-ASSISTANT-ID'
askAi: {
assistantId: 'XXXYYY'
}
}
```
::: warning Nota
Si prefieres solo la búsqueda por palabra clave y no la Ask AI, simplemente omite `askAi`.
:::
[Estas opciones](https://github.com/vuejs/vitepress/blob/main/types/docsearch.d.ts) se pueden superponer. Consulte la documentación oficial de Algolia para obtener más información sobre ellos. [Estas opciones](https://github.com/vuejs/vitepress/blob/main/types/docsearch.d.ts) se pueden superponer. Consulte la documentación oficial de Algolia para obtener más información sobre ellos.
### Configuración _Crawler_ {#crawler-config} ### Configuración _Crawler_ {#crawler-config}

@ -188,31 +188,67 @@ function searchOptions(): Partial<DefaultTheme.AlgoliaSearchOptions> {
}, },
modal: { modal: {
searchBox: { searchBox: {
resetButtonTitle: 'آغاز مجدد جستجو', clearButtonTitle: 'پاک کردن جستجو',
resetButtonAriaLabel: 'آغاز مجدد جستجو', clearButtonAriaLabel: 'پاک کردن جستجو',
cancelButtonText: 'لغو', closeButtonText: 'بستن',
cancelButtonAriaLabel: 'لغو' closeButtonAriaLabel: 'بستن',
placeholderText: 'جستجوی مستندات',
placeholderTextAskAi: 'از هوش مصنوعی بپرسید: ',
placeholderTextAskAiStreaming: 'در حال پاسخ...',
searchInputLabel: 'جستجو',
backToKeywordSearchButtonText: 'بازگشت به جستجوی کلیدواژه',
backToKeywordSearchButtonAriaLabel: 'بازگشت به جستجوی کلیدواژه'
}, },
startScreen: { startScreen: {
recentSearchesTitle: 'جستجو‌های اخیر', recentSearchesTitle: 'جستجوهای اخیر',
noRecentSearchesText: 'تاریخچه جستجویی یافت نشد.', noRecentSearchesText: 'هیچ جستجوی اخیر',
saveRecentSearchButtonTitle: 'ذخیره تاریخچه جستجو', saveRecentSearchButtonTitle: 'ذخیره در تاریخچه جستجو',
removeRecentSearchButtonTitle: 'حذف تاریخچه جستجو', removeRecentSearchButtonTitle: 'حذف از تاریخچه جستجو',
favoriteSearchesTitle: 'موارد دلخواه', favoriteSearchesTitle: 'علاقه‌مندی‌ها',
removeFavoriteSearchButtonTitle: 'حذف مورد دلخواه' removeFavoriteSearchButtonTitle: 'حذف از علاقه‌مندی‌ها',
recentConversationsTitle: 'گفتگوهای اخیر',
removeRecentConversationButtonTitle: 'حذف این گفتگو از تاریخچه'
}, },
errorScreen: { errorScreen: {
titleText: 'نتیجه‌ای یافت نشد برای', titleText: 'عدم امکان دریافت نتایج',
helpText: 'اتصال شبکه خود را بررسی کنید' helpText: 'اتصال شبکه خود را بررسی کنید'
}, },
noResultsScreen: {
noResultsText: 'هیچ نتیجه‌ای یافت نشد',
suggestedQueryText: 'می‌توانید جستجوی دیگری امتحان کنید',
reportMissingResultsText: 'فکر می‌کنید باید نتیجه‌ای نمایش داده شود؟',
reportMissingResultsLinkText: 'برای ارسال بازخورد کلیک کنید'
},
resultsScreen: {
askAiPlaceholder: 'از هوش مصنوعی بپرسید: '
},
askAiScreen: {
disclaimerText:
'پاسخ‌ها توسط هوش مصنوعی تولید می‌شوند و ممکن است خطا داشته باشند. لطفاً بررسی کنید.',
relatedSourcesText: 'منابع مرتبط',
thinkingText: 'در حال پردازش...',
copyButtonText: 'کپی',
copyButtonCopiedText: 'کپی شد!',
copyButtonTitle: 'کپی',
likeButtonTitle: 'پسندیدم',
dislikeButtonTitle: 'نپسندیدم',
thanksForFeedbackText: 'از بازخورد شما سپاسگزاریم!',
preToolCallText: 'در حال جستجو...',
duringToolCallText: 'در حال جستجو برای ',
afterToolCallText: 'جستجو انجام شد',
aggregatedToolCallText: 'جستجو انجام شد'
},
footer: { footer: {
selectText: 'انتخاب', selectText: 'انتخاب',
navigateText: 'رفتن', submitQuestionText: 'ارسال پرسش',
selectKeyAriaLabel: 'کلید Enter',
navigateText: 'حرکت',
navigateUpKeyAriaLabel: 'کلید جهت بالا',
navigateDownKeyAriaLabel: 'کلید جهت پایین',
closeText: 'بستن', closeText: 'بستن',
searchByText: ' جستجو با ' backToSearchText: 'بازگشت به جستجو',
}, closeKeyAriaLabel: 'کلید Escape',
noResultsScreen: { poweredByText: 'جستجو توسط'
noResultsText: 'نتیجه‌ای یافت نشد برای'
} }
} }
} }

@ -212,9 +212,7 @@ export default defineConfig({
import { defineConfig } from 'vitepress' import { defineConfig } from 'vitepress'
export default defineConfig({ export default defineConfig({
themeConfig: themeConfig: {
{
search: { search: {
provider: 'algolia', provider: 'algolia',
options: { options: {
@ -223,40 +221,40 @@ export default defineConfig({
indexName: '...', indexName: '...',
locales: { locales: {
zh: { zh: {
placeholder: 'جستجو در مستندات', placeholder: '搜索文档',
translations: { translations: {
button: { button: {
buttonText: 'جستجو در مستندات', buttonText: '搜索文档',
buttonAriaLabel: 'جستجو در مستندات' buttonAriaLabel: '搜索文档'
}, },
modal: { modal: {
searchBox: { searchBox: {
resetButtonTitle: 'پاک کردن شرایط جستجو', resetButtonTitle: '清除搜索条件',
resetButtonAriaLabel: 'پاک کردن شرایط جستجو', resetButtonAriaLabel: '清除搜索条件',
cancelButtonText: 'لغو', cancelButtonText: '取消',
cancelButtonAriaLabel: 'لغو' cancelButtonAriaLabel: '取消'
}, },
startScreen: { startScreen: {
recentSearchesTitle: 'تاریخچه جستجو', recentSearchesTitle: '最近搜索',
noRecentSearchesText: 'هیچ تاریخچه جستجویی وجود ندارد', noRecentSearchesText: '没有最近搜索',
saveRecentSearchButtonTitle: 'ذخیره در تاریخچه جستجو', saveRecentSearchButtonTitle: '保存到最近搜索',
removeRecentSearchButtonTitle: 'حذف از تاریخچه جستجو' removeRecentSearchButtonTitle: '从最近搜索中删除'
}, },
errorScreen: { errorScreen: {
titleText: 'نمایش نتایج امکان‌پذیر نیست', titleText: '无法显示结果',
helpText: 'شما ممکن است نیاز به بررسی اتصال اینترنت خود داشته باشید' helpText: '您可能需要检查您的互联网连接'
}, },
footer: { footer: {
selectText: 'انتخاب', selectText: '选择',
navigateText: 'جابجایی', navigateText: '导航',
closeText: 'بستن', closeText: '关闭',
searchByText: 'جستجو توسط' searchByText: '搜索由'
}, },
noResultsScreen: { noResultsScreen: {
noResultsText: 'نتیجه‌ای پیدا نشد', noResultsText: '没有找到结果',
suggestedQueryText: 'می‌توانید امتحان کنید', suggestedQueryText: '您可以尝试',
reportMissingResultsText: 'فکر می‌کنید باید نتایجی وجود داشته باشد؟', reportMissingResultsText: '您认为应该有结果吗?',
reportMissingResultsLinkText: 'برای بازخورد کلیک کنید' reportMissingResultsLinkText: '点击这里报告'
} }
} }
} }
@ -377,3 +375,22 @@ new Crawler({
} }
}) })
``` ```
### پشتیبانی Algolia Ask AI {#ask-ai}
برای فعال‌سازی **Ask AI** کافی است گزینه `askAi` را اضافه کنید:
```ts
options: {
appId: '...',
apiKey: '...',
indexName: '...',
askAi: {
assistantId: 'XXXYYY'
}
}
```
::: warning نکته
اگر فقط به جستجوی کلمات کلیدی نیاز دارید، `askAi` را اضافه نکنید.
:::

@ -228,10 +228,16 @@ function searchOptions(): Partial<DefaultTheme.AlgoliaSearchOptions> {
}, },
modal: { modal: {
searchBox: { searchBox: {
resetButtonTitle: '검색 지우기', clearButtonTitle: '검색 지우기',
resetButtonAriaLabel: '검색 지우기', clearButtonAriaLabel: '검색 지우기',
cancelButtonText: '취소', closeButtonText: '닫기',
cancelButtonAriaLabel: '취소' closeButtonAriaLabel: '닫기',
placeholderText: '문서 검색',
placeholderTextAskAi: 'AI에게 물어보기: ',
placeholderTextAskAiStreaming: '답변 작성 중...',
searchInputLabel: '검색',
backToKeywordSearchButtonText: '키워드 검색으로 돌아가기',
backToKeywordSearchButtonAriaLabel: '키워드 검색으로 돌아가기'
}, },
startScreen: { startScreen: {
recentSearchesTitle: '검색 기록', recentSearchesTitle: '검색 기록',
@ -239,23 +245,50 @@ function searchOptions(): Partial<DefaultTheme.AlgoliaSearchOptions> {
saveRecentSearchButtonTitle: '검색 기록에 저장', saveRecentSearchButtonTitle: '검색 기록에 저장',
removeRecentSearchButtonTitle: '검색 기록에서 삭제', removeRecentSearchButtonTitle: '검색 기록에서 삭제',
favoriteSearchesTitle: '즐겨찾기', favoriteSearchesTitle: '즐겨찾기',
removeFavoriteSearchButtonTitle: '즐겨찾기에서 삭제' removeFavoriteSearchButtonTitle: '즐겨찾기에서 삭제',
recentConversationsTitle: '최근 대화',
removeRecentConversationButtonTitle: '대화를 기록에서 삭제'
}, },
errorScreen: { errorScreen: {
titleText: '결과를 가져올 수 없습니다', titleText: '결과를 가져올 수 없습니다',
helpText: '네트워크 연결을 확인하세요' helpText: '네트워크 연결을 확인하세요'
}, },
noResultsScreen: {
noResultsText: '결과를 찾을 수 없습니다',
suggestedQueryText: '다른 검색어를 시도해 보세요',
reportMissingResultsText: '결과가 있어야 한다고 생각하나요?',
reportMissingResultsLinkText: '피드백 보내기'
},
resultsScreen: {
askAiPlaceholder: 'AI에게 물어보기: '
},
askAiScreen: {
disclaimerText:
'AI가 생성한 답변으로 오류가 있을 수 있습니다. 반드시 확인하세요.',
relatedSourcesText: '관련 소스',
thinkingText: '생각 중...',
copyButtonText: '복사',
copyButtonCopiedText: '복사됨!',
copyButtonTitle: '복사',
likeButtonTitle: '좋아요',
dislikeButtonTitle: '싫어요',
thanksForFeedbackText: '피드백 감사합니다!',
preToolCallText: '검색 중...',
duringToolCallText: '검색 중 ',
afterToolCallText: '검색 완료',
aggregatedToolCallText: '검색 완료'
},
footer: { footer: {
selectText: '선택', selectText: '선택',
submitQuestionText: '질문 보내기',
selectKeyAriaLabel: 'Enter 키',
navigateText: '탐색', navigateText: '탐색',
navigateUpKeyAriaLabel: '위쪽 화살표',
navigateDownKeyAriaLabel: '아래쪽 화살표',
closeText: '닫기', closeText: '닫기',
searchByText: '검색 기준' backToSearchText: '검색으로 돌아가기',
}, closeKeyAriaLabel: 'Esc 키',
noResultsScreen: { poweredByText: '제공: '
noResultsText: '결과를 찾을 수 없습니다',
suggestedQueryText: '새로운 검색을 시도할 수 있습니다',
reportMissingResultsText: '해당 검색어에 대한 결과가 있어야 합니까?',
reportMissingResultsLinkText: '피드백 보내기 클릭'
} }
} }
} }

@ -377,3 +377,20 @@ new Crawler({
} }
}) })
``` ```
### Algolia Ask AI 지원 {#ask-ai}
**Ask AI** 기능을 사용하려면 `askAi` 옵션을 추가하세요:
```ts
options: {
appId: '...',
apiKey: '...',
indexName: '...',
askAi: { assistantId: 'XXXYYY' }
}
```
::: warning 참고
Ask AI를 사용하지 않으려면 `askAi` 옵션을 생략하면 됩니다.
:::

@ -183,35 +183,69 @@ function searchOptions(): Partial<DefaultTheme.AlgoliaSearchOptions> {
}, },
modal: { modal: {
searchBox: { searchBox: {
resetButtonTitle: 'Limpar pesquisa', clearButtonTitle: 'Limpar pesquisa',
resetButtonAriaLabel: 'Limpar pesquisa', clearButtonAriaLabel: 'Limpar pesquisa',
cancelButtonText: 'Cancelar', closeButtonText: 'Fechar',
cancelButtonAriaLabel: 'Cancelar' closeButtonAriaLabel: 'Fechar',
placeholderText: 'Pesquisar documentos',
placeholderTextAskAi: 'Pergunte à IA: ',
placeholderTextAskAiStreaming: 'Respondendo...',
searchInputLabel: 'Pesquisar',
backToKeywordSearchButtonText: 'Voltar à pesquisa por palavras-chave',
backToKeywordSearchButtonAriaLabel:
'Voltar à pesquisa por palavras-chave'
}, },
startScreen: { startScreen: {
recentSearchesTitle: 'Histórico de Pesquisa', recentSearchesTitle: 'Histórico de pesquisa',
noRecentSearchesText: 'Nenhuma pesquisa recente', noRecentSearchesText: 'Nenhuma pesquisa recente',
saveRecentSearchButtonTitle: 'Salvar no histórico de pesquisas', saveRecentSearchButtonTitle: 'Salvar no histórico de pesquisas',
removeRecentSearchButtonTitle: 'Remover do histórico de pesquisas', removeRecentSearchButtonTitle: 'Remover do histórico de pesquisas',
favoriteSearchesTitle: 'Favoritos', favoriteSearchesTitle: 'Favoritos',
removeFavoriteSearchButtonTitle: 'Remover dos favoritos' removeFavoriteSearchButtonTitle: 'Remover dos favoritos',
recentConversationsTitle: 'Conversas recentes',
removeRecentConversationButtonTitle:
'Remover esta conversa do histórico'
}, },
errorScreen: { errorScreen: {
titleText: 'Não foi possível obter resultados', titleText: 'Não foi possível obter resultados',
helpText: 'Verifique a sua conexão de rede' helpText: 'Verifique sua conexão de rede'
},
noResultsScreen: {
noResultsText: 'Nenhum resultado encontrado',
suggestedQueryText: 'Você pode tentar uma nova consulta',
reportMissingResultsText: 'Acha que deveria haver resultados?',
reportMissingResultsLinkText: 'Clique para enviar feedback'
},
resultsScreen: {
askAiPlaceholder: 'Pergunte à IA: '
},
askAiScreen: {
disclaimerText:
'As respostas são geradas por IA e podem conter erros. Verifique as respostas.',
relatedSourcesText: 'Fontes relacionadas',
thinkingText: 'Pensando...',
copyButtonText: 'Copiar',
copyButtonCopiedText: 'Copiado!',
copyButtonTitle: 'Copiar',
likeButtonTitle: 'Curtir',
dislikeButtonTitle: 'Não curtir',
thanksForFeedbackText: 'Obrigado pelo feedback!',
preToolCallText: 'Pesquisando...',
duringToolCallText: 'Pesquisando ',
afterToolCallText: 'Pesquisa concluída',
aggregatedToolCallText: 'Pesquisa concluída'
}, },
footer: { footer: {
selectText: 'Selecionar', selectText: 'Selecionar',
submitQuestionText: 'Enviar pergunta',
selectKeyAriaLabel: 'Tecla Enter',
navigateText: 'Navegar', navigateText: 'Navegar',
navigateUpKeyAriaLabel: 'Seta para cima',
navigateDownKeyAriaLabel: 'Seta para baixo',
closeText: 'Fechar', closeText: 'Fechar',
searchByText: 'Pesquisa por' backToSearchText: 'Voltar à pesquisa',
}, closeKeyAriaLabel: 'Tecla Escape',
noResultsScreen: { poweredByText: 'Pesquisa por'
noResultsText: 'Não foi possível encontrar resultados',
suggestedQueryText: 'Você pode tentar uma nova consulta',
reportMissingResultsText:
'Deveriam haver resultados para essa consulta?',
reportMissingResultsLinkText: 'Clique para enviar feedback'
} }
} }
} }

@ -370,3 +370,20 @@ new Crawler({
} }
}) })
``` ```
### Suporte ao Algolia Ask AI {#ask-ai}
Se quiser incluir o **Ask AI**, adicione `askAi` em `options`:
```ts
options: {
appId: '...',
apiKey: '...',
indexName: '...',
askAi: { assistantId: 'XXXYYY' }
}
```
::: warning Nota
Caso queira apenas a pesquisa por palavra-chave, omita `askAi`.
:::

@ -183,10 +183,18 @@ function searchOptions(): Partial<DefaultTheme.AlgoliaSearchOptions> {
}, },
modal: { modal: {
searchBox: { searchBox: {
resetButtonTitle: 'Сбросить поиск', clearButtonTitle: 'Очистить поиск',
resetButtonAriaLabel: 'Сбросить поиск', clearButtonAriaLabel: 'Очистить поиск',
cancelButtonText: 'Отменить поиск', closeButtonText: 'Закрыть',
cancelButtonAriaLabel: 'Отменить поиск' closeButtonAriaLabel: 'Закрыть',
placeholderText: 'Поиск в документации',
placeholderTextAskAi: 'Спросите у ИИ: ',
placeholderTextAskAiStreaming: 'Формируется ответ...',
searchInputLabel: 'Поиск',
backToKeywordSearchButtonText:
'Вернуться к поиску по ключевым словам',
backToKeywordSearchButtonAriaLabel:
'Вернуться к поиску по ключевым словам'
}, },
startScreen: { startScreen: {
recentSearchesTitle: 'История поиска', recentSearchesTitle: 'История поиска',
@ -194,24 +202,50 @@ function searchOptions(): Partial<DefaultTheme.AlgoliaSearchOptions> {
saveRecentSearchButtonTitle: 'Сохранить в истории поиска', saveRecentSearchButtonTitle: 'Сохранить в истории поиска',
removeRecentSearchButtonTitle: 'Удалить из истории поиска', removeRecentSearchButtonTitle: 'Удалить из истории поиска',
favoriteSearchesTitle: 'Избранное', favoriteSearchesTitle: 'Избранное',
removeFavoriteSearchButtonTitle: 'Удалить из избранного' removeFavoriteSearchButtonTitle: 'Удалить из избранного',
recentConversationsTitle: 'Недавние беседы',
removeRecentConversationButtonTitle: 'Удалить эту беседу из истории'
}, },
errorScreen: { errorScreen: {
titleText: 'Невозможно получить результаты', titleText: 'Невозможно получить результаты',
helpText: 'Вам может потребоваться проверить подключение к Интернету' helpText: 'Проверьте подключение к Интернету'
},
noResultsScreen: {
noResultsText: 'Ничего не найдено',
suggestedQueryText: 'Попробуйте изменить запрос',
reportMissingResultsText: 'Считаете, что результаты должны быть?',
reportMissingResultsLinkText: 'Сообщить об этом'
},
resultsScreen: {
askAiPlaceholder: 'Спросите у ИИ: '
},
askAiScreen: {
disclaimerText:
'Ответы генерируются ИИ и могут содержать ошибки. Проверяйте информацию.',
relatedSourcesText: 'Связанные источники',
thinkingText: 'Обработка...',
copyButtonText: 'Копировать',
copyButtonCopiedText: 'Скопировано!',
copyButtonTitle: 'Копировать',
likeButtonTitle: 'Нравится',
dislikeButtonTitle: 'Не нравится',
thanksForFeedbackText: 'Спасибо за отзыв!',
preToolCallText: 'Поиск...',
duringToolCallText: 'Поиск ',
afterToolCallText: 'Поиск завершён',
aggregatedToolCallText: 'Поиск завершён'
}, },
footer: { footer: {
selectText: 'выбрать', selectText: 'выбрать',
submitQuestionText: 'Отправить вопрос',
selectKeyAriaLabel: 'Клавиша Enter',
navigateText: 'перейти', navigateText: 'перейти',
navigateUpKeyAriaLabel: 'Стрелка вверх',
navigateDownKeyAriaLabel: 'Стрелка вниз',
closeText: 'закрыть', closeText: 'закрыть',
searchByText: 'поставщик поиска' backToSearchText: 'Вернуться к поиску',
}, closeKeyAriaLabel: 'Клавиша Esc',
noResultsScreen: { poweredByText: 'поиск от'
noResultsText: 'Нет результатов для',
suggestedQueryText: 'Вы можете попытаться узнать',
reportMissingResultsText:
'Считаете, что поиск даёт ложные результаты?',
reportMissingResultsLinkText: 'Нажмите на кнопку «Обратная связь»'
} }
} }
} }

@ -384,3 +384,20 @@ new Crawler({
} }
}) })
``` ```
### Поддержка Algolia Ask AI {#ask-ai}
Чтобы включить **Ask AI**, добавьте параметр `askAi`:
```ts
options: {
appId: '...',
apiKey: '...',
indexName: '...',
askAi: { assistantId: 'XXXYYY' }
}
```
::: warning Примечание
Если нужна только поисковая строка, просто опустите `askAi`.
:::

@ -176,10 +176,16 @@ function searchOptions(): Partial<DefaultTheme.AlgoliaSearchOptions> {
}, },
modal: { modal: {
searchBox: { searchBox: {
resetButtonTitle: '清除查询条件', clearButtonTitle: '清除查询条件',
resetButtonAriaLabel: '清除查询条件', clearButtonAriaLabel: '清除查询条件',
cancelButtonText: '取消', closeButtonText: '关闭',
cancelButtonAriaLabel: '取消' closeButtonAriaLabel: '关闭',
placeholderText: '搜索文档',
placeholderTextAskAi: '向 AI 提问:',
placeholderTextAskAiStreaming: '回答中...',
searchInputLabel: '搜索',
backToKeywordSearchButtonText: '返回关键字搜索',
backToKeywordSearchButtonAriaLabel: '返回关键字搜索'
}, },
startScreen: { startScreen: {
recentSearchesTitle: '搜索历史', recentSearchesTitle: '搜索历史',
@ -187,23 +193,49 @@ function searchOptions(): Partial<DefaultTheme.AlgoliaSearchOptions> {
saveRecentSearchButtonTitle: '保存至搜索历史', saveRecentSearchButtonTitle: '保存至搜索历史',
removeRecentSearchButtonTitle: '从搜索历史中移除', removeRecentSearchButtonTitle: '从搜索历史中移除',
favoriteSearchesTitle: '收藏', favoriteSearchesTitle: '收藏',
removeFavoriteSearchButtonTitle: '从收藏中移除' removeFavoriteSearchButtonTitle: '从收藏中移除',
recentConversationsTitle: '最近的对话',
removeRecentConversationButtonTitle: '从历史记录中删除对话'
}, },
errorScreen: { errorScreen: {
titleText: '无法获取结果', titleText: '无法获取结果',
helpText: '你可能需要检查你的网络连接' helpText: '你可能需要检查你的网络连接'
}, },
footer: {
selectText: '选择',
navigateText: '切换',
closeText: '关闭',
searchByText: '搜索提供者'
},
noResultsScreen: { noResultsScreen: {
noResultsText: '无法找到相关结果', noResultsText: '无法找到相关结果',
suggestedQueryText: '你可以尝试查询', suggestedQueryText: '你可以尝试查询',
reportMissingResultsText: '你认为该查询应该有结果?', reportMissingResultsText: '你认为该查询应该有结果?',
reportMissingResultsLinkText: '点击反馈' reportMissingResultsLinkText: '点击反馈'
},
resultsScreen: {
askAiPlaceholder: '向 AI 提问: '
},
askAiScreen: {
disclaimerText: '答案由 AI 生成,可能不准确,请自行验证。',
relatedSourcesText: '相关来源',
thinkingText: '思考中...',
copyButtonText: '复制',
copyButtonCopiedText: '已复制!',
copyButtonTitle: '复制',
likeButtonTitle: '赞',
dislikeButtonTitle: '踩',
thanksForFeedbackText: '感谢你的反馈!',
preToolCallText: '搜索中...',
duringToolCallText: '搜索 ',
afterToolCallText: '已搜索',
aggregatedToolCallText: '已搜索'
},
footer: {
selectText: '选择',
submitQuestionText: '提交问题',
selectKeyAriaLabel: 'Enter 键',
navigateText: '切换',
navigateUpKeyAriaLabel: '向上箭头',
navigateDownKeyAriaLabel: '向下箭头',
closeText: '关闭',
backToSearchText: '返回搜索',
closeKeyAriaLabel: 'Esc 键',
poweredByText: '搜索提供者'
} }
} }
} }

@ -216,16 +216,19 @@ export default defineConfig({
zh: { zh: {
placeholder: '搜索文档', placeholder: '搜索文档',
translations: { translations: {
button: { button: { buttonText: '搜索文档', buttonAriaLabel: '搜索文档' },
buttonText: '搜索文档',
buttonAriaLabel: '搜索文档'
},
modal: { modal: {
searchBox: { searchBox: {
resetButtonTitle: '清除查询条件', clearButtonTitle: '清除查询条件',
resetButtonAriaLabel: '清除查询条件', clearButtonAriaLabel: '清除查询条件',
cancelButtonText: '取消', closeButtonText: '关闭',
cancelButtonAriaLabel: '取消' closeButtonAriaLabel: '关闭',
placeholderText: '搜索文档',
placeholderTextAskAi: '向 AI 提问:',
placeholderTextAskAiStreaming: '回答中...',
searchInputLabel: '搜索',
backToKeywordSearchButtonText: '返回关键字搜索',
backToKeywordSearchButtonAriaLabel: '返回关键字搜索'
}, },
startScreen: { startScreen: {
recentSearchesTitle: '搜索历史', recentSearchesTitle: '搜索历史',
@ -233,23 +236,46 @@ export default defineConfig({
saveRecentSearchButtonTitle: '保存至搜索历史', saveRecentSearchButtonTitle: '保存至搜索历史',
removeRecentSearchButtonTitle: '从搜索历史中移除', removeRecentSearchButtonTitle: '从搜索历史中移除',
favoriteSearchesTitle: '收藏', favoriteSearchesTitle: '收藏',
removeFavoriteSearchButtonTitle: '从收藏中移除' removeFavoriteSearchButtonTitle: '从收藏中移除',
recentConversationsTitle: '最近的对话',
removeRecentConversationButtonTitle: '从历史记录中删除对话'
}, },
errorScreen: { errorScreen: {
titleText: '无法获取结果', titleText: '无法获取结果',
helpText: '你可能需要检查你的网络连接' helpText: '请检查网络连接'
},
footer: {
selectText: '选择',
navigateText: '切换',
closeText: '关闭',
searchByText: '搜索提供者'
}, },
noResultsScreen: { noResultsScreen: {
noResultsText: '无法找到相关结果', noResultsText: '无法找到相关结果',
suggestedQueryText: '你可以尝试查询', suggestedQueryText: '你可以尝试查询',
reportMissingResultsText: '你认为该查询应该有结果?', reportMissingResultsText: '你认为该查询应该有结果?',
reportMissingResultsLinkText: '点击反馈' reportMissingResultsLinkText: '点击反馈'
},
resultsScreen: { askAiPlaceholder: '向 AI 提问: ' },
askAiScreen: {
disclaimerText: '答案由 AI 生成,可能不准确,请自行验证。',
relatedSourcesText: '相关来源',
thinkingText: '思考中...',
copyButtonText: '复制',
copyButtonCopiedText: '已复制!',
copyButtonTitle: '复制',
likeButtonTitle: '赞',
dislikeButtonTitle: '踩',
thanksForFeedbackText: '感谢你的反馈!',
preToolCallText: '搜索中...',
duringToolCallText: '搜索 ',
afterToolCallText: '已搜索'
},
footer: {
selectText: '选择',
submitQuestionText: '提交问题',
selectKeyAriaLabel: 'Enter 键',
navigateText: '切换',
navigateUpKeyAriaLabel: '向上箭头',
navigateDownKeyAriaLabel: '向下箭头',
closeText: '关闭',
backToSearchText: '返回搜索',
closeKeyAriaLabel: 'Esc 键',
poweredByText: '搜索提供者'
} }
} }
} }
@ -261,6 +287,25 @@ export default defineConfig({
}) })
``` ```
### Algolia Ask AI 支持 {#ask-ai}
如果需要启用 **Ask AI**,只需在 `options` 中添加 `askAi`
```ts
options: {
appId: '...',
apiKey: '...',
indexName: '...',
askAi: {
assistantId: 'XXXYYY'
}
}
```
::: warning 提示
若仅需关键词搜索,可省略 `askAi`
:::
[这些选项](https://github.com/vuejs/vitepress/blob/main/types/docsearch.d.ts)可以被覆盖。请参阅 Algolia 官方文档以了解更多信息。 [这些选项](https://github.com/vuejs/vitepress/blob/main/types/docsearch.d.ts)可以被覆盖。请参阅 Algolia 官方文档以了解更多信息。
### 爬虫配置 {#crawler-config} ### 爬虫配置 {#crawler-config}

@ -115,6 +115,7 @@ export interface SearchBoxTranslations {
closeButtonAriaLabel?: string closeButtonAriaLabel?: string
placeholderText?: string placeholderText?: string
placeholderTextAskAi?: string placeholderTextAskAi?: string
searchInputLabel?: string
placeholderTextAskAiStreaming?: string placeholderTextAskAiStreaming?: string
backToKeywordSearchButtonText?: string backToKeywordSearchButtonText?: string
backToKeywordSearchButtonAriaLabel?: string backToKeywordSearchButtonAriaLabel?: string
@ -126,6 +127,7 @@ export interface FooterTranslations {
selectKeyAriaLabel?: string selectKeyAriaLabel?: string
navigateText?: string navigateText?: string
navigateUpKeyAriaLabel?: string navigateUpKeyAriaLabel?: string
backToSearchText?: string
navigateDownKeyAriaLabel?: string navigateDownKeyAriaLabel?: string
closeText?: string closeText?: string
closeKeyAriaLabel?: string closeKeyAriaLabel?: string

Loading…
Cancel
Save