Skip to content

🌐 Add the missing translations of zh-Hant#26579

Merged
cathysarisky merged 3 commits intoTryGhost:mainfrom
southp:add/complete-zh-Hant-translations
Apr 3, 2026
Merged

🌐 Add the missing translations of zh-Hant#26579
cathysarisky merged 3 commits intoTryGhost:mainfrom
southp:add/complete-zh-Hant-translations

Conversation

@southp
Copy link
Copy Markdown
Contributor

@southp southp commented Feb 25, 2026

This PR adds all the missing translations of zh-Hant, related to #23361

  • The polite form “您” is used for the pronoun “you” for consistency, although a more informal “你” might match the tone of Ghost better. However, it has an extra benefit of being gender neutral, so might be a better choice after all.
  • The product names like “AOL Mail”, “Hey”, “Gmail”, etc. are kept as they are.
  • The tricky one is “Stripe billing portal”. The “billing portal” part is not capitalized in the original string, so I suppose it means a functionality. However, Stripe actually do have a product called Stripe Billing with a functionality called Billing customer portal. Based on these, there are two directions:
    1. The original string should be updated as Stripe Billing portal.
    2. Keep it as it is and translate it as a functionality. This is the route I’m taking in this PR, resulting in “Stripe 付款門戶”. For more context, translating “portal” as “門戶” is based on Stripe’s official support documentation in Simplified Chinese.

cc @cathysarisky since this is a language PR :)


Note

Low Risk
Translation-only changes to zh-Hant locale JSON; no runtime logic changes, with minimal risk beyond wording/terminology accuracy.

Overview
Fills in previously missing zh-Hant strings across comments, Ghost emails, and Portal so users no longer see blank labels/messages.

Adds Traditional Chinese translations for commenting states/actions (e.g. commenting disabled, admin view, missing linked comment), member/email copy (Manage your preferences), and several billing/support/inbox-provider prompts in Portal (e.g. Stripe billing portal session errors, billing portal open/update failures, Next payment, and “Open Gmail/Outlook/Yahoo…” actions).

Written by Cursor Bugbot for commit ed8cc29. This will update automatically on new commits. Configure here.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Feb 25, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

This pull request fills previously empty Traditional Chinese (zh-Hant) translation strings in three locale files: ghost/i18n/locales/zh-Hant/comments.json (6 keys), ghost/i18n/locales/zh-Hant/ghost.json (1 key), and ghost/i18n/locales/zh-Hant/portal.json (14 keys). The changes populate comment-related messages, a preference-management label, and billing/portal and email service labels. A total of 21 translation entries were updated.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: adding missing Traditional Chinese (zh-Hant) translations across multiple locale files, which matches the changeset perfectly.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description check ✅ Passed The pull request description clearly explains the changes: adding missing zh-Hant translations across multiple locale files with specific decisions documented.

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

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

Comment thread ghost/i18n/locales/zh-Hant/portal.json Outdated
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 `@ghost/i18n/locales/zh-Hant/portal.json`:
- Line 132: The translation value for the JSON key "Open iCloud Mail" contains a
typo ("開啟iCould Mail"); update the value to correctly spell the product name as
"開啟iCloud Mail" so the entry reads "Open iCloud Mail": "開啟iCloud Mail".

ℹ️ Review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 71094dd and e4ebcc34da2af8a13fe552e2e7490cb004510ac8.

📒 Files selected for processing (3)
  • ghost/i18n/locales/zh-Hant/comments.json
  • ghost/i18n/locales/zh-Hant/ghost.json
  • ghost/i18n/locales/zh-Hant/portal.json

Comment thread ghost/i18n/locales/zh-Hant/portal.json Outdated
@southp southp changed the title Add the missing translations of zh-Hant 🌐 Add the missing translations of zh-Hant Feb 25, 2026
Comment thread ghost/i18n/locales/zh-Hant/comments.json Outdated
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 `@ghost/i18n/locales/zh-Hant/portal.json`:
- Line 122: Update the zh-Hant translation for the key "Next payment" in
portal.json to use the clearer phrase "下次付款" instead of "下次費用"; locate the entry
with the exact key "Next payment" and replace its value string to "下次付款" so the
billing UI displays the correct wording.

ℹ️ Review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between e4ebcc34da2af8a13fe552e2e7490cb004510ac8 and 620cdbe216867a34beb7e4ff75dd3c054c67d13f.

📒 Files selected for processing (1)
  • ghost/i18n/locales/zh-Hant/portal.json

Comment thread ghost/i18n/locales/zh-Hant/portal.json Outdated
@southp southp force-pushed the add/complete-zh-Hant-translations branch 2 times, most recently from 1e4e34b to 4ac2536 Compare February 25, 2026 03:37
Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

