Skip to content

Translate to Hindi and Arabic#591

Open
cigamit wants to merge 18 commits into
mainfrom
translate260720
Open

Translate to Hindi and Arabic#591
cigamit wants to merge 18 commits into
mainfrom
translate260720

Conversation

@cigamit

@cigamit cigamit commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

In this, we add both Hindi and Arabic translations and enable RTL support for Arabic.

We also update all the strings, clean up the obsolete ones, and then translate any strings there were untranslated for the other languages (mostly new features). We had to update a lot of files that were scoped incorrectly for lingui, so the strings weren't be extracted.

Drop Zulu language, as it was originally for detecting untranslated strings, but we had removed portions of that code earlier.

Later we may covert to using JSON files instead of PO. They are such a pain.

@cigamit
cigamit requested a review from TheWitness July 20, 2026 20:39
@cigamit cigamit self-assigned this Jul 20, 2026
Copilot AI review requested due to automatic review settings July 20, 2026 20:39
@cigamit cigamit added the enhancement New feature or request label Jul 20, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR extends Ascender’s UI internationalization by adding Arabic and Hindi support, removing the Zulu placeholder locale, and introducing RTL behavior for Arabic via <html dir> updates during locale activation.

Changes:

  • Added Arabic (ar) and Hindi (hi) locales and updated the backend allowed UI locale list.
  • Implemented RTL handling for Arabic by setting <html lang> and <html dir> after dynamicActivate().
  • Dropped Zulu (zu) locale assets and removed it from locale configuration.

Reviewed changes

Copilot reviewed 3 out of 24 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
awx/ui/src/locales/zu/messages.js Removes the Zulu locale catalog.
awx/ui/src/locales/ar/messages.js Adds the Arabic locale catalog.
awx/ui/src/i18nLoader.js Registers new locales and applies RTL/LTR direction and lang on activation.
awx/ui/lingui.config.js Updates Lingui locale list and PO formatter configuration.
awx/api/serializers.py Updates the API-side supported UI locale codes (adds ar/hi, removes zu).

Comment thread awx/ui/src/i18nLoader.js Outdated
Comment thread awx/ui/src/locales/ar/messages.js Outdated
Comment thread awx/ui/lingui.config.js Outdated
Copilot AI review requested due to automatic review settings July 20, 2026 20:47

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 4 out of 25 changed files in this pull request and generated 1 comment.

Comments suppressed due to low confidence (1)

awx/ui/lingui.config.js:15

  • Duplicate format keys are defined in this object (format: "po" and format: formatter(...)). In JavaScript object literals the latter overwrites the former, which is confusing and may be flagged by linters (no-dupe-keys). Remove the unused format: "po" entry.
  fallbackLocales: { default: 'en' },
  locales: ['en', 'es', 'fr', 'hi', 'ko', 'nl', 'zh', 'ja', 'ar'],
  orderBy: 'messageId',

Comment thread awx/ui/lingui.config.js
Copilot AI review requested due to automatic review settings July 20, 2026 20:51

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 4 out of 25 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

awx/ui/lingui.config.js:21

  • Two typos in the new formatter options comments: the note for lineNumbers is misleading (wrapping is controlled by foldLength), and "Dont" should be "Don't".
    lineNumbers: true, // Prevents line breaks at 80 characters
    foldLength: 0 // Dont wrap long lines

Copilot AI review requested due to automatic review settings July 20, 2026 21:16

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 8 out of 29 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

awx/ui/lingui.config.js:22

  • The comments for the PO formatter options are misleading/incorrect: lineNumbers controls whether source references are included in the generated PO, while line wrapping is controlled by foldLength. Also, the "Dont" typo should be corrected to avoid confusing future edits.
  format: formatter({
    lineNumbers: true, // Prevents line breaks at 80 characters
    foldLength: 0 // Dont wrap long lines
  }),

Copilot AI review requested due to automatic review settings July 20, 2026 21:21

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 9 out of 30 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

awx/ui/lingui.config.js:22

  • The formatter option comments are inaccurate: lineNumbers controls whether PO reference comments include :line info, while foldLength controls wrapping. The current comments (and the “Dont” typo) could mislead future edits; consider updating them and adding commas for consistency.
  format: formatter({
    lineNumbers: true, // Prevents line breaks at 80 characters
    foldLength: 0 // Dont wrap long lines
  }),

