Skip to content

i18n: add Hindi (hi) translation skeleton#1352

Merged
annejan merged 3 commits into
mainfrom
i18n/add-hi
Apr 30, 2026
Merged

i18n: add Hindi (hi) translation skeleton#1352
annejan merged 3 commits into
mainfrom
i18n/add-hi

Conversation

@annejan
Copy link
Copy Markdown
Member

@annejan annejan commented Apr 30, 2026

Summary

Hindi (hi) — India's official language, ~600M speakers. Currently no QtPass coverage.

Bootstrapped via the skeleton + qmake6/lupdate workflow documented in the qtpass-localization skill. The file contains all 304 source strings as type="unfinished" (302 empty + 2 <numerusform> plural skeletons), ready for Weblate translators to claim.

Uses the language-only hi code (no country suffix) so Qt's locale fallback covers all regional variants. Mirrors #1335 (fa skeleton) and #1350 (single-variant rename batch).

Test plan

  • make distclean && qmake6 picks up the new file: Updating 'localization/localization_hi.ts'... Found 304 source text(s).
  • <TS version="2.1" language="hi"> correct.
  • 304 entries, all type="unfinished" (302 empty + 2 numerusform).

Related

This was originally part of #1349 (6 languages bundled together). Splitting into 6 individual PRs to make autofix-bot review tractable per locale. Drafted while #1351 (bn) lands first.

Summary by CodeRabbit

  • New Features
    • Added Hindi translations for the user interface so Hindi appears as a selectable language in the app.
    • Hindi strings cover UI text, messages, plural forms and formatted text; translations are currently marked as unfinished.
  • Chores
    • Build configuration updated to include and embed the new Hindi translation.

India's official language, ~600M speakers.

Bootstrapped via the skeleton + qmake6/lupdate workflow documented
in the qtpass-localization skill. The file contains all 304 source
strings as type="unfinished" (302 empty + 2 numerusform plural
skeletons), ready for Weblate translators to claim.

Uses the language-only 'hi' code (no country suffix) so Qt's
locale fallback covers all regional variants. Mirrors the recent
fa skeleton (#1335) and ar_MA -> ar / single-variant rename PRs
(#1328, #1350).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 30, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI (base), Organization UI (inherited)

Review profile: ASSERTIVE

Plan: Pro

Run ID: 8330243f-9bdb-41ed-b607-879e4b9cffe6

📥 Commits

Reviewing files that changed from the base of the PR and between 48654a7 and 25bb526.

📒 Files selected for processing (1)
  • localization/localization_hi.ts

📝 Walkthrough

Walkthrough

Adds a new Hindi Qt translation resource (localization_hi.ts) with untranslated entries and updates the build configuration (src/src.pro) to include the new translation for compilation and embedding.

Changes

Cohort / File(s) Summary
Hindi Localization Resource
localization/localization_hi.ts
New Hindi Qt .ts file containing ~1666 added lines of translation contexts (all translations flagged type="unfinished"; includes plural forms, parameter substitutions, and HTML-containing strings).
Build Registration
src/src.pro
Registers the new localization_hi.ts in the TRANSLATIONS list so it will be processed by the existing lrelease embed_translations build step.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

"I nibble on strings and hop with delight,
Hindi words nestle, unread but bright.
Placeholders wait for meaning to bloom,
Soon menus will chatter in a new-room.
Hoppy builds — translations take flight!" 🐇✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'i18n: add Hindi (hi) translation skeleton' is clear, specific, and directly summarizes the main change: adding a new Hindi translation resource file.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch i18n/add-hi

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
Review rate limit: 7/8 reviews remaining, refill in 7 minutes and 30 seconds.

Comment @coderabbitai help to get the list of available commands and usage tips.

@annejan annejan marked this pull request as ready for review April 30, 2026 12:24
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@localization/localization_hi.ts`:
- Around line 9-1640: The translation file contains many empty <translation>
entries (including plural <numerusform> elements) across multiple contexts
(e.g., MainWindow, Pass, ConfigDialog-related messages, ImitatePass,
ImportKeyDialog, KeygenDialog, QtPass, StoreModel, UsersDialog); populate each
empty translation with a best-effort Hindi string while preserving
type="unfinished" and keeping existing source text and markup (HTML,
placeholders like %1, %n, &lt;br&gt;, &lt;strong&gt;) intact; ensure plural
forms in numerus messages (e.g., the Found %n match(es) message in MainWindow)
have appropriate Hindi singular and plural <numerusform> entries, and do not
alter context names or message source text.
🪄 Autofix (Beta)

✅ Autofix completed


ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI (base), Organization UI (inherited)

Review profile: ASSERTIVE

Plan: Pro

Run ID: 5f063290-cc7b-4ee4-b0c9-c4aa935f690c

📥 Commits

Reviewing files that changed from the base of the PR and between acbc579 and 48654a7.

📒 Files selected for processing (2)
  • localization/localization_hi.ts
  • src/src.pro

Comment thread localization/localization_hi.ts Outdated
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 30, 2026

Note

Autofix is a beta feature. Expect some limitations and changes as we gather feedback and continue to improve it.

Fixes Applied Successfully

Fixed 1 file(s) based on 1 unresolved review comment.

Files modified:

  • localization/localization_hi.ts

Commit: 25bb5261daa11e0cb6d46a9bd956c168f296f41c

The changes have been pushed to the i18n/add-hi branch.

Time taken: 12m 46s

@coveralls
Copy link
Copy Markdown

coveralls commented Apr 30, 2026

Coverage Status

coverage: 28.015%. remained the same — i18n/add-hi into main

Fixed 1 file(s) based on 1 unresolved review comment.

Co-authored-by: CodeRabbit <noreply@coderabbit.ai>
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