Comment thread ghost/i18n/locales/zh-Hant/comments.json Outdated
Comment thread ghost/i18n/locales/zh-Hant/portal.json Outdated
Comment thread ghost/i18n/locales/zh-Hant/portal.json Outdated
Comment thread ghost/i18n/locales/zh-Hant/portal.json Outdated
@cursor
Copy link
Copy Markdown

cursor bot commented Mar 12, 2026

You have run out of free Bugbot PR reviews for this billing cycle. This will reset on April 3.

To receive reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

@southp southp force-pushed the add/complete-zh-Hant-translations branch from de771d8 to 507af64 Compare March 12, 2026 02:50
@southp
Copy link
Copy Markdown
Contributor Author

southp commented Mar 12, 2026

Thanks for the great feedback, @sailor95 . Loved them! I've put all of them in along with a squash-and-rebase to resolve code conflicts in 3a76771. Please feel free to let me know if you have any further feedback 🙇🏼

… and `portal.json`

Props to @sailor95's wonderful feedback on improving the translation quality.
@southp southp force-pushed the add/complete-zh-Hant-translations branch from 507af64 to 3a76771 Compare March 12, 2026 03:08
@southp
Copy link
Copy Markdown
Contributor Author

southp commented Mar 12, 2026

Hmm, it looks like Ghost-CLI tests failed due to this dependency installation error:

error An unexpected error occurred: "https://registry.yarnpkg.com/@tryghost/logging/-/logging-2.1.8.tgz: Request failed \"500 Internal Server Error\"".

@cathysarisky could you help me clarify what I can do? I'd be grateful :)

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 2, 2026

Thanks for contributing to Ghost's i18n :)

This PR has been automatically marked as stale because there has not been any activity here in 3 weeks.
I18n PRs tend to get out of date quickly, so we're closing them to keep the PR list clean.

If you're still interested in working on this PR, please let us know. Otherwise this PR will be closed shortly, but can always be reopened later. Thank you for understanding 🙂

@github-actions github-actions bot added the stale [triage] Issues that were closed to to lack of traction label Apr 2, 2026
Comment thread ghost/i18n/locales/zh-Hant/portal.json Outdated
"Open Feedbin": "開啟 Feedbin",
"Open Gmail": "開啟 Gmail",
"Open Hey": "開啟 Hey",
"Open iCloud Mail": "開啟 iCould Mail",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

is this an error? iCould vs iCloud? :)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

OMMMMGGGG sorry about this. coderabbitai flagged this like ages ago but I mistakenly brought it back during the previous round of code conflict resolution. It is now fixed by 47db319 🙇🏻

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud bot commented Apr 3, 2026

@github-actions github-actions bot removed the stale [triage] Issues that were closed to to lack of traction label Apr 3, 2026
@cathysarisky cathysarisky merged commit f2ddb93 into TryGhost:main Apr 3, 2026
39 checks passed
franky19 pushed a commit to franky19/Ghost that referenced this pull request Apr 18, 2026
…6579)

This PR adds all the missing translations of `zh-Hant`, related to
TryGhost#23361

* The polite form “您” is used for the pronoun “you” for consistency,
although a more informal “你” might match the tone of Ghost better.
However, it has an extra benefit of being gender neutral, so might be a
better choice after all.
* The product names like “AOL Mail”, “Hey”, “Gmail”, etc. are kept as
they are.
* The tricky one is “Stripe billing portal”. The “billing portal” part
is not capitalized in the original string, so I suppose it means a
functionality. However, Stripe actually do have a product called [Stripe
Billing](https://support.stripe.com/topics/billing) with a functionality
called [Billing customer
portal](https://support.stripe.com/questions/billing-customer-portal?locale=en-US).
Based on these, there are two directions:
    1. The original string should be updated as Stripe Billing portal.
1. Keep it as it is and translate it as a functionality. This is the
route I’m taking in this PR, resulting in “Stripe 付款門戶”. For more
context, translating “portal” as “門戶” is based on [Stripe’s official
support documentation in Simplified
Chinese](https://support.stripe.com/questions/billing-customer-portal?locale=zh-CN).

cc @cathysarisky since this is a language PR :) 

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> Translation-only changes to `zh-Hant` locale JSON; no runtime logic
changes, with minimal risk beyond wording/terminology accuracy.
> 
> **Overview**
> Fills in previously missing `zh-Hant` strings across comments, Ghost
emails, and Portal so users no longer see blank labels/messages.
> 
> Adds Traditional Chinese translations for commenting states/actions
(e.g. commenting disabled, admin view, missing linked comment),
member/email copy (`Manage your preferences`), and several
billing/support/inbox-provider prompts in Portal (e.g. Stripe billing
portal session errors, billing portal open/update failures, `Next
payment`, and “Open Gmail/Outlook/Yahoo…” actions).
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
ed8cc29. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

---------

Co-authored-by: Cathy Sarisky <42299862+cathysarisky@users.noreply.github.com>
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.

3 participants