Language Approved Translated Unfinished Unfinished words Unfinished characters Untranslated Checks Suggestions Comments
English AGPL-3.0-or-later 100% 100% 0 0 0 0 27 0 13
Basque AGPL-3.0-or-later 0% 1% 404 1,909 12,145 403 0 0 0
Belarusian AGPL-3.0-or-later 0% 4% 388 1,910 11,917 385 0 1 0
Catalan AGPL-3.0-or-later 0% 16% 342 1,721 10,947 338 1 0 0
Chinese (Simplified Han script) AGPL-3.0-or-later 10% 46% 220 1,154 7,339 199 3 0 0
Czech AGPL-3.0-or-later 13% 86% 57 369 2,221 35 5 0 0
Dutch AGPL-3.0-or-later 3% 0 0 0 0 0 0 0
Dutch (Belgium) AGPL-3.0-or-later 9% 0 0 0 0 0 0 0
Finnish AGPL-3.0-or-later 94% 0 0 0 0 0 0 1
French AGPL-3.0-or-later 19% 100% 0 0 0 0 10 0 0
German AGPL-3.0-or-later 15% 93% 26 192 1,177 21 1 37 7
Greek AGPL-3.0-or-later 0% 82% 72 451 2,614 54 0 0 0
Hungarian AGPL-3.0-or-later 0% 52% 194 992 6,247 172 1 0 0
Italian AGPL-3.0-or-later 7% 82% 71 426 2,473 55 0 0 0
Lithuanian AGPL-3.0-or-later 0% 55% 181 942 5,922 164 4 0 0
Norwegian Bokmål AGPL-3.0-or-later 0% 16% 341 1,757 11,171 302 6 0 0
Polish AGPL-3.0-or-later 3% 95% 19 116 670 10 5 1 0
Portuguese (Brazil) AGPL-3.0-or-later 0% 49% 205 1,107 6,978 183 5 0 0
Portuguese (Portugal) AGPL-3.0-or-later 74% 87% 52 320 1,865 32 3 19 6
Romanian AGPL-3.0-or-later 1% 38% 249 1,193 7,332 238 0 0 0
Russian AGPL-3.0-or-later 0% 77% 90 489 2,843 78 2 0 0
Slovenian AGPL-3.0-or-later 0% 22% 318 1,546 9,914 298 4 0 0
Spanish AGPL-3.0-or-later 1% 99% 4 20 145 2 5 4 0
Swedish AGPL-3.0-or-later 0% 0 0 0 0 0 0 0
Tamil AGPL-3.0-or-later 0% 0 0 0 0 0 0 0
Turkish AGPL-3.0-or-later 0% 95% 20 96 582 17 0 0 0
Please sign in to see the alerts.

Overview

Project website gitlab.com/rubdos/whisperfish
Instructions for translators

Whisperfish exists in a few languages already:

  • 🇩🇪 German (de), by Stephan Lohse

  • 🇪🇸 Spanish (es), by carlosgonz

  • 🇫🇮 Finnish (fi), by Markus entil Törnqvist

  • 🇫🇷 French (fr), by Thibaut Vandervelden

  • 🇭🇺 Hungarian (hu), by 1Zgp

  • 🇳🇱 Dutch (nl) and 🇧🇪 Belgian 🏴‍☠️ Arrrrgh Dutch (nl_BE) by Ruben rubdos De Smet and Nathan nthn.

  • 🇳🇴 Norse (no_NO), by Allan kingu Nordhøy

  • 🇵🇱 Polish (pl), by paytchoo

  • 🇵🇹 Portuguese (pt_PT), by Júlio iled

  • 🇹🇷 Turkish (tr), by Oğuz ersen Ersen

  • 🇨🇳 Simplified Chinese (zh_CN), by dashinfantry

    If you translated something, please update this list! These credits are really important to me 😄! I'm very grateful for this good work!

    Additionally, there's the small contributions of single words by many people on Weblate. The translations there are moving really fast, faster than we can update the above list. Thank you all who contributed!

    Translations are never complete, especially since Whisperfish is moving very fast. Our progress can be seen here:

    Whisperfish translation progress

How to update translations

There are two ways to contribute translations.

Via Weblate

We created a Weblate page. On that page, you can easily alter the translations via a web interface. These changes are then pushed by Weblate to our repository here.

Manually, with Git

If you prefer, you can manually edit the .ts files, or use the software of your choice to edit the Qt linguist files. Changing translations strings is pretty simple:

  1. Get in the repository

  2. Find your language in translations/, open the respective .ts file.

  3. Find the translatable string and change the contents between <translation> and </translation>. If the starting tag is <translation type="unfinished">, change it to <translation>.

  4. Save the file, commit (with a message saying you updated the translation), and make a merge request.

    Additionally, you may want to look specifically for strings with type="unfinished" (by using your text editor to search for "unfinished"), because those strings need to be looked after. Strings tagged with type="unfinished" have recently been touched in the application itself, may have changed their meaning slightly, or are entirely new.

    Qt Linguist is also an application with a GUI to facilitate translations. Essentially, using it will replace step 3. above. You can get Qt Linguist from the Qt bundle or you can just download the standalone app. Open the .ts file from within the app, then it will automatically detect and list the strings that need to be translated.

