Skip to content

Translating

Adil Hanney edited this page Oct 28, 2025 · 2 revisions

All translations are thanks to our community of contributors. Saber is currently available in:

  • English (en)
  • Arabic (ar)
  • Czech (cs)
  • German (de)
  • Esperanto (eo)
  • Spanish (es)
  • Persian (fa)
  • French (fr)
  • Hebrew (he)
  • Hungarian (hu)
  • Italian (it)
  • Japanese (ja)
  • Brazilian Portuguese (pt_BR)
  • Russian (ru)
  • Turkish (tr)
  • Chinese Simplified (zh_Hans_CN)
  • Chinese Traditional (zh_Hant_TW)

Weblate

We may in the future use Weblate to crowd-source translations without requiring contributors to manually edit yaml files or use git.

I am currently experiencing some issues with integrating it. Any updates will be posted here.

Adding missing translations

Check _missing_translations.yaml to see if any translations are missing.

To add missing translations:

  1. Log in to GitHub.
  2. Use this link to edit _missing_translations.yaml.
  3. Update the file with your translations, e.g. updating German (de)
    de:
      editor:
        newerFileFormat:
          title: Diese Notiz wurde mit einer neueren Version von Saber bearbeitet
          subtitle: Wenn du diese Notiz bearbeitest, können Daten verloren gehen. Möchtest du die Notiz trotzdem öffnen?
          openAnyway: Trotzdem öffnen
          cancel: Abbruch
    # ignore the other languages...
  4. Click the green button to open a pull request! I'll do the rest

Adding a new language

  1. Look for your locale code here, e.g. hi for Hindi, fr for French, bn for Bengali, ar for Arabic, etc.
  2. Use this link to create a new file in lib/i18n/ called XX.i18n.yaml where XX is your locale code.
  3. Copy the contents of an existing file like lib/i18n/en.i18n.yaml and replace the translations with your own. If you don't know the translation for a string, just delete the line.
  4. Open a pull request!

Translating app store descriptions

We have 3 formats for app store descriptions:

  1. F-Droid/Play Store:

    i. Open metadata/en-US/ and copy the full_description.txt and short_description.txt files into the metadata/XX/ folder where XX is your locale code. Then translate the contents of the files.

    ii. I machine-translate changelogs every release so they may not be perfect. If you spot a mistake, please edit the translated changelog in metadata/XX/changelogs/<version-code>.txt where XX is your locale code.

  2. Linux .desktop file:

    i. Open flatpak/com.adilhanney.saber.desktop and add a line for the Comment key with the following format where XX is your locale code:

    Comment[XX]=Your translation

    If you also need to translate the Name key, do the same thing.

  3. Flathub (optional):

    i. This may be a bit too technical for some contributors. If that's the case, just skip this step and let me know in your PR to copy the translations from the above section.

    ii. In flatpak/com.adilhanney.saber.metainfo.xml before the </description> closing tag, add a line for your translation with the following format where XX is your locale code:

    <p xml:lang="XX">Your translation</p>

Clone this wiki locally