Початкові кроки у інтернаціоналізації¶
Маєте проєкт і хочете перекласти його декількома мовами? Цей розділ підручника допоможе вам у цьому. Описано декілька типових випадків. Втім, більшість прикладів є загальними — їх може бути застосовано у інших сценаріях.
Перш ніж перекладати будь-яке програмне забезпечення, вам слід зрозуміти, що мови світу є дуже різними — ви не можете робити ніяких припущень на основі вашого попереднього життєвого досвіду. Для більшості мов поділ речення на шматки, які потім з’єднуються, дуже ускладнює переклад. Вам слід належним чином обробляти форми множини, оскільки у багатьох мовах доволі складні правила щодо цього, отже оболонка перекладу, якою ви користуєтеся, має підтримувати ці форми множини.
Нарешті, хоча це також є важливим, вам, ймовірно, слід додати певний контекст до рядка, який буде перекладено. Уявіть, що перекладачеві показано рядок Sun, який слід перекласти. Без контексту більшість перекладачів виконають переклад, який відповідатиме назві найближчої до нас зірки, але це слово може насправді використовуватися як скорочення слова, яке позначає день тижня — неділю.
Вибір оболонки інтернаціоналізації¶
Оберіть те, що є стандартним на вашій платформі, намагайтеся уникнути винаходження велосипеда, створюючи власний фреймворк для обробки локалізацій. Weblate підтримує більшість широко використовуваних фреймворків, див. Формати файлів локалізації для отримання додаткової інформації (особливо Можливості типів перекладу).
Наші особисті рекомендації для деяких платформ викладено у наведеній нижче таблиці. Вміст таблиці засновано на наших власних враженнях, він не є абсолютно повним, тому зважайте на ваше середовище, коли робитимете вибір.
Платформа |
Рекомендований формат |
|---|---|
Android |
|
iOS |
|
Qt |
|
Python |
|
PHP |
|
C/C++ |
|
C# |
|
Perl |
|
Ruby |
|
Веброзширення |
|
Java |
|
JavaScript |
Докладнішу процедуру для деяких форматів описано у наступних розділах:
Дивись також
Навчання розробників правильній інтернаціоналізації¶
Інтернаціоналізація програмного забезпечення полягає не тільки в можливості перекладу рядків, але й у тому, щоб все програмне забезпечення виглядало для користувача з іншої країни як рідне. Сюди також входять такі речі, як форматування дати або чисел, відображення валюти або введення тексту в правильному напрямку. Більшість програмних фреймворків добре підтримують це, тому, будь ласка, дотримуйтесь їхніх інструкцій у всіх цих сферах.
Переклад рядків також може бути не таким простим завданням. Особливо це стосується коротких рядків, таких як підписи або написи на кнопках. Різні мови мають різні правила, і нерозумно очікувати, що один і той самий рядок завжди буде перекладатися однаково. У багатьох випадках може бути незрозуміло, як саме перекладати, і навіть важко розрізнити, чи є слово дієсловом чи іменником.
Усі розробники повинні розуміти це і однозначно ідентифікувати рядки, що використовуються в різних сферах. Наприклад, None, що означає «немає користувачів», може бути перекладено інакше, ніж None, що означає «немає елементів». Використовуйте різні ключі або контексти, щоб розрізнити ці терміни для перекладачів. Ви можете надати додатковий контекст у Weblate, наприклад Візуальний контекст для рядків або Пояснення.
Дивись також