i18n Skills
Comenzi IA pentru auditarea și încadrarea textelor i18n
Problema
Baza dumneavoastră de cod conține 500 de texte încorporate direct în cod, răspândite prin componente, șabloane și vizualizări. Încadrarea manuală necesită zile întregi de căutări și înlocuiri anevoioase. Chiar și după încadrare, puteți rata propoziții fragmentate care nu mai funcționează în germană, logica pluralului care eșuează în arabă și cheile neasociate care aglomerează fișierele de limbă.
Soluția
Două comenzi slash bazate pe IA gestionează întregul flux i18n. Executați /i18n-review pentru a audita codul fără a-l modifica, apoi executați /i18n-wrap pentru a remedia automat toate problemele. Ambele comenzi detectează cadrul de lucru, înțeleg formatul fișierelor de limbă și validează modificările înainte de a crea commitul.
/i18n-review
Audit numai pentru citire, care găsește propoziții fragmentate, forme de plural defecte, texte neîncadrate și chei neutilizate. Nu vă modifică niciodată codul.
/i18n-wrap
Încadrează automat textele încorporate direct în cod folosind funcția corectă de traducere, generează chei semantice, actualizează fișierele de limbă și validează compilarea.
Comanda /i18n-review
Comanda de revizuire efectuează un audit al bazei dumneavoastră de cod fără a o modifica. Scanează fiecare fișier pentru probleme i18n și generează un raport prioritizat, cu locațiile exacte și sugestii de remediere. Codul dumneavoastră nu este modificat niciodată.
/i18n-review src/
/i18n-review src/ --framework=next-intlCe verifică
- Propoziții fragmentate: apeluri t() concatenate care deteriorează ordinea cuvintelor în alte limbi
- Încadrare excesivă: texte tehnice, clase CSS, URL-uri și valori de enumerare încadrate incorect cu t()
- Încadrare insuficientă: texte vizibile în interfață, precum etichetele butoanelor, titlurile și mesajele de eroare, lăsate direct în cod
- Probleme ale pluralului: operatori ternari sau verificări === 1 în locul sintaxei corecte de plural ICU
- Chei neutilizate: chei de traducere definite în fișierele de limbă, dar care nu sunt referite niciodată în cod
- Valori de formatare încorporate direct în cod: date calendaristice, monede și numere care nu folosesc formatoare Intl
Comanda /i18n-wrap
Comanda de încadrare încadrează automat textele introduse direct în cod folosind funcția de traducere potrivită cadrului dumneavoastră de lucru. Detectează biblioteca i18n, generează chei semantice grupate după componentă sau funcționalitate, actualizează fișierele de limbă și verifică dacă procesul de compilare se încheie în continuare fără erori.
/i18n-wrap src/components/
/i18n-wrap src/ --framework=react-i18nextCe face
- Detectarea cadrului de lucru: identifică biblioteca i18n și funcția sa de traducere (t, $t, $_, gettext etc.)
- Generarea cheilor semantice: creează chei descriptive precum nav.signIn și errors.notFound în locul etichetelor generice
- Actualizarea fișierelor de limbă: adaugă chei noi în fișierul-sursă de limbă folosind formatul corect (JSON, YAML, PO etc.)
- Validarea compilării: execută comenzile dumneavoastră de compilare, verificare statică și testare după încadrare pentru a depista eventualele regresii
Cadre de lucru acceptate
Ambele comenzi detectează automat cadrul de lucru pe baza dependențelor proiectului. Îl puteți specifica și explicit folosind opțiunea --framework. Iată cele 10 cadre de lucru acceptate, împreună cu funcțiile lor de traducere și formatele de plural.
| Cadru de lucru | Funcție de traducere | Format de plural |
|---|---|---|
| react-i18next | t() | key_one / key_other |
| next-intl | t() | ICU {count, plural, ...} |
| vue-i18n | $t() | Pipe syntax | singular | plural |
| angular i18n | $localize | ICU {count, plural, ...} |
| svelte-i18n | $_() | ICU {count, plural, ...} |
| flutter intl | S.of(context) | Intl.plural() |
| django | gettext / _() | ngettext() |
| rails i18n | t() | count key |
| laravel | __() / @lang | trans_choice() |
| swift | NSLocalizedString | .stringsdict |
Instalare
Copiați fișierele comenzilor în directorul .claude/commands/. Atât — fără dependențe sau configurare. Comenzile sunt fișiere Markdown obișnuite, pe care le poate executa orice asistent de programare bazat pe IA.
mkdir -p .claude/commands
cp commands/i18n-review.md .claude/commands/
cp commands/i18n-wrap.md .claude/commands/Exemple de utilizare
Proiect React
Revizuiți o aplicație React care folosește react-i18next, apoi încadrați toate textele introduse direct în cod. Comenzile detectează react-i18next din package.json și folosesc funcția corectă t() și formatul de plural key_one/key_other.
# Review a React project for i18n issues
/i18n-review src/ --framework=react-i18next
# Wrap all hardcoded strings automatically
/i18n-wrap src/components/ --framework=react-i18next
# Result: t() calls inserted, keys added to en/translation.jsonProiect Django
Auditați șabloanele și vizualizările Django pentru probleme i18n, apoi încadrați textele folosind gettext. Comenzile detectează Django din settings.py și folosesc _() pentru texte simple și ngettext() pentru formele de plural.
# Review Django templates and views
/i18n-review myapp/ --framework=django
# Wrap hardcoded strings with gettext
/i18n-wrap myapp/templates/ --framework=django
# Result: _() calls inserted, .po file updatedGhiduri conexe pentru cadre de lucru
Încercați acum i18n Agent
Plasați aici fișierul de traducere
JSON, YAML, PO, XML, CSV, Markdown, Properties
sau faceți clic pentru a-l selecta
Limbi țintă