Skip to main content

i18n Skills

AI naredbe za provjeru i obuhvaćanje i18n tekstova

Problem

Vaša baza koda ima 500 tekstova ugrađenih u kod i raspršenih po komponentama, predlošcima i prikazima. Ručno obuhvaćanje zahtijeva dane zamornog pretraživanja i zamjenjivanja. Čak i nakon obuhvaćanja možete propustiti podijeljene rečenice koje narušavaju red riječi u njemačkom, logiku množine koja ne radi u arapskom i napuštene ključeve koji nepotrebno povećavaju datoteke lokaliteta.

Ručno i18n obuhvaćanje podložno je pogreškama: programeri propuštaju podijeljene rečenice, kvare množine ternarnim operatorima i ostavljaju tekstove ugrađene u kod u rubnim slučajevima. Te pogreške izlaze na vidjelo tek nakon prevođenja, kada ih je 10 puta skuplje ispraviti.

Rješenje

Dvije AI slash naredbe upravljaju cijelim i18n tijekom rada. Pokrenite /i18n-review kako biste provjerili kod bez izmjena, a zatim /i18n-wrap kako biste sve automatski ispravili. Obje naredbe otkrivaju Vaš radni okvir, razumiju format datoteka lokaliteta i provjeravaju izmjene prije commita.

/i18n-review

Provjera samo za čitanje koja pronalazi podijeljene rečenice, oštećene množine, neobuhvaćene tekstove i neupotrijebljene ključeve. Nikada ne mijenja Vaš kod.

/i18n-wrap

Automatski obuhvaća tekstove ugrađene u kod ispravnom funkcijom za prevođenje, generira semantičke ključeve, ažurira datoteke lokaliteta i provjerava izgradnju.

Naredba /i18n-review

Naredba za pregled provodi provjeru Vaše baze koda samo za čitanje. Pregledava svaku datoteku u potrazi za i18n problemima i izrađuje prioritetno izvješće s točnim lokacijama datoteka i prijedlozima ispravaka. Vaš se kod nikada ne mijenja.

Terminal
/i18n-review src/
/i18n-review src/ --framework=next-intl

Što provjerava

  • Podijeljene rečenice: spojeni pozivi t() koji narušavaju red riječi u drugim jezicima
  • Prekomjerno obuhvaćanje: tehnički tekstovi, CSS klase, URL-ovi i vrijednosti nabrajanja pogrešno obuhvaćeni funkcijom t()
  • Nedovoljno obuhvaćanje: vidljivi tekstovi korisničkog sučelja poput oznaka gumba, naslova i poruka o pogreškama ostavljeni su u kodu
  • Problemi s množinom: ternarni operatori ili provjere === 1 umjesto ispravne sintakse ICU množine
  • Neupotrijebljeni ključevi: ključevi prijevoda definirani u datotekama lokaliteta, ali nikada navedeni u kodu
  • Vrijednosti formata ugrađene u kod: datumi, valute i brojevi koji ne upotrebljavaju Intl oblikovatelje
Naredba za pregled radi isključivo u načinu čitanja. Pokrećite je koliko god često želite tijekom razvoja ili u CI/CD procesima bez rizika od neželjenih izmjena.

Naredba /i18n-wrap

Naredba wrap automatski obuhvaća tekstove ugrađene u kod ispravnom funkcijom za prevođenje za Vaš radni okvir. Otkriva Vašu i18n biblioteku, generira semantičke ključeve grupirane po komponenti ili značajci, ažurira datoteke lokaliteta i provjerava prolazi li izgradnja i dalje.

Terminal
/i18n-wrap src/components/
/i18n-wrap src/ --framework=react-i18next

Što radi

  • Otkrivanje radnog okvira: prepoznaje Vašu i18n biblioteku i njezinu funkciju za prevođenje (t, $t, $_, gettext itd.)
  • Generiranje semantičkih ključeva: stvara smislene ključeve poput nav.signIn i errors.notFound umjesto generičkih oznaka
  • Ažuriranje datoteka lokaliteta: dodaje nove ključeve u datoteku izvornog lokaliteta u ispravnom formatu (JSON, YAML, PO itd.)
  • Provjera izgradnje: pokreće Vaše naredbe za izgradnju, lint i testiranje nakon obuhvaćanja kako bi otkrila regresije
Naredba wrap provjerava svaku izmjenu pokretanjem izgradnje i testnog paketa. Ako nešto ne uspije, automatski poništava izmjene.

Podržani radni okviri

Obje naredbe automatski otkrivaju Vaš radni okvir na temelju ovisnosti projekta. Možete ga i izričito navesti zastavicom --framework. Slijedi 10 podržanih radnih okvira s njihovim funkcijama za prevođenje i formatima množine.

Radni okvirFunkcija za prevođenjeFormat množine
react-i18nextt()key_one / key_other
next-intlt()ICU {count, plural, ...}
vue-i18n$t()Pipe syntax | singular | plural
angular i18n$localizeICU {count, plural, ...}
svelte-i18n$_()ICU {count, plural, ...}
flutter intlS.of(context)Intl.plural()
djangogettext / _()ngettext()
rails i18nt()count key
laravel__() / @langtrans_choice()
swiftNSLocalizedString.stringsdict

Instalacija

Kopirajte datoteke naredbi u svoj direktorij .claude/commands/. To je sve — nema ovisnosti ni konfiguracije. Naredbe su obične Markdown datoteke koje svaki AI pomoćnik za programiranje može izvršiti.

Terminal
mkdir -p .claude/commands
cp commands/i18n-review.md .claude/commands/
cp commands/i18n-wrap.md .claude/commands/
To su standardne datoteke slash naredbi. Odmah rade u Claude Codeu i mogu se prilagoditi drugim AI pomoćnicima za programiranje koji podržavaju prilagođene naredbe.

Primjeri upotrebe

React projekt

Pregledajte React aplikaciju koja upotrebljava react-i18next, a zatim obuhvatite sve tekstove ugrađene u kod. Naredbe otkrivaju react-i18next u datoteci package.json i upotrebljavaju ispravnu funkciju t() te format množine key_one/key_other.

React Project
# 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.json

Django projekt

Provjerite Django predloške i prikaze u potrazi za i18n problemima, a zatim obuhvatite tekstove funkcijom gettext. Naredbe otkrivaju Django u datoteci settings.py i upotrebljavaju _() za jednostavne tekstove, a ngettext() za množine.

Django Project
# 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 updated

Isprobajte i18n Agent odmah

Povucite datoteku za prijevod ovdje

JSON, YAML, PO, XML, CSV, Markdown, Properties

ili kliknite za odabir

Ciljni jezici

Registracija nije potrebnaProcjena odmah

Česta pitanja