Перевести

Перевод файлов iOS .strings

Файл .strings — это список строк "key" = "value";, где значение содержит спецификаторы формата, например %@. KAERIS переводит значения и проверяет, что все спецификаторы сохранены.

Эту страницу перевёл KAERIS и проверил каждую строку обратным переводом. Носитель языка ещё не проверял. Оригинал на английском

Как устроен файл .strings

Одна строка "key" = "value";, заметки в /* … */. Значения экранируют кавычки и переносы строк обратным слешем. Множественные числа здесь не используются: Xcode применяет .stringsdict или String Catalog, а KAERIS читает .strings и .xcstrings.

Исходный файлLocalizable.strings
/* Greeting on the home screen */
"welcome" = "Welcome back, %@!";
"items_count" = "%1$d of %2$d items synced";
"quote" = "Press \"Done\" to continue.";

Особенности перевода .strings

Реальный запуск: переведено на немецкий и проверено

Реальный запуск, 27 октября 2026, без ручных правок: kaeris translate Localizable.strings --langs de с kaeris 0.2.35, 4 секунды, модель openai/gpt-4.1-mini (резервная модель сервиса). Ниже — немецкий файл и результаты kaeris check.

Результат на немецкомde/Localizable.strings
/* de */
"welcome" = "Willkommen zurück, %@!";
"items_count" = "%1$d von %2$d Elementen synchronisiert";
"quote" = "Drücken Sie \"Fertig\", um fortzufahren.";
kaeris checkexit code 0
$ kaeris check --source Localizable.strings --langs de
✓ de: complete & placeholder-safe
✓ all locales complete & placeholder-safe

Что KAERIS делает с этим

Выполните в три шага

  1. Установите CLI

    Выполните pip install kaeris.

  2. Перевод файла

    Запустите kaeris translate en.lproj/Localizable.strings --langs de,ja.

  3. Проверка результата

    Загрузите исходник и перевод на бесплатной странице проверки.

pip install kaeris
kaeris translate en.lproj/Localizable.strings --langs de,ja --verify

Вопросы

Сохраняет ли он %@ и %1$d?

Да. Спецификаторы сравниваются с исходным текстом после перевода, и потерянный или измененный спесификатор помечается. В реальном запуске выше %@, %1$d и %2$d все вернулись.

А как насчет множественного числа?

.strings не имеет синтаксиса для множественного числа. Xcode сохраняет множественное число в .stringsdict или в String Catalog; KAERIS читает каталог и разворачивает множественное число для каждого языка, см. страницу .xcstrings.

Это бесплатно?

Да, без учетной записи: 10 000 символов на файл и до 8 языков за запуск. Бесплатный API-ключ увеличивает лимит файлов до 50 000 символов. Пожизненная лицензия стоит $79 один раз, при использовании вашего собственного ключа OpenRouter; ежемесячные планы начинаются от $19. Цены

Могу ли я запускать его из терминала или в CI?

Да. pip install kaeris, затем kaeris translate en.lproj/Localizable.strings --langs de,ja. См. также iOS. GitHub Action выполняет тот же перевод в pull request. Документация CLI · GitHub Action

Продолжайте

Справочник по CLI · Справочник по проверке · Перевести в браузере · Бесплатная проверка · Конвертировать форматы · Псевдолокализация

Другие форматы: JSON · YAML · .po · ARB · XLIFF · .xcstrings · .properties · .resx · CSV · Markdown · Fluent · Android XML