Перейти до основного вмісту

Меню команд

Перейдіть на сторінку або пошукайте в каталозі

ШІ-інструменти та скрипти

Translation Files Check

Це оголошення показано мовою оригіналу (англійська).

Check translation files before a language ships: placeholders that differ from the base, files that will not load, broken ICU plurals, apostrophes that hide {0}, and missing or untranslated keys in JSON, YAML, .po, .arb, .strings and Android XML.

$5.00

Що ви отримаєте: 1 файл · 58.15 KB · ZIP

Переглянути варіанти купівлі

Опис товару

One translator turns {name} into {nom}, writes L'application in an Android strings.xml, or drops the other branch of an ICU plural, and the app shows a raw placeholder, the build stops, or a screen fails for every user of that language. This skill finds those mistakes, and the quieter gaps such as missing keys, copied English text and Arabic plurals with only one and other, before you ship.

Your agent runs a scanner on your project. It reads locale JSON (i18next, next-intl, vue-i18n, react-intl, Laravel, Chrome extensions), Rails and Symfony YAML, gettext .po, Flutter .arb, Apple .strings and .stringsdict, Android res/values XML and Java .properties. It groups the files that translate each other, picks the base language from file and folder names (en, en-US, values/, a bundle without a language suffix, or the Flutter template file), says which base it used, and compares every other language with it. It reads ICU MessageFormat, knows the CLDR plural forms of each language and the placeholder style of each format, tells a real plural set from an ordinary key such as payment.other, reads 100%ige as text rather than a placeholder, and handles Arabic and other right-to-left text. It never runs your app or a translation tool. It returns BLOCK, REVIEW, or NOT FLAGGED, with the file, line, reason, and a safer approach. Secrets are never printed.

What it checks

BLOCK (fix before shipping)

  • I01: placeholders that differ from the base text ({name}, {{count}}, %s, %1$d, %(name)s, %@, {0}), including a changed type such as %d to %s, a plural form that drops an argument other than the count, and an ICU plural that never shows its number

  • I02: files that will not load or build: JSON, YAML, .po and .strings syntax errors, duplicate msgids, duplicate keys in Symfony YAML, unescaped Android apostrophes, duplicate Android resources, ARB @@locale mismatches

  • I03: ICU messages that cannot be read (unbalanced braces, no other option, unknown plural category) and plural sets without other

  • I04: apostrophes that make {0} or {name} print as written in Java MessageFormat and ICU messages

  • I05: script tags, event handlers or javascript: links inside a translation

REVIEW (check before release)

  • I11: keys missing from a translation

  • I12: keys the base file does not have

  • I13: empty translations

  • I14: text copied unchanged from the base language

  • I15: HTML or rich-text tags that differ from the base text

  • I16: keys written twice in one file

  • I17: plural forms a language needs (Arabic, Russian, Polish and others), and .po plural counts that differ from nplurals

  • I18: fuzzy .po entries

  • I19: a Rails root key or .po Language header that names another language than the file

What's included

  • The scanner (Python 3.9+, standard library only)

  • A rules guide with the reason and safer approach for each rule

  • A risky and a safe example project (web, Android, iOS, Django, Rails and Spring files with Arabic, German and French translations), and the real report the scanner produces on the risky one

Limits

It reads each file as written: translations loaded at run time, keys built in code, and whether the app renders a message as text or HTML are not checked. Each file is compared only with the base file of its own group, so keys moved between files show as missing and extra. XLIFF, .resx, .xcstrings, Qt .ts, JSON5 and TOML locale files are not read. Untranslated text is found by a heuristic. NOT FLAGGED is not a guarantee.

Contents

One ZIP file with 37 files: SKILL.md, the scanner in scripts/ (8 Python files), references/rules.md (every rule with its reason and safer approach), and examples/ (26 example files plus report.md, the real scanner output on the risky example).

How to use: This is an agent skill: a folder with a SKILL.md file and Python scripts that an AI coding agent such as Claude Code, Cursor, or Codex CLI can run. Unzip it into your agent's skills folder (for Claude Code: ~/.claude/skills/), then ask your agent to check your project. The scripts also run on their own with Python 3.9 or newer, with nothing to install. They read your files only: no network access, and nothing is sent anywhere.

Що ви отримаєте

1 файл · 58.15 KB

  • translation-files-check-1.0.0.zipZIP · 58.15 KB

Входить до Getly ProОтримати Pro

ЛіцензіяКомерційне використання дозволено
Опубліковано12 лист. 2026 р.
Розмір файлу58.15 KB
Формат файлуZIP
Версіяv1.0

Теги

i18nlocalizationtranslationgettextflutterai agent skill
R
RR HH

Поширені запитання

Чи отримаю я доступ одразу?

Так. Це цифровий товар: ви можете завантажити його одразу після оплати, просто зі своєї бібліотеки.

Чи можна використовувати його в комерційних проєктах?

Так. Комерційне використання дозволено: користуйтеся в особистому бізнесі та в тому, що продаєте. Ви не можете перепродавати чи поширювати сам файл.

Яка у вас політика повернення коштів?

Ви можете запросити повернення коштів протягом 30 дн. Якщо щось не так, подайте запит зі свого замовлення, і команда Getly його розгляне.

Які формати та розміри файлів я отримаю?

Ви завантажите 1 файл - ZIP - загалом 58.15 KB.

Чи отримую я безкоштовні оновлення?

Так: коли продавець випускає нову версію, ви можете повторно завантажити свіжі файли зі своєї бібліотеки безкоштовно. Останні оновлення дивіться в журналі змін.

Ціна

$5.00