Перекладіть повідомлення next-intl, потім перевірте кожен рядок
{count, plural, =0 {…} few {# елемент} one {# елемент} many {# елементів} other {# елементів}}
KAERIS переклав цю сторінку та перевірив кожен рядок зворотним перекладом. Носій мови ще не переглядав її. Оригінал англійською
Гілки ICU відповідають цільовій мові
У японській немає форми однини, тому one об’єднується з other. {name} та # залишаються.
{
"HomePage": {
"title": "Welcome, {name}!",
"cartItems": "{count, plural, =0 {Your cart is empty} one {# item} other {# items}}"
}
}
{
"HomePage": {
"title": "ようこそ、{name}さん!",
"cartItems": "{count, plural, =0 {カートは空です} other {#点の商品}}"
}
}
Що KAERIS робить з цим
Простори імен збережено
HomePage,Cartта кожен вкладений об’єкт залишаються як у вашому джерелі, готові для сегмента[locale]App Router.Змінні перевіряються без ШІ
Після перекладу проста перевірка підрахунку порівнює кожну змінну та тег з оригіналом. Рядок, який втратив один, позначається та відображається зверху.
Кожен рядок перекладено назад
Інша модель, GPT-4o mini, перекладає кожен рядок назад вашою мовою, а DeepSeek V3.2 на американських серверах (DeepInfra, DigitalOcean, Google) оцінює, чи змінився зміст. Ви читаєте, що тепер означає кожен рядок.
Запитання
Чи працює також select?
Так. plural, select та selectordinal зберігають свій синтаксис; перекладаються лише слова всередині гілок.
Один файл на локаль?
Так: messages/de.json, messages/ja.json тощо, структура, яку очікує next-intl.
Це безкоштовно?
Так, без облікового запису: 10 000 символів на файл і до 8 мов за один запуск. Безкоштовний API-ключ збільшує ліміт файлу до 50 000 символів. Довічна ліцензія коштує $79 один раз, за вашим власним ключем OpenRouter; місячні плани починаються від $19. Ціни
Як мені інтегрувати це в репозиторій?
kaeris init --preset next-intl записує налаштування для messages/, а kaeris translate запускається без прапорців. Документація