Începând cu internaționalizarea

Aveți un proiect și doriți să îl traduceți în mai multe limbi? Acest ghid vă va ajuta să faceți acest lucru. Sunt prezentate mai multe situații tipice, dar majoritatea exemplelor sunt generice și pot fi aplicate și la alte scenarii.

Înainte de a traduce orice software, trebuie să vă dați seama că limbile din întreaga lume sunt foarte diferite și nu trebuie să faceți nicio presupunere bazată pe experiența dumneavoastră. Pentru majoritatea limbilor, va arăta ciudat dacă încercați să concatenați o propoziție din segmente traduse. De asemenea, ar trebui să gestionați în mod corespunzător formele de plural, deoarece multe limbi au reguli complexe în acest sens, iar cadrul de internaționalizare pe care ajungeți să îl utilizați ar trebui să suporte acest lucru.

Nu în ultimul rând, uneori ar putea fi necesar să se adauge un context la șirul tradus. Imaginați-vă că un traducător ar primi șirul Sun pentru a traduce. Fără context, cei mai mulți oameni ar traduce acest cuvânt ca fiind cea mai apropiată stea a noastră, dar ar putea fi folosit de fapt ca o abreviere pentru duminică.

Alegerea cadrului de internaționalizare

Alegeți ceea ce este standard pe platforma dvs., încercați să evitați reinventarea roții prin crearea propriului cadru pentru a gestiona localizările. Weblate acceptă majoritatea cadrelor utilizate pe scară largă, consultați Formate de fișiere acceptate pentru mai multe informații (în special Capabilități ale tipurilor de traducere).

Recomandarea noastră personală pentru unele platforme este prezentată în tabelul următor. Aceasta se bazează pe experiența noastră, dar nu poate acoperi toate cazurile de utilizare, așa că luați întotdeauna în considerare mediul dumneavoastră atunci când faceți alegerea.

Platformă

Format recomandat

Android

Resurse de șiruri Android

iOS

Șiruri Apple iOS

Qt

Qt Linguist .ts

Python

GNU gettext

PHP

GNU gettext 1

C/C++

GNU gettext

C#

Fișiere de resurse .XML

Perl

GNU gettext

Ruby

Fișiere Ruby YAML

Extensii web

WebExtensiune JSON

Java

XLIFF 2

JavaScript

Fișiere JSON i18next 3

1

Suportul nativ pentru Gettext în PHP este eronat și adesea lipsește în versiunile Windows, se recomandă utilizarea bibliotecii terță parte motranslator în schimb.

2

De asemenea, puteți utiliza Proprietăți Java dacă nu este nevoie de plural.

3

De asemenea, puteți utiliza simplu Fișiere JSON dacă nu este nevoie de plural.

Fluxul de lucru mai detaliat pentru anumite formate este descris în capitolele următoare:

Vezi și

integrare, traducere-continuă