Bestandsindelingen voor vertalen¶
Weblate ondersteunt ene breed bereik aan vertaalindelingen. Elke indeling verschilt licht van andere en verschaft een andere set mogelijkheden.
Hint
Bij het kiezen van een bestandsindeling voor uw toepassing, is het beter te blijven bij een goed ontwikkelde indeling voor de toolkit/het platform dat u gebruikt. Op die manier kunnen vertalers aanvullend de gereedschappen gebruiken waaraan zij gewend zijn en zullen waarschijnlijk sneller bijdragen aan uw project.
Zie ook
Automatische detectie¶
Weblate probeert de bestandsindeling te detecteren gedurende Vertaalprojecten en onderdelen toevoegen. Het detecteren zou verkeerd kunnen zijn voor dezelfde serialisatie-indeling (JSON, YAML, properties) of bestandscodering, verifieer dus dat Bestandsformaat correct is voordat u het onderdeel maakt.
Mogelijkheden typen vertaling¶
Indeling |
Taalsoort [1] |
Meervoud [2] |
Beschrijvingen [3] |
Context [4] |
Locatie [5] |
Vlaggen [8] |
Aanvullende statussen [6] |
---|---|---|---|---|---|---|---|
tweetalig |
ja |
ja |
ja |
ja |
ja [9] |
bewerken nodig |
|
eentalig |
ja |
ja |
ja |
ja |
ja [9] |
bewerken nodig |
|
beide |
ja |
ja |
ja |
ja |
ja |
bewerken nodig, goedgekeurd |
|
beide |
nee |
ja |
nee |
nee |
nee |
||
eentalig |
nee |
ja |
nee |
nee |
nee |
||
eentalig |
ja |
ja |
nee |
nee |
nee |
||
eentalig |
nee |
ja |
nee |
ja |
nee |
||
beide |
ja |
ja |
nee |
ja |
ja |
bewerken nodig |
|
eentalig |
ja |
ja [7] |
nee |
nee |
ja |
||
beide |
nee |
ja |
nee |
nee |
nee |
||
eentalig |
nee [10] |
ja |
nee |
nee |
nee |
||
eentalig |
nee |
nee |
nee |
nee |
nee |
||
eentalig |
ja |
nee |
nee |
nee |
nee |
||
eentalig |
ja |
ja |
nee |
nee |
nee |
||
eentalig |
ja |
ja |
nee |
ja |
nee |
||
eentalig |
ja |
ja |
nee |
nee |
nee |
||
eentalig |
ja |
ja |
nee |
nee |
nee |
||
eentalig |
nee |
ja |
nee |
nee |
ja |
||
eentalig |
nee |
nee |
nee |
nee |
ja |
||
beide |
nee |
ja |
ja |
ja |
nee |
bewerken nodig |
|
eentalig |
nee |
nee |
nee |
nee |
nee |
||
eentalig |
ja |
nee |
nee |
nee |
nee |
||
eentalig |
nee |
nee |
nee |
nee |
nee |
||
eentalig |
nee |
nee |
nee |
nee |
ja |
||
eentalig |
nee |
ja |
nee |
nee |
nee |
||
eentalig |
nee |
ja |
ja |
ja |
nee |
bewerken nodig |
|
eentalig |
nee |
nee |
nee |
nee |
nee |
||
eentalig |
nee |
nee |
nee |
ja |
nee |
||
eentalig |
nee |
nee |
nee |
nee |
nee |
||
eentalig |
nee |
nee |
nee |
nee |
nee |
||
eentalig |
nee |
nee |
nee |
nee |
nee |
||
eentalig |
nee |
nee |
nee |
nee |
nee |
||
eentalig |
nee |
nee |
nee |
nee |
nee |
||
eentalig |
nee |
nee |
nee |
nee |
nee |
||
tweetalig |
nee |
ja |
nee |
nee |
ja |
||
eentalig |
nee |
nee |
nee |
nee |
nee |
||
eentalig |
ja |
nee |
nee |
nee |
nee |
||
eentalig |
nee [11] |
ja |
nee |
nee |
nee |
Tweetalige en eentalige indelingen¶
Beide indelingen, eentalig en tweetalig, worden ondersteund. Tweetalige indelingen slaan twee talen op in een enkel bestand—bron en vertaling (typische voorbeelden zijn GNU gettext PO (Portable Object), XLIFF of Apple iOS tekenreeksen). Aan de andere kant identificeren eentalige indelingen de tekenreeks op zijn ID, en elk taalbestand bevat alleen de verwijzingen daarvan voor een opgegeven taal (typisch Android bronnen tekenreeksen). Sommige bestandsindelingen worden in beide varianten gebruikt, bekijk de gedetailleerde beschrijving hieronder.
Voor correct gebruiken van eentalige bestanden vereist Weblate toegang tot een bestand dat de volledige lijst bevat van te vertalen tekenreeksen, met hun bron—dat bestand wordt Enkeltalig basistaalbestand genoemd binnen Weblate, hoewel de naam kan variëren in uw paradigma.
Aanvullend kan deze werkwijze worden uitgebreid door Tussenliggend taalbestand te gebruiken om tekenreeksen op te nemen die worden verschaft door ontwikkelaars, maar niet zullen worden gebruikt in de uiteindelijke tekenreeksen.
Statussen tekenreeks¶
Veel bestandsindelingen onderscheiden alleen “Niet vertaalde” en “Vertaalde” tekenreeksen. Met enkele indelingen is het mogelijk om fijner afgestemde informatie voor de status op te slaan, zoals “Bewerken nodig” of “Goedgekeurd”.
Locatie van bronomschrijving¶
Beschrijvingen van brontekenreeksen kunnen worden gebruikt om aanvullende informatie door te geven over de te vertalen tekenreeks.
Verscheidene indelingen hebben eigen ondersteuning voor het verschaffen van aanvullende informatie aan vertalers (bijvoorbeeld XLIFF, GNU gettext PO (Portable Object), WebExtension JSON, CSV-bestanden, Excel Open XML, Qt Linguist .ts, go-i18n JSON-bestanden, gotext JSON-bestanden, ARB-bestand, .NET resource-bestanden (RESX, RESW)). Vele andere indelingen nemen de dichtstbijzijnde opmerking uit als beschrijving voor de brontekenreeks.
Uitleg¶
De Uitleg voor tekenreeksen kan worden opgeslagen en geparset uit een paar bestandsindelingen.
Momenteel alleen ondersteund in TermBase-eXchange indeling.
Locatie van brontekenreeks¶
Locatie van een tekenreeks in de broncode zou gevorderde vertalers kunnen helpen vast te stellen hoe de tekenreeks wordt gebruikt.
Deze informatie is gewoonlijk beschikbaar in tweetalige indelingen waar tekenreeksen worden uitgenomen uit de broncode met programma’s. Bijvoorbeeld GNU gettext PO (Portable Object) en Qt Linguist .ts.
Vlaggen voor vertaling¶
Vlaggen voor vertalingen maken het mogelijk het gedrag van Weblate aan te passen. Sommige indelingen ondersteunen het definiëren ervan in het vertaalbestand (u kunt ze altijd definiëren in de interface van Weblate, bekijk Gedrag aanpassen met vlaggen).
Deze mogelijkheid is gemodelleerd naar de vlaggen in GNU gettext PO (Portable Object).
Aanvullend, voor alle op XML gebaseerde indelingen, worden de vlaggen uitgenomen ui het niet standaard attribuut weblate-flags
. Aanvullend wordt max-length:N
ondersteund door het attribuut maxwidth
, zoals dat is gedefinieerd in de standaard voor XLIFF, bekijk Vlaggen voor vertalingen specificeren.
Context¶
Context wordt gebruikt om verschil te kunnen maken tussen identieke tekenreeksen in een tweetalige indeling, gebruikt in verschillende bereiken (bijvoorbeeld Zon kan worden gebruikt als een afgekorte naam voor de dag “Zondag” of als de naam van onze dichtstbijzijnde ster).
Voor eentalige indelingen kan de identificatie van de tekenreeks (vaak sleutel genoemd) hetzelfde doel dienen en is aanvullende context niet noodzakelijk.
Tekenreeksen met meervouden¶
Meervouden zijn noodzakelijk om tekenreeksen correct te vertalen in een variabel aantal. De regels zijn afhankelijk van een doeltaal en veel indelingen volgen de specificatie CLDR daarvoor.
Hint
Voor het maken van tekenreeksen met meervouden is ook de juiste ondersteuning van het framewerk van de toepassing nodig. Kies de eigen indeling voor uw platform, zoals GNU gettext PO (Portable Object), Android bronnen tekenreeksen of Stringsdict indeling.
Alleen-lezen-tekenreeksen¶
Tekenreeksen Alleen-lezen uit vertaalbestanden zullen worden opgenomen, maar zij kunnen niet worden bewerkt in Weblate. Deze mogelijkheid wordt door een klein aantal indelingen zelf ondersteund (XLIFF en Android bronnen tekenreeksen), maar kan door andere worden geëmuleerd door een vlag read-only
toe te voegen, bekijk Gedrag aanpassen met vlaggen.
Andere indelingen ondersteunen¶
Most formats supported by translate-toolkit which support serializing can be easily supported, but they did not (yet) received any testing. In most cases, an additional thin layer is needed in Weblate to hide differences in behavior of different storages.
Voor het toevoegen van ondersteuning voor een nieuwe indeling is de voorkeursbenadering om eerst ondersteuning ervoor te implementeren in de translate-toolkit.
Zie ook