Skip to content

feat: add Traditional Chinese locale - #344

Open
kaiyasi wants to merge 1 commit into
wayle-rs:masterfrom
kaiyasi:feat/wayle-translation
Open

feat: add Traditional Chinese locale#344
kaiyasi wants to merge 1 commit into
wayle-rs:masterfrom
kaiyasi:feat/wayle-translation

Conversation

@kaiyasi

@kaiyasi kaiyasi commented Aug 7, 2026

Copy link
Copy Markdown

Summary

  • Add Traditional Chinese (zh-TW) translations for the Wayle settings and configuration UI.
  • Add Traditional Chinese translations for the Wayle shell, status bar, OSD, notifications, and dropdowns.
  • Cover all current locale files with matching message keys and placeholders.
  • Add zh-TW as the third supported locale after en-US and fr.
  • No Rust code changes are required; the existing locale loader discovers it automatically.

Validation

  • cargo test -p wayle-i18n --tests
  • cargo test -p wayle-shell --lib
  • All relevant tests passed.

Copilot AI lite review requested due to automatic review settings August 7, 2026 17:31
@github-actions github-actions Bot added area:shell area:i18n Internationalization labels Aug 7, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This PR adds a new Traditional Chinese (Taiwan) locale (zh-TW) across Wayle’s shell UI (bar, dropdowns, OSD, notifications, weather conditions) and the settings/configuration UI strings in wayle-i18n, expanding supported locales beyond en-US and fr.

Changes:

  • Add zh-TW Fluent (.ftl) translations for Wayle Shell UI surfaces (dropdowns, bar, OSD, notifications, weather conditions).
  • Add zh-TW translations for settings/configuration modules and pages in crates/wayle-i18n.
  • Introduce zh-TW settings/common string bundles for the settings UI.

Reviewed changes

