-
-
Notifications
You must be signed in to change notification settings - Fork 11k
Added more pt translations to search , portal, ghost and comments #24337
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughThe changes consist of updates to several Portuguese localization JSON files within the project. Previously empty string values for various user interface keys related to comments, general UI, portal/account management, and search functionality have been filled with their correct Portuguese translations. No existing translations were altered or removed; only untranslated entries were completed. These updates are limited to translation files and do not affect any logic, control flow, or exported/public code entities. The updates ensure more complete Portuguese language support across different parts of the application. Estimated code review effort1 (<30 minutes) 📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
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:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. 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 (
|
There was a problem hiding this 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
🧹 Nitpick comments (10)
ghost/i18n/locales/pt/comments.json (5)
14-14
: Switch to the formal form to stay consistent with the rest of the file.Most other strings address the user with the neutral/formal register (“Tem”, “Pode”, …).
Use “Tem a certeza?” instead of the informal “Tens a certeza?”.
17-18
: Plural-friendly wording for “Best”.For the “Sort by” menu the option usually refers to a list of comments, so a plural form fits better:
-"Best": "Melhor", +"Best": "Melhores",
22-24
: Use the same verb consistently for “Delete / Deleted / Deleting”.Earlier keys translate “Delete” as “Eliminar”.
To avoid mixed terminology change:-"Deleted": "Apagado", -"Deleting": "Apagando", +"Deleted": "Eliminado", +"Deleting": "A eliminar",
50-53
: Context agreement for reply-related labels.“Replied to” / “Reply to” are labels, not actions performed by the viewer.
Consider the neutral form to match UI context:-"Replied to": "Respondeu a", -"Reply to": "Responder a", +"Replied to": "Respondido a", +"Reply to": "Responder a",
67-67
: Portuguese UI convention favours “Ordenar por”.-"Sort by": "Organizar por", +"Sort by": "Ordenar por",ghost/i18n/locales/pt/ghost.json (2)
15-15
: Capitalisation & punctuation – keep the colon.-"Device:": "dispositivo", +"Device:": "Dispositivo:",
66-66
: Maintain register consistency (avoid informal “tu”).-"You just tried to access your account from a new device.": "Acabaste de aceder a tua conta de um novo dispositivo", +"You just tried to access your account from a new device.": "Acabou de tentar aceder à sua conta a partir de um novo dispositivo",ghost/i18n/locales/pt/portal.json (3)
80-80
: Inconsistent PT-PT / PT-BR vocabulary – stick to one variant.Earlier strings use “faturação” (PT-PT).
Change “faturamento” to match:-"Failed to update billing information, please try again": "Erro ao atualizar dados de faturamento, por favor tente de novo", +"Failed to update billing information, please try novamente": "Erro ao atualizar dados de faturação, por favor tente de novo",
72-73
: Prefer “iniciar/terminar sessão” over English “login/logout”.For consistency with other Portuguese strings:
-"Failed to log in, please try again": "Erro ao fazer login, por favor tente de novo", -"Failed to log out, please try again": "Erro ao fazer logout, por favor tente de novo", +"Failed to log in, please try again": "Erro ao iniciar sessão, por favor tente de novo", +"Failed to log out, please try again": "Erro ao terminar sessão, por favor tente de novo",
16-16
: Typo: “atualizados” needs an accent.-"Account details updated successfully": "Detalhes de conta atualizados com sucesso", +"Account details updated successfully": "Detalhes de conta actualizados com sucesso",(PT-PT spelling)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
ghost/i18n/locales/pt/comments.json
(4 hunks)ghost/i18n/locales/pt/ghost.json
(5 hunks)ghost/i18n/locales/pt/portal.json
(5 hunks)ghost/i18n/locales/pt/search.json
(1 hunks)
🧰 Additional context used
🧠 Learnings (5)
📓 Common learnings
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-05-20T21:08:21.026Z
Learning: In the Ghost project, translation files (ghost/i18n/locales/*/*.json) commonly have blank values for translations, and this is normal behavior that should not be flagged in reviews. These empty translations will be filled in separate PRs.
Learnt from: cathysarisky
PR: TryGhost/Ghost#23070
File: ghost/i18n/locales/hu/comments.json:45-45
Timestamp: 2025-04-30T16:27:03.542Z
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.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/pt-BR/portal.json:18-18
Timestamp: 2025-02-12T20:09:12.731Z
Learning: In the Ghost project, new translation keys are first added with empty string values, and the actual translations are added later in separate PRs to maintain better organization of translation work.
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-01-29T15:27:29.391Z
Learning: When reviewing translation files in ghost/i18n/locales, translators should only modify the translated values and must not change the keys or placeholder styles (e.g., %%{status}%%, {site}, etc.) as they serve specific purposes like Mailgun string replacement.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21982
File: ghost/i18n/locales/hu v2/portal.json:70-70
Timestamp: 2025-01-29T15:23:58.658Z
Learning: Typos and spelling errors within localization files (ghost/i18n/locales/*.json) must be treated as important problems, not nitpicks, as they directly affect the user experience for speakers of that language. These issues should be flagged with high priority during code review.
Learnt from: SebastianSchroeder
PR: TryGhost/Ghost#23602
File: ghost/i18n/locales/vi/ghost.json:3-4
Timestamp: 2025-05-30T11:41:47.336Z
Learning: SebastianSchroeder prefers to handle missing translations in separate PRs rather than including them in the same PR that adds the i18n infrastructure, to keep PRs focused on specific functionality.
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-02-07T18:07:34.152Z
Learning: Always review translation changes in language files unless the right side (value) of the key-value pair is blank. This includes reviewing both the correctness and appropriateness of the translations.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22075
File: ghost/i18n/locales/pt-BR/portal.json:0-0
Timestamp: 2025-01-30T15:13:48.222Z
Learning: When reviewing translation files in i18n/locales/*, the keys (left side) must never be changed. If a translator has modified any keys, this should be flagged as a potential error requiring review or correction. Only the translation values (right side) should be modified.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/lt/portal.json:16-16
Timestamp: 2025-02-12T20:23:47.777Z
Learning: Empty translation strings in localization files are often intentional placeholders, not necessarily indicating deleted content. Many languages may have empty strings as translations are added incrementally over time.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/lt/portal.json:16-16
Timestamp: 2025-02-12T20:23:47.777Z
Learning: When reviewing localization changes, verify the actual history of translations before flagging potential deletions. Empty translation strings may be intentional placeholders rather than deleted content.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22075
File: ghost/i18n/locales/pt-BR/comments.json:0-0
Timestamp: 2025-01-29T16:27:51.786Z
Learning: When suggesting changes to JSON translation files, ensure that the key's quote style (straight quotes) is preserved exactly as is, and only modify the translation value.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22075
File: ghost/i18n/locales/pt-BR/portal.json:0-0
Timestamp: 2025-01-30T15:11:25.199Z
Learning: When reviewing translation files in i18n/locales/*, focus on identifying spelling errors in the translation values (right side) of the JSON key-value pairs, not the keys (left side).
ghost/i18n/locales/pt/search.json (10)
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-05-20T21:08:21.026Z
Learning: In the Ghost project, translation files (ghost/i18n/locales/*/*.json) commonly have blank values for translations, and this is normal behavior that should not be flagged in reviews. These empty translations will be filled in separate PRs.
Learnt from: cathysarisky
PR: TryGhost/Ghost#23070
File: ghost/i18n/locales/hu/comments.json:45-45
Timestamp: 2025-04-30T16:27:03.542Z
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.
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-01-29T15:27:29.391Z
Learning: When reviewing translation files in ghost/i18n/locales, translators should only modify the translated values and must not change the keys or placeholder styles (e.g., %%{status}%%, {site}, etc.) as they serve specific purposes like Mailgun string replacement.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/pt-BR/portal.json:18-18
Timestamp: 2025-02-12T20:09:12.731Z
Learning: In the Ghost project, new translation keys are first added with empty string values, and the actual translations are added later in separate PRs to maintain better organization of translation work.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/lt/portal.json:16-16
Timestamp: 2025-02-12T20:23:47.777Z
Learning: Empty translation strings in localization files are often intentional placeholders, not necessarily indicating deleted content. Many languages may have empty strings as translations are added incrementally over time.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/lt/portal.json:16-16
Timestamp: 2025-02-12T20:23:47.777Z
Learning: When reviewing localization changes, verify the actual history of translations before flagging potential deletions. Empty translation strings may be intentional placeholders rather than deleted content.
Learnt from: cathysarisky
PR: TryGhost/Ghost#23161
File: ghost/i18n/lib/i18n.js:107-144
Timestamp: 2025-05-14T14:39:09.136Z
Learning: In Ghost's i18n system, translation keys are the actual English phrases, so when a translation is missing, displaying the key itself serves as the English fallback, eliminating the need for explicit fallback resource loading.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21982
File: ghost/i18n/locales/hu v2/portal.json:70-70
Timestamp: 2025-01-29T15:23:58.658Z
Learning: Typos and spelling errors within localization files (ghost/i18n/locales/*.json) must be treated as important problems, not nitpicks, as they directly affect the user experience for speakers of that language. These issues should be flagged with high priority during code review.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21982
File: ghost/i18n/locales/hu/portal.json:207-207
Timestamp: 2025-02-15T16:00:03.347Z
Learning: In Hungarian translations for Ghost, ensure that all variables like {{title}} are preserved in the translated strings and not omitted.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21651
File: ghost/i18n/locales/ar/comments.json:1-1
Timestamp: 2025-01-29T15:35:26.447Z
Learning: All JSON files containing translation strings in ghost/i18n/locales must include both opening and closing braces to maintain valid JSON structure.
ghost/i18n/locales/pt/portal.json (10)
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-05-20T21:08:21.026Z
Learning: In the Ghost project, translation files (ghost/i18n/locales/*/*.json) commonly have blank values for translations, and this is normal behavior that should not be flagged in reviews. These empty translations will be filled in separate PRs.
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-01-29T15:27:29.391Z
Learning: When reviewing translation files in ghost/i18n/locales, translators should only modify the translated values and must not change the keys or placeholder styles (e.g., %%{status}%%, {site}, etc.) as they serve specific purposes like Mailgun string replacement.
Learnt from: cathysarisky
PR: TryGhost/Ghost#23070
File: ghost/i18n/locales/hu/comments.json:45-45
Timestamp: 2025-04-30T16:27:03.542Z
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.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/pt-BR/portal.json:18-18
Timestamp: 2025-02-12T20:09:12.731Z
Learning: In the Ghost project, new translation keys are first added with empty string values, and the actual translations are added later in separate PRs to maintain better organization of translation work.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/lt/portal.json:16-16
Timestamp: 2025-02-12T20:23:47.777Z
Learning: When reviewing localization changes, verify the actual history of translations before flagging potential deletions. Empty translation strings may be intentional placeholders rather than deleted content.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22007
File: ghost/i18n/locales/sl/newsletter.json:18-18
Timestamp: 2025-01-28T13:58:08.393Z
Learning: When reviewing translations of newsletter.json, check that the translations of status words (free/complimentary/paid/trialing) will form grammatically correct sentences when substituted into the message template. The status words should agree grammatically with the word "subscriber" in the target language.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21982
File: ghost/i18n/locales/hu/portal.json:207-207
Timestamp: 2025-02-15T16:00:03.347Z
Learning: In Hungarian translations for Ghost, ensure that all variables like {{title}} are preserved in the translated strings and not omitted.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/lt/portal.json:16-16
Timestamp: 2025-02-12T20:23:47.777Z
Learning: Empty translation strings in localization files are often intentional placeholders, not necessarily indicating deleted content. Many languages may have empty strings as translations are added incrementally over time.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21651
File: ghost/i18n/locales/ar/comments.json:1-1
Timestamp: 2025-01-29T15:35:26.447Z
Learning: All JSON files containing translation strings in ghost/i18n/locales must include both opening and closing braces to maintain valid JSON structure.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21982
File: ghost/i18n/locales/hu/portal.json:70-71
Timestamp: 2025-02-15T16:00:03.845Z
Learning: In Hungarian translations for Ghost, payment/checkout related error messages should use "fizetés" (payment) related terms, not "bejelentkezés" (login) related terms, to accurately reflect the context of payment processing.
ghost/i18n/locales/pt/ghost.json (12)
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-05-20T21:08:21.026Z
Learning: In the Ghost project, translation files (ghost/i18n/locales/*/*.json) commonly have blank values for translations, and this is normal behavior that should not be flagged in reviews. These empty translations will be filled in separate PRs.
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-01-29T15:27:29.391Z
Learning: When reviewing translation files in ghost/i18n/locales, translators should only modify the translated values and must not change the keys or placeholder styles (e.g., %%{status}%%, {site}, etc.) as they serve specific purposes like Mailgun string replacement.
Learnt from: cathysarisky
PR: TryGhost/Ghost#23070
File: ghost/i18n/locales/hu/comments.json:45-45
Timestamp: 2025-04-30T16:27:03.542Z
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.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21651
File: ghost/i18n/locales/ar/comments.json:1-1
Timestamp: 2025-01-29T15:35:26.447Z
Learning: All JSON files containing translation strings in ghost/i18n/locales must include both opening and closing braces to maintain valid JSON structure.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/pt-BR/portal.json:18-18
Timestamp: 2025-02-12T20:09:12.731Z
Learning: In the Ghost project, new translation keys are first added with empty string values, and the actual translations are added later in separate PRs to maintain better organization of translation work.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21982
File: ghost/i18n/locales/hu v2/portal.json:70-70
Timestamp: 2025-01-29T15:23:58.658Z
Learning: Typos and spelling errors within localization files (ghost/i18n/locales/*.json) must be treated as important problems, not nitpicks, as they directly affect the user experience for speakers of that language. These issues should be flagged with high priority during code review.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21982
File: ghost/i18n/locales/hu/portal.json:207-207
Timestamp: 2025-02-15T16:00:03.347Z
Learning: In Hungarian translations for Ghost, ensure that all variables like {{title}} are preserved in the translated strings and not omitted.
Learnt from: cathysarisky
PR: TryGhost/Ghost#23161
File: ghost/i18n/lib/i18n.js:107-144
Timestamp: 2025-05-14T14:39:09.136Z
Learning: In Ghost's i18n system, translation keys are the actual English phrases, so when a translation is missing, displaying the key itself serves as the English fallback, eliminating the need for explicit fallback resource loading.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/lt/portal.json:16-16
Timestamp: 2025-02-12T20:23:47.777Z
Learning: When reviewing localization changes, verify the actual history of translations before flagging potential deletions. Empty translation strings may be intentional placeholders rather than deleted content.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22075
File: ghost/i18n/locales/pt-BR/portal.json:0-0
Timestamp: 2025-01-30T15:11:25.199Z
Learning: When reviewing translation files in i18n/locales/*, focus on identifying spelling errors in the translation values (right side) of the JSON key-value pairs, not the keys (left side).
Learnt from: cathysarisky
PR: TryGhost/Ghost#22007
File: ghost/i18n/locales/sl/newsletter.json:18-18
Timestamp: 2025-01-28T13:58:08.393Z
Learning: When reviewing translations of newsletter.json, check that the translations of status words (free/complimentary/paid/trialing) will form grammatically correct sentences when substituted into the message template. The status words should agree grammatically with the word "subscriber" in the target language.
Learnt from: michivonah
PR: TryGhost/Ghost#22323
File: ghost/i18n/locales/de-CH/ghost.json:31-31
Timestamp: 2025-03-03T12:22:11.423Z
Learning: In Swiss German (de-CH) localization for Ghost, "anmelden" is the preferred term for newsletter subscriptions, while "Abo" is used when referring to paid subscriptions. "Sie werden nicht angemeldet" is the correct translation for "You will not be subscribed" in newsletter contexts.
ghost/i18n/locales/pt/comments.json (9)
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-05-20T21:08:21.026Z
Learning: In the Ghost project, translation files (ghost/i18n/locales/*/*.json) commonly have blank values for translations, and this is normal behavior that should not be flagged in reviews. These empty translations will be filled in separate PRs.
Learnt from: cathysarisky
PR: TryGhost/Ghost#23070
File: ghost/i18n/locales/hu/comments.json:45-45
Timestamp: 2025-04-30T16:27:03.542Z
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.
Learnt from: cathysarisky
PR: TryGhost/Ghost#0
File: :0-0
Timestamp: 2025-01-29T15:27:29.391Z
Learning: When reviewing translation files in ghost/i18n/locales, translators should only modify the translated values and must not change the keys or placeholder styles (e.g., %%{status}%%, {site}, etc.) as they serve specific purposes like Mailgun string replacement.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/lt/portal.json:16-16
Timestamp: 2025-02-12T20:23:47.777Z
Learning: When reviewing localization changes, verify the actual history of translations before flagging potential deletions. Empty translation strings may be intentional placeholders rather than deleted content.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/pt-BR/portal.json:18-18
Timestamp: 2025-02-12T20:09:12.731Z
Learning: In the Ghost project, new translation keys are first added with empty string values, and the actual translations are added later in separate PRs to maintain better organization of translation work.
Learnt from: cathysarisky
PR: TryGhost/Ghost#22175
File: ghost/i18n/locales/lt/portal.json:16-16
Timestamp: 2025-02-12T20:23:47.777Z
Learning: Empty translation strings in localization files are often intentional placeholders, not necessarily indicating deleted content. Many languages may have empty strings as translations are added incrementally over time.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21982
File: ghost/i18n/locales/hu v2/portal.json:70-70
Timestamp: 2025-01-29T15:23:58.658Z
Learning: Typos and spelling errors within localization files (ghost/i18n/locales/*.json) must be treated as important problems, not nitpicks, as they directly affect the user experience for speakers of that language. These issues should be flagged with high priority during code review.
Learnt from: cathysarisky
PR: TryGhost/Ghost#21982
File: ghost/i18n/locales/hu/portal.json:207-207
Timestamp: 2025-02-15T16:00:03.347Z
Learning: In Hungarian translations for Ghost, ensure that all variables like {{title}} are preserved in the translated strings and not omitted.
Learnt from: 55sketch
PR: TryGhost/Ghost#23894
File: ghost/core/core/server/api/endpoints/comments.js:16-22
Timestamp: 2025-06-18T10:56:19.906Z
Learning: The validateCommentData function in ghost/core/core/server/api/endpoints/comments.js is not duplicated elsewhere in the codebase - it's a unique validation function that ensures either post_id or parent_id is provided for comment creation.
🔇 Additional comments (1)
ghost/i18n/locales/pt/search.json (1)
2-8
: Translations look good – no issues found.Keys, placeholders and tone are consistent with the rest of the pt locale.
Im open to any doubts about the translations, im a portuguese native speaker but im not an expert :) |
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey there, @TurnGui ! Thanks for this contribution!
Sorry for the delayed review. I was enjoying my vacation last week. 🏖️
I'm delighted you're contributing the missing strings for Portuguese!
Two notes: 1) Best/Oldest/Newest are a set of dropdown labels for sorting comments on posts. AI doesn't seem to like what you've got there, so maybe that context will be helpful in deciding if it is right or you are.
2) Looks like the existing translations use seu, while your new ones use tu. In general, we've tended towards informal for most languages, except in cases where that informality would be perceived as rude. I don't have an opinion on whether formal or informal is most correct for Portuguese as spoken in Portugal, but we should have all the translations use the same formality. Could you either revise your submission to match the existing translations, or edit the existing translations to match your submission?
📋 My AI helper 🤖 left you a few comments. I always believe the human over the AI, so feel free to disregard them after you take a careful look!
Leave me a comment when you're satisfied with everything, please. :)
🤖 AI: Overall the translations are clear and most terminology is well chosen. I noticed some formal vs informal inconsistencies (especially pronouns) and a few minor omissions of punctuation and articles. Once those are aligned, the tone and style will be consistent across the files. Obrigado!
Drafted with my new i18n tooling - feedback welcome
ghost/i18n/locales/pt/comments.json
Outdated
@@ -11,17 +11,17 @@ | |||
"Add your expertise": "", | |||
"Already a member?": "Já é membro?", | |||
"Anonymous": "Anónimo", | |||
"Are you sure?": "", | |||
"Are you sure?": "Tens a certeza?", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: I think the translation uses the informal form (“Tens a certeza?”), but elsewhere you tend to use the formal register. Could we use “Tem a certeza?” to keep formality consistent?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @josephine -- I hope you had a great vacation and thank you so much for the thoughtful feedback. 👍 I 100% agree with the AI on this case and have already updated my PR accordingly.
ghost/i18n/locales/pt/comments.json
Outdated
"Become a member of {publication} to start commenting.": "Torne-se um membro do {publication} para comentar.", | ||
"Become a paid member of {publication} to start commenting.": "Torne-se um membro pago do {publication} para comentar. ", | ||
"Best": "", | ||
"Best": "Melhor", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: In the sorting context (“Best”), perhaps the plural “Melhores” feels more natural than the singular “Melhor”. What do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I 100% agree with the AI on this case and have already updated my PR accordingly.
ghost/i18n/locales/pt/comments.json
Outdated
"Cancel": "Cancelar", | ||
"Comment": "Comentar", | ||
"Complete your profile": "Complete o seu perfil", | ||
"Delete": "Eliminar", | ||
"Deleted": "", | ||
"Deleted": "Apagado", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: For consistency with “Eliminar” (Delete), maybe use “Eliminado” instead of “Apagado” here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I 100% agree with the AI on this case and have already updated my PR accordingly.
ghost/i18n/locales/pt/comments.json
Outdated
"Deleted member": "Membro eliminado", | ||
"Deleting": "", | ||
"Deleting": "Apagando", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: Similarly, to match “Eliminar”/“Eliminado”, would “Eliminando” work better than “Apagando”?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I 100% agree with the AI on this case and have already updated my PR accordingly.
ghost/i18n/locales/pt/comments.json
Outdated
@@ -42,15 +42,15 @@ | |||
"Member discussion": "Discussão para membros", | |||
"Name": "Nome", | |||
"Neurosurgeon": "neurocirurgião", | |||
"Newest": "", | |||
"Oldest": "", | |||
"Newest": "Mais novo", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: For “Newest” in a comments sort dropdown, consider “Mais recentes” instead of “Mais novo” so it matches plural context.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I 100% agree with the AI on this case and have already updated my PR accordingly.
ghost/i18n/locales/pt/ghost.json
Outdated
"You are receiving this because you are a <strong>%%{status}%% subscriber</strong> to {site}.": "Está a receber este e-mail porque é subscritor/a de {site}, com uma <strong>subscrição %%{status}%%</strong>.", | ||
"You can also copy & paste this URL into your browser:": "Pode também copiar e colar este URL no seu navegador:", | ||
"You can unsubscribe from these notifications at {profileUrl}.": "", | ||
"You just tried to access your account from a new device.": "", | ||
"You just tried to access your account from a new device.": "Acabaste de aceder a tua conta de um novo dispositivo", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: Your translation is missing the period and uses “tu”. Please add the period and consider “seu” instead of “teu”.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I 100% agree with the AI on this case and have already updated my PR accordingly.
ghost/i18n/locales/pt/ghost.json
Outdated
@@ -73,5 +73,5 @@ | |||
"Your subscription has expired.": "A sua subscrição expirou.", | |||
"Your subscription will expire on {date}.": "A sua subscrição expira a {date}.", | |||
"Your subscription will renew on {date}.": "A sua subscrição será renovada a {date}.", | |||
"Your verification code for {siteTitle}": "" | |||
"Your verification code for {siteTitle}": "O teu código de verificação para {siteTitle}" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: This also uses the informal “teu”; to stay consistent, maybe use “seu código de verificação para {siteTitle}”.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I 100% agree with the AI on this case and have already updated my PR accordingly.
ghost/i18n/locales/pt/portal.json
Outdated
@@ -13,12 +13,12 @@ | |||
"+1 (123) 456-7890": "", | |||
"A login link has been sent to your inbox. If it doesn't arrive in 3 minutes, be sure to check your spam folder.": "Um link de acesso foi enviado para o seu email. Se o email não chegar dentro de 3 minutos, verifique a pasta de spam/lixo do seu email.", | |||
"Account": "Conta", | |||
"Account details updated successfully": "", | |||
"Account details updated successfully": "Detalhes de conta atualizados com sucesso", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: I think it should be “Detalhes da conta atualizados com sucesso” (including the article “da”) to read naturally in Portuguese.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I 100% agree with the AI on this case and have already updated my PR accordingly.
ghost/i18n/locales/pt/portal.json
Outdated
@@ -28,17 +28,17 @@ | |||
"Cancel subscription": "Cancelar subscrição", | |||
"Cancellation reason": "Motivo para o cancelamento", | |||
"Change": "Alterar", | |||
"Change plan": "", | |||
"Change plan": "Mudar plano", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: Earlier “Change” is translated as “Alterar”; for “Change plan”, perhaps use “Alterar plano” instead of “Mudar plano” for consistency.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I 100% agree with the AI on this case and have already updated my PR accordingly.
ghost/i18n/locales/pt/portal.json
Outdated
"Choose your newsletters": "Escolha as suas newsletters", | ||
"Click here to retry": "Clique aqui para tentar novamente", | ||
"Close": "Fechar", | ||
"Comment preferences updated.": "", | ||
"Comment preferences updated.": "Preferências de comentários atualizadas", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: The English ends with a period (“Comment preferences updated.”); please add the period at the end of the translation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I 100% agree with the AI on this case and have already updated my PR accordingly.
Update comments.json based on the feedback
Update ghost.json according to the feedback
Update portal.json according to feedback
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi TurnGui! Sorry for the second round of comments - just a few things remaining.
📋 My AI helper 🤖 left you a few comments. I always believe the human over the AI, so feel free to disregard them after you take a careful look!
Thank you! Obrigado!
Drafted with my new i18n tooling - feedback welcome
ghost/i18n/locales/pt/ghost.json
Outdated
"You are receiving this because you are a <strong>%%{status}%% subscriber</strong> to {site}.": "Está a receber este e-mail porque é subscritor/a de {site}, com uma <strong>subscrição %%{status}%%</strong>.", | ||
"You can also copy & paste this URL into your browser:": "Pode também copiar e colar este URL no seu navegador:", | ||
"You can unsubscribe from these notifications at {profileUrl}.": "", | ||
"You just tried to access your account from a new device.": "", | ||
"You just tried to access your account from a new device.": "Acabou de aceder a sua conta de um novo dispositivo.", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: I think the preposition and article could be combined here: “Acabou de aceder à sua conta a partir de um novo dispositivo.” This makes clear it was attempted from a new device.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Human Cathy says: Are you missing an accent mark? à sua conta ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes that would be it , im missing an accent mark, sorry for the mistake
ghost/i18n/locales/pt/portal.json
Outdated
"Failed to update billing information, please try again": "", | ||
"Failed to update account data": "Erro ao atualizar dados da conta", | ||
"Failed to update account details": "Erro ao atualizar detalhes da conta", | ||
"Failed to update billing information, please try again": "Erro ao atualizar dados de faturamento, por favor tente de novo", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤖 AI: I suspect you mixed “faturamento” (Brazilian) and “faturação” (European). Earlier you used “Informações de faturação”. Perhaps use “Erro ao atualizar dados de faturação, por favor tente de novo” for consistency?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have to agree that faturação would be a better fit there !
add missing accent, per original translator
per original translator
Added some portuguese missing translations.
We appreciate your contribution! 🙏