リポジトリをローカライズして すべてのコミットです。
Resource Translatorは、公式SDKを通じてAzure AI Translatorを使ってリソースファイルの機械翻訳プルリクエストを開きます。追加のサービスはなく、単なるワークフローです。
- NPM監査問題0件
- 150試合のテスト
- ノード20 / 22 / 24
- Official Azure SDK
.NET XML .xliff XLIFF 2.0 .po テキストを取れ .json 入れ子型またはフラット型 .ini key=value .restext MUIテキスト 船舶用に建造
翻訳は作業ではなくワークフローとして。
既存のCIにアクションを入れ、Azure AI Translatorに向け、リポジトリでターゲットとなるすべての言語を話せるようにしましょう。
6つのファイルフォーマット
往復.resx、.xliff、.po、.json、.ini、.restextでバイト安定フォーマットを使います。
リポジトリレベルの設定
globs、用語集、カスタム翻訳者カテゴリを含むための.github/resource-translator.ymlファイルを設置してください。
用語集対応
ブランド名や商品用語を、C++、.NET、友人を扱うスマートワード境界正則表現でロックします。
ドライラン+ソフトフェイル
ファイルを書き込まずに翻訳をプレビューしたり、反復中にエラーを警告として表示したりしましょう。
PRに優しい出力
summary-title、summary-details、has-new-translationsは直接create-pull-requestにスロットを入れます。
Official Azure SDK
@azure-rest/ai-translation-text + @azure/core-rest-pipelineを基盤に構築されており、408/429/5xxでの自動リトライ、手作業のHTTPはありません。esbuild束、監査クリーン。
ドロップインワークフロー
コピー。貼り付け。 翻訳しろ。
秘密が3つ、行が4つ、次のプッシュでリポジトリは多言語対応になります。
name: translateon: push: branches: [main] paths: ["**/*.en.resx", "**/*.en.json"]
permissions: contents: write pull-requests: write
jobs: translate: runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - id: translator uses: IEvangelist/resource-translator@v3 with: sourceLocale: en subscriptionKey: ${{ secrets.TRANSLATOR_KEY }} endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }} region: ${{ secrets.TRANSLATOR_REGION }} toLocales: '["fr","de","es","ja"]'
- if: steps.translator.outputs.has-new-translations == 'true' uses: peter-evans/create-pull-request@v7 with: branch: machine-translation title: ${{ steps.translator.outputs.summary-title }} body: ${{ steps.translator.outputs.summary-details }} labels: localization自動操縦でローカライズの準備はできていますか?
Azure AI翻訳キー1つ、ワークフローファイル1つ。残りはリソーストランスレーターが処理します。