Skip to content

fix(i18n): fix zh-TW mixing Simplified Chinese characters and add missing keys#3307

Open
dwakshar wants to merge 2 commits into
RocketChat:masterfrom
dwakshar:fix/zh-TW-translation-consistency
Open

fix(i18n): fix zh-TW mixing Simplified Chinese characters and add missing keys#3307
dwakshar wants to merge 2 commits into
RocketChat:masterfrom
dwakshar:fix/zh-TW-translation-consistency

Conversation

@dwakshar
Copy link
Copy Markdown

@dwakshar dwakshar commented Apr 22, 2026

Noticed this while going through the Electron app with zh-TW set — a bunch of UI strings were either showing up in Simplified Chinese or just falling back to English because the keys didn't exist in the zh-TW file at all. Figured I'd fix both problems in one go.

The Two Issues

  • The zh-TW file was missing entire sections that zh-CN had — downloads panel, video call UI, media/microphone permission dialogs, sidebar extras. So users in Taiwan were either seeing English or Simplified Chinese for those parts of the UI.
  • On top of that, some existing strings were clearly copy-pasted from zh-CN and never properly converted — things like 設置 instead of 設定, 攝像頭 instead of 攝影機, 屏幕 instead of 螢幕.

Changes

  • Added missing sections: downloads, videoCall, mediaPermission, microphonePermissionDenied, sidebar clearCache, clearStorageData, disableGpu, helpMenu
  • Corrected Simplified terms still sitting in the zh-TW file: 設置→設定, 攝像頭→攝影機, 視頻→影片, 屏幕→螢幕, 消息→訊息, 搜索→搜尋, 網絡→網路
  • Fixed touchBar.formatting which was untranslated (showing "Formatting" in English)
  • All strings now follow standard Taiwan zh-TW conventions

Screenshots (After)

The previous version showed mixed Simplified Chinese or English fallback
for these sections. Below are the corrected zh-TW translations after the fix.

Settings

settings-after

Context menu

context-after

Fixes #3306

Summary by CodeRabbit

  • New Features

    • Permission dialogs for microphone/camera with settings actions
    • Downloads management UI with search, filters, per-item controls (pause/resume/retry/cancel/remove/copy/show folder) and progress/results
    • Video call loading and error state messages
  • Documentation

    • Updated Traditional Chinese UI labels, menu terminology, sidebar entries, settings option texts, and touch bar formatting label

- Added missing keys: downloads, videoCall, mediaPermission,
  microphonePermissionDenied, sidebar extras (clearCache, clearStorageData,
  downloads, settings), disableGpu, helpMenu
- Fixed Simplified terms: 設置→設定, 攝像頭→攝影機, 視頻→影片,
  屏幕→螢幕, 消息→訊息, 搜索→搜尋, 網絡→網路
- Fixed touchBar formatting key (was untranslated)
- Ensured all terminology follows Taiwan standard zh-TW conventions

Fixes RocketChat#3306
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 22, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 9d28be93-6db8-4621-a797-e9bace490ca9

📥 Commits

Reviewing files that changed from the base of the PR and between b9f9018 and de1e707.

📒 Files selected for processing (1)
  • src/i18n/zh-TW.i18n.json
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/i18n/zh-TW.i18n.json

Walkthrough

Updated Traditional Chinese (zh-TW) translation file to add new UI text for media permission dialogs, downloads, video call states, and new settings/menu entries; also corrected Taiwan-specific terminology and adjusted several existing labels.

Changes

Cohort / File(s) Summary
Localization: zh-TW file
src/i18n/zh-TW.i18n.json
Added translations: dialog.mediaPermission, dialog.microphonePermissionDenied, new top-level downloads block (UI filters, per-item actions, progress/result), videoCall loading/error states, expanded settings.options (report, flashFrame, internalVideoChatWindow), added sidebar labels (downloads, settings, clear cache/storage), updated menus (disableGpu, downloads, settings, helpMenu label), and small touchBar/formatting and terminology corrections (e.g., 作業系統, 色彩主題).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main changes: fixing Simplified Chinese characters in zh-TW and adding missing translation keys.
Linked Issues check ✅ Passed The PR comprehensively addresses issue #3306 by adding missing translation sections and correcting Simplified Chinese terms to proper Taiwan Traditional Chinese equivalents.
Out of Scope Changes check ✅ Passed All changes are directly related to fixing the zh-TW translation file, which is the sole objective of the linked issue.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@src/i18n/zh-TW.i18n.json`:
- Around line 135-145: The translation for the key downloads.item.errored
currently reads "下載已取消" which indicates cancellation but is used by
DownloadItem.tsx for error states; update the value of "item.errored" under the
downloads namespace to an error-state phrasing such as "下載失敗" or "下載發生錯誤" so it
accurately reflects a failed download instead of a cancelled one and ensure
DownloadItem.tsx continues to reference downloads.item.errored.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 6bf33d58-9e57-46e7-8f2c-891c43b6ea50

📥 Commits

Reviewing files that changed from the base of the PR and between d865454 and b9f9018.

📒 Files selected for processing (1)
  • src/i18n/zh-TW.i18n.json
📜 Review details
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: Ram-sah19
Repo: RocketChat/Rocket.Chat.Electron PR: 3254
File: .github/workflows/build-release.yml:80-94
Timestamp: 2026-03-11T06:38:40.426Z
Learning: In the RocketChat/Rocket.Chat.Electron repository, the issues flagged in `.github/workflows/build-release.yml` (e.g., `node12` runtime in the release action and missing `snapcraft_token` input), i18n files, and `electron-builder.json` are pre-existing in the `develop` branch and are pulled in during merge conflict resolution. Do not flag these as new issues introduced by PRs that only modify `src/injected.ts` and `src/ui/main/rootWindow.ts`.

Comment thread src/i18n/zh-TW.i18n.json
- Added missing keys: downloads, videoCall, mediaPermission,
  microphonePermissionDenied, sidebar extras (clearCache, clearStorageData,
  downloads, settings), disableGpu, helpMenu
- Fixed Simplified terms: 設置→設定, 攝像頭→攝影機, 視頻→影片,
  屏幕→螢幕, 消息→訊息, 搜索→搜尋, 網絡→網路
- Fixed touchBar formatting key (was untranslated)
- Ensured all terminology follows Taiwan standard zh-TW conventions

Fixes RocketChat#3306
Copy link
Copy Markdown
Author

@dwakshar dwakshar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

下載失敗 → simple, standard, widely used ✅

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[I18n] Incomplete Traditional Chinese (zh-TW) translation in Windows Desktop App

1 participant