Copilot AI review requested due to automatic review settings July 20, 2026 21:36

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 11 out of 32 changed files in this pull request and generated no new comments.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 18 out of 39 changed files in this pull request and generated 1 comment.

Comments suppressed due to low confidence (1)

awx/ui/src/screens/Host/HostGroups/HostGroupsList.js:214

  • modalNote has a double space between sentences ("children. This list…"), which will render as extra whitespace in the UI and gets baked into translation catalogs. Consider using single spacing between sentences.
                modalNote={t`Note that you may still see the group in the list after disassociating if the host is also a member of that group’s children.  This list shows all groups the host is associated with directly and indirectly.`}

Comment thread awx/ui/src/locales/ar/messages.js Outdated
Copilot AI review requested due to automatic review settings July 21, 2026 00:00

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 25 out of 46 changed files in this pull request and generated 4 comments.

Comment thread awx/ui/package.json
Comment thread awx/ui/src/screens/WorkflowApproval/shared/WorkflowApprovalUtils.test.js Outdated
Comment thread awx/ui/src/screens/Organization/OrganizationDetail/OrganizationDetail.js Outdated
Comment thread awx/ui/src/screens/Project/shared/Project.helptext.js
Copilot AI review requested due to automatic review settings July 21, 2026 00:12

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 26 out of 47 changed files in this pull request and generated 1 comment.

Comments suppressed due to low confidence (2)

awx/ui/src/screens/Organization/OrganizationDetail/OrganizationDetail.js:101

  • This help text has a grammatical error: "This will be used a fallback" should be "This will be used as a fallback".
    awx/ui/src/screens/Project/shared/Project.helptext.js:80
  • This string uses "Github" instead of the correct product name "GitHub".

Comment thread awx/ui/src/components/Schedule/ScheduleDetail/FrequencyDetails.js Outdated
Copilot AI review requested due to automatic review settings July 21, 2026 01:55

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 38 out of 59 changed files in this pull request and generated 1 comment.

Comment thread awx/ui/src/util/validators.js
Copilot AI review requested due to automatic review settings July 21, 2026 03:09

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 57 out of 79 changed files in this pull request and generated 5 comments.

Comments suppressed due to low confidence (1)

awx/ui/src/screens/Organization/OrganizationDetail/OrganizationDetail.js:101

  • Grammar in this help text is off (“used a fallback” → “used as a fallback”). Since this is user-facing text and will be translated, it’s best to correct it now.

Comment thread awx/ui/src/screens/Inventory/shared/InventoryGroupsDeleteModal.js Outdated
Comment thread awx/ui/src/screens/Instances/Shared/RemoveInstanceButton.js
Comment thread awx/ui/src/screens/Template/Survey/SurveyQuestionForm.js Outdated
Copilot AI review requested due to automatic review settings July 21, 2026 04:20

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 63 out of 85 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (2)

awx/ui/src/screens/Organization/OrganizationDetail/OrganizationDetail.js:101

  • The help text string has a grammatical error: "This will be used a fallback" should be "This will be used as a fallback".
    awx/ui/src/screens/Project/shared/Project.helptext.js:80
  • The message text uses the incorrect capitalization "Github"; it should be "GitHub".

Copilot AI review requested due to automatic review settings July 21, 2026 04:36

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 64 out of 86 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (2)

awx/ui/src/components/Schedule/ScheduleDetail/FrequencyDetails.js:195

  • EndDetail builds the phrase After N occurrence(s) by concatenating a hard-coded English word ('occurrence'/'occurrences') inside a translated template. This prevents translators from translating the noun (and may break word order in RTL languages).
  } else if (options.end === 'after') {
    const numOccurrences = options.occurrences;
    value = t`After ${numOccurrences} ${numOccurrences === 1 ? 'occurrence' : 'occurrences'}`;

awx/ui/src/screens/Project/shared/Project.helptext.js:80

  • Spelling: "Github" should be "GitHub".

Copilot AI review requested due to automatic review settings July 21, 2026 04:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 64 out of 86 changed files in this pull request and generated 1 comment.

Comment thread awx/settings/defaults.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Development

Successfully merging this pull request may close these issues.

2 participants