Перекласти

Перекласти файли XLIFF 1.2

XLIFF розміщує вихідний текст і переклад поруч, з вбудованими тегами між ними. Перемістіть або видаліть один тег, і плейсхолдер або посилання в додатку зникне. KAERIS зберігає теги і повідомляє вас, якщо один відсутній.

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

Як створюється файл XLIFF 1.2

Кожен <trans-unit> містить <source> та <target>. У тексті <x/>, <g> та <ph> позначають змінні та розмітку. messages.xlf Angular має цей формат.

Файл джерелаmessages.xlf
<?xml version="1.0" encoding="UTF-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
  <file source-language="en" target-language="de" datatype="plaintext" original="app">
    <body>
      <trans-unit id="welcome">
        <source>Welcome back, <x id="1" ctype="x-name"/>!</source>
      </trans-unit>
      <trans-unit id="terms">
        <source>I accept the <g id="2" ctype="x-link">terms</g>.</source>
      </trans-unit>
    </body>
  </file>
</xliff>

На що звернути увагу при перекладі XLIFF

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

Реальний запуск, 27 жовтня 2026 року, нічого не редагувалося вручну: kaeris translate messages.xlf --langs de з kaeris 0.2.35, 1.9 секунди, модель google/gemini-2.5-flash-lite, стандартний варіант безкоштовного рівня. Нижче — німецький файл, який він написав, і що про нього говорить kaeris check.

Результат німецькоюde/messages.xlf
<?xml version="1.0" encoding="utf-8"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
  <file original="app" source-language="en" target-language="de" datatype="plaintext">
    <body>
      <trans-unit id="welcome">
        <source>Welcome back, <x id="1" ctype="x-name" />!</source>
        <target state="translated">Willkommen zurück, <x id="1" ctype="x-name" />!</target>
      </trans-unit>
      <trans-unit id="terms">
        <source>I accept the <g id="2" ctype="x-link">terms</g>.</source>
        <target state="translated">Ich akzeptiere die <g id="2" ctype="x-link">Nutzungsbedingungen</g>.</target>
      </trans-unit>
    </body>
  </file>
</xliff>
kaeris checkexit code 0
$ kaeris check --source messages.xlf --langs de
✓ de: complete & placeholder-safe
✓ all locales complete & placeholder-safe

Що KAERIS робить з цим

Запустіть у три кроки

  1. Встановіть CLI

    Виконайте pip install kaeris.

  2. Перекласти файл

    Запустіть kaeris translate src/locale/messages.xlf --langs de,ja.

  3. Перевірити результат

    Відкрийте безкоштовну сторінку перевірки та завантажте перекладений файл. Каталог з вихідним текстом і перекладом в одному файлі перевіряється окремо.

pip install kaeris
kaeris translate src/locale/messages.xlf --langs de,ja --verify

Запитання

Чи підтримується XLIFF 2.0?

Ні. Підтримується версія 1.2; файл 2.0 відхиляється з відповідним повідомленням.

Чи залишаться вбудовані теги?

Вони зберігаються як необроблена розмітка та порівнюються з вихідним кодом після перекладу. У реальному запуску вище теги <x/> та <g> повернулися з тими самими ідентифікаторами, і перевірка нічого не виявила; втрачений тег був би позначений.

Це безкоштовно?

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

Чи можу я запускати його з терміналу або в CI?

Так. pip install kaeris, потім kaeris translate src/locale/messages.xlf --langs de,ja. Дивіться також Angular. GitHub Action виконує той самий переклад у pull-запиті. Документація CLI · GitHub Action

Продовжуйте

Довідник CLI · Довідник перевірки · Переклад у браузері · Безкоштовна перевірка · Конвертація форматів · Псевдолокалізація

Інші формати: JSON · YAML · .po · ARB · .strings · .xcstrings · .properties · .resx · CSV · Markdown · Fluent · Android XML