Feat/i18n (#92)
* feat: add vue-i18n
* feat: add vue-i18n
* feat: add vue-i18n
* feat: add language class
* add: en templates and configs
* add: en names
* refactor: name gender id and sect id
* feat(i18n): add gettext infrastructure for dynamic text translation (#81)
* feat(i18n): add gettext infrastructure for dynamic text translation
- Add src/i18n/ module with t() translation function
- Add .po/.mo files for zh_CN and en_US locales
- Update LanguageManager to reload translations on language change
- Add comprehensive tests (14 tests, all passing)
- Add implementation spec at docs/specs/i18n-dynamic-text.md
Phase 1 of i18n dynamic text implementation.
* feat(i18n): expand .po files with comprehensive translation entries
Add translation messages for:
- Battle result messages (fatal/non-fatal outcomes)
- Fortune event messages (item discovery, cultivation gains)
- Misfortune event messages (losses, damage, regression)
- Death reason messages
- Item exchange messages (equip, sell, discard)
- Single choice context and option labels
- Common labels (weapon, auxiliary, technique, elixir)
Both zh_CN and en_US locales updated with matching entries.
* test: add .po file integrity tests
* feat: i18n for actions
* feat: i18n for effects
* feat: i18n for gathering
* feat: i18n for classes
* feat: i18n for classes
* feat: i18n for classes
* feat: i18n for classes
* fix bugs
* fix bugs
* fix bugs
* fix bugs
* fix bugs
* fix bugs
* fix bugs
* fix bugs
* update csv
* update world info
* update prompt
* update prompt
* fix bug
* fix bug
* fix bug
* fix bug
* fix bug
* fix bug
* fix bug
* fix bug
* fix bug
* update
* update
* update
* update
* update
* update
* update
---------
Co-authored-by: Zihao Xu <xzhseh@gmail.com>