Документация

Глобальная готовность и культура

Выявите, какие допущения в вашем существующем коде связаны с конкретным языком или культурой, разбейте их на небольшие задачи и узнайте, чего ожидают пользователи в каждом регионе от форматов дат, чисел, валюты, адресов и имён.

В проекте с поддержкой интернационализации есть два раздела под Интернационализация в его рабочей области. Готовность к работе в глобальном масштабе относится к уже имеющемуся у вас коду. Культура относится к рынкам, где вы продаёте свой продукт. Проверка на глобализацию предотвращает добавление нового кода в те элементы, которые выявляет функция «Готовность к работе в глобальном масштабе».

Готовность к работе в глобальном масштабе

Функция «Готовность к работе в глобальном масштабе» перечисляет допущения, которые код в вашей ветке по умолчанию до сих пор делает относительно одного языка или одной культуры. Coroid анализирует код по тем же правилам, что и при проверке на глобализацию для изменений, без его запуска, и сообщает обо всех найденных проблемах. Ничто здесь ничего не блокирует: это существующий код, и вы исправляете его в собственном темпе.

Интернационализация
Интернет-магазин
английский исходный код · 5 языки · проверено 2 часа назад в 3f2c9a1
  • Готовность к работе
  • Культура
  • Обзор
  • Строки
  • Предложения
  • Обмен
  • Участники
  • Автоматизации
  • Настройки
Готовность к работе в глобальной среде

То, что код в ветке по умолчанию всё ещё предполагает относительно одного языка или одной культуры. Исправляйте это в рамках небольших задач; проверка Globalisation не позволяет новому коду добавлять подобные ошибки.

Проверить ещё раз

Проверено: 3f2c9a1 2 часа назад

Результаты214В файлах 1 284 Чтение нескольких файлов
С момента последней проверки-18По сравнению с проверкой 3 дня назад
Что было найдено
  • Текст, вписанный в кодБлокируется в новом коде по умолчаниюТекст, который читают люди, вписан в код вместо каталога.142-9Создать задачу по исправлению
  • Предложение, составленное из частейБлокируется в новом коде по умолчаниюПредложение, соединённое из частей; порядок слов различается в разных языках.23-3
  • Число, отформатированное без учёта локалиЧисло отформатировано без учёта локали читателя.31-4
  • Список, соединённый вручнуюСписок, который читают люди, соединён запятой или словом «и»; в других языках используются иные варианты.12-2
  • Ввод, обработанный во время формирования словаНажатие Enter для выбора китайского, японского или корейского слова отправляет форму до завершения ввода.6
Файлы · Текст, вписанный в код37 файлы
  1. src/components/checkout/summary.tsxТекст, вписанный в код: 18 · Число, отформатированное без учёта локали: 418
    1. 42:9Сводка заказа
    2. 57:13Бесплатная доставка при любом заказе
    3. 61:11Применить код
  2. src/app/account/page.tsxТекст, вписанный в код: 11 · Предложение, составленное из частей: 211
  3. src/components/cart/empty-state.tsxТекст, вписанный в код: 77

Готовность к работе в рабочей среде: код в ветке по умолчанию всё ещё предполагает определённый язык или культуру; для каждой проблемы указан код, файлы для исправления и задача по исправлению. Иллюстративные данные.

В этом разделе отображается:

  • Результаты, количество обработанных файлов и изменения по сравнению с последней проверкой.
  • Что было найдено: по одной строке на каждый тип найденной проблемы с указанием её количества. Текст, встроенный в код, и предложения, составленные из частей, помечены Заблокировано в новом коде по умолчанию, так как проверка на глобализацию возвращает изменение, которое их добавляет.
  • Файлы: файлы с наибольшим количеством найденных проблем отображаются первыми. Выберите тип проблемы, чтобы увидеть только соответствующие файлы, а затем — файл, чтобы просмотреть каждую найденную проблему с указанием строки и самого текста.

Если при открытии раздела «Готовность к работе в глобальном масштабе» код в ветке по умолчанию изменился после последней проверки, Coroid проверяет его снова. Проверить снова анализирует его прямо сейчас. В проектах с более чем 20 000 найденных проблем отображаются первые 20 000; в счётчиках учитываются все найденные проблемы.

Типы найденных проблем и способы их устранения описаны в Проектирование для каждого рынка. Код, который вы намеренно исключаете, сопровождается i18n-ignore комментарием с указанием причины, а целые папки можно исключить из конфигурационного файла (см. Что анализирует проверка).

Создать задачи на исправление

Владельцы и администраторы выбирают Создать задачу на исправление для определённого типа найденной проблемы. Coroid создаёт одну задачу для этого типа с указанием файлов, строк для исправления и способа устранения проблемы. В одной задаче может быть не более 15 файлов или 150 найденных проблем, причём наиболее сложные файлы отображаются первыми, чтобы её было удобно рассматривать при рецензировании; после её объединения следующая проверка покажет, что ещё осталось исправить.

