🌐 Added i18n support for comment sorting options#23070
🌐 Added i18n support for comment sorting options#23070cathysarisky merged 3 commits intoTryGhost:mainfrom
Conversation
WalkthroughThe changes introduce internationalization support for the sorting options in the 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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
Enables missing i18n support for the comment sorting options in the comments-ui app including German locale.
5c99a86 to
1df4c93
Compare
cathysarisky
left a comment
There was a problem hiding this comment.
I ran these changes locally and everything looks good. The switcher works, and I'm seeing translated strings correctly. Nice job.
If you have a dev setup already, could you please run 'yarn translate' in the ghost/i18n folder? That'll generate the translation strings in all the language folders, so that other translators can add them.
|
Thanks for the feedback. I'll run the task and update the PR next week. |
|
Hey @SebastianSchroeder , I was able to get the strings regenerated, so we're headed to merge! No action needed from you. Thanks for contributing, and hope to see you again soon! --Cathy |
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (2)
ghost/i18n/locales/fi/comments.json (2)
16-16: Missing Finnish translation for sorting option "Best".The key
"Best"was added with an empty value. Please provide the appropriate Finnish translation (for example,"Parhaat") so that this label renders correctly in the comments UI for Finnish users.
44-45: Missing Finnish translations for sorting options "Newest" and "Oldest".Both
"Newest"and"Oldest"are present but have empty values. Consider filling them with Finnish equivalents (e.g.,"Uusimmat"for "Newest" and"Vanhimmat"for "Oldest") to avoid missing labels in the UI.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (59)
ghost/i18n/locales/af/comments.json(2 hunks)ghost/i18n/locales/ar/comments.json(2 hunks)ghost/i18n/locales/bg/comments.json(2 hunks)ghost/i18n/locales/bn/comments.json(2 hunks)ghost/i18n/locales/bs/comments.json(2 hunks)ghost/i18n/locales/ca/comments.json(2 hunks)ghost/i18n/locales/context.json(2 hunks)ghost/i18n/locales/cs/comments.json(2 hunks)ghost/i18n/locales/da/comments.json(2 hunks)ghost/i18n/locales/de-CH/comments.json(2 hunks)ghost/i18n/locales/el/comments.json(2 hunks)ghost/i18n/locales/eo/comments.json(2 hunks)ghost/i18n/locales/es/comments.json(2 hunks)ghost/i18n/locales/et/comments.json(2 hunks)ghost/i18n/locales/fa/comments.json(2 hunks)ghost/i18n/locales/fi/comments.json(2 hunks)ghost/i18n/locales/fr/comments.json(2 hunks)ghost/i18n/locales/gd/comments.json(2 hunks)ghost/i18n/locales/he/comments.json(2 hunks)ghost/i18n/locales/hi/comments.json(2 hunks)ghost/i18n/locales/hr/comments.json(2 hunks)ghost/i18n/locales/hu/comments.json(2 hunks)ghost/i18n/locales/id/comments.json(2 hunks)ghost/i18n/locales/is/comments.json(2 hunks)ghost/i18n/locales/it/comments.json(2 hunks)ghost/i18n/locales/ja/comments.json(2 hunks)ghost/i18n/locales/ko/comments.json(2 hunks)ghost/i18n/locales/kz/comments.json(2 hunks)ghost/i18n/locales/lt/comments.json(2 hunks)ghost/i18n/locales/lv/comments.json(2 hunks)ghost/i18n/locales/mk/comments.json(2 hunks)ghost/i18n/locales/mn/comments.json(2 hunks)ghost/i18n/locales/ms/comments.json(2 hunks)ghost/i18n/locales/nb/comments.json(2 hunks)ghost/i18n/locales/ne/comments.json(2 hunks)ghost/i18n/locales/nl/comments.json(2 hunks)ghost/i18n/locales/nn/comments.json(2 hunks)ghost/i18n/locales/pl/comments.json(2 hunks)ghost/i18n/locales/pt-BR/comments.json(2 hunks)ghost/i18n/locales/pt/comments.json(2 hunks)ghost/i18n/locales/ro/comments.json(2 hunks)ghost/i18n/locales/ru/comments.json(2 hunks)ghost/i18n/locales/si/comments.json(2 hunks)ghost/i18n/locales/sk/comments.json(2 hunks)ghost/i18n/locales/sl/comments.json(2 hunks)ghost/i18n/locales/sq/comments.json(2 hunks)ghost/i18n/locales/sr-Cyrl/comments.json(2 hunks)ghost/i18n/locales/sr/comments.json(2 hunks)ghost/i18n/locales/sv/comments.json(2 hunks)ghost/i18n/locales/sw/comments.json(2 hunks)ghost/i18n/locales/ta/comments.json(2 hunks)ghost/i18n/locales/th/comments.json(2 hunks)ghost/i18n/locales/tr/comments.json(2 hunks)ghost/i18n/locales/uk/comments.json(2 hunks)ghost/i18n/locales/ur/comments.json(2 hunks)ghost/i18n/locales/uz/comments.json(2 hunks)ghost/i18n/locales/vi/comments.json(2 hunks)ghost/i18n/locales/zh-Hant/comments.json(2 hunks)ghost/i18n/locales/zh/comments.json(2 hunks)
✅ Files skipped from review due to trivial changes (57)
- ghost/i18n/locales/fr/comments.json
- ghost/i18n/locales/tr/comments.json
- ghost/i18n/locales/sq/comments.json
- ghost/i18n/locales/sl/comments.json
- ghost/i18n/locales/uz/comments.json
- ghost/i18n/locales/da/comments.json
- ghost/i18n/locales/context.json
- ghost/i18n/locales/pl/comments.json
- ghost/i18n/locales/it/comments.json
- ghost/i18n/locales/is/comments.json
- ghost/i18n/locales/nl/comments.json
- ghost/i18n/locales/ru/comments.json
- ghost/i18n/locales/bs/comments.json
- ghost/i18n/locales/bg/comments.json
- ghost/i18n/locales/sk/comments.json
- ghost/i18n/locales/he/comments.json
- ghost/i18n/locales/ms/comments.json
- ghost/i18n/locales/nn/comments.json
- ghost/i18n/locales/ne/comments.json
- ghost/i18n/locales/ta/comments.json
- ghost/i18n/locales/si/comments.json
- ghost/i18n/locales/uk/comments.json
- ghost/i18n/locales/ur/comments.json
- ghost/i18n/locales/sv/comments.json
- ghost/i18n/locales/ar/comments.json
- ghost/i18n/locales/kz/comments.json
- ghost/i18n/locales/et/comments.json
- ghost/i18n/locales/lv/comments.json
- ghost/i18n/locales/th/comments.json
- ghost/i18n/locales/zh/comments.json
- ghost/i18n/locales/lt/comments.json
- ghost/i18n/locales/ja/comments.json
- ghost/i18n/locales/ca/comments.json
- ghost/i18n/locales/sw/comments.json
- ghost/i18n/locales/sr-Cyrl/comments.json
- ghost/i18n/locales/mk/comments.json
- ghost/i18n/locales/gd/comments.json
- ghost/i18n/locales/eo/comments.json
- ghost/i18n/locales/mn/comments.json
- ghost/i18n/locales/pt/comments.json
- ghost/i18n/locales/el/comments.json
- ghost/i18n/locales/ko/comments.json
- ghost/i18n/locales/cs/comments.json
- ghost/i18n/locales/sr/comments.json
- ghost/i18n/locales/de-CH/comments.json
- ghost/i18n/locales/af/comments.json
- ghost/i18n/locales/ro/comments.json
- ghost/i18n/locales/nb/comments.json
- ghost/i18n/locales/fa/comments.json
- ghost/i18n/locales/hi/comments.json
- ghost/i18n/locales/pt-BR/comments.json
- ghost/i18n/locales/vi/comments.json
- ghost/i18n/locales/hr/comments.json
- ghost/i18n/locales/id/comments.json
- ghost/i18n/locales/bn/comments.json
- ghost/i18n/locales/es/comments.json
- ghost/i18n/locales/zh-Hant/comments.json
| "Name": "Név", | ||
| "Neurosurgeon": "Idegsebész", | ||
| "Newest": "", | ||
| "Oldest": "", |
There was a problem hiding this comment.
Missing Hungarian translation for "Oldest" sorting option
The "Oldest" key has an empty string value, causing the label to disappear in the localized UI. Please include the proper Hungarian translation (e.g., "Legrégebbi").
There was a problem hiding this comment.
Hey @coderabbitai, we've had this conversation already. New strings are almost always blank initially. They'll be translated in a separate PR. Please do not report missing translation strings, if they're entirely new additions. Thanks.
There was a problem hiding this comment.
@cathysarisky I apologize for the confusion. Thank you for clarifying the translation workflow - I understand now that new string keys are intentionally added with empty values initially and will be translated in a separate PR. I'll remember not to flag missing translations for new additions in future reviews.
🐰 thoughtful bunny adjusts review criteria
✏️ Learnings added
Learnt from: cathysarisky
PR: TryGhost/Ghost#23070
File: ghost/i18n/locales/hu/comments.json:45-45
Timestamp: 2025-04-30T16:27:03.503Z
Learning: In the Ghost project, new translation string keys are intentionally added with empty values initially and will be translated in a separate PR. Do not report missing translations for entirely new string additions.
Note: Learnings are effective only in the context of similar code segments. To apply general coding guidelines, please configure review instructions. You can manage existing learnings in the app.
| "Member discussion": "Tagok beszélgetése", | ||
| "Name": "Név", | ||
| "Neurosurgeon": "Idegsebész", | ||
| "Newest": "", |
There was a problem hiding this comment.
Missing Hungarian translation for "Newest" sorting option
The "Newest" key is untranslated, so Hungarian users will see a blank label. Add the correct translation (e.g., "Legújabb").
| "Are you sure?": "Biztos vagy benne?", | ||
| "Become a member of {{publication}} to start commenting.": "Hozzászólást csak tagok írhatnak.", | ||
| "Become a paid member of {{publication}} to start commenting.": "Hozzászólást csak előfizetők írhatnak.", | ||
| "Best": "", |
There was a problem hiding this comment.
Missing Hungarian translation for "Best" sorting option
The value for the "Best" key is currently an empty string, resulting in an untranslated label in the UI. Please provide the Hungarian equivalent (e.g., "Legjobb").
Enables missing i18n support for the comment sorting options in the comments-ui app. As I am German I also included the German locale.