Agent Skill
2/7/2026

translate

Add a new translatable string to all locale files (English, Italian, Spanish, Catalan). Use when adding user-visible text to the app.

V
vide
42GitHub Stars
1Views
npx skills add vide/matedroid

SKILL.md

Nametranslate
DescriptionAdd a new translatable string to all locale files (English, Italian, Spanish, Catalan). Use when adding user-visible text to the app.

name: translate description: Add a new translatable string to all locale files (English, Italian, Spanish, Catalan). Use when adding user-visible text to the app. allowed-tools: Read, Edit

Translate Skill

Add a new string resource to all 4 locale files.

String Resource Files

LocaleFile
Englishapp/src/main/res/values/strings.xml
Italianapp/src/main/res/values-it/strings.xml
Spanishapp/src/main/res/values-es/strings.xml
Catalanapp/src/main/res/values-ca/strings.xml

Process

  1. Ask the user for:

    • The string name (use snake_case, e.g., drive_details_title)
    • The English text
    • Context for translators (optional but recommended)
  2. Generate translations for Italian, Spanish, and Catalan

  3. Add to all 4 files with an XML comment for context:

    <!-- Context: Shown as the title of the drive details screen -->
    <string name="drive_details_title">Drive Details</string>
    

Guidelines

  • Use snake_case for string names (e.g., settings_title, drive_history)
  • Add XML comments above strings to provide context for translators
  • Technical terms like AC, DC, kW, kWh should NOT be translated
  • Format specifiers (%s, %d, %1$s) must be preserved in translations
  • Keep translations natural - don't be overly literal

String with Parameters

For strings with parameters, use positional format specifiers:

<string name="distance_km">%1$d km away</string>

In Kotlin:

stringResource(R.string.distance_km, distance)

Plurals

For quantity strings, use plurals:

<plurals name="days_count">
    <item quantity="one">%d day</item>
    <item quantity="other">%d days</item>
</plurals>

After Adding Strings

Remind the user to use stringResource(R.string.xxx) in Compose code:

Text(stringResource(R.string.drive_details_title))
Skills Info
Original Name:translateAuthor:vide