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.
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.
Of course it is. We eat our own dogfood, and we’re proud of it. :-)
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.
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.
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.
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.
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.
Yes. As long as your file is accessible to Transifex from an HTTP url, you can use its url.
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.
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:
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;.
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.
A Featured Project is an “Editor’s Choice”, a project that the maintainers of Transifex.com is cool. This could be because it’s a popular project, an influential one, or simply because the developers behind it are just awesome.
After the opinions are stated, a vote takes place and the most popular is nominated as a featured project. Usually this process takes place every a couple of weeks.
Yes you can, but Transifex.com has everything most projects need. For more information, refer to the Transifex.com: Localization SaaS section.
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
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.
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.
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.
Here are some of the differences between Transifex and Rosetta:
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.
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:
We are obliged to add the VAT if: