Δεξιότητες i18n
Εντολές AI για έλεγχο και περιτύλιξη συμβολοσειρών i18n
Το πρόβλημα
Η βάση κώδικά σας περιέχει 500 συμβολοσειρές ενσωματωμένες σε components, templates και views. Η μη αυτόματη περιτύλιξή τους απαιτεί ημέρες κουραστικής αναζήτησης και αντικατάστασης. Ακόμα και μετά την περιτύλιξη, παραβλέπετε διασπασμένες προτάσεις που δεν λειτουργούν στα Γερμανικά, λογική πληθυντικού που αποτυγχάνει στα Αραβικά και ορφανά κλειδιά που διογκώνουν τα αρχεία γλωσσών σας.
Η λύση
Δύο εντολές slash με AI που αναλαμβάνουν ολόκληρη τη ροή εργασίας i18n. Εκτελέστε την /i18n-review για έλεγχο του κώδικα μόνο για ανάγνωση και έπειτα την /i18n-wrap για αυτόματη διόρθωση όλων των προβλημάτων. Και οι δύο εντολές ανιχνεύουν το framework, κατανοούν τη μορφή των αρχείων γλωσσών και επαληθεύουν τις αλλαγές πριν από το commit.
/i18n-review
Έλεγχος μόνο για ανάγνωση που εντοπίζει διασπασμένες προτάσεις, εσφαλμένους πληθυντικούς, συμβολοσειρές χωρίς περιτύλιξη και αχρησιμοποίητα κλειδιά. Δεν τροποποιεί ποτέ τον κώδικά σας.
/i18n-wrap
Περιτυλίγει αυτόματα τις συμβολοσειρές που είναι ενσωματωμένες στον κώδικα με τη σωστή συνάρτηση μετάφρασης, δημιουργεί σημασιολογικά κλειδιά, ενημερώνει τα αρχεία γλωσσών και επαληθεύει το build.
Εντολή /i18n-review
Η εντολή ελέγχου πραγματοποιεί έλεγχο μόνο για ανάγνωση στη βάση κώδικά σας. Σαρώνει κάθε αρχείο για προβλήματα i18n και παράγει μια ιεραρχημένη αναφορά με τις ακριβείς θέσεις των αρχείων και προτάσεις διόρθωσης. Ο κώδικάς σας δεν τροποποιείται ποτέ.
/i18n-review src/
/i18n-review src/ --framework=next-intlΤι ελέγχει
- Διασπασμένες προτάσεις: συνενωμένες κλήσεις t() που χαλούν τη σειρά των λέξεων σε άλλες γλώσσες
- Υπερβολική περιτύλιξη: τεχνικές συμβολοσειρές, κλάσεις CSS, URL και τιμές enum που έχουν περιτυλιχθεί εσφαλμένα με t()
- Ελλιπής περιτύλιξη: ορατές συμβολοσειρές του περιβάλλοντος χρήστη, όπως ετικέτες κουμπιών, επικεφαλίδες και μηνύματα σφάλματος, που παραμένουν ενσωματωμένες στον κώδικα
- Προβλήματα πληθυντικού: τριαδικοί τελεστές ή έλεγχοι === 1 αντί για σωστή σύνταξη πληθυντικού ICU
- Αχρησιμοποίητα κλειδιά: κλειδιά μετάφρασης που ορίζονται στα αρχεία γλωσσών αλλά δεν αναφέρονται ποτέ στον κώδικα
- Ενσωματωμένες τιμές μορφοποίησης: ημερομηνίες, νομίσματα και αριθμοί που δεν χρησιμοποιούν τους μορφοποιητές Intl
Εντολή /i18n-wrap
Η εντολή περιτύλιξης περιτυλίγει αυτόματα τις συμβολοσειρές που είναι ενσωματωμένες στον κώδικα με τη σωστή συνάρτηση μετάφρασης για το framework σας. Ανιχνεύει τη βιβλιοθήκη i18n, δημιουργεί σημασιολογικά κλειδιά ομαδοποιημένα ανά component ή λειτουργία, ενημερώνει τα αρχεία γλωσσών και επαληθεύει ότι το build εξακολουθεί να ολοκληρώνεται επιτυχώς.
/i18n-wrap src/components/
/i18n-wrap src/ --framework=react-i18nextΤι κάνει
- Ανίχνευση framework: αναγνωρίζει τη βιβλιοθήκη i18n και τη συνάρτηση μετάφρασής της (t, $t, $_, gettext κ.λπ.)
- Δημιουργία σημασιολογικών κλειδιών: δημιουργεί εύληπτα κλειδιά όπως nav.signIn και errors.notFound αντί για γενικές ετικέτες
- Ενημέρωση αρχείων γλωσσών: προσθέτει νέα κλειδιά στο αρχείο της γλώσσας προέλευσης, στη σωστή μορφή (JSON, YAML, PO κ.λπ.)
- Επαλήθευση build: εκτελεί τις εντολές build, lint και test μετά την περιτύλιξη, ώστε να εντοπίζονται τυχόν παλινδρομήσεις
Υποστηριζόμενα frameworks
Και οι δύο εντολές ανιχνεύουν αυτόματα το framework από τις εξαρτήσεις του έργου σας. Μπορείτε επίσης να το καθορίσετε ρητά με τη σημαία --framework. Ακολουθούν τα 10 υποστηριζόμενα frameworks με τις συναρτήσεις μετάφρασης και τις μορφές πληθυντικού τους.
| Framework | Συνάρτηση μετάφρασης | Μορφή πληθυντικού |
|---|---|---|
| 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 |
Εγκατάσταση
Αντιγράψτε τα αρχεία εντολών στον κατάλογο .claude/commands/. Αυτό ήταν — χωρίς εξαρτήσεις και χωρίς ρυθμίσεις. Οι εντολές είναι απλά αρχεία Markdown που μπορεί να εκτελέσει οποιοσδήποτε βοηθός προγραμματισμού AI.
mkdir -p .claude/commands
cp commands/i18n-review.md .claude/commands/
cp commands/i18n-wrap.md .claude/commands/Παραδείγματα χρήσης
Έργο React
Ελέγξτε μια εφαρμογή React που χρησιμοποιεί react-i18next και έπειτα περιτυλίξτε όλες τις συμβολοσειρές που είναι ενσωματωμένες στον κώδικα. Οι εντολές ανιχνεύουν το react-i18next από το package.json και χρησιμοποιούν τη σωστή συνάρτηση t() και τη μορφή πληθυντικού 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.jsonΈργο Django
Ελέγξτε τα templates και τα views Django για προβλήματα i18n και έπειτα περιτυλίξτε τις συμβολοσειρές με gettext. Οι εντολές ανιχνεύουν το Django από το settings.py και χρησιμοποιούν _() για απλές συμβολοσειρές και ngettext() για πληθυντικούς.
# 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Σχετικοί οδηγοί για frameworks
Δοκιμάστε τώρα το i18n Agent
Αφήστε εδώ το αρχείο μετάφρασής σας
JSON, YAML, PO, XML, CSV, Markdown, Properties
ή κάντε κλικ για να επιλέξετε αρχείο
Γλώσσες-στόχοι