Skip to content

Latest commit

 

History

History
43 lines (31 loc) · 1.71 KB

File metadata and controls

43 lines (31 loc) · 1.71 KB

I18N / Translations

SPDX-License-Identifier: AGPL-3.0-or-later

Status

  • Admin settings UI text uses Nextcloud L10N (IL10N->t(...) / t(app, key)).
  • File menu labels for + New are localized (New pad, Public pad, Public pad from URL).
  • Currently maintained locales: de, es, fr. Additional locales are expected to come in via translatewiki once the project is onboarded.

Translation File Formats

Per locale we ship two files in l10n/:

  • l10n/<locale>.json — read by PHP via IL10N.
  • l10n/<locale>.js — read by the JS frontend via OC.L10N.register.

The two formats are generated from the same source-of-truth dict and must stay in sync. The legacy *.php catalogs are not used by modern Nextcloud (see the developer manual: "you then just need the .json and .js files for a working localized app") and are intentionally not shipped.

de_DE is not maintained as a separate file — Nextcloud's locale fallback maps de_DE users to de.json automatically. The DE catalog uses Du throughout.

Maintenance Rule

  • All maintained locales (de, es, fr) must hold the same set of keys. Both the .json and .js catalog per locale must agree on keys and values; never edit one without the other.
  • New user-visible strings must be wrapped in t(...) / $l10n->t(...) calls so they can be picked up by translation tooling.
  • For ongoing translation work, the long-term plan is to onboard the project to translatewiki.net (same platform Etherpad upstream uses). Until then, the maintainer keeps the three locales in sync by hand.