Sla naar de inhoud

Taal

Kies je taal

Schakel over naar dezelfde pagina in een andere taal.

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

YAML

Configuratie van de repository

Express defaults één keer in het repository-configuratiebestand en laat elke workflow ze erven. Actie-inputs winnen altijd wanneer beide worden gegeven.

Op deze pagina

    Overschrijf het pad met de configPath input als je een niet-standaard locatie nodig hebt.

    Schema

    .github/resource-translator.yml
    # .github/resource-translator.yml
    sourceLocale: en
    # Provider config can be nested. Keep secrets in workflow inputs; use repo
    # config for non-secret defaults like region, model, formality, or category.
    provider:
    azure:
    categoryId: my-custom-translator-category
    apiVersion: "3.0"
    allowFallback: true
    toLocales:
    - fr
    - de
    - es
    include:
    - "src/**/*.en.json"
    - "apps/**/*.en.resx"
    exclude:
    - "**/__tests__/**"
    glossary:
    Acme: Contoso
    Octocat: Octocat # keep brand names verbatim
    # Translator request shape — most users can ignore these.
    textType: plain # plain | html
    profanityAction: NoAction # NoAction | Marked | Deleted
    profanityMarker: Asterisk # Asterisk | Tag (only when profanityAction == Marked)
    # Resilience — Translator returns 429 under load. Defaults are usually
    # fine; tune only if your runs are large enough to hit them.
    maxRetries: 5
    retryBackoffMs: 30000 # cap on any single backoff sleep (ms)
    # Placeholder protection. ON by default — wraps tokens like {{name}},
    # {0}, %s, ${var} into sentinels before translation and restores them
    # on the way back. Set false only when source intentionally contains
    # placeholder-shaped literals.
    protectPlaceholders: true
    customPlaceholderPatterns:
    - "<<.+?>>" # any extra token syntax you use
    # Per-key opt-out. Keys matching any glob are dropped from the request
    # and pass through with the source value preserved.
    noTranslatePatterns:
    - "errors.code.*"
    - "brands.*"

    Veldreferentie

    provider
    Type
    "azure" | "aws" | "google" | provider block

    Either a provider string or a nested provider block (provider.azure, provider.aws, or provider.google). Prefer nested blocks for provider-specific settings; keep secrets in workflow inputs rather than committed config.

    sourceLocale
    Type
    string

    Valt terug op de sourceLocale input als hij niet ingesteld is. Ook doorgestuurd naar de Vertaler als from=<locale> zodat korte strings niet automatisch worden gedetecteerd.

    toLocales
    Type
    string[]

    Ofwel een array of een komma-gescheiden string.

    include / exclude
    Type
    string[]

    Globpatronen geëvalueerd aan de hand van absolute en werkruimte-relatieve paden.

    glossary
    Type
    map<string,string>

    Term-overruling na vertaling. Woordgrensbewust (verwerkt C++, .NET).

    categoryId
    Type
    string

    Azure Custom Translator categorie — je branche-/domeinknop (juridisch, medisch, marketingtoon, enz.). Verzonden als ?category=....

    textType
    Type
    "plain" | "html"

    Standaard staat plain. Gebruik html alleen als je resourcewaarden echte HTML-fragmenten bevatten.

    profanityAction
    Type
    "NoAction" | "Marked" | "Deleted"

    Hoe je grof taalgebruik in vertaalde output te gebruiken.

    profanityMarker
    Type
    "Asterisk" | "Tag"

    Alleen betekenisvol als profanityAction "Marked" is.

    allowFallback
    Type
    boolean

    Stel het in op false om de vertaling te falen wanneer je categoryId geen deployment voor een doellocatie heeft, in plaats van terug te vallen op het algemene model.

    apiVersion
    Type
    string

    Translator REST API-versie. Standaard staat 3.0.

    awsFormality
    Type
    "FORMAL" | "INFORMAL"

    AWS Translate formality setting for supported target languages.

    awsBrevity
    Type
    boolean

    Set to true to enable AWS Translate brevity mode for supported language pairs.

    awsTerminologyNames / awsParallelDataNames
    Type
    string[]

    AWS Translate custom terminology and parallel data resource names. Either an array or comma-separated string.

    googleModel
    Type
    string

    Google Cloud Translation model, e.g. nmt or base.

    googleApiEndpoint
    Type
    string

    Optional Google Cloud Translation API endpoint override.

    googleAutoRetry
    Type
    boolean

    Optional Google Cloud Translation automatic retry toggle. Leave unset to use the Google client default.

    maxRetries
    Type
    integer

    Maximale herpogingen bij transiente HTTP-antwoorden (408, 425, 429, 500, 502, 503, 504). Standaard staat 5. Het totale aantal HTTP-oproepen per verzoek is 1 + maxRetries.

    retryBackoffMs
    Type
    integer

    Limiet (ms) op elke enkele backoff-slaap. Standaard staat 30000. Azure's Retry-After header wordt precies gerespecteerd wanneer aanwezig; anders wordt een jitterde exponentiële backoff gebruikt, gecapt op deze waarde.

    protectPlaceholders
    Type
    boolean

    Standaard staat true. Wanneer aan, worden tokens zoals {{name}}, ${var}, {0}, {0:N2}, %s, %1$s en HTML-entiteiten vervangen door sentinel-tokens vóór de vertaling en daarna hersteld. Schakel alleen uit wanneer de bron opzettelijk tijdelijke literals bevat.

    customPlaceholderPatterns
    Type
    string[]

    Extra regex-patronen (zonder scheidingstekens) toegevoegd aan de standaard plaatshouderset, bijvoorbeeld <<.+?>> voor aangepaste tokensyntaxis. Ongeldige regexes worden genegeerd.

    noTranslatePatterns
    Type
    string[]

    Glob-patronen matchen parser-niveau sleutels (JSON dotted path, RESX name, PO msgid, XLIFF unit id, INI/restext key). Overeenkomende sleutels worden uit het verzoek verwijderd en doorgegeven, waarbij hun bronwaarde behouden blijft.

    changeDetection
    Type
    "smart" | "disabled"

    Defaults to smart. Uses the committed state manifest to translate only changed or missing parser keys. Set to disabled or false to preserve the legacy always-translate behavior.

    statePath
    Type
    string

    Path to the deterministic smart change-detection state manifest. Defaults to .github/resource-translator-state.json.

    Laadvolgorde

    1. De actie leest expliciete invoer uit de workflow.
    2. Het laadt de YAML-configuratie vanaf configPath.
    3. Voor elk gedeeld veld wint de invoer; anders wordt de YAML-waarde gebruikt.
    4. De samengevoegde waarden worden gevalideerd. Ongeldige enums (bijvoorbeeld profanityAction: Mask) zorgen ervoor dat de actie snel afloopt met een duidelijke melding.

    Toon en industrie, in gewone bewoordingen

    De Azure AI Translator v3 API heeft geen enkele toonknop. Twee instellingen combineren om je grotendeels dezelfde controle te geven:

    • Industrie / domein: gebruik categoryId om te wijzen op een Azure Custom Translator categorie die is getraind op je eigen corpus — juridisch, technisch, medisch, marketing, of iets anders. Dit is de sterkste hefboom voor toon, merkstem en woordenschat.
    • Oppervlaktetekst: Gebruik de Verklarende woordenlijst om merknamen en producttermen letterlijk te vergrendelen, en gebruik profanityAction om grof te schrappen bij het richten op lokalisatie voor jongere doelgroepen.