translation-convert

Convert translation files between JSON, YAML, PO, XLIFF, ARB, and Properties formats.

3|Updated Aug 8, 2026
One-click install
npx skills add https://github.com/Jose-Polanco-Oxte/Echos-Live-Music-Visualizer --skill translation-convert-jose-polanco-oxte
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: translation-convert
Source: https://github.com/Jose-Polanco-Oxte/Echos-Live-Music-Visualizer/tree/main/.agents/skills/localization/sub-skills/software-localization/translation-convert
Command: npx skills add https://github.com/Jose-Polanco-Oxte/Echos-Live-Music-Visualizer --skill translation-convert-jose-polanco-oxte

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Migrating between i18n frameworks or exporting translations for external tools requires manually rewriting files across incompatible formats, which risks losing keys, variables, pluralization rules, and translator metadata. ## Core Features & Use Cases - Multi-Format Conversion: Converts translation files between JSON, YAML, PO/Gettext, XLIFF 1.2/2.0, ARB (Flutter), and Java Properties formats. - Structure Preservation: Maps nested keys to flat dot notation and back, preserves variables, ICU MessageFormat pluralization, PO headers, and ARB metadata. - Safe Output: Writes new files without overwriting originals, validates output by re-parsing and comparing key counts, and reports conversion statistics. - Use Case: When migrating a Flutter app to a React project, convert all ARB locale files to nested JSON while keeping placeholder definitions and descriptions intact. ## Quick Start Ask the assistant to convert your PO translation files in the locales directory to nested JSON format while preserving all plural forms and comments.

Frequently Asked Questions about translation-convert

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I convert PO files to JSON for my i18n project?

Provide the source format, target format, and file path, such as converting PO to JSON for a locales directory. The conversion maps msgid/msgstr pairs to key-value entries and transforms plural forms into ICU MessageFormat syntax.

How to migrate Flutter ARB files to another localization format?

Specify ARB as the source format and your target format such as JSON, YAML, or PO. ARB @key metadata like descriptions and placeholder definitions are preserved as comments or notes in the target format.

Does converting nested JSON to Properties lose key structure?

No, nested JSON and YAML keys are flattened using dot notation such as nav.home when converting to Properties or PO. Converting back splits on dots to rebuild the original hierarchy.

Will translation conversion overwrite my original locale files?

No, original files remain intact and converted output is written to new files with the target extension. If output files already exist, a warning is issued before overwriting.

What happens to pluralization rules during format conversion?

ICU MessageFormat plurals in JSON are converted to PO msgid_plural forms, and PO plural forms are converted back to ICU MessageFormat. The report flags plural conversions for manual verification.