Перевести

Командная строка

Пакет Python без зависимостей. Без ключа работает как бесплатное демо: 10 000 символов на файл, до 8 языков за запуск.

Запуск
pip install kaeris
kaeris translate en.json --langs de,ja
Вывод (сокращён)
→ no key: free demo limits 10,000 chars per file, 8 languages per run, get a key: kaeris.dev/developer
→ Translating en.json → de, ja
✓ Wrote 2 file(s) to /home/you/app
/home/you/app/de.json
/home/you/app/ja.json
✓ Translation QA: no placeholder loss, no overflow risks

Следующие команды

КомандаЧто делает
kaeris initЗаписывает kaeris.json с вашим исходным файлом, языками и выходной папкой, чтобы kaeris translate запускался без флагов. --preset заполняет его для i18next, react-i18next, next-intl, react-intl, vue-i18n или flutter-arb.
kaeris translate --only-newПереводит только новые и измененные ключи. kaeris.lock рядом с исходным файлом запоминает, что было сделано. JSON и ARB.
kaeris checkНаходит сломанные переводы на вашей машине, без ключа. Без Python: npx kaeris check (Node 18+). Описание проверки.
kaeris languagesВыводит 46 кодов языков.
kaeris quotaСколько от месячного объема осталось на вашем ключе.

Основные флаги

ФлагЗначение
--langs de,jaЦелевые языки, разделенные запятыми. Короткая форма -l.
--out localesКуда писать файлы. По умолчанию — рядом с исходником.
--verifyПереводит каждый результат обратно на английский и записывает verify.json, чтобы вы могли проверить смысл.
--keep 'KAERIS,GitHub'Слова, которые остаются как есть на всех языках, например названия брендов.
--context 'a bank app'Одна строка о вашем приложении. Помогает со словами, у которых два значения.
--tone formalneutral, formal или casual.
--model openai/gpt-4.1Lifetime: модель OpenRouter для перевода. Своя для каждого языка — models в kaeris.json. На других тарифах запрос отклоняется с объяснением.
--keyВаш ключ API. Или задайте KAERIS_API_KEY — так безопаснее: ключ, набранный после --key, остаётся в истории оболочки и виден в списке процессов.
--source-lang enЯзык исходного файла. По умолчанию en; также распознаёт структуру locales/<lang>/<namespace>.json.
--back-lang enЯзык, на который --verify переводит обратно. По умолчанию en.
--lock PATHГде лежит kaeris.lock. По умолчанию — рядом с исходником.
--assume-currentПервый запуск --only-new на уже переведённом проекте: доверять существующим переводам, а не переводить всё заново.
--tm PATHФайл памяти переводов, по умолчанию kaeris-tm.json рядом с исходником. Повторно использует переводы по тексту, так что переименованный ключ или свежий клон не оплачиваются дважды. --no-tm отключает её.
--receipt run.jsonЗаписывает отчёт о запуске: модель, тариф, выданные языки, списанные и повторно использованные символы. Только счётчики, без строк.

Файлы: .json .yml .yaml .strings .xcstrings .po .arb .xml .csv .xliff .xlf .properties .resx .ftl .md .mdx. Неизвестный код языка отклоняется до того, как что-либо отправлено: kaeris languages выводит допустимые. Коды выхода translate: 0 — готово, 1 — ошибка, 3 — часть языков вернулась непереведённой. Полный список: kaeris translate --help.

Руководства по форматам: JSON · YAML · PO · XLIFF · ARB · .strings · .xcstrings · Fluent · .properties · .resx · CSV · Markdown · Android XML

CI recipes (in English): GitHub Actions · GitLab CI · pre-commit · Make and npm scripts

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