Copilot reviewed 52 out of 52 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
crates/wayle-shell/locales/zh-TW/dropdowns/_weather.ftl Add zh-TW strings for the weather dropdown UI.
crates/wayle-shell/locales/zh-TW/dropdowns/_network.ftl Add zh-TW strings for the network dropdown UI.
crates/wayle-shell/locales/zh-TW/dropdowns/_media.ftl Add zh-TW strings for the media dropdown UI.
crates/wayle-shell/locales/zh-TW/dropdowns/_dashboard.ftl Add zh-TW strings for the dashboard dropdown UI.
crates/wayle-shell/locales/zh-TW/dropdowns/_calendar.ftl Add zh-TW strings for the calendar dropdown UI.
crates/wayle-shell/locales/zh-TW/dropdowns/_brightness.ftl Add zh-TW strings for the brightness dropdown UI.
crates/wayle-shell/locales/zh-TW/dropdowns/_bluetooth.ftl Add zh-TW strings for the bluetooth dropdown UI.
crates/wayle-shell/locales/zh-TW/dropdowns/_battery.ftl Add zh-TW strings for the battery dropdown UI.
crates/wayle-shell/locales/zh-TW/dropdowns/_audio.ftl Add zh-TW strings for the audio dropdown UI.
crates/wayle-shell/locales/zh-TW/_weather.ftl Add zh-TW weather condition names.
crates/wayle-shell/locales/zh-TW/_osd.ftl Add zh-TW on-screen display strings.
crates/wayle-shell/locales/zh-TW/_notification_popup.ftl Add zh-TW notification popup strings.
crates/wayle-shell/locales/zh-TW/_notification_dropdown.ftl Add zh-TW notification dropdown strings.
crates/wayle-shell/locales/zh-TW/_bar.ftl Add zh-TW status bar module labels.
crates/wayle-i18n/locales/zh-TW/config/modules/_world_clock.ftl Add zh-TW config strings for the world clock module.
crates/wayle-i18n/locales/zh-TW/config/modules/_window-title.ftl Add zh-TW config strings for the window title module.
crates/wayle-i18n/locales/zh-TW/config/modules/_weather.ftl Add zh-TW config strings for the weather module.
crates/wayle-i18n/locales/zh-TW/config/modules/_volume.ftl Add zh-TW config strings for the volume module.
crates/wayle-i18n/locales/zh-TW/config/modules/_systray.ftl Add zh-TW config strings for the systray module.
crates/wayle-i18n/locales/zh-TW/config/modules/_storage.ftl Add zh-TW config strings for the storage module.
crates/wayle-i18n/locales/zh-TW/config/modules/_separator.ftl Add zh-TW config strings for the separator module.
crates/wayle-i18n/locales/zh-TW/config/modules/_ram.ftl Add zh-TW config strings for the RAM module.
crates/wayle-i18n/locales/zh-TW/config/modules/_power.ftl Add zh-TW config strings for the power module.
crates/wayle-i18n/locales/zh-TW/config/modules/_notification.ftl Add zh-TW config strings for the notifications module.
crates/wayle-i18n/locales/zh-TW/config/modules/_niri-workspaces.ftl Add zh-TW config strings for the Niri workspaces module.
crates/wayle-i18n/locales/zh-TW/config/modules/_network.ftl Add zh-TW config strings for the network module.
crates/wayle-i18n/locales/zh-TW/config/modules/_netstat.ftl Add zh-TW config strings for the netstat module.
crates/wayle-i18n/locales/zh-TW/config/modules/_microphone.ftl Add zh-TW config strings for the microphone module.
crates/wayle-i18n/locales/zh-TW/config/modules/_media.ftl Add zh-TW config strings for the media module.
crates/wayle-i18n/locales/zh-TW/config/modules/_mango-workspaces.ftl Add zh-TW config strings for the Mango workspaces module.
crates/wayle-i18n/locales/zh-TW/config/modules/_keyboard-input.ftl Add zh-TW config strings for the keyboard input module.
crates/wayle-i18n/locales/zh-TW/config/modules/_keybind-mode.ftl Add zh-TW config strings for the keybind mode module.
crates/wayle-i18n/locales/zh-TW/config/modules/_idle-inhibit.ftl Add zh-TW config strings for the idle inhibit module.
crates/wayle-i18n/locales/zh-TW/config/modules/_hyprsunset.ftl Add zh-TW config strings for the Hyprsunset module.
crates/wayle-i18n/locales/zh-TW/config/modules/_hyprland-workspaces.ftl Add zh-TW config strings for the Hyprland workspaces module.
crates/wayle-i18n/locales/zh-TW/config/modules/_dashboard.ftl Add zh-TW config strings for the dashboard module.
crates/wayle-i18n/locales/zh-TW/config/modules/_custom.ftl Add zh-TW config strings for the custom module.
crates/wayle-i18n/locales/zh-TW/config/modules/_cpu.ftl Add zh-TW config strings for the CPU module.
crates/wayle-i18n/locales/zh-TW/config/modules/_clock.ftl Add zh-TW config strings for the clock module.
crates/wayle-i18n/locales/zh-TW/config/modules/_cava.ftl Add zh-TW config strings for the Cava module.
crates/wayle-i18n/locales/zh-TW/config/modules/_brightness.ftl Add zh-TW config strings for the brightness module.
crates/wayle-i18n/locales/zh-TW/config/modules/_bluetooth.ftl Add zh-TW config strings for the bluetooth module.
crates/wayle-i18n/locales/zh-TW/config/modules/_battery.ftl Add zh-TW config strings for the battery module.
crates/wayle-i18n/locales/zh-TW/config/_wallpaper.ftl Add zh-TW strings for wallpaper settings UI.
crates/wayle-i18n/locales/zh-TW/config/_styling.ftl Add zh-TW strings for styling/theme settings UI.
crates/wayle-i18n/locales/zh-TW/config/_osd.ftl Add zh-TW strings for OSD settings UI.
crates/wayle-i18n/locales/zh-TW/config/_notification_popup.ftl Add zh-TW strings for notification popup settings UI.
crates/wayle-i18n/locales/zh-TW/config/_modules.ftl Add zh-TW strings for module enums/shared module labels.
crates/wayle-i18n/locales/zh-TW/config/_general.ftl Add zh-TW strings for general settings UI.
crates/wayle-i18n/locales/zh-TW/config/_bar.ftl Add zh-TW strings for bar settings UI.
crates/wayle-i18n/locales/zh-TW/_settings.ftl Add zh-TW strings for the settings application UI.
crates/wayle-i18n/locales/zh-TW/_common.ftl Add zh-TW shared/common UI strings.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +5 to +6
settings-modules-window-title-format = 標籤格式
.description = 格式字串,使用佔位符(請依欄位內容選用)
Comment on lines +14 to +15
settings-modules-weather-format = 標籤格式
.description = 格式字串,使用佔位符(請依欄位內容選用)
Comment on lines +11 to +12
settings-modules-storage-format = 顯示格式
.description = 格式字串,使用佔位符(請依欄位內容選用)
Comment on lines +8 to +9
settings-modules-ram-format = 顯示格式
.description = 格式字串,使用佔位符(請依欄位內容選用)
Comment on lines +11 to +12
settings-modules-netstat-format = 顯示格式
.description = 格式字串,使用佔位符(請依欄位內容選用)
Comment on lines +11 to +12
settings-modules-cpu-format = 顯示格式
.description = 格式字串,使用佔位符(請依欄位內容選用)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:i18n Internationalization area:shell

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants