Internationalization

Pidgin is used widely across the globe, so having proper internationalization/translations of the different strings that are displayed in it is quite important. As no single person can speak all the different languages in the world, we require the help of our community to help us and take care of translating Pidgin to the language they know.

The platforms we use for translations

  • Currently Pidgin uses Transifex as the platform to manage the translation of the different strings it has.

    We do acknowledge that some may be opposed to using Transifex, so even if that’s our preferred way of handling translations you can still choose to create a new issue and attach your translation file to it. Please remember to provide your full name, a contact email address, and the language and country code for the translation you are submitting.

  • The translators mailing list is the recommended channel for translator communications.

Submitting translations

Our translations are provided by volunteers. To improve consistency and quality we prefer to have a designated person or group of people maintain each translation.

If Pidgin already has a translation for your language, please contact the designated translator(s) and ask if you can help. It’s possible they are looking for someone to take over. You can find their email address in Pidgin’s Help→Translator Information window. Or, for some languages you can try contacting the translator(s) via Transifex.

If you’re unable to contact the designated translator(s) or if Pidgin does not yet have a translation for your language, email the translators mailing list and ask if anyone is already working on translating that language. If you are the first one working on that language, the Pidgin team will guide you on how to set things up in Transifex.

Translation statistics

You can see the current translation statistics at Transifex. Over there you will be able to find all the languages that Pidgin has been translated to and the coverage of those translations.

How translation updates are handled

  • Each language will have a current translator assigned to it, a volunteer that leads the translation effort of the Pidgin strings for this particular language.

  • Current translators are always listed in Pidgin’s Translator Information dialog (Help → Translator Information from Pidgin’s Buddy List window) by name, and each translator’s e-mail address is included. Because of this, we need current translators to inform us if their e-mail address changes.

  • Translation updates for each language are accepted only from its current translator, except when:

    • The current translator wishes to retire from translating Pidgin and has notified the Pidgin Developers.
    • The current translator has not submitted an update for at least one year and does not respond to inquiries.
    • The current translator tells us to accept the update and/or treat a new translator as a co-maintainer of the translation.
    • We become aware through verifiable means that the current translator has passed away.

    We do this to minimize confusion among users–we’ve found over time that some translators will choose different ways to translate a given word or phrase, which inevitably confuses users. We apologize for any inconvenience this may cause, but we believe that following these rules makes translations better for everyone.

    If you find yourself in this situation, use the translators mailing list or contact us so that we can evaluate it and make a decision.

How translations go from Transifex to Pidgin

If you look at the Pidgin repository and browse its contents, you’ll find a directory called po. In it we store all the different translations, each one in its own .po file.

Once the Pidgin Developers team agrees that a new Pidgin release is almost ready to go and that no new strings will be added or changed, an email will be sent to the translators mailing list stating so. That way, translators are made aware that they need to check if strings in the language they maintain need to be updated or added. For more details on this process, check out our release process page.

Looking to reach us via XMPP? Check out the new PidginChat service!