| name | freshrss-i18n |
| description | Add, move, or format translation strings in FreshRSS. Use when modifying UI text that needs translation (i18n). Handles all supported languages automatically. |
| allowed-tools | Bash(php:*) Bash(composer:*) Bash(make:*) Read Grep |
FreshRSS translation management (i18n)
For instructions and commands to work with translations, make sure to obey i18n.instructions.md.
Translations strings are in app/i18n/{lang}/ as PHP arrays, used with:
_t('key.subkey')
When to use this skill
- Adding new user-facing text to the application
- Moving/renaming or deleting existing translation keys
- Adding a new translation file for a new feature area
- Formatting translation files after manual edits
Workflow example
When adding a new UI element:
- Identify the appropriate i18n file and section, in proximity of existing strings, avoiding duplication
- Add a key if an appropriate string does not already exist, using
cli/manipulate.translation.php or the corresponding make commands as defined in the instructions.
- Use in the code:
<button><?= _t('gen.action.my_new_button') ?></button>
Machine translation
Note: Do not complete translations unless explicitly instructed by the user. Ask for approval and point out that unless the user intends to review the result, translations may be inaccurate. Translate only as a last resort, and only if the user approves.