Add gettext context for ambiguous user-facing strings and repair affected PO translations.
64
76%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./.agents/skills/i18n-context/SKILL.mdUse this when one English msgid has multiple meanings and a locale needs different translations.
msgfmt or printf checks fail for the touched locale.msgfmt/printf failures as pre-existing when this task touches that locale.rg -n 'msgid "<word>"|msgctxt .*\nmsgid "<word>"' lang/po/<lang>.porg -n '"<word>"|translate_marker\( "<word>" \)|_\( "<word>" \)' data srcpgettext( "short specific context", "text" ).translate_marker_context( "short specific context", "text" ).{ "ctxt": "short specific context", "str": "text" } or matching plural fields.{ "text": { "ctxt": "short specific context", "str": "text" } }.std::string, convert it to translation so contextual JSON can load.time format, map extra, music genre, damage type.lang/po/<lang>.po for each new msgctxt; do not rely on the old shared msgstr.rg -C2 -i '<term>' lang/po/ko.po | rg -v '^(#:|--)' | head -n 20python3 lang/extract_json_strings.py -i data/json -o /tmp/catabn-i18n-context.pot --tracked-onlymsgfmt -f -c -o /tmp/ko.mo lang/po/ko.po./tools/check_po_printf_format.py./build-scripts/lint-json.sh.pgettext and translate_marker_context.ctxt and updated PO entries.b782646
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.