Translate Whisperfish a new language

If you would like to contribute a translation for a new language, you'll need a new translation file.

You can either use Weblate (see above), or manually add the file:

  1. First, you need to know your language identifier. Examples are nl_BE, nl, de, or zh_CN.

  2. Generate the translation file, execute the following command in the Whisperfish source's root directory:

lupdate qml/ -noobsolete -ts translations/harbour-whisperfish-$LANG.ts

This should generate a file translations/harbour-whisperfish-$LANG.ts. If you do not have the lupdate utility, [](Contact-Us), he'll create your file.

Important: please create a merge request as soon as you create your new file, before starting to translate. We've had it happen that two people write a complete translation from scratch one day apart.

About updating the QML files or English source material.

If you want to update the English translation, or when you make an update to the QML files, you'll need to update all the translation files, because they refer to specific line numbers in the source files. You can run ./update-translations.sh in the source directory for this.

You also need to run this script when the source material (English source translation) changes; this will update the source strings in the language files and will invalidate the translated strings.

You can only alter the English source language in the QML files. This is an artifact of how Qt Linguist seems works.

Project maintainers User avatar rubdosUser avatar direc85
Translation license GNU Affero General Public License v3.0 or later
Translation process
  • Translations can be made directly.
  • Translation suggestions can be made.
  • Translations are reviewed by dedicated reviewers.
  • Any authenticated user can contribute.
  • The translation uses bilingual files.
Source code repository ssh://gitlab.com/whisperfish/whisperfish.git
Repository branch main
Last remote commit Merge branch 'build-with-mb2' into 'main' 69870714
User avatar rubdos authored 5 days ago
Last commit in Weblate Merge branch 'build-with-mb2' into 'main' 69870714
User avatar rubdos authored 5 days ago
Weblate repository https://hosted.weblate.org/git/whisperfish/whisperfish-application/
File mask translations/harbour-whisperfish-*.ts
13 days ago

String statistics

Strings percent Hosted strings Words percent Hosted words Characters percent Hosted characters
Total 10,750 51,031 321,862
Source 550 2,635 16,687
Approved 9% 1,036 8% 4,273 8% 27,226
Waiting for review 55% 5,911 53% 27,413 54% 173,447
Translated 69% 7,497 67% 34,321 67% 217,360
Needs editing 2% 267 3% 1,772 3% 10,224
Read-only 5% 550 5% 2,635 5% 16,687
Failing checks 1% 82 1% 434 1% 2,872
Strings with suggestions 1% 62 1% 441 1% 2,834
Untranslated strings 27% 2,986 29% 14,938 29% 94,278

Quick numbers

51,031
Hosted words
10,750
Hosted strings
69%
Translated
and previous 30 days

Trends of last 30 days

Hosted words
+100%
Hosted strings
+100%
+1%
Translated
+69%
−100%
Contributors
+100%
User avatar None

Repository rebased

Repository rebased

Original revision: ceccb256c2ff4bfa53e7425641477dd61af72a9f
New revision: 69870714ee603cdae4b0a01c328a82bf7114f531 5 days ago
User avatar None

Repository notification received

GitLab: https://gitlab.com/whisperfish/whisperfish, main 5 days ago
User avatar None

Repository rebased

Repository rebased

Original revision: 40824a5bab8a746468ec2200a838a8e67ff1b3ee
New revision: ceccb256c2ff4bfa53e7425641477dd61af72a9f a week ago
User avatar None

Repository notification received

GitLab: https://gitlab.com/whisperfish/whisperfish, main a week ago
User avatar None

Repository rebased

Repository rebased

Original revision: bfdef130650cbf7850f0a0f2d796ed00bf7ce572
New revision: 40824a5bab8a746468ec2200a838a8e67ff1b3ee a week ago
User avatar None

Repository notification received

GitLab: https://gitlab.com/whisperfish/whisperfish, main a week ago
User avatar None

Repository rebased

Repository rebased

Original revision: 86f61a6764f15f4b45332bf51eaf88d079e6f163
New revision: bfdef130650cbf7850f0a0f2d796ed00bf7ce572 a week ago
User avatar None

Repository notification received

GitLab: https://gitlab.com/whisperfish/whisperfish, main a week ago
User avatar None

Repository rebased

Repository rebased

Original revision: d29d3d7caed3335a05816184cdc1e054523d1a7e
New revision: 86f61a6764f15f4b45332bf51eaf88d079e6f163 a week ago
User avatar None

Repository notification received

GitLab: https://gitlab.com/whisperfish/whisperfish, main a week ago
Browse all component changes