translate

Translate missing Chrome extension i18n strings across locale files.

56|9|Updated Jan 21, 2018
One-click install
npx skills add https://github.com/tagspaces/browser-extensions --skill translate-tagspaces
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: translate
Source: https://github.com/tagspaces/browser-extensions/tree/main/.claude/skills/translate
Command: npx skills add https://github.com/tagspaces/browser-extensions --skill translate-tagspaces

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It prevents untranslated or inconsistent browser-extension UI text by automatically translating new or missing i18n message strings from the English locale into other languages.

Core Features & Use Cases

  • Detect translation gaps by comparing _locales/en/messages.json against each target locale’s messages.json and reporting missing, untranslated, and orphan keys.
  • Maintain translation consistency by using existing translations for tone, terminology, and placeholder/tag preservation rules.
  • Safely apply updates by reordering keys to match English, removing orphan keys, validating JSON after writing, and keeping de and de_DE in sync.

Quick Start

Run the translate skill with the argument all to translate every missing or untranslated key across all locales using _locales/en/messages.json as the source of truth.

Frequently Asked Questions about translate

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

FAQPage Schema
How do I translate missing i18n strings in a Chrome extension's messages.json files?

To translate missing i18n strings, compare the source `_locales/en/messages.json` against each target locale's `messages.json` and automatically fill in the untranslated gaps. The process detects missing keys, translates them, and preserves existing formatting to maintain localization consistency across browser extensions.

Does Chrome extension i18n translation preserve placeholders and HTML tags in messages.json?

Chrome extension i18n translation strictly preserves placeholders and HTML tags found in the original messages.json strings. It also keeps the English `description` field unchanged and ensures the output JSON remains valid while matching the English key order.

What is the best way to find untranslated or orphan keys in browser extension localization files?

The best way to find untranslated or orphan keys is by comparing `_locales/en/messages.json` to each `_locales/<lang>/messages.json`. This localization check reports missing, untranslated, and orphan keys so you can safely update target files and remove obsolete translations.

Can I sync German de and de_DE locale messages.json files during browser extension translation?

Yes, you can sync German `de` and `de_DE` locale messages.json files during browser extension translation. The workflow enforces synchronization between the two German locale variants, ensuring both files contain identical translated i18n strings and key ordering.

How do I automatically reorder JSON keys in _locales to match the English messages.json?

You can automatically reorder JSON keys in `_locales` by using the English `messages.json` as the structural source of truth. The localization process aligns the key order in every target language file to match the English baseline while validating JSON correctness.

Why does my translated messages.json file fail JSON validation after adding new i18n strings?

Translated messages.json files fail JSON validation when structural integrity is broken during string insertion. The translation workflow prevents this by validating output JSON correctness after writing, ensuring placeholder syntax and HTML tags remain intact and syntactically valid.