Skip to content
Testaroo
ftl224 B

Fluent (.ftl): Arabic RTL

Mozilla Fluent SAMPLE catalog (Arabic RTL) with placeholders and plural select, for Fluent parsers and CAT tools.

Preview, first 13 linesftl
# Novus SAMPLE Fluent catalog (ar)

greeting = مرحبا
أهلاً، { $name }
save = حفظ
cancel = إلغاء

items-count =
    { $count ->
        [0] {count, plural, =0 {…
       *[other] حفظ / { $count }
    }

Specifications

Format
Fluent
Locale
ar
Keys
5
Wave
G

Testing contract

Expected to pass
Scenario
Exercise Fluent (.ftl): Arabic RTL in its fluent workflow. Mozilla Fluent SAMPLE catalog (Arabic RTL) with placeholders and plural select, for Fluent parsers and CAT tools.
Expected result
12 text lines, decoded as UTF-8; first nonempty line is `# Novus SAMPLE Fluent catalog (ar)`. Declared feature checks: locale=ar; keys=5.

What is a .ftl file?

Fluent (.ftl) is Mozilla's localization file format for natural-sounding translations with placeholders, plurals, and selectors. Catalogs are plain text and designed for readable, maintainable UI strings.

How to use this file

Use a SAMPLE .ftl catalog to test Fluent parsers, plural/select resolution, and CAT tool import/export against known keys.

How to use this file for testing

“Fluent (.ftl): Arabic RTL” is a deterministic Testaroo fixture for Internationalization, Localization catalogs, Encoding detection. Parallel text and accented, multi-script content, for testing translation pipelines, Unicode handling, and localization tooling.

Documented properties for this file: Fluent. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such, expect parsers to fail loudly rather than silently accept them.

Translation-catalog fixtures carry the same message set across formats, each with its native placeholder syntax. Test your i18n loader, catalog converter, or translation-memory tool, and use the RTL and CJK variants to check bidirectional text and Unicode handling.

Load the catalog with your i18n framework and verify placeholder interpolation and plural handling; the RTL and CJK variants exercise bidirectional text and font fallback.

Code examples

from fluent.syntax import parse  # pip install fluent.syntax

res = parse(open("messages-ar.ftl", encoding="utf-8").read())
for entry in res.body:
    if getattr(entry, "id", None):
        print(entry.id.name)

Generated by generation/localization_wave_g.py. Free for any use, no attribution required, license.