Skip to main content
AI agent network visualization

Перекладайте файли .strings, не порушуючи роботу застосунку

Ключі без змін. Специфікатори формату збережено. Правила множини правильні. Ваш файл Localizable.strings перекладено за секунди, а не дні.

Переклад Apple .strings виснажливий і часто спричиняє помилки

Ви експортуєте файл Localizable.strings, передаєте його перекладачу або вставляєте в універсальний інструмент, а натомість отримуєте пошкоджені специфікатори формату, несправні керівні послідовності та спотворені правила множини. Потім Ви годинами з’ясовуєте, чому застосунок аварійно завершує роботу під час запуску японською мовою.

Універсальні інструменти перекладають, переставляють або видаляють такі специфікатори формату, як %@, %d і %1$@

Керівні послідовності (\n, \", \t) пошкоджуються або екрануються двічі, через що не вдається проаналізувати рядки

Для правил множини Stringsdict потрібні залежні від мови категорії CLDR, які більшість інструментів повністю ігнорує

Коментарі для перекладачів і контекстні підказки видаляються, що призводить до неправильних перекладів

Оригінал (англійська)
Base.lproj/Localizable.strings
/* Localizable.strings (English) */

"welcome_title" = "Welcome to MyApp";
"login_button" = "Sign In";
"greeting" = "Hello, %@!";
"items_count" = "%d items in your cart";
"transfer" = "Send %1$@ to %2$@";
Переклад (японська)
ja.lproj/Localizable.strings
/* Localizable.strings (Japanese) */

"welcome_title" = "MyAppへようこそ";
"login_button" = "サインイン";
"greeting" = "%@さん、こんにちは!";
"items_count" = "カートに%d個のアイテム";
"transfer" = "%2$@に%1$@を送信";

Що зберігає i18n Agent

Специфікатори формату

Позиційні (%1$@) і залежні від типу (%d, %f, %@) специфікатори розпізнаються та залишаються без змін

Керівні послідовності

Символи нового рядка (\n), табуляції (\t), лапки (\") та керівні послідовності Unicode зберігаються належним чином

Форми множини Stringsdict

Категорії множини CLDR (zero, one, two, few, many, other) налаштовуються правильно для кожної цільової мови

Коментарі та контекст

Коментарі для перекладачів і примітки розробників зберігаються, щоб не втрачати контекст перекладу

Працює на всіх платформах Apple

SwiftUI
UIKit / AppKit
Каталоги рядків Xcode
Застосунки macOS
watchOS / tvOS
Пакети Swift

Інструменти з відкритим кодом для локалізації iOS

i18n Agent для Xcode

Застосунок у смузі меню macOS, який дає змогу локалізувати проєкти Xcode одним натисканням. Він автоматично виявляє Ваш активний проєкт, перекладає файли .strings, .xcstrings і .stringsdict та записує їх у відповідні каталоги .lproj. Надсилайте наявні переклади як пам’ять перекладів, щоб забезпечити узгоджені результати в усьому проєкті.

Автоматично виявляє Ваш активний проєкт Xcode за допомогою AppleScript
Отримання: перекладає файли й записує їх у відповідні каталоги .lproj
Надсилання: завантажує наявні переклади як пам’ять перекладів
Працює у смузі меню та підтримує .strings, .xcstrings і .stringsdict
Переглянути на GitHub

LocaleChain

У iOS є відома проблема: якщо регіональна локаль користувача (наприклад, pt-BR) відсутня, система одразу переходить на англійську замість того, щоб спробувати споріднену локаль (наприклад, pt-PT). LocaleChain — це пакет Swift, який усуває цю проблему за допомогою налаштовуваних ланцюжків резервних локалей. Один рядок налаштування, жодних змін у Вашому наявному коді.

Налаштування в один рядок: LocaleChain.configure()
Непомітно працює з NSLocalizedString, SwiftUI Text і .stringsdict
Вбудовані ланцюжки резервних локалей для португальської, іспанської, французької, німецької та інших мов
Установлюється через Swift Package Manager, ліцензія MIT
Переглянути на GitHub

Як це працює

How i18n Agent works: Install, Translate, Done
1
2
3
terminal
$translate_filesrc/messages/en.json
 --target["de", "ja", "es"]
Done.3 languages, 142 keys translated.

Без ручного копіювання та вставлення. Без вилучення рядків. Лише перекладені файли.

Спробуйте i18n Agent зараз

Перетягніть сюди файл для перекладу

JSON, YAML, PO, XML, CSV, Markdown, Properties

або натисніть, щоб вибрати

Цільові мови

Реєстрація не потрібнаМиттєвий розрахунок

Часті запитання

Ви розробник?

Встановіть інструмент CLI та перекладіть свій перший файл за 2 хвилини.

Встановити інструмент CLI

Ви представляєте корпоративну команду?

Досі зв’язані контрактом із постачальником TMS? Обговорімо перехід.