ข้ามไปที่เนื้อหา

ภาษา

เลือกภาษาของคุณ

สลับไปยังหน้าเดียวกันในภาษาอื่น

EnglishEnglishenAfrikaansAfrikaansafአማርኛAmharicamالعربيةArabicarঅসমীয়াAssameseasAzərbaycanAzerbaijaniazБашҡортBashkirbaБългарскиBulgarianbgभोजपुरीBhojpuribhoবাংলাBanglabnབོད་སྐད་Tibetanboबड़ोBodobrxBosanskiBosnianbsCatalàCatalancaČeštinaCzechcsCymraegWelshcyDanskDanishdaDeutschGermandeडोगरीDogridoiDolnoserbšćinaLower SorbiandsbދިވެހިބަސްDivehidvΕλληνικάGreekelEspañolSpanishesEestiEstonianetEuskaraBasqueeuفارسیPersianfaSuomiFinnishfiFilipinoFilipinofilVakavitiFijianfjFøroysktFaroesefoFrançaisFrenchfrFrançais (Canada)French (Canada)fr-CAGaeilgeIrishgaGalegoGalicianglकोंकणीKonkanigomગુજરાતીGujaratiguHausaHausahaעבריתHebrewheहिन्दीHindihiछत्तीसगढ़ीChhattisgarhihneHrvatskiCroatianhrHornjoserbsceUpper SorbianhsbHaitian CreoleHaitian CreolehtMagyarHungarianhuՀայերենArmenianhyIndonesiaIndonesianidÌgbòIgboigInuinnaqtunInuinnaqtuniktÍslenskaIcelandicisItalianoItalianitᐃᓄᒃᑎᑐᑦInuktitutiuInuktitut (Latin)Inuktitut (Latin)iu-Latn日本語JapanesejaქართულიGeorgiankaҚазақ ТіліKazakhkkខ្មែរKhmerkmKurmancîKurdish (Northern)kmrಕನ್ನಡKannadakn한국어KoreankoكٲشُرKashmiriksکوردیی ناوەندیKurdish (Central)kuКыргызчаKyrgyzkyLëtzebuergeschLuxembourgishlbLingálaLingalalnລາວLaoloLietuviųLithuanianltLugandaGandalugLatviešuLatvianlv中文 (文言文)Chinese (Literary)lzhमैथिलीMaithilimaiMalagasyMalagasymgTe Reo MāoriMāorimiМакедонскиMacedonianmkമലയാളംMalayalammlМонгол хэлMongolian (Cyrillic)mn-Cyrlᠮᠣᠩᠭᠣᠯ ᠬᠡᠯᠡMongolian (Traditional)mn-MongমৈতৈলোনManipurimniमराठीMarathimrMelayuMalaymsMaltiMaltesemtHmong DawHmong Dawmwwမြန်မာMyanmar (Burmese)myNorsk BokmålNorwegian BokmålnbनेपालीNepalineNederlandsDutchnlSesotho sa LeboaSesotho sa LeboansoChinyanjaChichewanyaଓଡ଼ିଆOdiaorHñähñuQuerétaro OtomiotqਪੰਜਾਬੀPunjabipaPolskiPolishplدریDariprsپښتوPashtopsPortuguês (Brasil)Portuguese (Brazil)ptPortuguês (Portugal)Portuguese (Portugal)pt-PTRomânăRomanianroРусскийRussianruIkirundiRundirunKinyarwandaKinyarwandarwسنڌيSindhisdසිංහලSinhalasiSlovenčinaSlovakskSlovenščinaSlovenianslGagana SāmoaSamoansmchiShonaShonasnSoomaaliSomalisoShqipAlbaniansqСрпски (ћирилица)Serbian (Cyrillic)sr-CyrlSrpski (latinica)Serbian (Latin)sr-LatnSesothoSesothostSvenskaSwedishsvKiswahiliSwahiliswதமிழ்TamiltaతెలుగుTeluguteไทยThaithትግርTigrinyatiTürkmen DiliTurkmentkLea fakatongaTongantoTürkçeTurkishtrТатарTatarttReo TahitiTahitiantyئۇيغۇرچەUyghurugУкраїнськаUkrainianukاردوUrduurUzbek (Latin)Uzbek (Latin)uzTiếng ViệtVietnameseviisiXhosaisiXhosaxhÈdè YorùbáYorubayoYucatec MayaYucatec Mayayua粵語Cantonese (Traditional)yue中文 (简体)Chinese Simplifiedzh-Hans中文 (繁體)Chinese Traditionalzh-HantisiZuluisiZuluzu

