Lingo.dev + .html (Веб)

Lingo.dev CLI переводит HTML-файлы, сохраняя структуру разметки, атрибуты и семантические элементы для веб-сайтов и документации. CLI сохраняет всю HTML-разметку и вложенность, обрабатывает только переводимые атрибуты, защищает JavaScript и CSS от перевода, корректно работает с семантическими элементами HTML5 и гарантирует валидный HTML-вывод.

Быстрая настройка

Настройте для HTML-файлов с организацией на основе локалей:

{
  "locale": {
    "source": "en",
    "targets": ["es", "fr", "de"]
  },
  "buckets": {
    "html": {
      "include": ["content/[locale]/*.html"]
    }
  }
}

Напоминание: [locale] — это плейсхолдер, который должен оставаться в конфигурации буквально, так как он заменяется на фактическую локаль во время выполнения CLI.

Перевод HTML-файлов

npx lingo.dev@latest i18n

Переводит текстовый контент, сохраняя структуру HTML, теги, атрибуты и семантическую разметку.

Умная обработка HTML

Перевод контента

<!DOCTYPE html>
<html lang="en">
  <head>
    <title>Добро пожаловать на нашу платформу</title>
    <meta
      name="description"
      content="Лучшая платформа для повышения продуктивности"
    />
  </head>
  <body>
    <h1>Начало работы</h1>
    <p>
      Это руководство поможет вам <strong>быстро</strong> и эффективно
      освоиться.
    </p>
    <a href="/help">Нужна помощь?</a>
  </body>
</html>

Текстовый контент переводится, при этом структура HTML и теги остаются неизменными.

Обработка атрибутов

<img
  src="/images/hero.jpg"
  alt="Приветственный баннер"
  title="Наша платформа"
/>
<input type="text" placeholder="Введите ваше имя" />
<button aria-label="Закрыть диалог">×</button>

Переводимые атрибуты, такие как alt, title, placeholder и aria-label, локализуются.

Сохранение семантики

<article>
  <header>
    <h2>Заголовок статьи</h2>
    <time datetime="2024-01-15">15 января 2024</time>
  </header>
  <section>
    <p>Содержимое статьи размещается здесь...</p>
  </section>
</article>

Семантические элементы HTML5 и их структура сохраняются.

Расширенные возможности

Защита скриптов и стилей

<script>
  function greeting() {
    console.log("This stays untranslated");
  }
</script>

<style>
  .header {
    color: blue;
  }
</style>

Содержимое JavaScript и CSS остаётся нетронутым.

Атрибуты данных

<div data-message="Понятное пользователю сообщение" data-id="widget-123">
  <span>Видимое содержимое переводится</span>
</div>

Атрибуты данных с переводимым содержимым обрабатываются интеллектуально.

Расширенная конфигурация

Несколько HTML-директорий

"html": {
  "include": [
    "content/[locale]/*.html",
    "pages/[locale]/**/*.html"
  ]
}

Блокировка технических атрибутов

"html": {
  "include": ["content/[locale]/*.html"],
  "lockedKeys": ["id", "class", "data-id", "href"]
}