Анализ командной строки и кода: автоматический поиск всех непереведённых строк
Хватит искать жестко запрограммированные строки в исходных файлах. Улучшенная командная строка i18n использует синтаксический анализ на основе AST для сканирования всего вашего кода, обнаружения непереведенного текста в компонентах и атрибутах JSX, сообщения об отсутствующих и неиспользуемых ключах, а также плавной интеграции в ваш конвейер непрерывной интеграции.
Сканирование кода на базе AST
В отличие от сканеров на основе регулярных выражений, которые дают ложные срабатывания, Better i18n преобразует ваш код в дерево абстрактного синтаксиса, что обеспечивает точное и контекстно-зависимое обнаружение строк.
Обнаружение жестко запрограммированных строк
Автоматически найти все строки, видимые пользователю, которые не заключены в функцию перевода, включая строки в дочерних элементах JSX и свойствах компонентов.
Синтаксический анализ на основе AST
Преобразует ваш исходный код в дерево абстрактного синтаксиса для точного контекстного обнаружения, что позволяет исключить ложные срабатывания сканеров, основанных на регулярных выражениях.
Сканирование текстовых узлов JSX
Обнаруживает непереведенный текстовый контент внутри элементов JSX, включая выражения и шаблонные литералы, отображаемые непосредственно в ваших компонентах.
Сканирование атрибутов JSX
Обнаруживает жестко запрограммированные строки в атрибутах JSX, таких как placeholder, aria-label и title, которые часто упускаются при ручной проверке локализации.
Интеллектуальная фильтрация
Игнорирует непереводимые значения, такие как имена классов CSS, пути импорта и числовые литералы, чтобы вы видели только те результаты, с которыми можно работать.
Команды CLI для контроля качества перевода
Команда check обеспечивает интерактивный и удобный для разработчиков процесс проверки. Она сравнивает ключи перевода, используемые в вашем исходном коде, с ключами, хранящимися на удаленном сервере Better i18n, выявляя как отсутствующие ключи, требующие перевода, так и неиспользуемые ключи, которые можно удалить.
Динамические шаблоны ключей, такие как шаблонные литералы, распознаются автоматически. Если в вашем коде используется выражение t(`key. ${variable}`), CLI распознает динамический сегмент и включает его в отчеты о совпадениях с шаблонами, благодаря чему ничто не ускользнет из поля зрения.
- Проведите полную проверку перевода с помощью одной команды проверки
- В Surface отсутствуют ключи перевода, которые присутствуют в коде, но отсутствуют в вашем удаленном хранилище
- Выявите в вашем удаленном хранилище неиспользуемые ключи, на которые больше нет ссылок в коде
- Обнаруживать динамические шаблоны ключей, такие как шаблонные литералы, и помечать их для проверки
- Создать отчеты о сравнении данных о локальном использовании и состоянии удаленного перевода
Гибкие форматы вывода
Результаты сканирования доступны в нескольких форматах, что позволяет адаптировать их к вашей рабочей процедуре. Вывод в стиле ESLint обеспечивает удобные для чтения отчеты с указанием файлов, строк и столбцов. Вывод в формате JSON предоставляет машиночитаемые данные для автоматизации CI/CD и использования собственных инструментов.
Режим подробного отчета обеспечивает полную прозрачность благодаря подробным журналам аудита, сводкам по объёму и информации о времени выполнения. Статистика сканирования отображает количество файлов, показатели обнаружения и данные о производительности, благодаря чему вы всегда будете в курсе состояния охвата перевода.
Вывод в стиле ESLint
Отчеты в удобном для чтения формате с указанием пути к файлу, номера строки и ссылок на столбцы для быстрой навигации в любом редакторе.
Вывод в формате JSON
Структурированные данные, пригодные для машинного считывания, идеально подходят для автоматизации CI/CD, создания настраиваемых информационных панелей и интеграции с другими инструментами.
Режим подробной отладочной информации
Подробные журналы аудита, содержащие сводки по области действия, информацию о времени выполнения и трассировки разрешения пространств имён для отладки.
Статистика сканирования
Количество файлов, ключевые показатели обнаружения и данные о производительности, чтобы вы всегда были в курсе состояния вашего переводческого покрытия.
DevOps и интеграция CI/CD
Встройте проверки переводов в существующий процесс разработки, чтобы выявлять отсутствующие строки до выхода в продакшн.
Интеграция конвейера CI
Добавьте в свой рабочий процесс непрерывной интеграции этап проверки, который при обнаружении непереведенных строк или отсутствующих ключей приводит к сбою сборки.
Хуки перед фиксацией
Перед каждой фиксацией выполняйте проверку файлов в стадии подготовки, чтобы выявлять непереведенные строки на самом раннем этапе разработки.
Сканирование в пределах каталога
Укажите конкретные каталоги или шаблоны файлов, чтобы сканировать только те части вашего кода, которые содержат контент, предназначенный для пользователей.
Анализ с учетом области действия
Автоматически разрешать пространства имён перевода посредством отслеживания лексической области видимости, чтобы каждый вызов t() сопоставлялся с правильным набором ключей.
Улучшенный интерфейс командной строки i18n: сканирование кода, разработанное специально для локализации
CLI-интерфейс Better i18n объединяет в одном инструменте сканирование кода на основе AST и удаленное управление ключами. Вы можете сканировать кодовую базу на наличие жестко запрограммированных строк, сравнивать локальное использование со своим удаленным хранилищем переводов, выявлять неиспользуемые ключи, увеличивающие размер пакета, и генерировать отчеты для вашего конвейера непрерывной интеграции — и всё это, не выходя из терминала.
Сканирование с учетом области действия
Tracks использует вызовы useTranslations и getTranslations в рамках лексических областей видимости, автоматически привязывая каждый вызов t() к соответствующему пространству имён.
Поддержка серверных компонентов
Обеспечивается полная поддержка асинхронных серверных компонентов Next.js App Router, благодаря чему вызовы getTranslations в серверном коде обнаруживаются и проверяются наряду с их использованием на стороне клиента.
Хуки перед фиксацией
Используйте флаг --staged для проверки только файлов, находящихся в промежуточном состоянии, чтобы выявлять непереведенные строки до их фиксации, не замедляя при этом рабочий процесс.
Связанные темы
For Developers
Инструменты i18n для разработчиков с типобезопасными SDK и Git-ориентированными рабочими процессами
Localization Software
TMS и CAT-инструменты для управления переводами в масштабе
Localization Software
TMS и CAT-инструменты для управления переводами в масштабе
Translation Management System
Centralize your localization workflow with a TMS
Отправляйте переводы, не пропуская ни одной строки
CLI-интерфейс Better i18n сканирует ваш код, обнаруживает все непереведенные строки и интегрируется в ваш конвейер непрерывной интеграции, благодаря чему в производственную среду не попадает ни одна строка без перевода.