Бесплатный инструмент

    Редактор и форматировщик сообщений ICU

    Создавайте, тестируйте и проверяйте строки ICU MessageFormat с предварительным просмотром, более чем 100 шаблонами и валидацией множественных форм CLDR.

    Шаблоны50
    ICU Редактор
    Корректный синтаксис
    14 символов1 строк

    Тестовые переменные и предпросмотр

    Изменяйте переменные и переключайте языки для проверки правил CLDR

    Язык:
    Результат (en):
    Hello, Alex!
    Экспорт в типизированную декларацию Intlayer
    import { type Dictionary } from 'intlayer';const convertedMessageContent = {  key: 'converted-message',  content: 'Hello, {{name}}!',} satisfies Dictionary;export default convertedMessageContent;
    Intlayer проверяет переводы во время компиляции с полной автоподстановкой TypeScript.

    ICU MessageFormat Syntax Cheat Sheet

    Быстрые правила синтаксиса и их соответствие декларациям Intlayer

    ФункцияСинтаксисПримерПримечанияЭквивалент в Intlayer
    Simple Variable{variableName}Hello {name}!Alphanumeric names, single brackets{{name}}
    Pluralization{count, plural, one {...} other {...}}{n, plural, one {# item} other {# items}}Requires "other". # is replaced by count.plural({ one: "1 item", other: "{{count}} items" })
    Exact Match Plural=0 {...} =1 {...}{n, plural, =0 {None} one {#} other {#}}Takes precedence over CLDR keywordsenu({ 0: "None", 1: "1", fallback: "{{count}}" })
    Select (Context/Gender){key, select, choice1 {...} other {...}}{gender, select, male {He} other {They}}Case-sensitive exact string comparisonselect({ male: "He", fallback: "They" }, "gender")
    Selectordinal{rank, selectordinal, one {#st} other {#th}}{pos, selectordinal, one {#st} two {#nd} other {#th}}Ordinal suffix rules per CLDRenu({ 1: "1st", 2: "2nd", fallback: "{{pos}}th" })
    Number Formatting{val, number, [style]}{price, number, currency}Supports percent, currency, integer stylesIntl.NumberFormat or type-safe formatting
    Escaping'{' and '' for apostrophesDon''t '{'escape'}'Single quotes escape literal blocks, '' escapes quoteLiteral strings naturally supported
    Архитектура Intlayer на основе компилятора заменяет сложный парсинг во время выполнения статической проверкой типов при компиляции.
    Экосистема Intlayer

    Забудьте о сложных синтаксических ошибках навсегда

    Intlayer превращает интернационализацию в удобный процесс благодаря статической типизации во время компиляции, авто-извлечению и встроенной CMS.