Frequently Asked Questions

Here is where you can find answers in the most Frequently Asked Questions! If you don’t find the question you are looking for, or the answer didn’t satisfy you, please communicate with us, at support (at) transifex (dot) com and we will try to assist you.

General Questions

What is Transifex.com?

Transifex.com is a one-stop localization portal. It serves as a common web service for translation of projects, no matter their size or hosting location. By allowing translators to work directly on upstream projects from a single tool, it helps bridge open translation communities and allows translators to work together efficiently.

Is Transifex translated by Transifex itself?

Of course it is. We eat our own dogfood, and we’re proud of it. :-)

I’m a translator. What can I do?

Are the projects you’re interested in already registered in Transifex? If so, great! You can grab their translation files directly from here and lock the file so that other people know you’re working on it. Then, you can use your favorite desktop application to translate the file into your language.

Since we’re on the topic, we’d appreciate any feedback, so feel free to use the button on the right side of the screen to let us know of any improvements that could make your life easier!

A nice walkthrough on how one can work on translations with Transifex is available on youtube.

Translation & I18n topics

How often are the stats auto-updated?

Transifex will automatically update resources which have been configured with a Source File URL. A ‘cronjob’ is run every couple of hours; it fetches the language source file and detects any changes in its strings.

Why do some translations show up as 0%?

This means that there are no translations so far for this file. If you have recently pushed the file, it was either empty, or it was the wrong file (its strings did not match the source language strings).

If a file does not show up at all, it probably means there is no translation team for this language. Just create teams for those languages which you always want to show up.

What is Lotte? How can I see it in action?

Lotte is our Lightweight Online TranslaTion Editor. It is automatically enabled for all components accepting translation submissions. Next to each translation completion bar is an icon for uploading translations and another to edit the file inside your browser using Lotte.

To see Lotte in action, your resource should accept translations.

What are freezes and translation deadlines?

A string freeze is a date when translatable strings and user- interfaces are frozen. It’s a point in time as of which no new strings or modification to existing strings marked for translation are allowed for a project. The purpose of a string freeze is to help ensure high quality translations in the final release by giving translators adequate time to finish their work. It also gives them a chance to get their work will end up in the final release.

The translation deadline is a point in time as of which all translations which have been contributed/submitted are guaranteed to get into a release. Translators know they have up to this date to work, and the maintainer needs to package or re-package the project’s final release after this date.

Can I track random source language files on the Web?

Yes. As long as your file is accessible to Transifex from an HTTP url, you can use its url.

Can I submit files directly into my VCS?

Transifex now uses a command-line client to pull translations to a VCS instead of pushing them like before. Please refer to the section The big, scary Transifex One-Dot-Zero for more information.

What should I do when my file has syntax errors?

To ensure that files submitted are valid and will be imported correctly, Transifex checks for syntax validity of each file using standard checks. For Gettext files, it runs the Gettext check command (msgfmt -c) on the submitted file. When this fails, the user will see a message like this (the exact text of this message will change after 1.0):

Your file failed a correctness check (msgfmt -c). Please run this command on your system to see the errors.

This can happen for a number of reasons. Some common ones for PO files include:

  • Non-unicode encoding – the correct charset should be UTF-8.
  • Incorrect “plurals” in the header
  • Fuzzy headers.
  • A msgstr that has more or different %s variables than the msgid.

To find out more about a file’s problems, run the msgfmt --check command against it; the output should be self-explanatory. If you edited the file via Lotte, you’ll be notified about errors in an email with the file attached.

Alternatively, open the offending file with your favorite translation editor and search for the errors. For example, if the error is an incorrect “Plural Form”, you can open up POEdit > Settings, and at the bottom of the dialog box, and add a line such as nplurals=2; plural=n!=1;.

Gettext-specific FAQ

Are fuzzy translations lost whey I upload a PO file?

No, fuzzy translations are not lost. They are converted to Translation Suggestions, readily available to the translators inside the Web Editor. To view them, enter the web editor and click on the “Suggestions (1)” tab right under the translation box.

For more information, please refer to Importing PO/POT files and Exporting PO files.

Miscellaneous

Can I install my own instance of Transifex?

Yes you can, but Transifex.com has everything most projects need. For more information, refer to the Transifex.com: Localization SaaS section.

I tried to install my own Transifex instance but authentication isn’t working!

If you’re using Apache and mod_wsgi to serve Transifex, you need to make sure that your wsgi.conf contains this line to enable HTTP Basic Auth:

WSGIPassAuthorization On

Where does the language list come from? How can I add my own?

Transifex identifies more than 250 languages and associates them with a locale code. These languages adhere to the ISO 639-1 standard of language names and locales.

For a full list of the languages on Transifex.com, please refer to http://www.transifex.com/languages/.

