Dokumentation

Gör ett projekt flerspråkigt

Kör internationaliseringsguiden för att göra ett projekt flerspråkigt. Coroid läser repot, föreslår språk och inställningar och förbereder en pull request.

Internationaliseringsguiden gör ett projekt flerspråkigt. Den läser ditt repo, utgår från vad den hittar i varje steg och skapar till sist en uppgift som öppnar en pull request. Du behöver aldrig ange en språkkod eller redigera JSON; ändra bara det du vill, så ändras inget i ditt repo förrän du mergar.

Ägare och administratörer kör guiden. Starta den från Lokalisering: välj Internationalisera ett projekt, eller Starta guiden på en projektrad. För ett projekt som redan är flerspråkigt öppnar Inställningar → Byt språk samma guide för att föreslå ändringar.

Stegen

1. Skanna

Coroid läser standardgrenen utan att köra någon av dess kod. Den söker efter översättningskataloger och deras språk, vilka ramverk som används och text som fortfarande är skriven direkt i koden, räknad per fil.

  • Översättningskataloger hittades. Guiden behåller dem: Coroid lägger till sina kontroller och översätter det som saknas. Det kallas att ta över.
  • Inga översättningskataloger ännu. Coroid flyttar texten i koden till översättningskataloger och ersätter den med uppslagningar. Det kallas att införa.
  • Redan konfigurerat. Projektet har redan en Coroid-konfiguration, och guiden föreslår ändringar i den.

2. Källspråk

Språket som produkten är skriven på; alla andra språk översätts från det. Guiden identifierar det utifrån dina översättningskataloger eller gissar utifrån texten i koden. Källspråket kan vara vilket språk som helst: en svensk produkt som översätts till engelska och tyska fungerar på samma sätt.

3. Språk

Välj språk ett i taget eller lägg till en hel marknad på en gång: Mest talade, Europa, Norden, Östasien, Amerika eller Höger till vänster. För varje språk visas dess eget namn, om det skrivs från höger till vänster och hur många pluralformer det behöver.

Regionala varianter kan härledas i stället för att översättas. Brittisk engelska härleds från amerikansk engelska med brittisk stavning, och schweizertyska från tyska med schweizisk stavning. De kostar därför inget och hålls synkroniserade med sitt grundspråk.

Lokalisering
Guide för internationalisering

Varje steg utgår från det som redan finns i repot. Ändra bara det du vill; inget ändras förrän pull request har mergats.

Steg 3 av 7
Språk att lägga till

Välj språk ett i taget eller lägg till en hel marknad. Regionala varianter, som brittisk engelska, kan skapas med hjälp av regler i stället för att översättas.

5 språk
  • Deutschtyska · de · 2 pluralformer
  • Françaisfranska · fr · 3 pluralformer
  • 日本語japanska · ja · 1 pluralform
  • العربيةarabiska · ar · höger till vänster · 6 pluralformer
  • British Englishbrittisk engelska · en-GB · 2 pluralformerHärledd med brittisk stavning
Lägg till en marknad
Mest taladeEuropaNordenÖstasienAmerikaHöger till vänster
TillbakaFortsätt

Guiden för internationalisering, på steget Språk: varje språk visas med sin skrivriktning och sina pluralformer, brittisk engelska som härleds enligt regler och marknader som kan läggas till på en gång. Exempeldata.

4. Strängar

När du tar över väljer du vilka översättningskataloger Coroid ska behålla; deras nycklar och struktur förblir som de är. När du inför väljer du vilka filer vars text Coroid ska flytta till översättningskataloger; filer du väljer bort förblir som de är.

5. Stil och termer

Allt är valfritt och följs på alla språk:

  • Formellt eller informellt. För språk där man tilltalar läsaren formellt eller informellt, till exempel tyskans Sie och du. Som standard följer varje språk källtextens ton.
  • Termer som lämnas oförändrade. Produkt-, varumärkes- och funktionsnamn som förblir desamma på alla språk.
  • Om produkten. Några meningar om produkten och dess läsare, som hjälper varje översättning att välja rätt ord.

6. Kvalitet och automatisering

