Skip to content

Adds Hebrew (he) localization - #5848

Open
Y-PLONI wants to merge 1 commit into
gitkraken:mainfrom
Y-PLONI:feature/l10n-hebrew
Open

Y-PLONI wants to merge 1 commit into
gitkraken:mainfrom
Y-PLONI:feature/l10n-hebrew

Conversation

@Y-PLONI

@Y-PLONI Y-PLONI commented Sep 13, 2026

Copy link
Copy Markdown

Description

Adds a complete Hebrew (he) localization — all 9093 localizable strings, across both catalogs:

File Entries
package.nls.he.json 2298
l10n/bundle.l10n.he.json 6795

Relates to #577.

The catalogs were produced with the existing scripts/localization-chunks.mjs split/merge workflow, so the keys are byte-identical to the English source (including the non-breaking space in Remote Branch $(git-branch) {0}).

Conventions

l10n/README.md gains a ### Hebrew (he) section next to the existing Spanish and Chinese ones, documenting:

  • Glossary — the ~90 git and UI terms, so future contributors stay consistent.
  • Register — imperative masculine singular for command, menu and button titles; third-person present for setting descriptions; a verbal noun for Confirm <action> wizard step titles, since those render as dialog headings rather than actions.
  • Word order — a Latin brand never leads a Hebrew title or label (מצב Git, not Git מצב), while a full sentence whose subject is the product reads correctly as-is.
  • No bidi controls — U+200E/200F and U+202A–202E never appear in a value; the surrounding UI handles direction.
  • Distinctions the English preserves and Hebrew must not collapse: fetch vs. pull, discard vs. undo vs. abort, Git config vs. GitLens settings.

Correctness

  • All 379 ICU plural blocks keep their structure and use the Hebrew CLDR categories (one/two/many/other) rather than being flattened.
  • Placeholders ({0}, {name}), codicons ($(icon-name)), Markdown links and command: URIs are preserved verbatim.
  • Git syntax, refs, paths, command ids and product names stay untranslated, per docs/localization.md. Four duration abbreviations ({days}d {hours}h, …) and the two "Inspect"/"Patch" view container titles are deliberately left in Latin.
  • pnpm run check and pnpm run test:localization (25/25) both pass.

Notes for maintainers

Two things surfaced during this work that are outside the scope of this PR:

  1. RTL layout is not handled. No GitLens webview sets dir="rtl", so with a Hebrew display language the text is Hebrew but the layout stays LTR. Happy to open a separate issue with the specific webviews affected.
  2. A handful of English source strings look like typos — an unbalanced {0}}, acccount, layout of **for**, and some eamodio/vscode-gitlens wiki links that now 404. I can file these separately if useful.

Checklist

  • I have followed the guidelines in the Contributing document
  • My changes follow the coding style of this project
  • My changes build without any errors or warnings
  • My changes have been formatted and linted
  • My changes include any required corresponding changes to the documentation (including CHANGELOG.md and README.md) — l10n/README.md and the Contributors list are updated; no CHANGELOG.md entry, matching how the existing es and zh-cn catalogs were added
  • My changes have been rebased and squashed to the minimal number (typically 1) of relevant commits
  • My changes have a descriptive commit message with a short title

🤖 Generated with Claude Code

Adds complete Hebrew catalogs for both the manifest (2298 entries) and the
runtime bundle (6795 entries), covering all 9093 localizable strings.

Documents the Hebrew conventions in l10n/README.md alongside the existing
Spanish and Chinese sections: the git/UI glossary, imperative masculine
singular for command and button titles, third-person present for setting
descriptions, verbal nouns for "Confirm <action>" dialog headings, and the
rule that a Latin brand never leads a Hebrew title or label.

All 379 ICU plural blocks keep their structure with the Hebrew one/two/many/
other categories, placeholders and codicons are preserved verbatim, and no
bidi control characters are used.
@Y-PLONI
Y-PLONI requested a review from a team September 13, 2026 22:39
@eamodio

eamodio commented Sep 13, 2026

Copy link
Copy Markdown
Member

@Y-PLONI awesome! Thank you!

Please file those issues.

@Y-PLONI

Y-PLONI commented Sep 13, 2026

Copy link
Copy Markdown
Author

@eamodio
The RTL part—it's harder than I initially thought...
If the translation is accepted, I might try to implement it via a series of commits or PRs...

@d13

d13 commented Sep 15, 2026

Copy link
Copy Markdown
Member

I'm currently working on the RTL part.

@d13 d13 mentioned this pull request Oct 1, 2026
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.

3 participants