Skip to content

Conversation

@sdass1918
Copy link

Fixes #3609

Changes:
Hello @cassiano,

As discussed in the issue, this PR adds the missing translations for the Hindi (hi) and Bengali (bn) locales.

Here is a summary of the steps I took:

  1. I ran the p5js_editor_i18n_tools.ts script against the hi and bn locale folders, as you instructed.
  2. The script successfully generated the translations.reviewed.json files with all the missing keys marked [NEEDS TRANSLATION].
  3. As a native speaker for both languages, I have personally gone through and added the correct Hindi and Bengali translations for all of these new keys.
  4. Finally, I completed the process by renaming the translations.reviewed.json files to translations.json in both locale folders, replacing the old files.

These locales should now be fully up-to-date with all the latest keys. Please let me know if any changes are needed!

I have verified that this pull request:

  • has no linting errors (npm run lint)
  • has no test errors (npm run test)
  • is from a uniquely-named feature branch and is up to date with the develop branch.
  • is descriptively named and links to an issue number, i.e. Fixes #123
  • meets the standards outlined in the accessibility guidelines

Copy link
Contributor

@cassiano cassiano left a comment

Choose a reason for hiding this comment

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

I cannot review either language, but IMHO the PR seems fine from a technical standpoint.

"TableOutputARIA": "টেবিল আউটপুট অন",
"LibraryManagement": "লাইব্রেরি ব্যবস্থাপনা",
"LibraryVersion": "p5.js সংস্করণ",
"LibraryVersionInfo": "p5.js এর একটি [নতুন 2.0 রিলিজ] (https://github.com/processing/p5.js/releases/) উপলব্ধ! এটি আগস্ট, 2026 এ ডিফল্ট হয়ে যাবে, তাই এটি পরীক্ষা করে দেখার জন্য এবং বাগ রিপোর্ট করার জন্য এই সময় নিন। 1.x থেকে 2.0 এ স্কেচ রূপান্তর করতে আগ্রহী? [সামঞ্জস্যতা এবং রূপান্তর সংস্থানগুলি দেখুন।] (https://github.com/processing/p5.js-compatibility)",
Copy link
Contributor

Choose a reason for hiding this comment

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

The above markdown is incorrect. Notice there is no space between the [] and the ()` when generating links. So the correct version would be:

p5.js এর একটি [নতুন 2.0 রিলিজ](https://github.com/processing/p5.js/releases/) উপলব্ধ! এটি আগস্ট, 2026 এ ডিফল্ট হয়ে যাবে, তাই এটি পরীক্ষা করে দেখার জন্য এবং বাগ রিপোর্ট করার জন্য এই সময় নিন। 1.x থেকে 2.0 এ স্কেচ রূপান্তর করতে আগ্রহী? [সামঞ্জস্যতা এবং রূপান্তর সংস্থানগুলি দেখুন।](https://github.com/processing/p5.js-compatibility)

So it gets rendered like:

image

And not:

image

Copy link
Author

Choose a reason for hiding this comment

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

Thank you @cassiano for catching that! My mistake. I see the extra space in the markdown link.

I'll fix the files of both the languages and push the correction right now.

Copy link
Author

Choose a reason for hiding this comment

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

I've pushed the fix. Here is a screenshot of the corrected Bengali UI—the link now renders properly.
Screenshot 2025-10-28 at 11 51 58 PM

"TurnOffAccessibleOutput": "ব্যবহারযোগ্য আউটপুট বন্ধ করুন",
"Reference": "হিন্টারে নির্বাচিত আইটেমের জন্য রেফারেন্সে যান।"
},
"General": "General"
Copy link
Contributor

Choose a reason for hiding this comment

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

Didn't you miss this translation?

Copy link
Author

Choose a reason for hiding this comment

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

Hi @cassiano, thanks for pointing this out!

I intentionally left "General" untranslated. In this specific UI context (like "General Settings"), the word "General" is widely understood by users, similar to terms like "File" or "Edit".

The direct Bengali translation (সাধারণ) can also mean "common" or "ordinary," which I felt might be more confusing to the user than the familiar English term. I thought "General" was clearer and more accurate here.

However, if you'd prefer me to translate it, I can add it! Please let me know.

Copy link
Contributor

Choose a reason for hiding this comment

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

This is up to you, who knows the language details. My expertise is in pt-BR only.

Copy link
Contributor

Choose a reason for hiding this comment

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

How was your overall experience with the script? How helpful was it?

Copy link
Author

Choose a reason for hiding this comment

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

Thanks @cassiano! I'll leave "General" as-is then.

As for the script, it was fantastic! It was incredibly helpful and saved a huge amount of time. Finding all those missing keys manually would have been very difficult.

It worked perfectly for both hi and bn, and the [NEEDS TRANSLATION] markers made the whole process very clear and simple. It's a great tool, thank you for making it!

Copy link
Contributor

@cassiano cassiano Oct 29, 2025

Choose a reason for hiding this comment

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

Thank you. You are absolutely right about how difficult it becomes to remove unused keys manually. Also, leaving them in the localization files is highly undesirable, given they are not being used anywhere in the codebase.

Copy link
Contributor

Choose a reason for hiding this comment

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

My proposal in #3666 is to run it automatically during build-time for each locale and them provide AI-generated translations for all missing keys, while allowing end-users to suggest reviewed translations for these directly in the editor itself after deploying this new version.

Copy link
Author

Choose a reason for hiding this comment

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

That sounds like an excellent proposal, @cassiano!

Automating the key syncing during build-time is a very smart solution, and the idea of using AI-generated translations that end-users can review directly is a great way to scale the translation work.

I'll be sure to check out the full discussion in #3666. Thanks for sharing the plan!

Copy link
Contributor

@cassiano cassiano left a comment

Choose a reason for hiding this comment

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

I don't see any further issues with the PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Script to Identify Unused Translation Entries

2 participants