På som standard, men båda kan ändras senare:

  • Kontrollera översättningar vid varje ändring. Översättningskontrollen i Kvalitetskontroll skickar tillbaka en ändring om den lämnar strängar ofullständiga eller trasiga.
  • Översätt strängar som mergas utanför Coroid. När någon mergar ny text utan Coroid skapas en uppgift för att översätta den.
  • Tillämpa korrigeringar varje natt. Godkända förslag från bidragsgivare kommer som en pull request varje natt.
  • Låt inbjudna personer föreslå formuleringar. Modersmålstalare som du bjuder in kan rätta översättningar på din webbplats. Se Underhåll översättningar med förslag.

Konfigurationsfilen innehåller den sista inställningen. Coroid aktiverar de andra nästa gång en ägare eller administratör öppnar Lokalisering efter att pull request har mergats, och bara en gång: om du senare stänger av en inställning förblir den avstängd.

7. Granska

En sammanfattning av projektet, vad uppgiften ska göra, källspråket, språken och vilka av dem som härleds, översättningsvolymen, termerna som lämnas oförändrade och vad som aktiveras efter mergning. Översättning debiteras som modellförbrukning, liksom annat agentarbete, och har ett tak per uppgift.

Välj Internationalisera. Coroid skapar en uppgift med en specifikation och acceptanskriterier och startar den direkt.

Det här gör uppgiften

  • Att ta över skriver konfigurationsfilen exakt som guiden har sammanställt den och översätter sedan alla strängar som saknas.
  • Att införa kopplar in ramverket, flyttar texten från de valda filerna till översättningskataloger, lägger till språkrouting, reservspråk och stöd för höger till vänster och översätter sedan.
  • Att ändra skriver den nya konfigurationen och reparerar översättningarna som ändringen påverkar.

Uppgiften avslutas med en pull request. När den mergas till standardgrenen visas alla språk i Lokalisering.

Format

Coroid läser översättningskataloger i följande format:

FormatAnvänds för
ICU JSONMeddelandefiler med ICU-pluralformer och select
i18next JSONi18next- och react-i18next-kataloger, inklusive pluraländelser
Vue i18n JSONvue-i18n-meddelanden, inklusive länkade meddelanden och pluralformer med pipe
Rails YAMLconfig/locales/*.yml, med %{name} interpolering och pluralnycklar
gettext PO.po -filer och en .pot -mall, med Plural-Forms per språk
Markdown och MDXDokumentationssidor i en språkmapp (docs/en/…): text, bildbeskrivningar och valda frontmatter-fält; kod och markup behålls som de är
AnpassatAlla andra format via ett litet adapterkommando i ditt repo

Konfigurationsfilen

Guiden skriver .coroid/i18n.json. Den beskriver ditt repo, så den finns i ditt repo och ändras via pull requests:

{
  "version": 1,
  "cli": { "version": "1.9.0", "sha256": "…" },
  "sourceLocale": "en",
  "targetLocales": ["de", "fr", "ja", "ar"],
  "derivedLocales": [
    { "locale": "en-GB", "from": "en", "rules": "en-gb-spelling" }
  ],
  "catalogs": [
    {
      "id": "ui",
      "format": "i18next-json",
      "source": "messages/{locale}.json"
    }
  ],
  "protectedTerms": ["Storefront"],
  "localeInstructions": {
    "de": "Address the reader informally (du)."
  }
}
  • cli låser den exakta motorversionen och dess kontrollsumma. Coroid hämtar och verifierar den versionen före varje körning, så en uppdatering ändrar aldrig resultatet oväntat.
  • derivedLocales listar de regionala varianter som skapas av regler.
  • protectedTerms och localeInstructions innehåller det du valde under Stil och termer.

Filen kan också innehålla en ordlista, produktkontext, översättningsvägar per språk och kopplingen för bidragsgivares förslag.

Inställningar → Konfigurationsfil i arbetsbänken visar den exakta filen på standardgrenen. Om du vill ändra den där redigerar du förslaget och väljer Föreslå ändring: Coroid öppnar en uppgift som gäller exakt den filen och åtgärdar eventuella översättningar som påverkas av ändringen. För språk och stil är guiden det enklare alternativet.