Skip to content

Add Arabic (ar) translation#91

Merged
brunoborges merged 5 commits intomainfrom
copilot/add-content-translation-arabic
Feb 26, 2026
Merged

Add Arabic (ar) translation#91
brunoborges merged 5 commits intomainfrom
copilot/add-content-translation-arabic

Conversation

Copy link
Contributor

Copilot AI commented Feb 26, 2026

Adds full Arabic (العربية) locale support across UI strings, content translations, and RTL layout.

Infrastructure

  • Registered ar=العربية in locales.properties
  • Added dir="{{htmlDir}}" to <html> in both templates; generator resolves to "rtl" for ar, "ltr" for all others
  • Fixed generate.py (used in benchmarks) to pass locale and htmlDir tokens, preventing unresolved {{htmlDir}} in English output

Translations

  • translations/strings/ar.yaml — 64 UI keys in Modern Standard Arabic; site.title falls back to "java.evolved" (brand name)
  • translations/content/ar/ — 112 content YAML files across all 11 categories (collections, concurrency, datetime, enterprise, errors, io, language, security, streams, strings, tooling)
  • Java technical terms, annotations, JDK versions, and API names kept in English; all other copy translated to فصحى
Original prompt

Add content translation for Arabic

[Chronological Review: This is a short, casual conversation with no code or tool usage. The user asked about translating content to Hindi for Indian developers, then asked about fun/fancy languages to explore for translation.] [Intent Mapping: 1) User asked whether translating to "Hindu" (Hindi) is necessary for Indian developers. 2) User asked about interesting/fancy languages to explore for fun.] [Technical Inventory: No technical tools, frameworks, or code were involved. The conversation is about language/localization strategy, likely for a developer-facing website or tool.] [Code Archaeology: No files, functions, or code changes were discussed.] [Progress Assessment: This is a casual brainstorming conversation with no actionable tasks started yet.] [Context Validation: The conversation is lightweight — no critical technical context to preserve beyond the discussion topic.] [Recent Commands Analysis: No agent commands or tools were executed at any point in this conversation. No tool calls were made. The summarization was manually requested by the user, not triggered by token budget.] 1. Conversation Overview: - Primary Objectives: Casual discussion about whether to translate a site/product to Hindi for Indian developers, and exploring fun/interesting languages for potential translation. - Session Context: Brief, informal exchange — no project setup, no code, no tool usage. Appears to relate to an internationalization/localization decision for a developer-facing product (possibly Java-related based on a mention in the language suggestions). - User Intent Evolution: Started with a practical question ("do I really need to translate to Hindu?") → shifted to creative exploration ("any fancy language we could explore for fun?")
  1. Technical Foundation:

    • No technical stack, frameworks, or tools were discussed or used.
    • Topic is internationalization/localization strategy for an unspecified developer-facing product.
  2. Codebase Status:

    • No files were created, modified, or discussed.
  3. Problem Resolution:

    • Corrected "Hindu" (religion) to "Hindi" (language).
    • Advised that Hindi translation is likely unnecessary for Indian developers due to high English proficiency.
    • Noted Hindi only covers ~40% of India (22 official languages).
  4. Progress Tracking:

    • Completed Tasks: None — conversation is exploratory/brainstorming only.
    • No code, no tasks created, no tools invoked.
  5. Active Work State:

    • Current Focus: The user was presented with a list of fun/fancy language options for translation (Japanese, Korean, Arabic, Amharic, Icelandic, Klingon) and was asked "What catches your eye?" — no response yet.
    • No working code or active implementation.
  6. Recent Operations:

    • Last Agent Commands: None. No tools or agent commands were executed at any point in this conversation.
    • Tool Results Summary: N/A — no tools were called.
    • Pre-Summary State: The conversation was in a casual brainstorming phase with no active technical work.
    • Operation Context: The summarization was explicitly requested by the user, not triggered by token budget limits.
  7. Continuation Plan:

    • Pending Task 1: User has not yet chosen a language from the suggested list. Next step would be to hear their preference and potentially begin planning localization work.
    • No urgent or sequential tasks exist — conversation is in early exploratory stage.
    • Next Action: Await user's response on which language interests them, then potentially discuss implementation approach for translation/i18n.

Created from Copilot CLI via the copilot delegate command.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

@brunoborges brunoborges changed the title [WIP] Add content translation for Arabic [WIP] Translate content to Arabic Feb 26, 2026
Copilot AI and others added 3 commits February 26, 2026 03:26
…rn snippets

Create translations/content/ar/ with Arabic translations for all categories:
- collections (10 files)
- concurrency (10 files)
- datetime (6 files)
- enterprise (12 files)
- errors (7 files)
- io (10 files)
- language (21 files)
- security (5 files)
- streams (11 files)
- strings (7 files)
- tooling (8 files)

Translations use Modern Standard Arabic (فصحى), keeping Java technical
terms, class names, method names, and API names in English.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Translate all content files under content/{category}/*.yaml into
Modern Standard Arabic (فصحى) and place them at
translations/content/ar/{category}/{slug}.yaml.

Each file contains only translatable fields: title, oldApproach,
modernApproach, summary, explanation, whyModernWins (3 entries with
unchanged emoji icons), and support.description.

Java class names, method names, API names, JDK versions, and
annotations (e.g. @Inject, @transactional) are kept in English.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…2 content files

Co-authored-by: brunoborges <129743+brunoborges@users.noreply.github.com>
Copilot AI changed the title [WIP] Translate content to Arabic Add Arabic (ar) translation Feb 26, 2026
@brunoborges brunoborges marked this pull request as ready for review February 26, 2026 03:38
@brunoborges brunoborges merged commit 4ff2a0a into main Feb 26, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants