Har bir yurishdan so'ng pull so'rovini oching
- id: translate uses: IEvangelist/resource-translator@v3 with: sourceLocale: en subscriptionKey: ${{ secrets.TRANSLATOR_KEY }} endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }} region: ${{ secrets.TRANSLATOR_REGION }}
- if: steps.translate.outputs.has-new-translations == 'true' uses: peter-evans/create-pull-request@v7 with: branch: machine-translation title: ${{ steps.translate.outputs.summary-title }} body: ${{ steps.translate.outputs.summary-details }} labels: localizationMonorepos: paket bo'yicha ko'lam tarjimasi
with: sourceLocale: en include: | apps/web/**/*.en.resx packages/shared/**/*.en.json exclude: | **/dist/** **/__tests__/**Brend nomlari va mahsulot atamalari uchun lug'at
Repoga .github/resource-translator.yml tashlang:
glossary: Acme: Contoso Octocat: Octocat ".NET": ".NET" "C++": "C++"Lug'at atamalari tarjima Keyin qo'llaniladi, shuning uchun mashina tarjimasi natijasi sizning afzal brendingizni saqlab qoladi, hatto model uni sinonimga almashtirsa ham.
Maxsus Tarjimon toifasi (sanoat / domen)
with: sourceLocale: en subscriptionKey: ${{ secrets.TRANSLATOR_KEY }} endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }} categoryId: 1234abcd-5678-90ef-... Azure Custom Translator kategoriyasini sohadagi lug'at va ohangni (huquqiy, tibbiyot, marketing, ichki muhandislik va boshqalar) aks ettiruvchi korpusda o'qiting va uning IDsini categoryId orqali o'tkazing. Bu Azure'ning eng kuchli tovush tutqichi.
Ton nazorati + qat'iy zaxira
# .github/resource-translator.yml# Industry / domain — choose your tone via a Custom Translator categorycategoryId: legal-en
# Treat profanity strictly for content aimed at younger audiencesprofanityAction: MarkedprofanityMarker: Tag
# Fail the run rather than silently fall back to the general modelallowFallback: false Custom Translator categoryId ni profanityAction va allowFallback: false bilan birlashtirib, izchil ovozni ta'minlang va tanlangan kategoriyada maqsadli joylardan biri uchun joylashtirish bo'lmasa, ish jarayonini muvaffaqiyatsiz qiling.
Ish jarayonini yoqishdan oldin sinovdan o'tkazing
with: dryRun: true failOnError: false Harakat hali ham qisqacha natijalar va bosqich xulosasini chiqaradi, lekin fayllar yozilmaydi. Har bir muammoni ogohlantirish sifatida ko'rsatish uchun failOnError: false bilan birlashtiring.