Skip to content

Feat/hyw locale#799

Open
antrohoosclubs wants to merge 53 commits into
scratchfoundation:masterfrom
antrohoosclubs:feat/hyw-locale
Open

Feat/hyw locale#799
antrohoosclubs wants to merge 53 commits into
scratchfoundation:masterfrom
antrohoosclubs:feat/hyw-locale

Conversation

@antrohoosclubs

Copy link
Copy Markdown

Resolves

  • Resolves #

Proposed Changes

Describe what this Pull Request does

Checklist for updating translations

There are two situations in which we create manual PRs to update translations:

  1. We don't want to wait for Travis's automatic weekly update; or,
  2. We need to add a language that has become ready

1. Updating translations manually

  • Pull editor translations from Transifex with > npm run pull:editor
  • Pull www translations from Transifex with > npm run pull:www
  • Test the result with > npm run test
  • Confirm that you see changes to files like editor/<resource>/<lang code>.json

Adding a language

  • Edit src/supported-locales.mjs:

    • Add entry for the language in the locales const
    • Check if language is right-to-left. If so:
      • Add entry in rtlLocales
  • Check if the new language uses a country code

    • Check https://www.transifex.com/explore/languages. If the language has a country code:
    • Edit src/supported-locales.mjs:
      • Add new entry to localeMap. Format is '<W3C HTML browser locale string>': '<Transifex ICU locale string>'
    • Edit .tx/config:
      • Add to the lang_map list. Format is <Transifex ICU locale string>:<W3C HTML browser locale string>
      • NOTE: we are moving away from using the tx cli; .tx/config will eventually be deprecated
  • Edit src/index.js:

    • Add 'import' line
    • Add entry in localeData array
  • Check if locale is in react-intl

    • Look in https://unpkg.com/react-intl/locale-data/
    • If not in react-intl:
      • Edit src/supported-locales.mjs:
        • In customLocales, add entry with parent set to a react-intl locale
      • Edit src/index.js:
        • In localeData, add entry for parent locale
  • Update translations per the "Updating translations" section above

  • Confirm that we see changes to:

    • src/supported-locales.mjs
    • src/index.js
    • .tx/config (if language needed a new locale)
    • Multiple files like editor/<resource>/<lang code>.json
  • Bump minor version number in package.json

  • Add language po files to scratchr2_translations

    • manually update scratchr2_translations/legacy with tx pull -l <locale> and check in changes
  • Add language to scratchr2 settings

    • manually update settings/base.py with the new language

After scratch-l10n update is published:

  • Update scratch-blocks dependency
    • in package.json, update the version of the scratch-l10n dependency to the version number you used above
    • pull translations so that a new Blockly.ScratchMsgs.locales["<LOCALE CODE>"] is added to msg/scratch_msgs.js

antrohoosclubs and others added 10 commits June 27, 2026 16:36
Adding support for the Western Armenian language (hyw), a distinct variant from (hy), spoken by approximately 10 million people worldwide.
Add the Western Armenian Language.
Add Western Armenian localization for the paint editor.
Add Western Armenian localization for the scratch interface.
Add Western Armenian localization for the scratch blocks.
Added Armenian translations for various boost, ev3, face sensing, microbit, music, pen, speech, text to speech, translate, video sensing, and wedo2 blocks.
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
DELETE_BLOCK used the comment string instead of delete-block wording.

Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions

github-actions Bot commented Jun 27, 2026

Copy link
Copy Markdown

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@antrohoosclubs antrohoosclubs left a comment

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

@cwillisf finished the whole pack.

@antrohoosclubs antrohoosclubs left a comment

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

@cwillisf all done.

@cwillisf

Copy link
Copy Markdown
Contributor

Hi @antrohoosclubs, thanks for all your work on Western Armenian localization, and for your patience.

One reason for the delay is that Western Armenian isn't currently a supported locale in our localization service, Transifex. Until it's there, this work can't flow through our normal translation pipeline. The good news: our team has reached out to Transifex and asked them to add Western Armenian as a supported language. That's a change Transifex has to make on their side, so we'll need to wait for them before we can properly bring this in. I don't have a firm timeline, but the request is in.

In the meantime, it would really help if you could consolidate this work into #799 and close the other PRs that duplicate it or represent smaller parts of the work. That gives us a single place to review once the language is ready, instead of 21 separate PRs to keep track of. The locale registration and Transifex config details can be finalized once we know the exact language code Transifex assigns.

@antrohoosclubs

Copy link
Copy Markdown
Author

Hi @cwillisf,

Thank you very much for the update and for explaining the situation.

That is great news to hear. I completely understand that the remaining blocker is Transifex support for Western Armenian.
I will consolidate all of my work into PR #799 and close the duplicate PRs, so there is a single place for review.
Thank you again for your support, and please let me know if there is anything else I can do to help with the process.

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.

2 participants