Перекладіть файли Angular $localize, а потім перевірте кожен рядок
ng extract-i18n за замовчуванням записує XLIFF, з інтерполяціями як тегами <x> та множинами ICU всередині. Видаліть тег, і ng build --localize зазнає невдачі. KAERIS записує <target> для кожного елемента та зберігає кожен тег та id.
KAERIS переклав цю сторінку та перевірив кожен рядок зворотним перекладом. Носій мови ще не переглядав її. Оригінал англійською
Інтерполяції залишаються як теги <x>
equiv-text кожного тегу зберігається, тому збірка все ще знає, що таке {{ name }}.
<trans-unit id="welcome" datatype="html">
<source>Welcome back, <x id="INTERPOLATION" equiv-text="{{ name }}"/>!</source>
</trans-unit>
<trans-unit id="save" datatype="html">
<source>Save changes</source>
</trans-unit>
<trans-unit id="welcome" datatype="html"> <source>Welcome back, <x id="INTERPOLATION" equiv-text="{{ name }}"/>!</source> <target>Willkommen zurück, <x id="INTERPOLATION" equiv-text="{{ name }}"/>!</target> </trans-unit> <trans-unit id="save" datatype="html"> <source>Save changes</source> <target>Änderungen speichern</target> </trans-unit>
Що KAERIS робить з цим
Ваші id, без змін
Власні
@@idsта згенеровані залишаються як є, тому переклади залишаються прив'язаними до своїх повідомлень.Змінні перевіряються без ШІ
Після перекладу проста перевірка підрахунку порівнює кожну змінну та тег з оригіналом. Рядок, який втратив один, позначається та відображається зверху.
Кожен рядок перекладено назад
Інша модель, GPT-4o mini, перекладає кожен рядок назад вашою мовою, а DeepSeek V3.2 на американських серверах (DeepInfra, DigitalOcean, Google) оцінює, чи змінився зміст. Ви читаєте, що тепер означає кожен рядок.
Запитання
Чи читає він також --format json?
Так. JSON, який записує ng extract-i18n --format json, перекладається по ключах, включаючи блоки ICU.
Чи підтримується XLIFF 2.0?
Ще ні. Стандартний xlf Angular — це XLIFF 1.2, який працює.
Це безкоштовно?
Так, без облікового запису: 10 000 символів на файл і до 8 мов за один запуск. Безкоштовний API-ключ збільшує ліміт файлу до 50 000 символів. Довічна ліцензія коштує $79 один раз, за вашим власним ключем OpenRouter; місячні плани починаються від $19. Ціни
Чи можу я запускати його з терміналу або в CI?
Так. pip install kaeris, потім kaeris translate з вашим файлом та --langs de,ja. GitHub Action відкриває pull request, коли з'являються нові ключі. Документація