การติดตั้ง

เริ่มต้นใช้งาน

เพิ่มไฟล์เวิร์กโฟลว์ เลือกผู้ให้บริการแปลของคุณ — Azure, AWS หรือ Google — และการดําเนินการจะสแกนที่เก็บเพื่อหาไฟล์ทรัพยากรภาษาต้นฉบับและส่งพี่น้องที่แปลแล้ว

ในหน้านี้

    Step 1: เลือกผู้ให้บริการแปลภาษา

    การดําเนินการทํางานร่วมกับ นักแปล Azure AI, แปลภาษาของ AWS และ การแปลของ Google Cloud ที่อยู่เบื้องหลังพื้นผิว API แบบรวมเดียว เลือกผู้ให้บริการรายเดียวต่อการเรียกใช้ด้วยอินพุต provider — เวิร์กโฟลว์จะทํางานเหมือนกันโดยไม่คํานึงถึงผู้ให้บริการ มีเพียงข้อมูลประจําตัวเท่านั้นที่ต่างกัน ดู ผู้ให้บริการแปลภาษา สําหรับการเปรียบเทียบแบบเต็ม

    Step 2: เพิ่มข้อมูลประจําตัวและเวิร์กโฟลว์

    จัดเก็บข้อมูลประจําตัวของผู้ให้บริการของคุณเป็นข้อมูลลับของที่เก็บ GitHub จากนั้นสร้าง .github/workflows/translate.yml เลือกผู้ให้บริการของคุณด้านล่างสําหรับการตั้งค่าเฉพาะ — เวิร์กโฟลว์ที่เหลือจะเหมือนกัน

    นักแปล Azure AI

    Azure เป็นผู้ให้บริการเริ่มต้น ดังนั้นอาจละเว้น provider เตรียมใช้งานทรัพยากร Azure AI Translator ในพอร์ทัล Azure จากนั้นจัดเก็บข้อมูลประจําตัว:

    จัดเก็บข้อมูลเหล่านี้เป็นข้อมูลลับของที่เก็บ

    • TRANSLATOR_KEY — คีย์การสมัครใช้งานสําหรับทรัพยากร
    • TRANSLATOR_ENDPOINT — URL ปลายทางระดับภูมิภาค
    • TRANSLATOR_REGION — ภูมิภาค Azure ของทรัพยากร

    เพิ่มเวิร์กโฟลว์

    .github/workflows/translate.yml
    name: translate
    on:
    push:
    branches: [main]
    paths:
    - "src/**/*.en.resx"
    - "src/**/*.en.json"
    permissions:
    contents: write
    pull-requests: write
    jobs:
    translate:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v5
    - id: translate
    uses: IEvangelist/resource-translator@v3
    with:
    provider: |
    azure:
    subscriptionKey: ${{ secrets.TRANSLATOR_KEY }}
    endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }}
    region: ${{ secrets.TRANSLATOR_REGION }}
    sourceLocale: en
    toLocales: '["fr","de","es"]'
    - if: steps.translate.outputs.has-new-translations == 'true'
    uses: peter-evans/create-pull-request@v7
    with:
    title: ${{ steps.translate.outputs.summary-title }}
    body: ${{ steps.translate.outputs.summary-details }}
    branch: machine-translation

    Step 3: คอมมิตไฟล์ทรัพยากรต้นทาง

    ไฟล์ทรัพยากรใช้แบบแผน Name.<sourceLocale>.<ext> ตัวอย่างเช่น Greetings.en.resx จะกลายเป็น Greetings.fr.resx, Greetings.de.resx และอื่นๆ หลังจากวิ่ง

    Step 4: Let smart change detection protect your bill

    changeDetection defaults to smart and stores a compact .github/resource-translator-state.json manifest in the repo. Commit that file so future runs can reuse stable translations, preserve manual target edits, and send only new, missing, changed, or settings-invalidated keys to the provider. If localized files already exist, run once with snapshotOnly: true to create the manifest without provider calls.

    Step 5: ตรวจสอบเอาต์พุต

    เมื่อเวิร์กโฟลว์เสร็จสิ้นการดําเนินการจะแสดงเอาต์พุตสามรายการที่คุณสามารถต่อเข้ากับคําอธิบาย PR ได้: summary-title, summary-details และ has-new-translations นอกจากนี้ยังเขียนสรุป Markdown ลงในหน้างานผ่าน core.summary

    ขั้นตอนถัดไป