fix(i18n): complete zh_TW locale coverage (#13792)
This updates the Traditional Chinese (`zh_TW`) locale coverage across Chatwoot so the app no longer falls back to English for missing backend, dashboard, widget, and survey strings. ## How to test 1. Start Chatwoot locally and switch the UI locale to Traditional Chinese (`zh_TW`). 2. Walk through the main product areas: dashboard, settings, inbox management, help center, automations, reports, widget, and survey flows. 3. Confirm the UI surfaces translated Traditional Chinese copy instead of English fallbacks. 4. Spot-check newly added locale surfaces such as secure password messaging and snooze UI copy. --------- Co-authored-by: Sojan Jose <sojan@pepalo.com>
This commit is contained in:
@@ -1,60 +1,60 @@
|
||||
#Additional translations at https://github.com/plataformatec/devise/wiki/I18n
|
||||
zh_TW:
|
||||
devise:
|
||||
confirmations:
|
||||
confirmed: "您的信箱已通過驗證,現在您已成功登入。"
|
||||
send_instructions: "您將在幾分鐘後收到一封電子郵件,內有驗證帳號的步驟說明。"
|
||||
send_paranoid_instructions: "如果我們有您的信箱,您將會收到一封驗證您的帳號的電子郵件。"
|
||||
confirmed: 您的信箱已通過驗證,現在您已成功登入。
|
||||
send_instructions: 您將在幾分鐘後收到一封電子郵件,內有驗證帳號的步驟說明。
|
||||
send_paranoid_instructions: 如果我們有您的信箱,您將會收到一封驗證您的帳號的電子郵件。
|
||||
failure:
|
||||
already_authenticated: "您已經登入。"
|
||||
inactive: "您的帳號尚未被啟用。"
|
||||
invalid: "%{authentication_keys}密碼或帳號尚未審核。"
|
||||
locked: "您的帳號已被鎖定。"
|
||||
last_attempt: "您還有最後一次嘗試機會,再次失敗您的帳號將會被鎖定。"
|
||||
not_found_in_database: "%{authentication_keys}或密碼錯誤。"
|
||||
timeout: "您的登入時效過期,請重新登入。"
|
||||
unauthenticated: "您需要先登入或註冊後才能繼續。"
|
||||
unconfirmed: "您的帳號需要經過驗證後,才能繼續。"
|
||||
already_authenticated: 您已經登入。
|
||||
inactive: 您的帳號尚未被啟用。
|
||||
invalid: '%{authentication_keys}密碼或帳號尚未審核。'
|
||||
locked: 您的帳號已被鎖定。
|
||||
last_attempt: 您還有最後一次嘗試機會,再次失敗您的帳號將會被鎖定。
|
||||
not_found_in_database: '%{authentication_keys}或密碼錯誤。'
|
||||
timeout: 您的登入時效過期,請重新登入。
|
||||
unauthenticated: 您需要先登入或註冊後才能繼續。
|
||||
unconfirmed: 您的帳號需要經過驗證後,才能繼續。
|
||||
mailer:
|
||||
confirmation_instructions:
|
||||
subject: "確認指令"
|
||||
subject: 確認指令
|
||||
reset_password_instructions:
|
||||
subject: "重設密碼"
|
||||
subject: 重設密碼
|
||||
unlock_instructions:
|
||||
subject: "帳號解鎖步驟"
|
||||
subject: 帳號解鎖步驟
|
||||
password_change:
|
||||
subject: "密碼已更改"
|
||||
subject: 密碼已更改
|
||||
omniauth_callbacks:
|
||||
failure: "因為 %{reason},無法從 %{kind} 驗證。"
|
||||
success: "成功從 %{kind} 驗證。"
|
||||
failure: 因為 %{reason},無法從 %{kind} 驗證。
|
||||
success: 成功從 %{kind} 驗證。
|
||||
passwords:
|
||||
no_token: "這是密碼重設頁面,僅能透過密碼重設信件進入。如果您是透過重設信件進入的,請確認您的網址是完整的。"
|
||||
send_instructions: "您將在幾分鐘後收到一封電子郵件,內有重新設定密碼的步驟說明。"
|
||||
send_paranoid_instructions: "如果我們有您的信箱,您將會收到一封內含可重新設定密碼連結的電子郵件。"
|
||||
updated: "您的密碼已被修改,您現在已經登入。"
|
||||
updated_not_active: "您的密碼已被修改。"
|
||||
no_token: 這是密碼重設頁面,僅能透過密碼重設信件進入。如果您是透過重設信件進入的,請確認您的網址是完整的。
|
||||
send_instructions: 您將在幾分鐘後收到一封電子郵件,內有重新設定密碼的步驟說明。
|
||||
send_paranoid_instructions: 如果我們有您的信箱,您將會收到一封內含可重新設定密碼連結的電子郵件。
|
||||
updated: 您的密碼已被修改,您現在已經登入。
|
||||
updated_not_active: 您的密碼已被修改。
|
||||
registrations:
|
||||
destroyed: "再會!您的帳號已被取消。有緣再會。"
|
||||
signed_up: "註冊成功,歡迎!"
|
||||
signed_up_but_inactive: "您已註冊成功。然而因為您的帳號尚未啓動,暫時無法登入,抱歉!"
|
||||
signed_up_but_locked: "您已註冊成功。 然而因為您的帳號已被鎖定,暫時無法登入,抱歉!"
|
||||
signed_up_but_unconfirmed: "確認信件已送至您的 Email 信箱,請點擊信件內連結以啓動您的帳號。"
|
||||
update_needs_confirmation: "您已經成功的更新帳號資訊,但我們仍需確認您的電子信箱,請至新信箱收信並點擊連結以確認您的新電子郵件帳號。"
|
||||
updated: "您已經成功的更新帳號資訊。"
|
||||
destroyed: 再會!您的帳號已被取消。有緣再會。
|
||||
signed_up: 註冊成功,歡迎!
|
||||
signed_up_but_inactive: 您已註冊成功。然而因為您的帳號尚未啓動,暫時無法登入,抱歉!
|
||||
signed_up_but_locked: 您已註冊成功。 然而因為您的帳號已被鎖定,暫時無法登入,抱歉!
|
||||
signed_up_but_unconfirmed: 確認信件已送至您的 Email 信箱,請點擊信件內連結以啓動您的帳號。
|
||||
update_needs_confirmation: 您已經成功的更新帳號資訊,但我們仍需確認您的電子信箱,請至新信箱收信並點擊連結以確認您的新電子郵件帳號。
|
||||
updated: 您已經成功的更新帳號資訊。
|
||||
sessions:
|
||||
signed_in: "成功登入。"
|
||||
signed_out: "成功登出。"
|
||||
already_signed_out: "成功登出。"
|
||||
signed_in: 成功登入。
|
||||
signed_out: 成功登出。
|
||||
already_signed_out: 成功登出。
|
||||
unlocks:
|
||||
send_instructions: "您將在幾分鐘後收到一封電子郵件,內有將帳號解除鎖定的步驟說明。"
|
||||
send_paranoid_instructions: "如果您的帳號已存在,您的電子信箱將會收到如何解鎖帳號的指示。"
|
||||
unlocked: "您的帳號已被解鎖,現在已經登入。"
|
||||
send_instructions: 您將在幾分鐘後收到一封電子郵件,內有將帳號解除鎖定的步驟說明。
|
||||
send_paranoid_instructions: 如果您的帳號已存在,您的電子信箱將會收到如何解鎖帳號的指示。
|
||||
unlocked: 您的帳號已被解鎖,現在已經登入。
|
||||
errors:
|
||||
messages:
|
||||
already_confirmed: "已經驗證,請直接登入。"
|
||||
confirmation_period_expired: "必須在 %{period} 內驗證,請重新申請。"
|
||||
expired: "已經過期,請重新申請。"
|
||||
not_found: "找不到。"
|
||||
not_locked: "並未被鎖定。"
|
||||
already_confirmed: 已經驗證,請直接登入。
|
||||
confirmation_period_expired: 必須在 %{period} 內驗證,請重新申請。
|
||||
expired: 已經過期,請重新申請。
|
||||
not_found: 找不到。
|
||||
not_locked: 並未被鎖定。
|
||||
not_saved:
|
||||
other: "有 %{count} 個錯誤導致 %{resource} 不能被儲存:"
|
||||
one: 1 個錯誤禁止儲存此 %{resource}:
|
||||
other: 有 %{count} 個錯誤導致 %{resource} 不能被儲存:
|
||||
|
||||
70
config/locales/secure_password.zh_TW.yml
Normal file
70
config/locales/secure_password.zh_TW.yml
Normal file
@@ -0,0 +1,70 @@
|
||||
zh_TW:
|
||||
secure_password:
|
||||
character:
|
||||
one: 字元
|
||||
other: 字元
|
||||
types:
|
||||
uppercase: 大寫字母
|
||||
downcase: 小寫字母
|
||||
lowercase: 小寫字母
|
||||
number: 數字
|
||||
special: 特殊字元
|
||||
password_has_required_content:
|
||||
errors:
|
||||
messages:
|
||||
unknown_characters: 包含 %{count} 個無效%{subject}
|
||||
minimum_characters: 至少要包含 %{count} 個%{type}%{subject}
|
||||
maximum_characters: 必須少於 %{count} 個%{type}%{subject}
|
||||
minimum_length: 至少要包含 %{count} 個%{subject}
|
||||
maximum_length: 必須少於 %{count} 個%{subject}
|
||||
password_disallows_frequent_reuse:
|
||||
errors:
|
||||
messages:
|
||||
password_is_recent: 最近 %{count} 次使用過的密碼不得重複使用
|
||||
password_disallows_frequent_changes:
|
||||
errors:
|
||||
messages:
|
||||
password_is_recent: 每個 %{timeframe} 內只能更改一次密碼
|
||||
password_requires_regular_updates:
|
||||
alerts:
|
||||
messages:
|
||||
password_updated: 您的密碼已更新。
|
||||
errors:
|
||||
messages:
|
||||
password_expired: 您的密碼已過期。密碼必須每隔 %{timeframe} 更換一次
|
||||
datetime:
|
||||
precise_distance_in_words:
|
||||
half_a_minute: 半分鐘
|
||||
less_than_x_seconds:
|
||||
one: 1秒
|
||||
other: '%{count} 秒'
|
||||
x_seconds:
|
||||
one: 1秒
|
||||
other: '%{count} 秒'
|
||||
less_than_x_minutes:
|
||||
one: 一分鐘
|
||||
other: '%{count} 分鐘'
|
||||
x_minutes:
|
||||
one: 1分鐘
|
||||
other: '%{count} 分鐘'
|
||||
about_x_hours:
|
||||
one: 1小時
|
||||
other: '%{count} 小時'
|
||||
x_days:
|
||||
one: 1天
|
||||
other: '%{count} 天'
|
||||
about_x_months:
|
||||
one: 1個月
|
||||
other: '%{count} 個月'
|
||||
x_months:
|
||||
one: 1個月
|
||||
other: '%{count} 個月'
|
||||
about_x_years:
|
||||
one: 1年
|
||||
other: '%{count} 年'
|
||||
over_x_years:
|
||||
one: 1年
|
||||
other: '%{count} 年'
|
||||
almost_x_years:
|
||||
one: 1年
|
||||
other: '%{count} 年'
|
||||
@@ -417,13 +417,17 @@ zh_TW:
|
||||
button: 開啟對話
|
||||
time_units:
|
||||
days:
|
||||
other: '%{count} days'
|
||||
one: '%{count} 天'
|
||||
other: '%{count} 天'
|
||||
hours:
|
||||
other: '%{count} hours'
|
||||
one: '%{count} 小時'
|
||||
other: '%{count} 小時'
|
||||
minutes:
|
||||
other: '%{count} minutes'
|
||||
one: '%{count} 分鐘'
|
||||
other: '%{count} 分鐘'
|
||||
seconds:
|
||||
other: '%{count} seconds'
|
||||
one: '%{count} 秒'
|
||||
other: '%{count} 秒'
|
||||
auto_assignment:
|
||||
default_policy_name: 'Default Policy'
|
||||
policy_actor: 'Automation System via %{policy_name}'
|
||||
|
||||
Reference in New Issue
Block a user