Задача ожидает вашего запуска. Если запросить её повторно, пока она открыта, откроется та же задача. В строке таблицы затем будет указано, находится ли задача на исправление в процессе выполнения, завершена или приостановлена.

Культура

Раздел «Культура» показывает, чего ожидают пользователи в каждом из рынков проекта от форматов дат, чисел, валюты, адресов, номеров телефонов и имён. Данные берутся из официальных источников: форматы, календари, единицы измерения и размер бумаги — из Unicode CLDR; адреса и почтовые индексы — из данных Google; номера телефонов — из библиотеки libphonenumber. Код, форматирующий данные с учётом локали пользователя, сам по себе правильно обрабатывает большинство из этих случаев.

Интернационализация
Интернет-магазин
английский исходный код · 5 языки · проверено 2 часа назад в 3f2c9a1
  • Готовность к работе
  • Культура
  • Обзор
  • Строки
  • Предложения
  • Обмен
  • Участники
  • Автоматизации
  • Настройки
Культура

То, чего ожидает каждый рынок от форматов дат, чисел, валют, адресов, номеров телефонов и имён — данные берутся из стандартов Unicode CLDR и информации, публикуемой почтовыми службами. Код, форматирующий информацию с учётом локали настройки читателя, автоматически обеспечивает корректный вывод.

Изменение в мастере
Форматировщик
Форматировщик next-intluseFormatter from next-intl
Деньги по рынкам
немецкий: EUR · японский: JPY · арабский: SAR · шведский: SEK
РынкиЗначения, отличающиеся от исходного рынка, выделены полным шрифтом.
РынокЧислаДеньгиДатаВремяНачало неделиБумага
английскийen-US · Исходный текст12,345.678$1,299.503/14/264:05 PMвсLetter
немецкийde-DE12.345,6781.299,50 €14.03.2616:05пнA4
японскийja-JP12,345.678¥1,3002026/03/1416:05всA4
арабскийar-SA١٢٬٣٤٥٫٦٧٨‏١٬٢٩٩٫٥٠ ر.س.‏١٤‏/٣‏/٢٠٢٦٤:٠٥ مвсA4
шведскийsv-SE12 345,6781 299,50 kr2026-03-1416:05пнA4

Источники: Unicode CLDR 48, данные адресов Google (libaddressinput) и libphonenumber. В примерах используются одинаковые моменты и суммы для всех рынков.

Культура в рабочей среде: в каждом регионе одно и то же число, цена, дата и время записываются по-своему; неделя начинается и бумага для печати также различаются. Значения берутся из браузера пользователя и Unicode CLDR.

Вверху:

  • Форматтер. Как код форматирует числа, даты и валюту для пользователя, например форматтер next-intl, react-intl, i18next, конвейеры Angular или обычный Intl. Если его нет, агенты форматируют с использованием Intl и локали пользователя.
  • Валюта для каждого рынка. Валюта, в которой платят покупатели на каждом рынке. Для каждого рынка изначально используется валюта соответствующего региона.

Рынки отображает все рынки рядом друг с другом: числа, валюту, дату, время, день, когда начинается неделя, единицы измерения расстояний и размер бумаги. Во всех случаях используются одинаковые моменты и суммы. Значения, отличающиеся от исходного рынка, выделены жирным шрифтом.

Откройте страницу конкретного рынка, чтобы увидеть остальное:

ГруппаЧто отображается
Календарь и времяИспользуемые календари и одна и та же дата в каждом из них, 12- или 24-часовой формат времени, первый день недели, выходные, порядковый номер недели
Числа и валютаЦифры, число, процент и цена
Единицы измерения и бумагаМетрическая система, американская система или обе; единицы измерения расстояний, температуры, роста и веса; формат A4 или Letter
Люди и текстПорядок указания фамилий, номера телефонов в национальном и международном формате, примеры почтовых индексов, направление текста, способы объединения элементов списка и правила сортировки текста
АдресАдрес так, как его пишут в данном регионе, включая латинскую транскрипцию для тех рынков, где используется другой алфавит, указание обязательных полей или полей, пишущихся заглавными буквами, и названий каждого поля на местном языке

Измените форматтер и валюту для каждого рынка в шаге мастера Культура (Изменение в мастере). Выбранные параметры записываются в конфигурационный файл как world.formatter и world.currencies— требуется версия CLI 1.14.0 или новее; мастер перемещает более старую закрепку.

Что известно агентам

Агенты-разработчики, работающие над проектом с поддержкой Глобализации, получают средство форматирования и для каждого рынка — только те параметры, которые отличаются от исходного рынка: валюта, календари, цифры, часы, начало недели и выходные дни, бумага, единицы измерения, порядок имён, направление текста и почтовые индексы. Им также указано сохранять почтовые индексы и номера телефонов как текст, хранить номера телефонов в формате E.164, записывать имя в одно поле, если для данного рынка не требуется разделение на части, и принимать любые скрипты при проверке.