Skip to content

chore: fill qtpass.desktop translations for stubbed locales#1329

Merged
annejan merged 2 commits into
mainfrom
chore/desktop-translations
Apr 30, 2026
Merged

chore: fill qtpass.desktop translations for stubbed locales#1329
annejan merged 2 commits into
mainfrom
chore/desktop-translations

Conversation

@annejan
Copy link
Copy Markdown
Member

@annejan annejan commented Apr 30, 2026

Summary

qtpass.desktop shipped with commented-out empty GenericName[xx] and Comment[xx] entries for 12 locales — visible to anyone who opened the file but invisible to desktop environments. Filled them with conventional translations.

Locale GenericName ("Password Manager") Comment ("GUI for the standard unix password store")
ar مدير كلمات المرور واجهة رسومية لمخزن كلمات مرور UNIX القياسي
de_DE Passwortverwaltung Grafische Oberfläche für den Standard-Unix-Passwortspeicher
es_ES Gestor de contraseñas Interfaz gráfica para el almacén estándar de contraseñas de Unix
fr_BE Gestionnaire de mots de passe Interface graphique pour le gestionnaire de mots de passe Unix standard
fr_FR Gestionnaire de mots de passe Interface graphique pour le gestionnaire de mots de passe Unix standard
gl_ES Xestor de contrasinais Interface gráfica para o almacén estándar de contrasinais de Unix
he_IL מנהל סיסמאות ממשק גרפי לארכיון הסיסמאות הסטנדרטי של יוניקס
hu_HU Jelszókezelő Grafikus felület a szabványos unix jelszó-tárolóhoz
pl_PL Menedżer haseł Graficzny interfejs do standardowego uniksowego magazynu haseł
ru_RU Менеджер паролей Графический интерфейс для стандартного Unix-хранилища паролей
sv_SE Lösenordshanterare Grafiskt gränssnitt för det standardiserade Unix-lösenordslagret
zh_CN 密码管理器 标准 Unix 密码存储的图形界面

Drive-by

Fix Comment[zh_CH]Comment[zh_CN] typo (the GenericName side already used zh_CN; no zh_CH locale exists).

Notes

Test plan

  • desktop-file-validate qtpass.desktop clean (only a pre-existing categories hint, unrelated).
  • All previously-commented stubs are now active entries.

Summary by CodeRabbit

  • Chores
    • Updated Arabic language support from Moroccan to generic variant.
    • Added localized desktop application descriptions for 10+ languages (German, Spanish, French, Galician, Hebrew, Hungarian, Polish, Russian, Swedish, Chinese).
    • Marked several translations pending completion.

annejan and others added 2 commits April 30, 2026 02:18
The translations under localization_ar_MA.ts are entirely Modern
Standard Arabic (MSA / Fusha), not Moroccan Darija. Renaming to
the language-only `ar` code makes Qt's locale fallback serve every
Arabic-speaking user (ar_MA still resolves to it) instead of only
matching when the user's locale is set specifically to ar_MA.

Changes:
- Rename localization_ar_MA.ts → localization_ar.ts
- Update <TS language="ar_MA"> → <TS language="ar">
- Update src/src.pro TRANSLATIONS reference
- Rename desktop-entry stubs [ar_MA] → [ar] in qtpass.desktop

Drive-by MT-artifact cleanup in the same file (all marked
type="unfinished" for native-speaker review):

- "Autoclear after:" — replace transliteration 'اوتولير بعد:' with
  'مسح تلقائي بعد:' (automatic clear after).
- "Autoclear panel after:" — replace 'لوحه اوتوكلير بعد:' with
  'مسح اللوحة تلقائيا بعد:'.
- "All Characters" — replace 'جميع الشخصيات' (= "all personalities")
  with 'جميع الأحرف'; matches existing 'الأحرف' usage elsewhere.
- "Use a monospace font" — replace literal-nonsense
  'استعملوا شعار الفضاء الأحادي' with 'استخدام خط ثابت العرض'
  (use a fixed-width font).
- "Hide on close" — replace 'اختبيء عن قرب' (= "hide from close-up")
  with 'إخفاء عند الإغلاق' (hide on close).

The generated src/qmake_qmake_qm_files.qrc (gitignored) regenerates
correctly: localization_ar.qm, no stale ar_MA references.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The .desktop file shipped with empty/commented-out GenericName and
Comment entries for ar, de_DE, es_ES, fr_BE, fr_FR, gl_ES, he_IL,
hu_HU, pl_PL, ru_RU, sv_SE and zh_CN. Filled them with conventional
translations of "Password Manager" and "GUI for the standard unix
password store".

Drive-by: fix typo "Comment[zh_CH]" → "Comment[zh_CN]" (no zh_CH
locale exists in QtPass; matches the GenericName side).

Best-effort translations — native speakers should refine on Weblate
if anything is awkward, but these are widely-used standard renderings
of the two short phrases.

Depends on PR #1328 (ar_MA → ar rename); rebase onto main once that
merges.

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: a67f019f-6ce3-4ce1-8d2d-d37c68028f46

📥 Commits

Reviewing files that changed from the base of the PR and between 6e2590f and d7f4e6f.

📒 Files selected for processing (3)
  • localization/localization_ar.ts
  • qtpass.desktop
  • src/src.pro

📝 Walkthrough

Walkthrough

The pull request migrates the Arabic translation locale from Moroccan Arabic (ar_MA) to generic Arabic (ar), updates the desktop entry file with localized strings for multiple languages, and updates the build configuration to reference the new translation file.

Changes

Cohort / File(s) Summary
Arabic localization migration
localization/localization_ar.ts, src/src.pro
Changed locale target from ar_MA to ar and updated translation references in the build configuration. Multiple translation strings marked as unfinished.
Desktop entry localization
qtpass.desktop
Populated localized GenericName and Comment entries for 12 locales including ar (replacing ar_MA), de_DE, es_ES, fr_BE, fr_FR, gl_ES, he_IL, hu_HU, pl_PL, ru_RU, sv_SE, and zh_CN.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested labels

size:M

Poem

🐰 From ar_MA to ar we hop,
Locales updated, never stop!
Desktop strings in every tongue,
A translation feast, sung!

🚥 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 accurately describes the main change: populating previously stubbed localization entries in qtpass.desktop for 12 locales.
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 chore/desktop-translations

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: 0/8 reviews remaining, refill in 59 minutes and 40 seconds.

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

@annejan annejan merged commit a0dbd62 into main Apr 30, 2026
20 of 22 checks passed
@annejan annejan deleted the chore/desktop-translations branch April 30, 2026 00:23
@coveralls
Copy link
Copy Markdown

Coverage Status

Coverage is 28.045%chore/desktop-translations into main. No base build found for main.

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