If your language doesn’t show up in the Languages page and your files appear in a shortened version like ‘xx_YY’, then you can help us providing the necessary information in order to add your language into Transifex.

What’s needed?

Each language available in Transifex requires a set of information that are used along with the system. Let’s take for example the Brazilian Portuguese language.

Field Data
name Portuguese (Brazilian)
code pt_BR
code_aliases pt-br pt-BR
nplurals 2
pluralequation (n > 1)
rule_zero  
rule_one n is one
rule_two  
rule_few  
rule_many  
rule_other everything else

Let’s identify what each field means:

name             Language name in the 'Language (Nationality)' format. You can omit the nationality for general languages like 'pt'.
code             ISO 639-1 language code. You might fallback to 639-2 or 639-3 in case your language is not covered in 639-1.
code_aliases     Known possible aliases separated with spaces (e.g pt-br pt-BR).
nplurals         Number of plurals allowed by the language. Quite common in .po files.
pluralequation   Equation to distinguish the plural rules for the available nplurals. Quite common in .po files too.

Now we have some important things. The rule fields MUST reflect the exactly number of nplural set to the language. It means that if your language has nplural = 2, then only 2 of the rule fields must be filled in.

Also, the rule_other is considered the general rule. All languages must have at least this rule associated with. Even languages that do not have plurals at all, such as Japanese. The rule_other is considered the general fallback like a ‘else’ statement for all the other possible rules. If there is a case that doesn’t fit into the pluralequation, rule_other will be used.:

Depending on the language and theirs equations, the rules might have different values, mainly in the few and many rules. Above you can see some examples:

name             Romanian
code             ro
code_aliases
nplurals         3
pluralequation   (n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2)
rule_zero
rule_two
rule_one         n is 1
rule_few         n is 0 OR n is not 1 AND n mod 100 in 1..19
rule_many
rule_other       everything else


name             Arabic
code             ar
code_aliases
nplurals         6
pluralequation   n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5
rule_zero        n is 0
rule_two         n is 2
rule_one         n is 1
rule_few         n mod 100 in 3..10
rule_many        n mod 100 in 11..99
rule_other       everything else

More examples can be found here.

Usually we get the rules information from unicode.org, but in some cases we have some conflicts around what the community actually uses. So, when filling a ticket to request a language addition, we encourage you to, beside the requited info above, also to include links referring to well known projects that already use your language.

Where do I report issues or feature requests?

If the request is about Transifex.com, please use the Feedback button on the right or visit the url http://getsatisfaction.com/indifex. You can review past requests this way as well.

If the request is about a technical issue or affects the open source project Transifex, please visit http://code.transifex.com. Please make sure the issue has not been reported before.

If the request is about the command line client transifex-client, please report it to http://code.transifex.com/transifex-client/issues.

In case you have purchased Support Services from Transifex, you can contact our Support department by sending an email to support@transifex.com or by visiting http://support.transifex.com/.

Finally, for quick answers, you can also find us online on IRC. We hang around on the Freenode network, in the #transifex channel.

I had a problem. What information should I include in the report?

You should describe the problem in great detail and include any steps that can reproduce it. Specifically, you should include the page, the project and/or resource and/or language this issue affects and any error messages that may have appeared. It would be helpful to know when (date and time) this issue appeared, too. Furthermore, if the problem was triggered while uploading/downloading a specific file, it would be very helpful, if you could give us a link to the file as well.

How is Transifex different from Launchpad’s Rosetta?

Here are some of the differences between Transifex and Rosetta:

  1. Rosetta requires files to be hosted on a bzr repository downstream in order to offer a web translation editor. Transifex can handle any file hosted on any repository on the web.
  2. Transifex supports a number of i18n formats, whereas Rosetta only supports PO-based projects.
  3. Transifex offers a command-line tool to easily manage your files.
  4. In Rosetta, translators have the choice to download one by one the PO files and merge them upstream manually. Transifex better supports upstream projects by allowing developers to mass-export files and merge at any time.

I’d like to see a custom feature developed. Do you also offer Professional services?

Our Professional Services department is working with large and small enterprises on a number of extra Transifex features and complimentary software development, such as integration with other platforms and applications, additional i18n methods support, and L10n community building.

We’d be happy to hear how we could help you out. Drop us an email to admin@transifex.com.

Transifex.com Plans

What is the Value Added Tax on my purchase?

The VAT (value added tax) is a mandatory sales tax in most of the countries in the European Union and is calculated at the Greece VAT rate of 23%.

The following cases are exempt from being charged VAT:

  • You or your business are located outside the EU (eg. USA).
  • You are a businesses in the EU who has a VAT registration number.

We are obliged to add the VAT if:

  • You are an individual without a VAT number in the EU.
  • You are either an individual or a company with a VAT number in Greece.
Next Section: Transifex.com updates »