Sharing common translated strings across apps to reduce redundancy

Alvin Wong alvin at alvinhc.com
Mon Oct 12 15:00:13 BST 2026


Hi,

On 12/10/2026 21:34, Guo Yunhe wrote:
> Currently, every time a new app is developed, translators have to re-translate common UI strings—such as "OK", "Cancel", "Edit", and "Delete"—over and over again. This creates a few noticeable issues:
>
>
> Wasted translator effort: Localization contributors spend time on duplicate, repetitive work.
>
>
> Redundant storage: End users waste storage space carrying duplicate translation catalogs across multiple packages.
>
>
> Inconsistent UX: Translation consistency across KDE apps is harder to maintain and track.
>
>
> To address this, I propose establishing a minimal shared text domain for common strings used across multiple KDE applications.

I had the impression that some of these already exists in KWidgetsAddons 
- `KGuiItem` [1] / `KStandardGuiItem` [2] can be used to assign standard 
action text, tooltips, and even icons to buttons. It includes many 
typical buttons for dialog boxes, like "OK" and "Cancel".

[1]: https://api.kde.org/kguiitem.html
[2]: https://api.kde.org/kstandardguiitem.html


> One possible approach is to reuse an existing domain like ki18n6 (or create a dedicated shared domain). Applications could then call i18nd("ki18n6", "OK") instead of i18n("OK"). These common strings would no longer pollute individual app text domains, leading to smaller PO files, less translation workload, and natural UX consistency across our ecosystem.
>
>
> What are your thoughts on this? Suggestions and alternative ideas are very welcome!
>
> --
> Guo Yunhe / @guoyunhe / guoyunhe.me
Alvin Wong


More information about the kde-i18n-doc mailing list