About WebTranslateIt.com

WebTranslateIt.com is a web-based translation tool to translate documents and software.

Learn more at WebTranslateIt.com.

Recent posts

Creating new segments made easier

Posted by Édouard Brière on January 28, 2014

We know that a lot of people add new segments to their files and projects using our web interface, so we polished and improved the interface to create new segments over these last few months.

Some of these improvements are massive new features, others are tiny details, but everything we made should make you work a lot more easier, faster and less error prone.


The biggest improvement to this interface is auto-complete. When typing the key name of a new segment you will get key name suggestions based on the segments key names which are already in your file.

For instance, typing the letter d will bring all the root key of the segments having a key name starting by a “d”.

You can then choose the key among the results. Select the key that fits or else keep typing to create something new if what you are looking for wasn’t listed.

The suggestion system works great for segments from hierarchized files such as YAML or JSON files. Typing the separating dot character will list the children segments of the root chosen earlier.

You can then choose the suggestion that fits best or type your own new segment.

It’s a great way to add segments, as it was too easy to makes mistakes in segment names before (by typing something like dzatetime.distance_in_words instead of datetime.distance_in_words.

Impossible keys

What’s even better with this new feature is that it prevents the user from creating segments with impossible keys.

What are impossible keys? Impossible keys are keys that are impossible to output in a tree-base file. For instance, if we had this segment hierarchy in a file:

      half_a_minute: "Half a minute"

Then we couldn’t possibly add a child key to the segment datetime.distance_in_words.half_a_minute, because that segment already is the last leaf of the tree. Therefore datetime.distance_in_words.half_a_minute.now is an impossible key within that file, unless you remove the segment datetime.distance_in_words.half_a_minute.

WebTranslateIt will now let you know when you try to add an impossible key. You will get an error when you try to add this kind of key via the API too.

Improvements to mass-adding segments

When adding 10 new segments to the same file, isn’t it annoying to select 10 time in which file the segment should be added?

No longer. First, if the translation interface is filtered by file, then WebTranslateIt will automatically select the currently selected file on new segment form.

If the translation interface isn’t filtered by file, then WebTranslateIt remembers to which file you last added your segment and automatically selects it. This way, you don’t need to always choose your file when added new segments en masse.

It’s a tiny improvement but we think it will be immensely useful.

We hope you will find these improvements useful. Thank you for using WebTranslateIt.

web_translate_it rubygem v2.2.1 released

Posted by Édouard Brière on January 28, 2014

We just released a new version of the web_translate_it gem, the open-source synchronization tool for Web Translate It.

wti synchronization tool

New Features

This new version adds one new feature. The configuration file can now include a needed_locales option. Contrary to the other option ignore_locales, needed_locales is an array containing all the locales you want to sync with WebTranslateIt.

Here’s an example of .wti configuration file using needed_locales:

# The Project API Token from Web Translate It
api_key: SECRET

# Optional: locales not to sync with Web Translate It.
# Takes a string, a symbol, or an array of string or symbol.
# More information here: https://github.com/AtelierConvivialite/webtranslateit/wiki
# ignore_locales: :en

# Or if you prefer a list of locales to sync with WebTranslateIt:
needed_locales: [en, fr, it]

# Optional
# before_pull: "echo 'some unix command'"   # Command executed before pulling files
# after_pull:  "touch tmp/restart.txt"      # Command executed after pulling files
# before_push: "echo 'some unix command'"   # Command executed before pushing files
# after_push:  "touch tmp/restart.txt"      # Command executed after pushing files

We also upgraded one library dependency in this version.

Install or Upgrade

To install web_translate_it, please refer to the gem documentation.

To upgrade web_translate_it to its latest version, type in a terminal: gem install web_translate_it.

9 new features you didn’t know about

Posted by Édouard Brière on November 15, 2013

We released a lot of new small and larger features to WebTranslateIt during these last few months. We’ll introduce you 9 of them.

1. Attach files to terms

We added the ability to attach a file (a screenshot or a document) to a term. It’s useful to show to translators what a “Dashboard” is by showing them a screenshot for instance.

2. Sort segments alphabetically

By default, your segments are sorted by context but you can now also sort your segments by key name.

3. Settings tab

Where are the settings? The settings button which lets you configure your project or your organization is now easier to find in the tabs.

4. New workflow for discussions

We optimized the workflow for navigating between discussions. When you click to a discussion from the discussion dashboard, you now get a link heading you back directly to the discussions dashboard page.

The topmost back link also takes you back to the discussion dashboard page too, instead of going back to the translation interface.

5. Confirmation message on discussions

When a translator clicks to notify everyone in a project WebTranslateIt now asks the translator if he really wants to send an notification e-mail to everyone. This is a reminder that writing a comment sends an e-mail notification and the less the better and it should help discussions to be better targeted to people.

6. Super Proofreaders (he’s no super-hero)

We’ve added more flexibility to the proofreader role in WebTranslateIt. On top of being a proofreader, you can be “super proofreader”.

Super proofreaders are proofreaders who can also proofread their own translations. Proofreaders can only proofread other people’s translations. By default, a new translator invited with be super-proofreader, and all proofreaders on WebTranslateIt have been promoted as super-proofreaders.

Super proofreader can be recognized by a different badge than proofreader’s.

We also changed the behavior of “to verify” translations. As you probably know, translations flagged as to verify are translations for which the source translation was changed, so they probably need to be changed a little bit and re-verified.

Before this update clicking on the proofread icon was flagging the icon as “proofread”, which makes sense, but it was forcing the proofreaders to work these to verify segments. What if you’d like your translators without proofreading rights to handle these segments?

The new behavior is that clicking on the proofread icon flags the segment as unproofread, and clicking again on this icon flags the segment as proofread, so now translators without proofreading rights can handle these segments as well.

7. Improvements to invitations

A lot of people reversed the name and e-mail fields when inviting a new user and were confused. We just added an validation which lets you know more clearly what is wrong in the form.

And here’s a cool one: if you paste an e-mail address like Édouard Brière <edouard@webtranslateit.com> to the e-mail folder it will extract the name and e-mail address and automatically place the e-mail address and name in the correct fields.

8. Improvement to adding new segments

WebTranslateIt now lets you know if you try to add an impossible key. This feature only works when adding segments to a tree-based file (like YAML or JSON files)

As an example, let’s consider this YAML file:

      created: "Discussion created"
      failed: "Failed to create a discussion"

js.discussions.created and js.discussions.failed are leaves in the YAML tree. They are the last elements in the tree, so it isn’t possible to nest a segment named js.discussions.created.ok under them.

In order to add the segment js.discussions.created.ok you either have to remove the js.discussions.created segment or rename js.discussions.created.ok to something else.

WebTranslateIt now knows about these rules and won’t let you create these segments from the web interface or the API, because they aren’t possible to export in a file, which can lead to hours of debugging on your side.

9. Deleting your organization now requires the owner’s password

We improved the security a bit and now deleting your organization requires you type your password.

I hope you will appreciate these improvements. Thank you for using WebTranslateIt.

Automate your Java apps file sync with wti-maven-plugin

Posted by Édouard Brière on November 14, 2013

wti-maven-plugin is a new plugin for Apache Maven made by Julien Redondo. It automates the file syncing between your Maven server and WebTranslateIt.

3 commands are available:

  • mvn wti:init to initialize your translation files on WebTranslateIt,
  • mvn wti:push to push your files to WebTranslateIt,
  • mvn wti:pull to update your files with the latest version from WebTranslateIt.

I am sure many people will find this Maven plugin useful. wti-maven-plugin is open-source (GPL v3) and available on GitHub.

Improvements to the payment system

Posted by Édouard Brière on October 30, 2013

We improved WebTranslateIt’s payment system this month and we now accept 3 major credit cards: MasterCard, Visa and American Express.

We also still accept payments by PayPal and by bank transfers.

This improvement makes it easier for companies to subscribe and take a premium plan, especially for those who don’t have a company PayPal account.