Repository navigation
feat(i18n): add zh-TW locale - #1893
Conversation
PR Summary by QodoAdd Traditional Chinese locale and distinguish regional language options
AI Description
Diagram
High-Level Assessment
Files changed (5)
|
Code Review by Qodo
1.
|
|
Thanks for adding this! The code looks good, but main has gained some new UI strings since CI ran. Testing the merge against current main shows 57 missing keys and 4 obsolete keys in zh-TW.json. Could you update your branch from main, translate the new keys, remove the obsolete ones, and rerun pnpm i18n:check zh-TW? That’s the only blocker I found. |
- Add a Traditional Chinese (Taiwan) locale written with Taiwan vocabulary, not a mechanical conversion of zh-CN - Keep the key set aligned with zh-CN, using only `_other` plurals; `pnpm i18n:check zh-TW` passes - Cross-check strings against ja-JP and their UI usage, e.g. `formats.never` labels an API key with no expiry, not an event that never happened - Register zh-TW in supportedLocales and loadLocale, as done for ja-JP
- The language picker labelled zh-CN and zh-TW identically because only the language subtag was looked up - Show the region only when several supported locales share a language - Move getLocaleLabel out of the preferences route so it can be tested - Test assertions depend on Node's full ICU data
- Use the zh-TW invitation strings for workspace invitation emails - Add zh-TW copy to the magic link, OTP, password reset and notification templates, plus the auth email subjects - Match the full `zh-tw` locale rather than the `zh` language code
6c7b40e to
60fe5b1
Compare
- Translate the 57 keys main added for Home, Inbox, My tasks and the sidebar, plus ticket ID errors and the task modal status error - Remove the 4 keys main dropped: navigation.notifications, navigation.sidebar.overview, notifications.title and notifications.shortcuts.open - Keep only `_other` plurals and the existing key order; `pnpm i18n:check zh-TW` passes
60fe5b1 to
24d0437
Compare
|
thanks for catching that |
### Features - make cross-column dragged card sortable: usekaneo#1894 - **i18n:** add zh-TW locale: usekaneo#1893 - **integrations:** add label-based sync in advanced settings: usekaneo#1908 ### Bug Fixes - **web:** show the task label editor on narrow screens: usekaneo#1924 - convert ineligible contributions to draft pull requests: [291da4a](usekaneo@291da4a) - **i18n:** translate the zh-CN strings added since the last sync: usekaneo#1916 - **ci:** exclude skipped events from eligibility concurrency: usekaneo#1917 ### Credits Huge thanks to @VictorOnwukwe, @kenny-ish, @ApplesBear-X, @tinsever, and @FunnyQ for helping!
What changed?
Adds a Traditional Chinese locale,
zh-TW.i18n/zh-TW.jsonnot a character conversion of zh-CN. For example, repo and token stay in English, which is how developers usually say them. and other wordingszhsubtag. It now adds the region only when two supported locales share a language. The other locales keep their current labels. I movedgetLocaleLabelintoapps/web/src/lib/i18n/get-locale-label.tsso it could have a test.Related issue
None.
How did you check it?
Checked at dev server.
pnpm i18n:check zh-TWpasses after the rebase.