ICU 메시지 포맷터 및 편집기
실시간 미리보기, 100개 이상의 템플릿, 다국어 CLDR 복수형 유효성 검사를 통해 ICU MessageFormat 문자열을 빌드, 테스트 및 검증하세요.
템플릿50
ICU 편집기
유효한 구문
14 자1 줄
테스트 변수 및 실시간 미리보기
변수를 조정하고 언어를 전환하여 CLDR 복수형 규칙을 확인하세요
로케일:
렌더링된 출력 (en):
Hello, Alex!
Intlayer 타입 안전 선언으로 내보내기
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 keywords | enu({ 0: "None", 1: "1", fallback: "{{count}}" }) |
| Select (Context/Gender) | {key, select, choice1 {...} other {...}} | {gender, select, male {He} other {They}} | Case-sensitive exact string comparison | select({ male: "He", fallback: "They" }, "gender") |
| Selectordinal | {rank, selectordinal, one {#st} other {#th}} | {pos, selectordinal, one {#st} two {#nd} other {#th}} | Ordinal suffix rules per CLDR | enu({ 1: "1st", 2: "2nd", fallback: "{{pos}}th" }) |
| Number Formatting | {val, number, [style]} | {price, number, currency} | Supports percent, currency, integer styles | Intl.NumberFormat or type-safe formatting |
| Escaping | '{' and '' for apostrophes | Don''t '{'escape'}' | Single quotes escape literal blocks, '' escapes quote | Literal strings naturally supported |
Intlayer의 컴파일러 기반 아키텍처는 복잡한 런타임 구문 분석을 컴파일 타임 타입 안전성과 자동 추출로 대체합니다.
Intlayer 생태계
복잡한 구문에 대해 더 이상 걱정하지 마세요
Intlayer는 컴파일 타임 타입 안정성, 자동 컴포넌트 추출 및 완벽한 CMS 통합을 통해 국제화를 즐거운 개발 경험으로 바꿉니다.